[HELP] RMT single wire bidirectional communication (dshot telemetry)

User avatar
citoyx
Posts: 14
Joined: Sat Sep 28, 2019 10:14 am

Re: [HELP] RMT single wire bidirectional communication (dshot telemetry)

Postby citoyx » Mon Dec 23, 2024 8:26 pm

Thank you very much.

Despite the fact my need is now old stories, regarding the lake of pertinent answer, i really appreciate that not only you find a solution to my question, but you took the time to reply here.

As far as im not much into mcu dev since few years now, i really wanted to express to you my gratitude.

Now, may be will take the time to catch up with your solution and try to test it on my old ESC/bldc motor.

Thanks a lot again

PurpleLilac
Posts: 1
Joined: Tue Apr 29, 2025 8:02 am

Re: [HELP] RMT single wire bidirectional communication (dshot telemetry)

Postby PurpleLilac » Tue Apr 29, 2025 8:28 am

Have you found a way yet?
I'm also very interested in using bidirectional DShot in one of my projects, but am failing to do it in a clean manner. Two not so good ways:
1) Use the telemetry wire, the telemetry frame (115200 baud, Serial 8N1) limits you to roughly 1kHz of signal rate, but for your purpose this should be ok (notice: slower erpm updates, no GCR encoding, ...)
2) Use a 1kOhm resistor between two GPIOs. One is the output, one is the input. Now connect the ESC signal wire to the input pin. The input pin will see this: dshot signal.png. From there, I think you know where to go (GCR decoding etc.)https://brushlesswhoop.com/dshot-and-bi ... nal-dshot/

But if you have found a cleaner (software) solution by using one pin as in- and output, I would be very interested to know, how you did it.
For me, this will be a long going project, so even if you find a solution in a year or more, please reply :)
Hello,
I am also trying to capture the ESC signal and i have been successful in that regard using an STM32. However, I have trouble in deciphering the captured data into eRPM. In the picture you provided and in my own testing, there seems to be only 20 bits coming back from the ESC, instead of 21. Maybe I'm missing something, but how would one go about decoding the signal from ESC?

well_tech
Posts: 7
Joined: Wed Feb 28, 2024 9:19 am

Re: [HELP] RMT single wire bidirectional communication (dshot telemetry)

Postby well_tech » Sun Jun 07, 2026 5:38 pm

Hi
I am also searching for bidirectional Dshot implementation option for ESP32-S3 and studying the thing found that in IDF5.5 there were flags .io_loop_back and .io_od_mode for rmt_tx_channel_config_t and rmt_rx_channel_config_t what (in theory) solves exactly the problem of bidirectional communication via single pin. But in 6.0 version I do not see these flags for config_t structures. Does anybody knows if they have been removed for a reason?

MicroController
Posts: 2661
Joined: Mon Oct 17, 2022 7:38 pm
Location: Europe, Germany

Re: [HELP] RMT single wire bidirectional communication (dshot telemetry)

Postby MicroController » Sun Jun 07, 2026 6:32 pm

You should be able to just initialize TX&RX on the same pin, then set that pin to OD via gpio_od_enable().

well_tech
Posts: 7
Joined: Wed Feb 28, 2024 9:19 am

Re: [HELP] RMT single wire bidirectional communication (dshot telemetry)

Postby well_tech » Sun Jun 07, 2026 8:22 pm

Hm, ok, thanks, will look into this

Who is online

Users browsing this forum: Semrush [Bot] and 1 guest