I recently bought a few ceiling fan controllers from AliExpress, I’m guessing there are a lot more out there with a similar electrical design so I thought perhaps my notes on tearing these down would be useful for someone as I didn’t find this elsewhere on the internet. As I was taking them apart to replace the wireless section with an ESP8266 for WiFi remote control I thought I’d document the design of these devices a bit.
Firstly, the main circuits run at 12v – the relays are triggered by that voltage, and the remote control uses a small 12v battery too. However the radio is only rated for 5v, so I think there must be a 5v circuit there as well probably obtained via resistors from the 12v circuit. The basic block layout is that the radio receiver connects to an unmarked chip (in some models this connects to an AT24C02N which presumably holds the last state of the relays). The unmarked chip has 5 output tracks running from it to an ULN2003A which boosts the signal to 12v to trigger the relays. 4 tracks go to the 4 relays (one for the light, and 3 for fan control which has live, 3uF and 2.5uF (2uF in some models) capacitors to regulate the speed). The 5th track goes to a buzzer which is triggered when it gets powered on or receives a command from the remote controller. Unfortunately I can’t remember the order that fan relays were triggered as I wrote it down lost it, but it was something along the lines of:
high | live |
medium | 3uF + 2.5uF |
low | 3uF |
The radio receiver in the ceiling fan based on a SYN470R chip and the transmitter uses an EV1527 to encode the data to send to the fan. It sends 24-bits – a 20 bit id and a 4 bit code. Here are the hex codes for the commands as discovered by my patches to allow this device to work on a C.H.I.P board:
Command | Hex code |
---|---|
low | 8 |
medium | 2 |
high | 6 |
stop | c |
toggle light on/off | 5 |
timer 1h | 4 |
timer 2h | |
timer 4h | |
timer 8h |