servo lead. We need to tell the software which
programmer we’re using, so go to the “Select
ATMEL/SILABS Interface” menu and select the
appropriate tool. In my case, it’s the ATMEL SK
Bootloader (Afro/Turnigy USB Linker) option (Figure
16). At the bottom left of the application, select the
appropriate COM port for the programmer; check in
your system Device Manager if you’re not sure
which port the programmer is connected to. Click
on connect and the system should now be
connected to the programmer and ESC (Figure 17).
Click the “Flash BLHeli” button to begin the process.
A dialog box will pop up asking which firmware
should be Flashed. Scroll through and find the
firmware version that we looked up in the PDF
reference manual. I used the “[REV: 14. 9] Afro 20A
MULTI” firmware (Figure 18). Click the green OK
button and confirm that you want to start Flashing
the firmware (Figure 19). After a bit, you should get
You can now adjust the various parameters for
the ESC like the damping, beep level, temperature
protection, etc. I used the default values for the
bench test. Once you have all the settings correct, click the
“Write Setup” button to save the settings to the ESC. When
you’re all done, click the “Disconnect” button and power-down the setup. We’re all set to reconnect the motor and
receiver to test the firmware!
During the bench test, I observed a very fast throttle
response. The motor sounded slightly different, especially at
the lowest speeds — likely a product of how the
synchronization and position calculations are done. During
a rapid throttle change, it did slightly torque the test setup
around as well.
Other than response speed, I was amazed by the
minimum stable running speed. This firmware could run the
motor all the way down to 1,100 RPM — less than half of
the other’s minimum speeds. The maximum speed was
again 12,300 RPM — seemingly the limit of reliable position
determination and control for this setup.
The video of the test can be found at
So, what’s the best firmware? It’s largely up to your
personal preferences. I could see the rapid throttle response
of BLHeli being great for performance fliers. The low speed
capability would also be great for fixed wing models. As an
instrument person, I’m often more interested in stable
flight, so a slower responding firmware or tweaked BLHeli
may be better. The good news is that you can try them all
for very little cost.
We could spend a very long time talking about ESCs
and the different optimizations that can be done. The most
interesting thing to do would be to make a more robust
and instrumented test stand.
Measuring things like the torque, speed, input throttle
command, and even thrust with a propeller would be very
interesting. It would then be possible to quantify the
differences between the various firmwares and settings
with numerical measures. Maybe such a test stand will be a
future project for us!
There are lots of interesting components including
strain gauge load cell measurement and some mechanical
engineering. Such a system could also be modified with
accelerometers to create a dynamic propeller balancing
Another interesting test would be looking at the power
consumption. Will different firmware versions modify how
the control signals are sent enough that there are battery
longevity advantages to one over the other? A hefty fixed
power supply with a current shunt for measurement would
easily tackle this question.
Now that you know all about ESCs and the motors they
drive, it’s time to go out and optimize the setup of your
quad. Just remember to respect the amount of current that
can be drawn from your flight battery! Until next month, fly
Figure 20: After a successful Flash of the firmware, we are ready to test, but
take the warning seriously. Using a current-limited power supply is highly
recommended in case something goes wrong during the programming.
SERVO 07.2017 57