Everything you need to know to build a DeskUp Pro Flexispot device yourself
To automate your desk, what we are going to make is the cable below with an RJ45 port at one end and wire it up to an ESP32 at the other. But before you buy anything check the likely compatibility of your desk here.
Caution advised:
- Its advisable to connect just the 5V and GND pins first between the desk and esp32, If your desk is compatible this should power up the esp32. The alternative is to use a multimeter. Once confirmed attach the gpio pins and flash the firmware.
- With this design be aware of static generated by carpets/woolly jumpers etc when handling the components as this could damage the esp32.
- Its advisable to ultimately solder the components and treat the device here as a proof of concept to avoid the Dupont cables coming detached. When soldering use short cables and place the device in an enclosure for its protection.

Materials needed
-
An ESP32, we used a SeeedStudio XIAO ESP32-C6.
-
An RJ45 Cable (T568B is used in this device, not all cables are this type) orange wire is on the side not the middle.
-
Dupont wires
-
RJ45 Breadout board or you can skip this and use an RJ45 cable with dupont connectors on it.
RJ45 to ESP32-C6 Pin Mapping
| RJ45 Pin | RJ45 Cable Colour | Dupont Colour | ESP32 Pin Used |
|---|---|---|---|
| PIN 1 | Orange/White | Unused | Unused |
| PIN 2 | Orange | Unused | Unused |
| PIN 3 | Green/White | Unused | Unused |
| PIN 4 | Blue | Blue | Virtual Screen - GPIO19 |
| PIN 5 | Blue/White | Green | TX - GPIO18 |
| PIN 6 | Green | Purple | RX - GPIO20 |
| PIN 7 | Brown/White | White | GND |
| PIN 8 | Brown | Brown | 5V |

3D Print a Box
Design your own enclosure.
Home Assistant Configuration
if you used the same SeeedStudio XIAO ESP32-C6 and gpio pins as us you can just flashbthe device using our firmware from here: https://smarthomeguys.github.io/DeskUp-Pro-Flexispot/Setup.html
Otherwise you first need to setup the ESP32 in Home Assistant which can be done within Home Assistant using ESPHome Builder.
You will need to do this from a laptop/PC. Attach the ESP32 via a USB-C cable to a USB-A or C port on your laptop and then click add a ‘New Device’ and follow the prompts.
Once you have the ESP32 device connected to your Wi-Fi you won’t need the USB cable once we are finished.
You should now have this showing in ESPHome Builder.
Let’s set up the ESP32 with the desk controller software.
Copy the yaml from this file into your one in ESPHome: https://github.com/SmartHomeGuys/DeskUp-Pro-Flexispot/blob/main/deskup-pro-flexispot-c6.yaml
Flash your device.