STLink Ninebot Max G30 Gen 2 ESC: Difference between revisions

no edit summary
No edit summary
No edit summary
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
In the case of a bricked ESC/Controller/Control Board, STLinking can save the controller from needing to be replaced in some instances.
In the case of a bricked ESC/Controller/Control Board, STLinking can save the controller from needing to be replaced in some instances.


This page shows how to STLink the 2nd gen ESC/controller based on the Artery AT32 chip.
This method also is capable of downgrading versions like [[Ninebot Max DRV 1.8.7|DRV 1.8.7]] and [[Ninebot Max DRV 1.8.8|DRV 1.8.8]].
 
This page shows how to STLink the 2nd gen ESC/controller based on the Artery '''AT32''' chip.


{{ STLink Materials List }}
{{ STLink Materials List }}
Line 10: Line 12:


Check out the difference between the [[Ninebot Max ESC Generations]] and use the steps below depending on which one you have.
Check out the difference between the [[Ninebot Max ESC Generations]] and use the steps below depending on which one you have.
There are 3 different board layouts.


<div><ul>
<div><ul>
<li style="display: inline-block;">[[File:NinebotMaxGen1ESC.jpg|thumb|center|400px|A Gen 1 ESC has bullet connectors and a silver metallic housing. Newer units may have writing as shown in this image.]]</li>
<li style="display: inline-block;">[[File:NinebotMaxGen1ESC.jpg|link=STLink Ninebot Max Gen 1 ESC|thumb|center|400px|A Gen 1 ESC has bullet connectors and a silver metallic housing. Newer units may have writing as shown in this image.]]</li>
<li style="display: inline-block;">[[File:NinebotMaxGen2ESC.jpg|thumb|center|400px|A Gen 2 ESC has screw terminals and a black plastic housing.]]</li>
<li style="display: inline-block;">[[File:NinebotMaxGen1G30DESC.jpg|link=STLink Ninebot Max Gen 1 G30D ESC|thumb|center|400px|A Gen 1 ESC has bullet connectors and a silver metallic housing. The G30D has 3 capacitors and a different location for the debug pins.]]</li>
<li style="display: inline-block;">[[File:NinebotMaxGen2ESC.jpg|link=STLink Ninebot Max Gen 2 ESC|thumb|center|400px|This guide is meant for this model. These versions are based on the AT32 MCU rather than the STM32.]]</li>
</ul></div>
</ul></div>
Click the image above to go to the guide that corresponds to your model.


==Accessing the Debug Pins==
==Accessing the Debug Pins==
Line 26: Line 33:
Using an M4 Allen/Hex wrench or bit, remove the two screws holding the ESC in place.
Using an M4 Allen/Hex wrench or bit, remove the two screws holding the ESC in place.


[[File: NinebotMaxESCLocations.jpg|thumb|center|400px|This is a gen 1 esc but the gen 2 will be in the same place.]]
[[File: NinebotMaxESCLocations.jpg|thumb|center|400px|This is a Gen 1 ESC but the Gen 2 will be in the same place.]]


Carefully unplug each of the connectors.  
Carefully unplug each of the connectors.  
Line 38: Line 45:
[[File:NinebotMaxGen2ShellClips.jpg|thumb|center|400px|4 clips hold the shell on.]]
[[File:NinebotMaxGen2ShellClips.jpg|thumb|center|400px|4 clips hold the shell on.]]


[[File:NinebotMaxDebugPins.jpg|thumb|center|400px|Be very careful not to damage any of the smaller SMD components.]]
Once removed, locate the debug pins.
 
[[File:NinebotMaxGen2ESCDebugPins.jpg|thumb|center|400px|The pins are located opposite of the white connectors and battery connector.]]
 
Connect the pins to the STLink as shown:
 
[[File:NinebotMaxGen2ESCSTLinkPinout.jpg|thumb|center|400px|The connections for the pins of a Gen 2 ESC.]]


===Software===
===Software===


{{ Install STM32 STLink Utility }}
{{ Install ScooterHacking ReFlasher }}


===Flashing===
===Flashing===


Once installed, open the software and change your model to Ninebot Max.
[[File:NinebotMaxScooterHackingReflasherSelectModel.png|thumb|center|400px|The correct model selected in reflasher.]]


Make sure you have 'AT32' selected as the chip or you will brick your esc.
To show the console (helpful for debugging errors), press settings -> show console.
[[File:NinebotMaxScooterHackingReflasherSelectAT32.png|thumb|center|400px|The correct MCU selected in reflasher.]]
Fill out your serial number and current mileage and press 'Launch Recovery'.
[[File:NinebotMaxScooterHackingReflasherLaunchRecovery.png|thumb|center|400px|Press launch recovery then check the console for any errors.]]
Check the console to make sure there were no issues flashing.
[[File:NinebotMaxScooterHackingReflasherSuccessfulFlash.png|thumb|center|400px|A successful flash indicated by no errors in the console.]]


===Testing===
===Testing===


Remove the STLink and plug back in the ESC and use [[ScooterHacking Utility]] to check that your version number is now 1.2.6.
Remove the STLink and plug back in the ESC and use [[ScooterHacking Utility]] to check that your version number is now [[Ninebot Max DRV 1.6.13|1.6.13]] or [[Ninebot Max DRV 1.7.3|1.7.3]].
 
[[File:NinebotMaxGen2ControllerSuccessfulDowngrade.png|thumb|center|400px|The downgrade was successful as shown here by the version number.]]
 
From here your motor may not work. Check [[Ninebot Max Motor Generations]] and see if you have a Gen 3 motor. If so you will want to flash firmware based on [[Ninebot Max DRV 1.8.7|1.8.7]] or above (either [[SHFW]] or one of the patched [[Ninebot Max DRV 1.8.7|1.8.7]] or [[Ninebot Max DRV 1.8.8|1.8.8]] versions).


[[Category: Scooters]][[Category: Ninebot]][[Category: Max]][[Category: STLink]]
[[Category: Scooters]][[Category: Ninebot]][[Category: Max]][[Category: STLink]]
Administrators, Swags, Bureaucrats, Administrators
2,874

edits