we want to use 2 BLHeli_32 ESCs and 2 other esc.
It would be great to drive the BL_heli ones with Dshot (and telemetry on separate cable, BDshot is a bit too much to start with) while having the other 2 esc on conventional PWM.
I only found MOT_PWM_TYPE that probably changes all motors.
Is there another way? Or an easy fix in the source code for this? (We compile ourselves anyways)
I already know that the Dshot pins have to be in one separate Pin-group, that would be possible.
Or is there another way to get telemetry from BLheli32 with PWM?
You can still get telemetry from a BLHeli32 ESC over the separate telemetry wire when using PWM to control it. See BLHeli32 and BLHeli_S ESCs — Plane documentation
You should be able to set MOT_PWM_TYPE to 0 (see PWM, OneShot and OneShot125 ESCs — Plane documentation for tuning the PWM ESC parameters), then set SERVO_BLH_MASK to your two BLHeli_32 ESCs, then set SERVO_BLH_OTYPE to the appropriate Dshot speed for those two.
This is described at DShot ESCs — Plane documentation as follows:
On Plane, all other motors use Normal (PWM) protocol. However, in Plane, any motor, like the traditional fixed wing’s main motor or Dual Motor Tailsitters (SERVOx_FUNCTION = 70 throttle, 73 throttle left and / or 74 throttle right), can be changed to a protocol other than PWM using the SERVO_BLH_MASK parameter to specify the output number of the motor together with the SERVO_BLH_OTYPE parameter to select the protocol of these motors independently of that selected for the copter function motors.
See also the docs on mixing ESCs: DShot ESCs — Plane documentation
Thanks a lot!
Servo_blh_mask seems to be perfect. No idea how i missed that. But i mainly looked in the Dshot section not in the standard output documentation. I’m currently building up a small teststand. I will then test this and report back.