Alexa/SmartThings Controlled adjustable bed

Reverse Engineering an Serta Adjustable bed remote and building my own!

Similar projects worth following
Alexa/SmartThings Controlled adjustable bed

Why is the remote always missing when you need it? What if you could build your own, and control it from your phone or Alexa?! 

I have a Serta Adjustable bed that has a remote to control all of its functions.  I've always wanted to be able to control it in other ways than the stock remote. One possibility was to hack open the remote and use an ardiuno to activate relays which would push the buttons. Unfortunately, this would render the remote kinda useless for any other purpose. The PCB for the remote is also not that friendly to solder on to.

FCC to the rescue! Did you know that the FCC ID on the back of wireless devices is your key to an enormous amount of information about how it works?! I plugged the FCC ID into the FCC 's database and found out what frequency the remote uses. Luckily for me, the remote uses a daughter board for a wireless transceiver. This makes it a bit easier to replicate the remote, and in my case the remote uses a CC2500 transceiver. Unfortunately this isn't nearly as common as some other 2.4ghz devices. Ebay to the rescue! A few bucks and a few weeks later, I had a few of the CC2500's to play around with.

The CC2500 isn't all that popular, but luckily someone has already written some libraries for the arduino.  It has many possible modes.

It might be possible to just start up an arduino, setup the CC2500,  and start listening to what the remote is transmitting. I took a different route, because why not!

Logic Analyzers!  I hooked a logic analyzer (thanks ebay!) up to the pins on the remote that connect to the CC2500 board. Luckily, it uses SPI and wasn't too hard to see what data it was sending to the board. This allowed me to discover the packet length, channel, and all sorts of other settings it is telling the CC2500 to use. I could also see the different commands that were being transmitted.

Next up, setup my Arduino to talk to the CC2500 board, and listen. Using the configuration settings that I was able to read with the logic analyzer, i was able to setup my arduino to speak the same language and on the same frequency. I was also able to read the commands being sent by the remote and they matched what I was seeing with the logic analyzer.

Setting up the Arduino to send the same commands was next.  

I was able to program the arduino to send the commands to the CC2500 module and the bed responded. 

Taking this further, I setup a Particle program to create an interface and functions that can be called to send the commands to the bed. This interface allowed SmartThings to interact with the Particle Photon and send commands. Next step was to setup the smartthings device so that it acted like a switch that could be controlled by alexa.

All the code is now available on my GitHub at the Github link. 

This project uses a Particle Photon and a SmartThings hub.  You could also just use the code and use a normal Arduino Device. You will need a CC2500 Transmitter. These can be found for <$3 on ebay.  Be sure to setup an anenna on it, or get one that has a built in antenna. I used a 2inch piece of wire as the antenna and it works fine. I'm not sure the range. I put it under my bed near the control boxes. 

  • 1 × Spark Core Spark Core or Particle Photon
  • 1 × CC2500 2.4ghz transciever a small transciever that works on 2.4ghz freqnecy
  • 1 × SmartThings SmartThings system

View project log

Enjoy this project?



Robert Leach wrote 10/02/2021 at 18:23 point

So I have the Serta Motion iSeries Adjustable Bed. It works on 433Mhz - and it employs code jumping, so I can't just listen for the codes and replay them. Does your code get around the code jumping hurdle somehow? I'd love to be able to automate this thing, but I don't want to compromise my remote and another remote costs about $150... :(

  Are you sure? yes | no

Tony wrote 05/07/2020 at 18:25 point

Hey, thank you for this. I have a Matress firm adjustable base that I purchased and was hoping to do the same thing. The remote that came with it has the FCC ID 2AJJGHJC0 but I am not sure what I'm looking for. The pictures of the remotes they have listed their doesn't look like mine so I am thinking Matress firm maybe used the guts and just rebranded the outside. From what I can tell its 2.4Ghz also but I am just not sure where to get started. Can you check the FCC ID and let me know for sure if it is in fact 2.4Ghz and what chipset its using? Just want to make sure I order the correct parts for it. I am familiar with the Arduino however this is my first time messing with wireless frequency. Thank you in advance!

  Are you sure? yes | no

kyfalcon wrote 12/30/2018 at 20:38 point

Did you get this working? Both the remotes for my bed have bit the dust and  replacements are $125 a piece. I would much rather build my own and control them with home assistant using an arduino or nodeMCU.



  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates