BLHeli_32 Pass-Through Support¶
ArduPilot firmware supports the pass-through protocol with up-to-date BLHeli_32 firmware and BLHeliSuite32 or BLHeli_S firmware and BLHeliSuite only.
For pass-through to function, the motor protocol (Copter,Rover) or Q_M_PWM_TYPE (QuadPlane) must be set to a digital protocol, ie. one of the DShot protocols. If you wish to use one of the other protocols, just reset the motor protocol after using pass-through to change motor directions or set min/max values. The autopilot must be re-booted after a protocol change.
BLHeli pass-through protocol allows you to configure and upgrade your ESCs without having to disconnect them from your vehicle. You can plug a USB cable into your autopilot and run the BLHeliSuite or BLHeliSuite32 software for Windows to configure your ESCs. ArduPilot firmware supports the pass-through protocol with BLHeli_32 and BLHeli_S only.
The following section shows how to setup BLHeli pass-through support:¶
To enable BLHeli pass-through you need to set the following parameters and reboot your autopilot:
- Set SERVO_BLH_AUTO to 1 to enable automatic mapping of multirotor motors for BLHeli pass-through and telemetry support. for most multirotor and quadplane users this will do the right thing. if using BLHeli ESCs on non-multirotor motors with the respective SERVOn_FUNCTION set to 70 (=throttle), 73 (=throttle left) or 74 (=throttle right), you will need to further specify the used outputs as follows:
- Use SERVO_BLH_MASK to enable BLHeli pass-through and telemetry support on non-multirotor motors and / or exactly specify which servo outputs you want to enable BLHeli pass-through and telemetry on.
- Set SERVO_BLH_PORT to specify the autopilot’s port used to connect to your PC running BLHeliSuite32 (or BLHeliSuite for BLHeli_S) for ESC configuration. It defaults to USB and likely does not need to be altered. Beware that this does NOT specify the serial port used for the ESC’s telemetry feedback to your autopilot!
Now connect a USB cable to your autopilot and use BLHeliSuite32 on Windows to connect. Select “BLHeli32 Bootloader (Betaflight/Cleanflight)” from the interfaces menu.