Pixhawk 2.4.8 bdshot issues

Greetings,
I am setting up a quad with Pixhawk 2.4.8 and am attempting to set up bdshot on the ESCs. I have loaded the Pixhawk1-bdshot firmware and set Dshot600 on AUX ports 1-4.
This is my ESC: https://robu.in/product/emax-d-shot-bullet-series-15a-2-4s-blheli_s-esc-3-5g-support-onshot42-multishot/

I have followed the wiki on setting passthrough suport for bdshot ESCs. Without setting the bitmask for bdshot (SERVO_BLH_BDMASK), I can spin all motors in motor test.
But setting after this bitmask, I cannot. Now, the motors emit the startup two beep sequence on loop and HUD shows AHRS Unhealthy.

Now, my intention for bdshot is basically for setting a custom startup tone using esc-configurator.com.
I can connect to the board in the website, but only ESC 4 get recognized on Read Setup. I have connected other ESCs to this AUX 4 port to test whether this is a board issue, but only that particular ESC originally connected to AUX 4 works (it works on any AUX port).

Here is the log from the configurator:

2025-10-29 @ 13:31:05 – Done reading ESCs
2025-10-29 @ 13:31:05 – Read ESC 4: M-H-30 - BLHeli_S, 16.5
2025-10-29 @ 13:30:53 – Failed reading ESC 3
2025-10-29 @ 13:30:52 – Failed reading ESC 2
2025-10-29 @ 13:30:49 – Failed reading ESC 1
2025-10-29 @ 13:30:38 – Trying to read 4 ESCs
2025-10-29 @ 13:30:34 – Unique device ID received - 0x020002a3533511639363930
2025-10-29 @ 13:30:34 – Board: ARCH, version: 0
2025-10-29 @ 13:30:34 – Running firmware released on: Mar 16 2018 08:42:29
2025-10-29 @ 13:30:34 – Flight controller info, identifier: ARDU version: 3.3.1
2025-10-29 @ 13:30:34 – MultiWii API version received: 1.42.0
2025-10-29 @ 13:30:34 – Opened serial port
2025-10-29 @ 13:30:25 – Plugged in

Any help is appreciated!

You need to flash Bluejay to BLHeli_S ESC’s for Bdshot. If there is a firmware target for those. Try it anyway. If they brick at least they are as cheap as an ESC gets…

From the Wiki:
Official versions of BLHeli_S do not support bi-directional DShot, you will need to either buy a version from BLHeli_S JESC or use BLHeli_S BlueJay . If you try and enable bi-directional DShot with the wrong firmware version then unpredictable motor operation can occur.

But only one particular ESC is detected. So how do I get to flash to the three others?

Also, didn’t know that blhlei_s didn’t support bdshot

Maybe you have configured it wrong in Arducopter for passthru to work.

You can buy BLHeli_S ESC’s with Blujay already on them.

I have configured all params as given in the wiki article on Bdshot passthrough. I’ve set bdmask and blh_mask accordingly. But like I told earlier regardless of the value set in bdmask, that one particular ESC still gets detected.

Also another point is that this particular ESC’s top cover/plate/sort-of-heatsink? had come off. Maybe is that influencing something? I plan on taping it back on

It doesn’t have Bdshot capable firmware on it so you would not configure for that until it did. Configure for Dshot and try the configurator.
Post your parameter file after doing so.

Bdshot firmware on where? Pixhawk or ESC? On pixhawk, I did install Pixhawk1-bdshot.
Will post the param file soon

Bluejay on the ESC.

But to configure, I need it to detect all ESCs. How can I do it if it only detects one? By one, I mean not any ESC connected to a particular AUX port but rather a particular ESC only, regardless of where I connect it to

DSHot.param (16.2 KB)
Here is the param file

Nothing wrong in the parameters for Dshot600 on the 1st four Aux outputs.
Test them using Mission Planners Motor Test. If one doesn’t run as you seem to imply replace it.

In fact motor test works perfectly.

I guess I may need to configure an Arduino to flash Bluejay later :slight_smile:

Also, if this is any information, 3dmask makes all motors spin at what seems like full throttle

3D mask? Well yea sure it would, but it would be ~50% throttle maybe.
That is irrelevant information as it’s a setting for reversible ESC’s.

Well, okay so what’s the procedure to motor test with 3dmask at lower levels?

Are you talking about this parameter?
SERVO_BLH_3DMASK

If so, read the description field in Mission Planners Full parameters list. Then determine if it has any relevancy for you and the type of craft you are building. My guess is it has none.

1 Like

Well, yes. I was just trying to reverse the motors out of curiosity. Seting rvmask after setting 3dmask seems to work but in a peculiar way. The 3dmask makes notes spin in the current forward direction at 50% throttle. Then testing the reversed motor, it will have slightly lowered it’s speed from 50%.
I just told this just in case this information is useful for analyzing what’s wrong with the ESCs not being recognised in the ESC configurator

You would not use that parameter for that purpose. Or any other purpose on a typical multirotor. It’s used for Rovers, boats and Planes (reversible thrust).

2 Likes

I have some positive developments: I am a le to detect and flash the latest blheli_s firmware (v16.7) by using an Arduino nano as a bootloader.
But to flash Bluejay, I need either esc configurator (which still only detects a single particular ESC) and bluejay configurator which throws a bunch of errors (Type error: Cannot read property ‘toString’ of undefined … ) on reading setup. So what should I do?

Perhaps there is no Bluejay target for that ESC. If so No Bdshot for you with those ESC’s.