Ninebot Max G30 How to Downgrade/Flash Back to Stock Firmware

May 18th, 2021




NOTICE: If you are coming here to downgrade 1.7.0, it is now possible thanks to ScooterHacking! See How to Downgrade 1.7.0 without an STLink for more info!

Occasionally you may accidentally proceed with the firmware update in the Segway-Ninebot app and end up with a feature you liked removed, or a lower top speed.

Though the ninebot app doesn’t officially support downgrading firmware, there are ways around this limitation.

This guide details how to Flash the original/OEM/Stock firmware back to a Ninebot G30/SNSC 2.0+ scooter.

Follow this guide for the ESX (ES1, ES2, ES3, and ES4)/SNSC 1.0+ series.

Use the links below to navigate to your preferred app/os easily:

OS:

App:

Firmware files should never be downloaded from untrusted sources. Always download the original firmware files directly from ScooterHacking.

For the max, I recommend DRV 1.2.6, BMS 1.3.4, and BLE 1.1.4, always keep a copy of these handy just in case.

If your scooter becomes bricked and won’t flash or connect over Bluetooth anymore, you will need to STLink it.

Android

The following apps can be used to flash stock/OEM/vanilla firmware on Android.

ScooterHacking Utility

The device select menu.

Make sure that the app has successfully connected and doesn’t show “0.0.0” for the version numbers as shown below.

Version numbers that are all zeroes are indicative of a failed connection.

Version numbers that are all zeroes are indicative of a failed connection.

If the version numbers are shown and the connection was successful, scroll down to the “Flash” section and click “Load Original”.

Press "Load Original" to load the stock firmware.

Press “Load Original” to load the stock firmware.

From here, click on “DRV”(another term for ESC/Control Board).

The original firmware options.

The original firmware options.

In the list of version options, I usually use DRV126 as I trust it to be stable and not have issues.

The list of available versions.

The list of available versions.

You can choose any of the ones you want but in general, choose 1.2.6 or the latest version available.

Lastly, click the “Flash” button and allow the process to complete while waiting near the scooter.

Click "Flash" and you should be good to go once its done.

Click “Flash” and you should be good to go once it’s done.

XiaoFlasher

XiaoFlasher is an Android app that can be used to flash and configure many models of scooters on the go.

It can be downloaded here.

This app is full of ads and it is much more recommended to use ScooterHacking Utility as shown above.

Open Xiaoflasher and scan for devices.

The list of all BLE devices found.

The list of all BLE devices found.

When XiaoFlasher annoys you to rate the app, press “No, Thank You”.

Leave a low review if the app annoys you or just ignore the prompt all together by clicking "No, Thank You".

Leave a low review if the app annoys you or just ignore the prompt altogether by clicking “No, Thank You”.

Confirm that version numbers are shown indicating a successful connection.

The non-zero version numbers indicate a successful connection.

The non-zero version numbers indicate a successful connection.

If there are no version numbers, click the button next to “Status: DISCONNECTED” to attempt to reconnect.

If the connection was successful, scroll down to “Default – Official Firmware” and click on “DRV126 MAX“.

The available version numbers for ESC/DRV, BMS, and BLE.

The available version numbers for ESC/DRV, BMS, and BLE.

Next, the file should be loaded.

Click on the button that says “Flash selected zip file”.

The firmware loaded and ready to flash.

The firmware is loaded and ready to flash.

Next, click on “I don’t want to contribute” and reconsider using XiaoFlasher for one of the free apps that perform better anyway.

XiaoFlasher's dev is known for using frowned upon practices such as firmware locks and ad spam.

XiaoFlasher’s dev is known for using frowned-upon practices such as firmware locks and ad spam.

Once you get past the donation spam, the flashing will begin, and after it finishes the version numbers should be changed.

The stock firmware numbers.

The stock firmware numbers.

Windows

Two main apps allow the flashing of firmware to a Ninebot Max on Windows: Ninebot IAP, and Ninebot Flasher.

Both require BLE/Bluetooth 4.0+.

Ninebot IAP

Ninebot IAP is a tool developed by ScooterHacking.

It can be downloaded here.

Below is how to use Ninebot IAP to downgrade/flash stock firmware for the Ninebot Max series of scooters.

Open Ninebot IAP and click “Start Scan”.

The startup screen.

The startup screen.

Once IAP finds your device, select it and press “Connect”.

The list of available BLE devices.

The list of available BLE devices.

IAP will likely prompt you to “Press the power button to pair” if you are not on BLE 5.5.5.

If it does, press the power/headlight button once and wait for it to pair successfully.

The prompt for encrypted BLE.

The prompt for encrypted BLE.

Once successfully connected, IAP will show non-0.0.0 version numbers in the upper right-hand box.

The colored version numbers show a successful connection.

The colored version numbers show a successful connection.

From here, press “Load From Repo” to load the stock firmware files.

The colored version numbers show a successful connection.

The colored version numbers show a successful connection.

After that, select “DRV” from the dropdown.

The available firmware types.

The available firmware types.

Then, select your version. I use 1.2.6 mostly as it is proven to be reliable.

The available DRV versions.

The available DRV versions.

Once the console shows “Loaded DRV 1.2.6 (Max)”, you are ready to hit “Flash”.

The file is ready to be flashed.

The file is ready to be flashed.

After it begins flashing, you will hear it beep once, and then the progress bar will begin to go up after a few seconds.

Ninebot Flasher

Ninebot Flasher is an app available on the Windows store.

It can be downloaded here.

Below is how to use Ninebot Flasher to downgrade firmware for the Ninebot ESX series of scooters.

Once installed press “Start Scan” and select your scooter from the list of options.

The startup screen for Ninebot Flasher.

The startup screen for Ninebot Flasher.

If no options come up, you may not have BLE support on your device.

Once it finds your device, click on it and press “Connect”.

The list of available BLE devices.

The list of available BLE devices.

The list of available BLE devices.

Ninebot flasher may kick you back to the connect screen while trying to connect, in which case just press connect again.

Once it connects, it may prompt you to “Press the power button to pair”.

If you get prompted with this message, short-press the power/headlight button to allow it to pair.

If you get prompted with this message, short press the power/headlight button to allow it to pair.

If you get prompted with this message, short-press the power/headlight button to allow it to pair.

If you get prompted with this message, short-press the power/headlight button to allow it to pair.

After that, it should show you your serial number indicating a successful pairing.

It will show you your SN to indicate a successful pairing.

It will show you your SN to indicate a successful pairing.

It will show you your SN to indicate a successful pairing.

Download the firmware you want from the ScooterHacking DRV repo in .bin.enc format.

Click “OpenFile” and select the stock firmware file you wish to flash.

Press OpenFile and navigate to where you downloaded the .bin.enc file.

Press OpenFile and navigate to where you downloaded the .bin.enc file.

Press OpenFile and navigate to where you downloaded the .bin.enc file.

Once it loads and tells you the correct version number, press “Flash”.

If you downloaded the right file it should tell you the version number.

If you downloaded the right file it should tell you the version number.

If you downloaded the right file it should tell you the version number.

It may give some errors about page write failed but as long as it gets to 100% it should be fine.

iOS

There is currently only 1 app able to flash CFW/Firmware to ninebot scooters on iOS.

The beta was full last I checked so unfortunately those looking to flash the firmware on iOS will need to purchase a cheap Android phone or use a Windows device.

Scooter Companion

Scooter Companion is a beta app that is currently only available on testflight.

To flash back to stock firmware on iOS, you will need to install it. This is currently the only way to flash Ninebot Firmware on iOS.

Download the file you want from files.scooterhacking.org.

I prefer to use DRV126.zip because it doesn’t cause issues.

Once installed, open the app and select the device you want to flash to stock.

The scan menu for a Ninebot Max on Scooter Companion.

The scan menu for a Ninebot Max on Scooter Companion.

Next, open the “Firmware” menu on the upper right-hand side.

The firmware screen on scooter companion.

The firmware screen on scooter companion.

Click “Select Firmware”.

The firmware screen in Scooter Companion.

The firmware screen in Scooter Companion.

After that, select the zip file you want to flash (DRV126.zip for me).

My options for firmware.

My options for firmware.

 

Finally, click the green lightning symbol to flash.

The firmware ready to flash.

The firmware once ready to flash.

It will take a few seconds to begin but should start climbing in percentage until it reaches 100%.

Click “Reboot Scooter” when prompted and you should have stock firmware.

 


Comments

17 thoughts on "Ninebot Max G30 How to Downgrade/Flash Back to Stock Firmware"

  1. Zebulaon says:

    Hello, I would like to know if it is still possible to use the official application if we flash the firmware to a previous version? I need to downgrade the firmware of my Nonebot G30 Max because in France the cruise control is no longer available. I tried changing the region version from the 4-digit P to S, but then I lose the charge indicator. Thank you

    1. joeybab3 says:

      It’s still possible to use the app yes, but the app and its updates is the reason you lost that functionality to begin with so I would recommend you use third party solutions if possible

  2. Mario says:

    Hi . I Have an D 38 nineboot locked in german region only 20 km h . Please help to unlock .

    1. TOMISLAV HOCENSKI says:

      hi

      wich of this app i can use to flash stock fw to f25i?

      thanks for your quick answer!

    2. TOMISLAV HOCENSKI says:

      hi again.i will try use scoothack app
      wich drv/ble i must select to flash stock fw on đy f25i.taht all be like before unlocking speed to 30kmh

      1. joeybab3 says:

        I am not sure, if your vehicle has a firmware that prevents changing the serial number then you will likely have to stlink at this point. After that you can change the serial prefix to the US/American region.

  3. Maro says:

    Hi
    My friend i think only u can help me
    Am trieng to flsah my nineboot e25e be faster
    But i make somthing wrong it become with wrong sn: and wrong modell with e45d and the light not working when you bromse
    Csn you help me please how i van firmeare back
    to defaut firmware like before
    Thank you
    Regred maro

    1. joeybab3 says:

      Sounds like you may have changed the region, change the serial number back to the original one and do not update using the ninebot app.

  4. arthur says:

    My Ninebot F30E shows only DRV and BLE version but BMS is zero, does this affect when flashing different software?

    1. joeybab3 says:

      I don’t know for sure, I don’t have any of the f series scooters. As long as the part you are trying to flash reports a version you should be ok but that doesn’t sound great that you have no bms data

  5. Dennielle says:

    I done this and my scooter won’t start now doesn’t even turn on

    1. joeybab3 says:

      What did you flash, which app did you use?

  6. ChuckyCheese says:

    Are you familair with the BMS? Bought a used SNSC(Max) battery and want to use it for a clone max. I have read that without a communication line to the g30 controller, the BMS will disconnect power after 10s. Do you know if flashing to stock BMS 1.3.4 will change the behavoir?

    1. joeybab3 says:

      Depends on what BMS version it’s on currently? That behavior only really happens with rental firmware which you would have to remove to make use of the battery anyway.

  7. Tyson says:

    Tyson

  8. Steffen says:

    I did install DRV126 on my Scooter, but i still cant connect with the segway ninebot app – it finds the scooter but refuses BT connection. I also reset the Serial number …

    1. joeybab3 says:

      Is it a retail/folding model? If not there’s a chance it may have a clone dashboard.

Leave a Reply

Your email address will not be published. Required fields are marked *