I would like to control my Philips LivingColors 1st generation from Home Assistant. To make this possible I need to be able to communicate with the light. The LivingColors 1st generation uses a CC2500 2.4 GHz RF Transceiver for the communication between the remote control to the light. Some other smart people have already worked out how the communication protocol works, however a really decent way to integrate the light in Home Assistant is not yet available. There’s thus still some work to do.
Wiring the CC2500 module
I decided to connect a CC2500 module to an ESP8266 and then use ESPHome to integrate the light into Home Assistant. First I’m wiring the CC2500 to a ribbon cable with attached DuPont connectors. The ribbon cable barely fits the pitch of the pads on the CC2500 module, but to my own surprise the soldering worked out very well. I added some hot glue to enforce the connection and add some insulation.
Wiring the ESP8266
CC2500 | ESP8266 |
---|---|
GND | G |
VDD | 3V |
SI | D7/GPIO13 |
SCLK | D5/GPIO14 |
SO | D6/GPIO12 |
GD02 | |
GDO0 | |
CSn | D8/GPIO15 |
And the end result looks like this:
Testing
To test the resulting installation I used this piece of code, which unfortunately is only documented in German. I managed to decipher the workings, and I managed to have my Philips LivingColors remote to be recognised and have it change the colour of my light. Great succes!
ESPHome configuration
To set up this CC2500 module in ESPHome I needed to place a top-level SPI component which defines the pins to use for the SPI bus. Since there is no CC2500 component for ESPHome yet that will be the next thing I’m going to dive into.
esphome:
name: cc2500
esp8266:
board: nodemcu
# Enable logging
logger:
level: DEBUG
spi:
clk_pin: GPIO14
mosi_pin: GPIO13
miso_pin: GPIO12
Code language: YAML (yaml)
Leave a Reply