I have been thinking about home automation for quite a while, and although I took a wrong turn at proprietoryville I am back in the open source community.
I keep thinking that a lightweight arduino with RS485 is the idea lightswitch, and I wanted to put it out there to see if it passes the sanity test.
My idea would be to use a extremely small Arduino that will be able to interpret single and double taps of a button, and send that message to a broker in the same RS485 LAN, which will in turn send a message to a MQTT server.
It seems to me that this is a fairly power efficient way to do things, but I am keen to hear some feedback.
Why not use a small ESP8266 that can also interpret the single and double taps and send it directly to the MQTT Broker. The D1 mini is ideal for this. It consumes almost no power. If you flash it with ESPEASY it even has sleep modes. Have a look at that. And let me know.
I had briefly looked at the ESP8266 and it does look interesting. For my project I didn’t want to have any reliance on wifi as it is a new build and wiring ethernet cables to each lightswitch is fairly easy.
I think you’ll find agreement from Jon!. However it’s the OTA Updates I’d miss by not using the ESP platform. OTA updates + PlatfromIO rocks for keeping things up to date (if you’re build automation orientated - disclaimer: Easier for me, because my work is all about build automation)
I hadn’t seen that video, but my thoughts are along a similar vein. I feel that (in my project) core functionality like lightswitches should be simple and hard wired. I guess I wanted to go one level further than Jon in giving the lightswitches the ability to have a small amount of smarts, but still remain relatively simple.
In my opinion the ideal form would be similar to Jon’s light switch PCB so a simple RJ45 connection on an ethernet cable could be used to connect (a second RJ45 could be in parallel so you could have an in and out. It would have a tiny arduino and something like a MAX485 and a few dip switches for device addressing. This would make the light switches very easy to deploy, easy to install when C-Bus series control cabling has been used, and still have a single larger Arduino to interpret signals.
The larger Arduino could have several RS485 LANs and use their IO for relay control and would ideally be DIN rail mounted.
No probs and that sounds pretty neat. Jon actually started with an arduino at each swtich and iterated from there (he has a bunch of videos dedicated to how his lights work and I thoroughly recommend watching them all). I’m probably going to end up doing something similar to his setup in my own house, but still use the wireless ESP platform as I’m most familiar with it.
I have watched many of Jon’s videos, but I didn’t like the heavyweight approach of using ethernet to connect the light switches. I guess Jon also came to that conclusion which is why he has opted to make the switches simple and centralise the complicated bits.
If you go with 485; would you have to write your own protocol? That’s one reason I like Ethernet/Wifi. All the communications come for free.
You could honestly still use the ESP8266 but run the serial through a 485 converter and then you’ll have hard-wired with the option for OTA updates.
I understand the arguments for centralized smarts; but I think there are a ton of great applications for having smarts in each room - IR repeater, motion detection; ambient light sensor…
I really would want something like the Ether10 which supports OTA. Then it is hardwired and takes PoE. Stick a relay on the board and I can then retrofit my light switches which don’t have Line + Neutral available.