I have a Homecom wall mounted heater which I’d like to integrate into a home automation system. So we need to hack!
Remove 5 philips screws to release the back cover. Disconnect the ribbon cable and the switch spade terminals to separate the front and back covers. (The spade terminals in the unit are very tight and need a fair bit of force to remove)
Next remove the PCB. Again the spade terminals are very tight.
With the PCB removed we can take some pictures and reverse engineer the schematic.
The circuit uses an HS78L05 regulator to provide a 5V supply, but this is limited to about 100mA which is not enough for the ESP32 I intend to use. So I replaced it with a 5V buck convertor with a TO-220 form factor which plugs neatly into the PCB.
For the controller I used a Xiao ESP32C3 and wired it up using some 0.1″ Dupont connectors. Using the original ribbon cable would be neater but I had some ideas about reusing the original PCB.
Be careful, the ESP32 ground is tied to mains AC Live! I initially uploaded a sketch to the bare controller with basic OTA functions enabled. Once that was done I could then install the ESP32 in the unit and safely upload over the air as needed.
Firmware
Available here: https://github.com/ynformatics/WallHeater
I use MQTT for automation so the firmware exposes some MQTT topics as follows:
“homecom/heat”: accepts “LOW”, “HIGH” and “OFF” commands. “LOW” sets 1kW mode, “HIGH” 2kW mode. The fan is automatically turned on when heating is selected. “OFF” turns off the heaters and then the fan after a 30s cool down delay.
“homecom/cool”: accepts “ON” and “OFF” commands to turn the fan on or off. No heating.
“homecom/swing”: accepts “ON” and “OFF” commands to enable flap movement
“homecom/beep”: accepts a “BEEP” command
“homecom/status”: publishes status message every 5s
“homecom/debug”: publishes debug messages, including the WiFi address assigned at start up.
Part 2 – The display PCB
So the lure of the other pcb with its buttons and leds was to strong to resist. Here are the close up pictures:
And the reverse-engineered schematic: