RoboBlinds 6.1 - Better Controller

    Back when I redesigned my window blinds system, I drew up a better controller PCB and ordered it and forgot I had ordered it. So it arrived and I threw it onto a pile of parts and forgot about it for a while. Recently I remembered it and assembled it. It does the exact same work as before, but smaller and cleaner. Originally I built an all-in-one PCB that could be an actuator controller board of a master controller, and used that for both roles. The problem there was that I had a heavy ground plane to handle motor power, and the low-quality PCB antenna on the ESP32-C3 didn't like that at all. So I had to use a special ESP32-C3 with an external antenna, and that made the whole thing big and clunky. So I designed a smaller master-only PCB that left a big gap around the PCB antenna and didn't have space for any of the motor control components. It also directs the power cable and actuator control cable up and down, instead of sideways. The all-purpose board was designed for the actuators, not for the master. Much smaller, no big external antenna, better cable routing, looks nicer all around.

  

    Additionally, the blinds work very well but every once in a while they become unresponsive. Like, maybe once every two or three weeks. Usually I just unplug them and plug them back in and they start working again, but I wanted to figure out why this is happening. So I added a bit more introspection and also an as-needed web server that can print all of the terminal output to a website. One major limitation of debugging through UART is that sometimes I have to plug USB data in first, and then power in second. USB/UART might not connect properly if the board is already powered on from 24VDC. So this web interface ensures I can always check terminal output if there's anything to check.