We have official BLHeli_32 confirmation from BLHeli Developers. Let’s find out what it is about, what advantages it brings, and what changes there are moving forward.
What is BLheli_32?
BLHeli is an ESC firmware, and BLHeli_32 is the 3rd generation after BLHeli and BLHeli_S.
BLHeli_32 is written for ESC‘s that utilize 32-bit MCU (STM32F0 Cortex-M0 at 48MHz), unlike BLHeli and BLHeli_S ESC’s that runs on 8-bit processors. BLHeli_32 does not work with 8bit Atmel or Silabs ESC’s.
Benefits of BLHeli_32 Firmware on 32-bit ESC
32bit processors run faster than 8bit, at which we can expect better performance from the new 32bit ESC’s. Faster input signals with lower latency and higher update rate would be possible, such as Dshot1200 or even faster protocols! (Read about DShot)
The 32-bit platform also allows more functionality and features that simply wasn’t possible on 8bit ESC’s, such as
- programmable PWM frequency of up to 48KHz
- Auto-timing for higher efficiency and realiability
- Voltage/Current limiting
- Adjustable “Brake on Stop” force
- Improve direction change in Bidirectional mode
- ESC Telemetry
- Configuring from FC using DShot commands
Note that these features are just ideas from the developer (aka sskaug) at the moment and haven’t all been implemented. Some of these sound familiar from the KISS 24A ESC’s. Anyway we should discover more about the new possibility as development continues.
Some Changes From Previous Firmware
The previous BLHeli and BLHeli_S are open source, however the developers have decided to close source the new 32bit firmware. Their names might maintain the same prefix, but we were told BLHeli_32 has been created from scratch. (BLHeli and _S are both Assembly based while BLHeli_32 is C based) ESC manufacturers will have to pay BLHeli developers a licence fee directly to use their 32bit firmware, therefore expect some increase in ESC price.
When asked why the project has become close-source, sskaug replied:
From starting as a personal project to make my mCPX helicopter brushless, BLHeli as come a long way. Some of the major milestones were when we decided to pursue the multirotor segment as well, still as a hobby project, where people flashed various (non BLHeli) ESCs with BLHeli FW. Still moderate activity and efforts. But then at some point, probably starting with the Littlebee, manufacturers started making dedicated ESCs for BLHeli FW. Which I think was a major step forward for the community, as now we have a plethora of very good ESCs for multicopters. Then there was a new milestone where we decided to pursue BLHeli_S, as smoothness of BLHeli was still inferior to other ESCs in the market. And by this time we had close to 20 manufacturers doing BLHeli_S! Supporting which is actually a significant workload.
So then came the next milestone – what was next? ARM 32bit MCUs were a pretty obvious choice, as they are flooding the market from various manufacturers and are getting quite cheap. But at least for me, I was at a point where I did not want to undertake the workload I knew would come without some returns. So this is where we are now, closed source with a modest fee for some returns on the work we actually do. While still supporting many manufacturers and keeping the generally low cost profile of BLHeli.
Hopefully BLHeli_32 will also serve the community well, and bring ESC performance and the hobby as a whole even some more steps forward.
One thing remains the same is using BLHeliSuite for flashing and configuring ESC’s, which is known to be incompatible with Mac and Linux but only Windows. BLHeli Configurator Chrome App was created to tackle this issue by third party developer Andrey Mironov,. But we found out that it won’t support BLHeli_32 since it’s close-source.
BLHeliSuite will require an internet connection in order to flash/update new firmware, that probably means you can’t do it on the field easily. The serial number of the ESC has to be validated at the manufacturers, this is to prevent clones or illegal use of their firmware.
Who are making 32-bit ESC’s that will support BLHeli_32?
Pretty much every ESC manufacturer is already working on this as far as I know (April 2017).
However, in order to run BLHeli_32 firmware, the ESC must be designed specifically for BLHeli_32 according to sskaug. That means 32bit ESC’s that already exist today won’t be able to run it.
And the first ESC that supports BLHeli_32 has already been announced – the Wraith32 and Wraith32 Plus by Airbot.
Pre-order is available on FPVModel now.