Project help - Standing Desk to Smart Desk

Thanks for your reply! I will try that. If the holes connect to the wires, why are there only 5 holes but 6 wires? :confused:

And what is the difference between B-TX and D-TX, B-RX and D-RX?

If I try to build the pass-through dongle, I would need to have each wire go to the analyzer as well as the controller, right?

Maybe the 6th wire runs off somewhere else. It could be the earth or power. You can maybe see another trace at the very right.

I have no clue about the B/D convention. Perhaps it is referring to what device it is in reference to (either the controller or remote).

I don’t have much clue about the above though.

When you build the pass through, the important thing should be that the original wires all pass through as they did originally and the controller works as it should.

Then you also fork off your 6 wires. They shouldn’t need to be connected to anything. They can hang. Then you should be able to test them one by one and check for signals.

But again, I’m not very experienced with this, so could be wrong.

I think this is suggesting the wires are

“P”, RX, TX, 5v, Ground.

P could be something like “program” or “presets” or “wake”.

The presets could be transmitted on a dedicated wire.

I did some testing with a multimeter and it turns out, that the wires are connected the following way:

Controller → Control Box
P → Key1
R → D-TX
T → D-RX
5 → +5V
G → G

I hooked up my logic analyzer to the holes in the controller and I get different readings if I press the buttons. The problem is that I have no idea how to properly analyze any of that data. Which settings to use in the logic analyzer software ( I use Logic 2 by saleae) and how to decode them.

Any tips/ideas on that? :slight_smile:

1 Like

I don’t use logic analysers much.

But Sigok software that I use (and presumably others) have “UART decoders” you can turn on.

See images.

https://www.google.com/search?q=sigrok+uart+decoder&prmd=isvn&sxsrf=ALiCzsZIy9BGmemcLpH3R86-t1w9-V3TSw:1661113082483&source=lnms&tbm=isch&sa=X&ved=2ahUKEwji7dm54Nj5AhXTE7cAHcH3DOYQ_AUoAXoECAIQAQ&biw=393&bih=689&dpr=2.75

I would initially see if you can figure out which wire of the Rx or tx is sending height data from the controller to the handset.

There should be quite a lot of data changing on this wire, as it’s sending data to update the screen. I think it will be on the “R” pin.

1 Like

Once you’ve confirmed you’ve got UART codes, you’re into decoding stage (which again I don’t have much experience with).

You probably want to decide soon if you’re going down a Home Assistant+ ESPHome route, and get ready for that.

You can also start decoding messages with the ESPHome UART debugger.

And then I’d also start a thread on the ESPHome Discord and cross your fingers that @ssieb might help you out. Refer to Desky and this thread etc.
That’s where the real guru’s are active;) There will be a lot of experience over there with decoding and also the next step after that, which could be building a custom component.

I can help you a bit over there over too.

1 Like

Decode UART

1 Like

Thanks a lot @Mahko_Mahko! I will have a look into that :blush:

1 Like

This guy seems to have the same desk.

I don’t seem to have access to that discord channel. Is it on the esphome discord?

Edit: Nevermind, I joined the discord. Thanks for mentioning me! :slight_smile:

1 Like

I got the sigrok pulseview software working. My main problem is knowing which parts of the data are corresponding with the button presses because there is a constant data flow even if no button is pressed and the LED Display is off. And I couldn’t find a timestamp function to start and stop, when I press a button :confused:

One thing that might be worth checking (and again with me not knowing much about these things) is if your analyser needs to be grounded properly.

I know I had lots of noise coming through when I was reading data on my esp32 without correct grounding.

1 Like

There are two kinds of these splitters and unfortunately, they look identical and they are often not described correctly. I was looking for this kind that lets you run 2 100Mb connections over a single wire, but once I instead received the kind that duplicates all wires on both sides. So they do exist if you can find them.

1 Like

Any luck in connecting this desk to Home Assistant? I have the same desk controller and would love to integrate it in Home Assistant

1 Like

Any updates here ? I have the same desk controller!

Hey everyone, thanks for your interest! Unfortunately, I couldn‘t figure out the wiring of the desk and I don‘t have the time to investigate any further.

You‘re best bet is to probably join the ESPHome Discord and ask around for help. There‘s a lot of smart people there that could potentially help you out.

Best of luck!

& let me know, if you were able to figure it out. :slight_smile:

I was able to capture UART data with ESPHome, but don’t know how to decode/use it. Maybe @ssieb can help if I share the captured UART data ?

Thanks!!

Possibly. Create a thread on the esphome Discord off-topic channel.

It seems like I also do have the same Controller. Could some provide a pin diagram so I can also connect it up to a ESP8266?

Have you gotten anywhere with this?

A key reason why you didn’t get much luck with the RJ45 splitter is because this desk’s controller actually uses RJ50 - note how there’s 10 pins in the RJ connector (and 10 labeled pins on the board too!).

For some reason your motor controller also seems to have a B and a D UART channel (B-TX, B-RX, and D-RX and D-TX). Key 1 and Key 2 most likely connect to direct keys on the control panel (e.g. Memory button).

I’m in a similar conundrum, my desk uses a JSM-2.1-0.3W motor controller, which also employs an RJ50 jack instead of RJ45. I’ve only pulled the hand controller apart as of now, but it only shows a handful of pins (with the weirdest colour assignments, black and white are RX/TX, blue is ground, green is 5V, and there’s also a U_G and a DC pin, latter I think has the full 24/36V rail exposed from the motor controller, but I’ll have to take that apart to confirm it).