GaN vs Si for Mutlirotor ESCs - Testing

There has been some speculation in the community pertaining to using GaN in ESCs. This testing will hopefully provide an answer to this question.

A basic ESC using the excellent AM32 multirotor ESC firmware. It is based off of the X-1 ESC, which uses the F051 MCU. Here are the hardware specifications:

STM32F051

EPC2302 GaN-FETs (1.8mOhm RdsON)

LMG1210 GaN Gate Driver

8-layer 2-oz Copper PCB

1mOhm current sense resistor + INA180

For all tests, exact same firmware settings were used in both the X-1 and GaN ESC.

Some pictures from development:

Rev. A - Reversed gate driver output unfortunately. Also was experimenting with a 3.3v LDO --> 10V Boost for a 1-8s ESC, but it didn't work very well.

Rev. B - Fixed schematic errors and made voltage regulators much more robust. Using high PSRR 3.3V LDO for rock-solid stability.

Those GaN-FETs are beautiful.

Ordered a stencil which made assembly MUCH faster.

To have a comparable RdsON for both Si and GaN, the TPH2R104PL FETs were used, which have an RdsON of 1.6mOhm, which is close to the EPC2302's RdsON of 1.8mOhm.

Two main metrics used for testing were relative efficiency and step response. Relative efficiency, as measured in eRPM/W and step response as measured by raw eRPM/Time.

All voltage and current scaling settings in firmware were identical to ensure no error. All current sense resistors were the same 1mOhm so that at higher currents, the efficiency would not be skewed by tolerance error.

To consistently and accurately characterize the ESCs, a custom Python script was used to send MSP commands to a flight controller over USB while simultaneously logging telemetry data coming back from the ESC via an FTDI adapter.

A 6s 12000mAh lipo pack and 80mm EDF were used for testing. This is a great setup for testing ESCs because EDFs are much safer and easier to use than a motor spinning a free propeller. Also, they consume copious amounts of current, and are great at frying ESCs - a characteristic highly desirable in this business.

Code may be found here: https://github.com/LRFPV2/ESC-Tester/tree/main

To characterize efficiency, the throttle was ramped up from 0% to 50% over the course of 10 seconds. Throttle was held at 50% for 5 seconds, then was ramped back down to 0% over 10 seconds.

To characterize step response, throttle was instantaneously increased from 0% to 50%. Rate of change was processed and graphed.



 

 


Back to blog