What is BLHeli_S and why is it better?

The BLHeli developers have released the new code and added the S to set it apart from the base code, the S represents something special.. the next generation of ESC firmware. But what makes BLHeli__S firmware so special and is it worth upgrading yet? And will it actually make a difference to your multirotor flight performance? Read more to find out.

Key features of BLHeli_S

  • Hardware PWM – smoother and more responsive motor response
  • Always use damped light (Regenerative Breaking) for better multicopter control
  • Code supports sync loss prevention – tuneable parameters to make your ESC work well in the most demanding applications (not just FPV racing)
  • High resolution throttle steps
  • Supports Oneshot125 (125-250us), Oneshot42 (41.7-83.3us), Multishot (5-25us) protocols
  • Automatically detects input signal protocol on ESC power up
  • Beacon Function – your ESC will start beeping after a set time of zero throttle to help you find your quadcopter.

Why is hardware PWM better?

Since the initial release of BLHeli, hardware has improved so the new code is designed to take advantage of the new hardware improvements with the most signification being hardware generated PWM which gives much better performance. This is the most noticeable improvement of BLHeli_S as your motors run smoother, quieter and are technically more responsive too.

Because the hardware generated PWM signal is synchronized with the micro controller clock on the ESC, the motors run more silently and efficiently (with less high pitch squeal). This also enables much more precise throttle steps depending on the ESC hardware (micro-controller and PWM driver type), however the range is between 512 steps and as much as 2048 steps with high end ESC’s.

The hardware PWM also allows you to control very high speed motors (up to 500k eRPM with some hardware). With the older BLHeli firmware and software PWM, the maximum speed signals can be sent to the motor was 16Khz. With the hardware PWM, your ESC can send signals at about 36Khz which is rather insane. Because your motors are getting updates much faster the control is much more precise and smoother response.

Are 32 bit ESC any better?

Many of the new BLHeli_S esc’s coming to the marker actually use a 32bit processor. This means that each ESC has alot more processing power to do more advanced stuff. Currently most of the 8 bit ESC’s running BLheli are still not reaching the processing capacity so why have the developers started using 32 bit microcontrollers on the ESC’s?

The main reason is because 32bit ESC’s are easier to program, the 8bit code is written in C and Assembly (can be a real pain to work with), but the 32 bit allows programming in C++ which is abit easier. This means that this combination of easier programming language and more processing power will make adding novel features abit easier.

Can I upgrade my BLHeli ESC to use BLHeli_S?

No, this is not currently possible as BLHeli_S is designed to run on new ESC hardware, to take advantage of the hardware PWM driver. Current ESC’s that run BLHeli use software PWM and do not have a dedicated hardware PWM driver so they cant use BLHeli S.

Conclusions

When you first turn on your motors with BLHeli_S ESC’s you will notice how smooth and quiet they run, but for me that is where the differences end. With the current BLHeli S ESCs on the market they dont translate into additional performance on static thrust tests compared to some of the other leading ESC such as DYS XM ESC series. I know DYS are releasing some new ESC’s to support BLHeli S called the XS series.

Once you are up in the air flying I could not tell any difference in performance. It is worth noting that I am not exactly the best FPV pilot you can just about manage the odd flip in a wide open area. So perhaps more experienced racing pilots will be able to feel the improvements (let me know). The active breaking definitely improves the responsiveness of your quad, but that is an also option with regular BLHeli ESCs.

At the end of the day I would say its probably not worth ripping out your BLHeli ESC’s just yet, but if you are building a new quad then its a good idea to get some BLHeli_S ESC’s since I am certain we will see some novel features added to the BLHeli code in the near future.

If you have any experience with the new firmware and ESC’s or comments please let us know below!

New version naming convention

The new BLheli S firmware will have the naming convention of A_L_10_REV16_0.HEX

  • The first letter denotes the pinout of the Micro controller (MCU) on the ESC. Currently A,B,C,D,E,F,G
  • The second letter is the MCU clock speed. L for 24MHz, H for 48Mhz
  • The two numbers denote the MOSFET switching deadtime, if the FET has adaptive switching then 00 is used
  • The REV is the actual code version, the bigger the number the more recent the code is.