Home heating project


(Lubos) #1

Hello,
I’m new to IOT and have a poor english. Sorry.
I try to build DIY house heating project. There will be DS1820 with ESP-01 in every room for measuring. Second ESP with relay for powering actuator on every radiator. And relay for home gas boiler. I have cca 10 rooms, so I have 10 devices. How to make an alias for name “DS1820 based thermometer” which is taken from:

<Thing.h>
ThingDevice thisDevice(“Thermometer”, “DS1820 based thermometer”, thisTypes);

or must I have 10 source codes with alias for room at this line, for every room thermometer?

I want to measure temperature in other interval for every room. In cellar where I don’t have electricity supply for ESP it must be on battery and so I want to measure every 10 minutes to save battery, but in the bathroom I want to measure every 30 seconds (?), cause my wife love “heat hell” and I don’t want to make it for her too long. I try to use ThingProperty with time how often to do measure. But on device restart it has zero value. Is there possibility to save this value in gateway and return it into device after it’s restart? I think there are many other use cases for this feature. Or I must build futher level upper the gateway, which solve these problems? How to recognize restart on this high level?

My second project is for our village soccer team. They have four lighting columns, every has three groups of lights. But startup current of every group is too high, so they need to to start every group in interval of 30 seconds (for wire colding) and they have only high current cables under the grass playground. I solve this with ESP, optocouplers, relays and DIY webapp, Mozilla IOT is not usable for this meanwhile, I think.

I’m surprised, that gateway read device property values every five seconds(?). This should be adjustable for power saving, I mean.

This was my problems. On other side how can I help to this project? UI is not for me. My color feeling (and not only color ;-)) is not suitable for other. I can propose to convert existing datastore from sqllite to postgres or other work in background.

Sorry for my long story. best regards
Lubos


(Dave Hylands) #2

I’d recommend that you include some digits from the MAC address associated with your ESP32. Using the last 3 bytes (6 hex characters) should be enough to make them unique. The first 3 bytes of the mac address is a manufacturer ID, so it should be the same for all of your EPS32s.


(Lubos) #3

I think that this is not solution for my wife and childrens. It seems I will not have success with learning, that temperature in living room is labeled as 06:35:41, bathroom have label 15:26:15. I think that tis value must be user readable without lookup table on the paper.


(Dave Hylands) #4

Things need a unique ID. I was referring to using the MAC address as part of this unique ID. In the gateway software you can assign arbitrary names (such as Living Room Temperature) to each device.


(Lubos) #5

Thanks. For unique ID of Thing I use ip address as is in ESP examples. And renaming Thing in UI is very fine and works well. Sorry that I don’t found this before myself. And many thanks for your navigation.

Do you have any knowledge/conception how to do default values for some properties of devices? How often measure, etc.

Thanks
Lubos


(Dave Hylands) #6

Using an IP address isn’t recommended as the IP address can change over time (i.e. it isn’t actually unique). Typically, the IP address will change when your access point gets power cycled.

As for default values, and measuring frequency, that really depends on the types of devices that your using.

For example, measuring room temperature once every 10 minutes is probably more than adequate. But detecting when a push button is pressed would require a much faster measuring frequency.