Ninebot Max G30 ESC Generations
Late in 2021/early 2022, Ninebot released a second version of the G30/Max ESC (Electronic Speed Controller).
Rather than using the well-known STM32 chip most of the previous ESCs were based on, it used an AT32 chip.
This chip is only compatible with SHFW, and incompatible with conventional STM32-based CFW.
Below are the differences between the Gen 1 ESC and the Gen 2 ESC.
For motor generations, check out Ninebot Max G30 Motor Generations.
Gen 1
The first generation of the Max ESC was compatible with both the Max G30 series and the SNSC 2.0/SNSC 2.1.
It used bullet connectors to connect to the motor.
There are 2 revisions of this generation motor:
- One is the G30D version with 3 capacitors and the debug points hidden on the back of the PCB
- The other is the standard single capacitor version common in most G30 models
![](/wiki/images/thumb/a/a3/NinebotMaxGen1ESC.jpg/400px-NinebotMaxGen1ESC.jpg)
The G30D gen 1 also has 2 different board layouts, marked AA01 and AB02 on the back.
![](/wiki/images/thumb/0/04/NinebotMaxGen1G30DESC.jpg/400px-NinebotMaxGen1G30DESC.jpg)
Gen 2
The second generation of the ESC was more similar to that of the newer generation Xiaomi Mi3 and Mi4 scooters.
It has a black plastic housing and features screw terminals less prone to melting.
It was based on an AT32 chip and incompatible with STM32-based Custom Firmware and STLinking.
This model can only be flashed with some types of firmware, and can only be STLinked with ScooterHacking ReFlasher.
![](/wiki/images/thumb/a/a9/NinebotMaxGen2ESC.jpg/400px-NinebotMaxGen2ESC.jpg)
How to Identify
Using ScooterHacking Utility v2.1 and above, it's possible to tell which ESC generation you have.
Download the app and connect to your scooter, then click the upper lefthand menu and select "Hardware Details".
![](/wiki/images/thumb/1/1d/ScooterHackingUtilityHardwareDetails.png/400px-ScooterHackingUtilityHardwareDetails.png)
Below it will show the MCU that your ESC is based on.
Next to the spot labeled "DRV" is where the chip type is located.
If it says "max_DRV_STM32xxxxxxx" then you have a Gen 1 controller and tutorials for STLinking will work.
![](/wiki/images/thumb/8/80/ScooterHackingUtilityHardwareDetailsMaxSTM32.png/400px-ScooterHackingUtilityHardwareDetailsMaxSTM32.png)
If it says "max_DRV_AT32xxxxxxx" then you have a Gen 2 controller and tutorials for STLinking may not work.
![](/wiki/images/thumb/1/1b/ScooterHackingUtilityHardwareDetailsMaxAT32.png/400px-ScooterHackingUtilityHardwareDetailsMaxAT32.png)