# Bi-Directional DShot

**URL:** <https://discuss.cubepilot.org/t/bi-directional-dshot/12651>\
**Category:** Multirotor\
**Created:** [25 January 2024 20:14 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651 "2024-01-25T20:14:53Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![KiwiDrones](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/k/5f9b8f/32.png) [@KiwiDrones](https://discuss.cubepilot.org/u/KiwiDrones)\
**Post date:** [25 January 2024 20:14 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/1 "2024-01-25T20:14:53Z")

</div>

Is Bi-Directional DShot available on the Orange Cube or Orange+ Cube MAIN outlet pins 1~8?

---

<div class="post-metadata">

**Author:** ![davidbitton](https://discuss.cubepilot.org/user_avatar/discuss.cubepilot.org/davidbitton/32/19_2.png) [@davidbitton](https://discuss.cubepilot.org/u/davidbitton)\
**Post date:** [27 January 2024 03:00 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/2 "2024-01-27T03:00:39Z")

</div>

In dev

> <https://github.com/ArduPilot/ardupilot/pull/26081#pullrequestreview-1843713867>
>
> These are the Copter, Rover, Plane-4.5.0-beta1 release notes.
> 
> All feedback an…d corrections are more than welcome.
> 
> Just looking at the list myself, I can see that some lines are a little too long or could be explained better so don't be shy..

---

<div class="post-metadata">

**Author:** ![xfacta](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/x/5f8ce5/32.png) [@xfacta](https://discuss.cubepilot.org/u/xfacta)\
**Post date:** [27 January 2024 08:23 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/3 "2024-01-27T08:23:22Z")

</div>

Bi-Directional DSHOT will be available on the first **4** Main outputs.  
DSHOT will be available on all 8 Main outputs.

So if you need more than 4, better to set up the telem wire to a serial port and get RPM plus a bunch of other data that way. This can still be used along side bidirectional DSHOT too.

> **[DShot on IOMCU - it's here!](https://discuss.ardupilot.org/t/dshot-on-iomcu-its-here/102150)**
>
> People have long wanted dshot support on IOMCU (i.e. the first 8 channels of a CubeOrange for instance) - and it’s finally here! However, I need some help testing. If you are feeling brave and want to try it out, here is what you do. There are...

> **[Bi-directional DShot on IOMCU - it's here!](https://discuss.ardupilot.org/t/bi-directional-dshot-on-iomcu-its-here/108221)**
>
> In a follow-up to the dshot for IOMCU support that I did (DShot on IOMCU - it's here!) it is also possible to support bi-directional dshot on IOMCU - and I finally have this working! However, again, I need some help testing. If you are feeling...

---

<div class="post-metadata">

**Author:** ![KiwiDrones](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/k/5f9b8f/32.png) [@KiwiDrones](https://discuss.cubepilot.org/u/KiwiDrones)\
**Post date:** [29 January 2024 00:34 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/4 "2024-01-29T00:34:41Z")

</div>

@xfacta Thanks for the update. Help is on the way!

---

<div class="post-metadata">

**Author:** ![sidbh](https://discuss.cubepilot.org/user_avatar/discuss.cubepilot.org/sidbh/32/7358_2.png) [@sidbh](https://discuss.cubepilot.org/u/sidbh)\
**Post date:** [29 January 2024 23:31 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/5 "2024-01-29T23:31:59Z")

</div>

@KiwiDrones Bi-directional DShot will not work on Main outputs of Cube, only on Aux outputs. Cubes have protection circuit between IO out and IOMCU which is unidirectional. The protection circuit is important as it ensures that signals are strongly driven and IOMCU is isolated. If Bi-directional is needed it is recommended to use either Aux pins or separate Telem pin to read ESC info.

---

<div class="post-metadata">

**Author:** ![KiwiDrones](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/k/5f9b8f/32.png) [@KiwiDrones](https://discuss.cubepilot.org/u/KiwiDrones)\
**Post date:** [31 January 2024 02:34 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/6 "2024-01-31T02:34:35Z")

</div>

Thanks for explaining that!

---

<div class="post-metadata">

**Author:** ![SLek](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@SLek](https://discuss.cubepilot.org/u/SLek)\
**Post date:** [17 December 2024 14:03 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/7 "2024-12-17T14:03:54Z")

</div>

Hi,

To confirm, the Cube Orange, regardless of its hardware version, still does not support bi-directional DShot on the main outputs due to the protection circuit, correct?

---

<div class="post-metadata">

**Author:** ![xfacta](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/x/5f8ce5/32.png) [@xfacta](https://discuss.cubepilot.org/u/xfacta)\
**Post date:** [18 December 2024 11:27 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/8 "2024-12-18T11:27:58Z")

</div>

Correct.  
Ardupilot can do

- DSHOT150 and DSHOT300 on the Main outputs with standard firmware (BRD\_IO\_DSHOT,1)
- DSHOT on Aux outputs with standard firmware
- bidirectional DSHOT on the Aux outputs with the “bdshot” firmware

PX4 can do DSHOT in Aux output.

---

<div class="post-metadata">

**Author:** ![SLek](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/s/f9ae1b/32.png) [@SLek](https://discuss.cubepilot.org/u/SLek)\
**Post date:** [18 December 2024 15:14 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/9 "2024-12-18T15:14:43Z")

</div>

Thank you for your reply!

---

<div class="post-metadata">

**Author:** ![Kalai\_Selvan](https://discuss.cubepilot.org/user_avatar/discuss.cubepilot.org/kalai_selvan/32/195_2.png) [@Kalai\_Selvan](https://discuss.cubepilot.org/u/Kalai_Selvan)\
**Post date:** [17 March 2026 15:48 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/10 "2026-03-17T15:48:39Z")

</div>

> [@xfacta](#):
>
> bidirectional DSHOT on the Aux outputs with the “bdshot” firmware

Hi @xfacta I just looking for CubeOrangePlus bdshot firmware in the weblink provided here. [ArduPilot firmware : /Copter/stable-4.6.3](https://firmware.ardupilot.org/Copter/stable-4.6.3/)

I could not find bdshot firmware for CubeOrangePlus rather I could find bdshot firmware for CubeOrange as screen shot and highlighted here.

But for CubeOrangePlus bdshot-heli is available. Kindly guide me to choose right bdshot firmware for CubeOrangePlus.

 ![IMG_5684](https://discuss.cubepilot.org/uploads/default/original/2X/2/2baad834ae84e89c6e971c23643ebf51f4745d0d.jpeg)

---

<div class="post-metadata">

**Author:** ![xfacta](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/x/5f8ce5/32.png) [@xfacta](https://discuss.cubepilot.org/u/xfacta)\
**Post date:** [18 March 2026 00:27 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/11 "2026-03-18T00:27:01Z")

</div>

The BDSHOT firmware is there in the STABLE directory, which is ver 4.6.2

I’m unsure why there’s no dbshot firmware in 4.6.3 or why all the 4.6.3 versions are not promoted to Stable.  
**I can look into it**

Until then you can safely use 4.6.2 since there are only minor updates and nothing specific to the Cube.  
The 4.6.3 release notes list what’s different from 4.6.2 - not much, and a note that 4.6.3 was incorrectly marked as a Beta for a while, possibly what caused that missing firmware build.

> **[Copter-4.6.3 released!](https://discuss.ardupilot.org/t/copter-4-6-3-released/140596)**
>
> NOTE: 4.6.3 was re-released on 20-Nov-2025 after we noticed that the version was incorrect left at beta instead of stable. The update did not include any functional changes but the githash (visible in the messages tab soon after startup) changed...

---

<div class="post-metadata">

**Author:** ![Kalai\_Selvan](https://discuss.cubepilot.org/user_avatar/discuss.cubepilot.org/kalai_selvan/32/195_2.png) [@Kalai\_Selvan](https://discuss.cubepilot.org/u/Kalai_Selvan)\
**Post date:** [18 March 2026 07:26 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/12 "2026-03-18T07:26:05Z")

</div>

Thanks for the response @xfacta

I tested with 4.6.2 CubeOrangePlus Bdshot firmware in Hobbywing 4in1 65A ESC and I getting only RPM data.

Here the ESC product link: [https://www.hobbywing.com/en/products/xrotor-fpv-g2-65a-4in1-esc268](https://www.hobbywing.com/en/products/xrotor-fpv-g2-65a-4in1-esc268)

This ESC doesn’t has the Telemetry pinout. How to get ESC Volt,Current and Temperature or it requires telemetry signal from ESC to get this data’s.

---

<div class="post-metadata">

**Author:** ![xfacta](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/x/5f8ce5/32.png) [@xfacta](https://discuss.cubepilot.org/u/xfacta)\
**Post date:** [18 March 2026 09:14 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/13 "2026-03-18T09:14:17Z")

</div>

There’s an extended BDSHOT which not all ESCs support, otherwise you need the telemetry wire connected to a serial port RX pin.  
That ESC should have AM32 firmware, so try the `SERVO_DSHOT_ESC` parameter and add EDT

> **[Complete Parameter List — Copter documentation](https://ardupilot.org/copter/docs/parameters.html#servo-dshot-esc-servo-dshot-esc-type)**

---

<div class="post-metadata">

**Author:** ![Kalai\_Selvan](https://discuss.cubepilot.org/user_avatar/discuss.cubepilot.org/kalai_selvan/32/195_2.png) [@Kalai\_Selvan](https://discuss.cubepilot.org/u/Kalai_Selvan)\
**Post date:** [18 March 2026 11:20 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/14 "2026-03-18T11:20:57Z")

</div>

Hi @xfacta i have tried SERVO\_DSHOT\_ESC = 3 (BLheli32/AM32/Kiss +EDT) but still i can able to get the RPM data Only.

ESC not using AM32 instead BLheli 32.9 firmware with Auto Telemetery On.

i have attached Cube Parameter file and ESC configuration screen shot here.

 ![Screenshot 2026-03-18 165142](https://discuss.cubepilot.org/uploads/default/original/2X/c/ca2698aa63039bbad87991a179d3703ca9af337c.png)

 ![BLheli 32 configuration_hobbywing 65A 4in1 ESC](https://discuss.cubepilot.org/uploads/default/original/2X/1/1636650d1a294f86ea3ea87f7b18c4381264befb.png)

---

<div class="post-metadata">

**Author:** ![xfacta](https://discuss.cubepilot.org/letter_avatar_proxy/v4/letter/x/5f8ce5/32.png) [@xfacta](https://discuss.cubepilot.org/u/xfacta)\
**Post date:** [22 March 2026 07:02 UTC](https://discuss.cubepilot.org/t/bi-directional-dshot/12651/15 "2026-03-22T07:02:07Z")

</div>

You dont need Auto-telemtry on, DSHOT will request the data when required. If BDSHOT is not returning the extended data with your ESC, then you’ll have to cable up the telem wire to a serial port RX pin, say Serial 4 (GPS2) and set these:

```auto
SERIAL4_BAUD,115
SERIAL4_OPTIONS,16
SERIAL4_PROTOCOL,16

```

Technically you dont need anything set in `SERVO_BLH_MASK` when `SERVO_BLH_AUTO` is set.  
`SERVO_BLH_BDMASK` looks correct.
