How to Change Region Ninebot Max/G30

December 11th, 2020




NOTICE: If you upgraded (1.6.13+) and can’t change your region, you will need to Downgrade first.

Region locks are one way that Ninebot Max scooters can be speed-limited.

This tutorial is similar to the one for the Ninebot ESX Series.

Often the max speed is set through a serial number prefix.

In order to change your vehicle’s region and unlock its max speed, change the 4th digit of your serial number.

Below is a list of serial prefixes and their effect on max speed and vehicle app appearance, courtesy of myself and FoxMaster at ScooterHacking.

Choose the one corresponding to the region you want.

At any point to return back to the stock region, use the guide below to change your serial number to the one listed on the sticker on the side of the scooter.

It’s highly recommended that you make note of it before changing or performing any of the steps below just in case.

Windows

On Windows, there are two main apps that can easily be used to change the Serial prefix.

Ninebot IAP and Ninebot Flasher are based on similar code bases but have different GUIs.

Ninebot IAP makes it a little easier to change a serial due to its one-click buttons for changing SN.

Both applications require your computer to have BLE support unless you are using serial for IAP.

Ninebot IAP

Ninebot IAP is an app developed by Scooterhacking.org.

Download it here.

Once you have it installed, open it and press the “Start scan” button.

Select your device in the menu and press “Connect”.

It may ask you to press the power button to pair, in this case, short press the button that you would normally use to power it on or toggle the headlight.

A successful connection showing version numbers.

If it shows version numbers in the “Installed Firmware” box, you have successfully connected.

From here head to the “Tools” menu under “Utilities”.

Press “Read” in the “ESC Serial Number” panel.

 

A successful serial number read. Make note of it.

Next, press “Change SN” and type your serial number out exactly as it was before, but change the 4th digit to the prefix you chose above.

In my case, that would be changing the D after N4G to a if I wanted the speed to be limited to 25 kmh.

Changing the serial prefix from a 'D' to a 'C'.

Changing the serial prefix from a ‘D’ to a ‘C’.

Press “OK”, then you should hear your scooter beep twice in quick succession.

To confirm it has successfully changed, press “Read” again and you should see your new serial.

A successful change.

A successful change.

Test the new speed or appearance in the app and it should be good to go.

Ninebot-Flasher

Ninebot-Flasher is available from the Microsoft store.

Download it here.

Once installed, press “Start Scan” and select the device you want to flash by clicking “Connect”.

Click "Start Scan" then "Connect" once you've found your scooter.

Click “Start Scan” then “Connect” once you’ve found your scooter.

It will likely prompt you to “Press the power button to pair”.

Press the power button briefly to connect.

Press the power button briefly to connect.

Short press the button that you would normally use to power it on or toggle the headlight.

You will know the connection is successful if the greyed-out buttons become white and your Serial Number is printed in the console.

Successful connection.

A successful connection as shown by the serial number in the console.

Copy that number down somewhere.

Click on the text box to the left of “SendCmd” and then press Ctrl + alt + a on your keyboard.

You should now have more options as shown below.

pressing Ctrl + alt + a will open advanced options.

Pressing Ctrl + alt + a will open advanced options.

Paste your old serial in the box but change the 4th digit to the serial prefix you selected above.

Here I have the fastest prefix S and am changing it to a 25kmh prefix C but you may be interested in speed limiting your scooter whether for a child or to avoid legal issues.

Changing my "S" prefix to a "C" which will have a 25kmh speed limit.

Changing my “S” prefix to a “C” which will have a 25kmh speed limit.

Press “Write ESC Sn” twice and your new region should be set.

Successful region change.

Successful region change.

Android

ScooterHacking Utility

ScooterHacking Utility (SHU/SHUtility) is available from the Google Play Store and here is how to use it to change your region.

Download it here.

Once installed, the app will prompt you for location permissions.

This is to allow it to access your Bluetooth.

The prompt from SHU to give it location permission and explaining why it needs it.

The prompt from SHU to give it location permission and explaining why it needs it.

Once you press ok, android will ask if you want to give SHU location access, press allow.

The prompt from the Android system asking for 'location' permissions.

The prompt from the Android system asking for ‘location’ permissions.

After giving it Bluetooth access, the app will give you a warning message that lets you know the risks of flashing custom firmware.

Read it and press agree.

SHU Warning message.

SHU Warning message.

Now that you’re past the warnings and TOC’s, you can scan for the scooter you want to change the region on and select it from the list.

Choose your device from the list of BLE devices.

Choose your device from the list of BLE devices.

After a successful connection, note the current serial number, and write it down in case something happens in the future or you lose it.

A successful connection will show the firmware version numbers and serial number.

The serial number section in SHU.

The serial number section in SHU.

After saving your old serial number, proceed to the lower part of the main screen to get to the “Tools” section and click “Change Region”.

The "Change Region" option.

The “Change Region” option.

From here, a list of region options will pop up. Choose the region you wish to change to (Choose US for the fastest speed).

The list of region options in ScooterHacking Utility.

The list of region options in ScooterHacking Utility.

Once you click an option, you will hear the scooter beep a few times and then the serial will have been changed and the region will be set.

XiaoFlasher

*Deprecated, recommended to use ScooterHacking Utility as mentioned above

XiaoFlasher is available from the Google Play Store and here is how to use it to change your region.

Download it here.

Once installed, give it permission to access files and “Location”.

XiaoFlasher just needs location access in order to use Bluetooth which we need for this tutorial.

On the next screen, agree to the TOS and close the changelog.

Click on the name of your device to connect.

If XiaoFlasher has successfully connected you will see firmware version numbers on the upper right-hand side.

 

Press "Change Region"

Press “Change Region”

Once successfully connected, press “Change Region”.

In this menu select the region you would like.

Region options in XiaoFlasher

Region options in XiaoFlasher

The developer has made a 30s wait time and an ad that you must watch in order to change the region.

Once you have sat through that and likely decided to use another app in the future, you will hear the scooter beep twice indicating a successful region change.

iPhone/iOS

The beta was removed and the original creator no longer maintains it.

There is currently only one application for iPhone/iOS to change the region of a Ninebot Max/G30 and it’s still in beta as of the time this post was written.

You will need Testflight to install it, but this link should install it if you don’t.

Download Scooter Companion https://testflight.apple.com/join/RaFiBTgi.

Open the app and scan for your device.

Click on the scooter that you want to perform the region change on.

The scan menu for a Ninebot Max on Scooter Companion.

The scan menu for a Ninebot Max on Scooter Companion.

Once it connects and displays information about the scooter, click on “Utilities” on the top menu.

The region change function is in the "Utilities" menu.

The region change function is in the “Utilities” menu.

From here, scroll down to “Adjust scooter region” and click the region you want (US would be fastest, followed by EU, then DE).

The US region has the least restrictions so choose that if you want max speed.

The US region has the least restrictions so choose that if you want max speed.


Comments

19 thoughts on "How to Change Region Ninebot Max/G30"

  1. Majd says:

    Hi, I have buy new Segway-Ninebot Kickscooter Max G30E II, and connected to Segway apps and ask me to update firmware to V 1.8.8 and my region DE its 22 speed.
    How I can do downgrade and which version I have to go back to and the steps please I’m new user and need your help please.

    1. joeybab3 says:

      You will need to use an STlink to downgrade, you can use ScooterHacking ReFlasher to do that once you identify which version of ESC you have.
      I have a guide for the old esc here: https://joeybabcock.me/blog/electric-scooters/how-to-stlink-fix-bricked-ninebot-max-g30-controller-esc/

      Unfortunately, I don’t have a gen 2 ESC so I can’t make a guide quite yet for it but if you have a gen 1 then you can use the guide I posted above.

  2. Arif khan says:

    I changed my serial number version code P to E . then downgrade speed of ninebot max G30 e ii. only getting 22kmpg. my Driver version is 1.8.8. how to reset to old original serial number ? this scooter i bought only 2 days before. anybody can help me? please

    1. joeybab3 says:

      Once you change the region on DRV 1.7.0+ to german you are stuck there. To switch back you will need to downgrade using an stlink to change it

  3. Abdurahmon says:

    i don’t change region please help me

  4. Nitin says:

    I tried to downgrade the firmware but it is giving error “Update Failed! Reason: Data Format Error Power cycling your phone & vehical might help”

    1. joeybab3 says:

      If you google that error, you’ll see that it is most likely caused by having DRV 1.8.3/1.7.13.
      What version are you on currently?

  5. justntime2b@icloud.com says:

    Hello there Joey
    Can you please tell me what to do to get rid of an error code 21 on my e25a ninebot

    I have 40v in the battery with flashing blue light and all connections seem good.
    If there is a problem with the controller can u tell me which semiconductor to change
    I did notice master control v2.6.15
    And ble v2.1.3 but bms says v0.0.0
    Could it be software related
    Also when using the app I’ve noticed it’s connected but bound to an aajaja and I’m connected as unknown

    1. joeybab3 says:

      Have you checked the connectors to make sure they didn’t come unplugged?

  6. Kjetil says:

    Hi. I’ve tried to change the region using an android phone, I’ve tried to change the serial number using Ninebot IAP and Ninebot-Flasher, but whatever I do it will not make any changes in the scooter. It just goes immediately back to the original region and original serial number. Any suggestions? It’s a Ninebot Max G30D ||

    1. joeybab3 says:

      Make sure you are not on the latest firmware (DRV 1.7.0), you may have to downgrade…

  7. Michael says:

    Perhaps you could help with power button not turning off scooter or turning light on or off? I’m using SHFW currently, though I would prefer using CFW, to control the power. Also, I am currently installing external 12v battery. Let me know where to reach you! Thanks Joey!

    1. joeybab3 says:

      That’s interesting, I haven’t heard of that one before… I would suggest reaching out to the SHFW engineers on the ScooterHacking discord, they are still working on SHFW in beta so they may already have a fix.

  8. Elja-Ilari Suhonen says:

    Umm, beta testing doesn’t accept more with the only iPhone app? What should I do? Please help!

    1. joeybab3 says:

      Unfortunately, there are no longer any apps for iOS. You will have to borrow a friends android or buy a cheap one online.

  9. Richard Braswell says:

    Can I use the ” custom serial #” on xiaoflasher region change to change my sn, and activate a new motherboard?

    1. joeybab3 says:

      Yeah, I can’t remember if XiaoFlasher has an activate option but I know scooterhacking utility does.

  10. Patrik says:

    but when I change the region, when the scooter is turned off and the charger is connected, the display does not show charging indication

    1. joeybab3 says:

      Yes that is normal when the scooter is turned off

Leave a Reply

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