This question is a follow-on from an earlier post I made, which was a bit wordy! Also my thoughts have moved on, so here goes.
I've been running my own home automation wall control panels for a few years, based on Arduino Mega, openHAB, and MQTT.
- control dimmers for each light circuit in the room (using rotary knob)
- change lighting scene (using 5 preset buttons):
It can also control Squeezebox or Sonos, and show what's now playing.
- Single press = play / pause
- Double press = next track
- Triple press = previous track
- Preset buttons = change to favourite music or radio channels
Also it's pretty easy to create other modes like weather, heating, etc:
(Yes, I'm UK based, and this was NOT a recent photo )
QUESTION: I am re-designing it to work with Node-RED. Right now all client/server communications happen by MQTT.
Should I move to
- serial communication, connecting to a "gateway" Arduino?
- TCP sockets connecting straight to Node-RED?
- HTTP / json to Node-RED?
- something else?
I need rock-solid reliability, potentially not even relying on network switches or servers! (i.e. I am not sure if I should design this system to be able to turn lights on if network switch is unplugged, i.e. bypass Node-RED ... is that over the top?)
If I move to serial connection this seems like a backwards step, however the benefit is that it doesn't rely on a network switch, server, and could potentially communicate directly with my centrally located light dimming (basically these are DMX dimmers like they use in theatres). In the real world, hard-wired control of lighting is far more reliable and will give less hassle over the years. Hopefully.
I have toyed with the idea of Z-Wave for light dimming. DMX dimmers are cheaper, possibly higher quality, and give me granular control over things like dimming curves. I'm not sure yet about the compatibility with LED lighting, as I haven't tested many light fittings yet.
What are your thoughts, all? I know it's not really a Node-RED specific question, but I'm interested in Node-RED flavoured answers!