I just upgraded my plane from 4.0.6 to 4.1.0 stable and previously working ESC telemetry on Serial5 stopped working (Pixracer FC and blheli32 ESC). I checked configuration and there remained SERIAL5_PROTOCOL16 and speed 115200, wiring was also unchanged, but telemetry doesn’t work with 4.1.0.
After reverting back to 4.0.9 and (to be sure) restoring original settings telemetry works again.
Is it known problem or I’m doing something wrong?
Maybe it helps to narrow down the problem:
On F405 Wing (SERIAL6_BAUD 115200, SERIAL6_OPTIONS 0 and SERIAL6_PROTOCOL 16) the reading of the blheli_32 telemetry data works without problems even after updating to 4.1 stable.
Waking up this as the problem remains also till 4.1.7.
Last autumn I was unable to make blheli_32 telemetry work so I reverted back to 4.0.6 (this made blheli_32 telemetry back working) and used it by the end of the season.
Now before next season I upgraded from 4.0.6 to 4.1.7 (actual last stable) and ESC telemetry stopped working again.
Tested before - worked, tested after - not working. Wiring and parameters unchanged.
I use Pixracer FC, blheli_32 ESC connected via extra wire to the free serial5 RX, settings SERIAL5_BAUD 115200, SERIAL5_OPTIONS 0 and SERIAL5_PROTOCOL 16.
I don’t want to “freeze” on 4.0.6, but want to take advantage from ESC tekemetry.
Anyone has an idea?
add: Reverted back to plane 4.0.9 and telemetry works again so something happened between 4.0.9 and 4.1.0. Any new setting introduced or what it could be?
I have a Matek H743 wing v2 running 4.1.7 and a BLHeli_32 ESC.
I have these settings:
I flashed a few different versions and I think I’ve figured out a pattern. Since 4.1.0 (the introduction of the bdshot versions for this board) it works fine if I run the regular load, but ESC telemetry breaks if I run the bdshot version and set SERVO_BLH_BDMASK=1.
If I set SERVO_BLH_BDMASK=0 and reboot the flight controller ESC telemetry works again.
Thanks a lot for an interesting hint, but seems not working for me
What protocol do you use to control ESC? (DSHOT?)
Do you have SERVO_BLH_AUTO enabled?
Can you connect to your ESC with BLHELI_32 suite via FC?
I use standard 4.1.7 (NOT bdshot) and controlling ESC via normal PWM. I have motor on servo 3 so I had SERVO_BLH_MASK 4, after setting to 0 I can’t connect to ESC with BLHELI_32 suite, but telemetry doesn’t work anyway. As I don’t have bdshot enabled, I don’t see any SERVO_BLH_BDMASK parameter.
I’ve used both dshot and regular PWM for the connection to the ESC. Passthrough for the BLHeli suite is documented to only work with dshot though. ESC telemetry works with both on regular 4.1.7.
I do have SERVO_BLH_AUTO but since it’s a regular plane I don’t think it actually does anything, and SERVO_BLH_MASK is needed. I am sometimes able to connect with BLHELI_32 suite on the first try, but sometimes it gives me an error but then works on the second try.
As I don’t have any dshot, I don’t have SERVO_BLH_BDMASK available to test if it enables telemetry. I tested SERVO_BLH_MASK instead if it doesn’t unlock telemetry too, but seems not.
I don’t stick on BLHELI_32 suite access - it’s usually not needed.
Question is if it’s not a board related problem because our boards are different, settings seem to be the same. I’ll maybe test 4.2 because there were some way reworked timers.
Once more thanks for an idea!
Developers, don’t you have some idea?
I had a chance to test again finally, and it does indeed look like I mis-spoke. ESC telemetry via the telemetry wire does not work if SERVO_BLH_OTYPE is set to zero. With it set to 5 (DShot300) it works.
I think that it might work with PWM if you set the ESC to periodically emit telemetry via BLHeliSuite32.