The first new module that has been installed since the PSU has gone live was a MEDTech’s Remote Control Electric Power Traverse Curtain Rod controller. The motor supported the ability to add your own controller via an RJ12 plug. It breaks out to COMMON, OPEN, CLOSE and STOP wires. I ran a CAT5 cable so I could use the 4 remaining wires for a possible future open and close sensor for when the ESP8266 reboots it would know the state of the curtain. I choose not to wire this to the Raspberry PI because I like to have each control system to have its own controller to help isolate any issues.
This module consisted of my room sensor (https://hackaday.io/project/167632-just-another-room-sensor), an RJ12 breakout (https://www.amazon.com/gp/product/B00KDKMZHI/) a relay module I had laying around. All this was mounted on a spare piece of polycarbonate and that in turn was mounted to the DIN rail (https://www.amazon.com/gp/product/B0787WX58B/). I left room on the polycarbonate so a second room sensor or JR12 breakout could be installed for any future control system that is needed.
One lesson learned was not to install the relay on the control panel until all the bug were worked out. It was not fun having to run up and down the stairs to verify the correct relays were triggering….
Board being assembled. The relays are interlocked and the commons are tied to the NC connection from the relay to the left. Relay one on the far left is STOP, relay 2 is OPEN and the 3rd is CLOSE. By interlocking the relay, there is no way to send it more than one command. I did not want to make any assumption that the motor could handle receiving both an OPEN and CLOSE command at the same time.
Project code is running off of ESPHome (https://esphome.io/components/cover/time_based.html) and my control file can be found here: https://github.com/jchambers2012/JARS/blob/master/windowscontrol.yaml
Wire guide from MEDTech: