Traditional Heli Bdshot

Hello @andyp1per,

I am having issues trying to setup the BDshot for better telemetry rate in the Helicopter. The motor works fine with dshot without bi-direction, but when I mark the BLH_BDMASK the ESC doesnt return the expected bip sounds when is ready. When arming or it fires up or doesn start, very hawkward. Any hint?
BTW where can we see the rpms? Shall I set the RPM1=5 is this enough?
I am using the MatekH743 and the Holybro Tekko32 F3 Metal with latest v32.8.

Here is the parameters I use. Thank you for the support!

That board has PWM 1&2 in a group so you need to at least set the output for the whole group so set BDMASK 3 and MASK 3. If that doesn’t work then try increasing SERVO_DSHOT_RATE - I have seen people have problems with that ESC.

1 Like

Godamn Its Working Now!! :smiley:

Is this working in the 4.1.1 version?

Many thanks!

Look in the mission planner status page escX_rpm - you will need to make sure your mavlink connection is v2

OK, I have disconnected the Telemetry wire and I can still see the esc1_rpm data, this means the telemetry is comming from the Bdshot line. But if I have both connected, I see all data like voltage, current, temp and also the rpms, question: How do I know that the rpms arent comming from the Telemetry wire again?

You have to trust me - it is. With bdshot you can reduce TRATE to 5Hz say since you don’t need the other data updated that often

:smiley: I trust you! Below is the rpm variation with the bdshot rpm data. Is there a way to improve this? Other BLHeli ESCs have similar picture? With such variation I dont think it can be use to work with the internal Governor that @bnsgeyer is working on. If its like that I need an hall sensor instead.

You could try playing with SERVO_DSHOT_RATE - this affects the frequency at which data comes back as well as the frequency that dshot request go out. Try setting it to 5, say, so that your effective dshot rate is 2Khz (5 x 400Hz loop rate). Other than that 100 RPM resolution is only 1.6Hz which is way below what multicopters need, so possibly this is as good as it gets.

Just change the DSHOT_RATE = 5, the esc1_rpm is showing 32000 rpms and I am scaling down to 0,0916 (gear ratio to the rotor). This is a 8 pol motor dont know if this the difference to the multicopters with 14. The other BLHeli ESCs have much better resolution ?
esc1_rpm


scaled down to rotor RPM

I suspect this is just jitter in the measurement - seems like you just want a smoothed version of this

The multicopters dont have gear box, dont know if the gears when they roll, they feedback mechanically to the motor and we see this spikes in the rpms.
I am going to test it by plugging another motor outside just “freely” rotating to check the above.

yes you are right, any improvement idea? kind of a filter?

Well just a low pass filter would work. We have other filters but I would start there.