Desk Compatibility - tjhorner/wifi-desk-controller GitHub Wiki

Verified Desks

These desks are verified to be compatible with this project:

Verifying a New Desk

If your desk is not listed above, you can follow these steps to check if it is possibly compatible. If it is, then I can add it to the verified desks list and start providing stock firmware for it. Thank you in advance for helping this community effort!

Physical & Electrical Compatibility

First, it needs to be physically and electrically compatible:

  • The desk must connect to its keypad via an RJ45 connection
  • The desk must provide +5V on pin 5, and GND on pin 3

The first requirement is easy enough to verify visually, but the second isn't quite as easy without an RJ45 breakout + a multimeter. You can get RJ45 breakout boards for very cheap, and I assume you probably already have a multimeter if you're interested in this project :)

If you've verified the physical and electrical compatibility of your desk and need a WiFi Desk Controller to test the firmware, hit me up on Twitter (@tjhorner) or email ([email protected]) and I will gladly send you one for free! (Just pay shipping.)

Protocol Compatibility

Once you have verified the physical and electrical compatibility, we now need to check if the desk uses a protocol already implemented in the firmware component. To provide background, most standing desk controllers (the big brick that controls the motors) are simply white-labeled parts, and thus many brands will share similar protocols.

Currently, there are 2 protocol decoders implemented in the firmware, and each is named after the first desk they were discovered on. There is a good chance that one of these will work with your desk, so you may wish to try each to see if they work. The easiest way to do this is by flashing the stock firmware for each currently-verified desk.

If one of these works for you, that's great! Please let me know by opening an issue, making sure to include your desk's brand/model, and which config worked for you. I will add it to the verified desks list and start providing a stock firmware for it.

If none of them work for you, then you will need to do a bit of reverse engineering to find out how your desk communicates with its keypad. Unfortunately, there's no straightforward instructions on how to do this due to the nature of it, but you can look at the various decoder implementations to get an idea of where to start:

Don't hesitate to reach out if you need help! There is a dedicated discussion category for reverse engineering help. I will be monitoring it and help out wherever I can.

Resources

Here are some resources I've gathered from reverse engineering previous desks; they may be helpful.

RJ45 Pinout

RJ45 Pin Board Label GPIO Pin UPLIFT V2 Purpose
1 D1 5 M Button
2 D2 4 Serial RX (from desk)
3 N/A (GND) N/A (GND) GND
4 D5 14 Serial TX (to desk)
5 N/A (+5V) N/A (+5V) +5V
6 D6 12 Memory Recall
7 D7 13 Move Up
8 D8 15 Move Down

Helpful Repos

https://github.com/phord/Jarvis

https://github.com/rmcgibbo/Jarvis