New: the AI firewall watches the whole platform and explains each incident in plain words. See how it works

ESP8266 room nodes, a Pi in the middle, Hermetry on top: sane design?

ESP8266 room nodes, a Pi in the middle, Hermetry on top: sane design?

Solved 3 3

Hello. I manage a guest house, 12 rooms, and I’m new to all of this, so please be patient with me.

I want temperature, humidity and door sensors in each room, plus a geyser temperature. My nephew suggested this layout and I’d like to know if it is sensible before I buy everything:

ESP8266 node per room (DHT22 + reed switch)
   |  Wi-Fi, MQTT
Raspberry Pi 4 in the office (Mosquitto + Node-RED)
   |  internet
Hermetry (dashboards, alarms to my phone)

We get load shedding most weeks, so the internet goes down for 2 to 4 hours at a time. I don’t want to lose readings then. Later I may want to switch the geysers off from the dashboard. Is this feasible and flexible, or is the Pi in the middle a mistake?

♥ 0

Feasible. Put the Pi and the router on a small UPS though, otherwise the Pi buys you nothing during load shedding.

Ground loops are my cardio.
♥ 0

We run nearly this at a few small pump stations, so a couple of things from that.

The Pi in the middle is a good call because of your outages. Have it act as a gateway: one device in Hermetry marked “This device is a gateway”, and each room becomes a child device the first time the Pi reports it. Node-RED collects the room messages from Mosquitto, keeps them in a file or a small SQLite table while the internet is down, and then sends them on with their own timestamps:

topic v1/gw/telemetry
{"Room 4": [{"ts": 1793000000000, "values": {"temperature": 22.1, "humidity": 51, "door_open": 0}},
            {"ts": 1793000300000, "values": {"temperature": 22.0, "humidity": 51, "door_open": 1}}]}

Make sure the Pi has the right time (NTP after boot) before you put a ts on anything. A big backlog drains a bit slower because replays have their own rate limit on the profile, that’s normal.

Geyser switching can go through the same Pi. A command sent to a child device comes down to its gateway on v1/gw/rpc, so Node-RED subscribes to that and passes it on to the right room. Or make the geyser controller its own device that connects to Hermetry directly. For a geyser I’d go direct, fewer moving parts.

Gateway topics are described in Devices behind a gateway.

QoS 1 and a lot of patience.
Accepted solution♥ 5

Thank you both. Bought the UPS, the Pi has been running as the gateway for two weeks. Last Tuesday we had 4 hours off and the room charts filled in afterwards with no gap. The first try made a “Generic child” profile for every room, then I learned to send a “type” on connect. The geyser controller will be its own device.

♥ 0
Viewing 4 posts – 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.

Join the conversation

Sign in to ask and answer, like helpful posts and mark the reply that solved your problem. Every contribution earns points and levels.

Share