G3 MAX VCU MOD

25 April 2025
5
8
E-Scooter
Noch Keinen
Segway G3 Max VCU Modifikationen – Anleitung


Teil 1: VCU-Modifikation (Geschwindigkeitsbegrenzung und Regionswechsel)
⚠️ Warnung
Die Garantie des Scooters erlischt!

Du führst diese Schritte auf eigene Gefahr durch. Mögliche Folgen:
  • Ausfall des VCU-Controllers
  • Instabiles Fahrverhalten des Scooters
📋 Benötigte Komponenten
1. Hardware:

  • ST-Link v2 Programmer
  • DUPON-Kabel
  • Lötkolben (für TP13V3-Kontakt)
2. Software:


🛠 Vorbereitung
  1. Treiber installieren (dpinst_amd64.exe)
  2. Archiv der Software in einen Ordner entpacken
  3. Wichtige Dateien:
    • dump_memory.bat – Tool für Speicherabbild
    • fix_vcu.exe – Modifikationstool
    • flash_memory_patched.bat – Tool zum Flashen der Firmware





🔌 ST-Link-Verbindung
Vor dem Anschließen den Pinout deines ST-Link genau prüfen – dieser kann je nach Modell abweichen.
Wichtig: VCU vom Scooter trennen, bevor du beginnst.

ST-LINKS.webp





Nr. ST-Link VCU
1SWDIODIO
2SWCLKCLK
3GNDGND
43,3VTP13V3*
5GND**C45 (temoprär)


*Löten erforderlich (empfindlicher Kontakt!)
**Nur zum Kurzschließen mit C45 verwendet


🔄 Modifikationsprozess
1. Dump erstellen

  • Pin 5 (GND) mit C45 kurzschließen
  • dump_memory.bat ausführen
  • Bei der Zeile oocd\\scripts/mem_helper.tcl", line 37 den Kontakt trennen
  • Sicherstellen, dass MEMORY_G3.bin (128 KB) vorhanden ist
2. Parameter ändern
  • fix_vcu.exe ausführen
  • Geschwindigkeit (1–99): 99
  • Region ändern? (Y/N): Y
3. Flashen
  • GND erneut mit C45 kurzschließen
  • flash_memory_patched.bat ausführen
  • Trennen bei Zeile oocd\\scripts/mem_helper.tcl", line 37
  • Übertragung abgeschlossen bei:
    wrote 131072 bytes from file MEMORY_G3.bin.patched.bin...

4. Nachbereitungen

  • Scooter in der App entkoppeln
  • VCU wieder mit dem Scooter verbinden (ST-Link trennen)
  • Scooter neu koppeln und beide Schalter aktivieren
5. Letzter Schritt
  • Schritte 1–3 wiederholen
  • Wichtig: Schieberegler danach nicht mehr anfassen!


❌ Mögliche Fehler
  • open failed → ST-Link nicht korrekt verbunden
  • init mode failed → Verbindungsfehler zur VCU
Teil 2: Speicher-Dump und Modifikations-Tutorial
Voraussetzungen

  • ST-Link Programmer
  • Ziel-VCU-Platine
  • Computer mit den Dateien:
    • dump_memory.bat
    • fix_cpu.exe
    • flash_memory_patched.bat

Schritt-für-Schritt-Anleitung
1. Erste Verbindung

  • Verbinde alle Pins vom ST-Link mit der Platine, außer Pin 5.

Unbenannt.webp




















2. Vorbereitung für Speicher-Dump
  • Schließe Pin 5 des ST-Link kurzzeitig mit dem Kondensator C45 auf der Platine.
3. Speicher auslesen
  • Führe das Skript dump_memory.bat aus.
  • Wenn eine bestimmte (nicht genau angegebene) Zeile in der Ausgabe erscheint, trenne die Verbindung zum Kondensator C45.
4. Dump verifizieren
  • Nach Abschluss sollte im selben Verzeichnis wie das Skript die Datei MEMORY_G3.bin erscheinen.
  • Überprüfe, ob die Datei etwa 128 KB groß ist.
5. Speicherinhalt ändern
  • Führe fix_cpu.exe aus.
  • Gib bei Aufforderung:
    • Eine Geschwindigkeit zwischen 1 und 255 ein (z.B. 99)
    • Y (Ja) oder N (Nein), um die Seriennummer-Region auf US zu ändern
6. Patch-Prozess
Das Programm wird:
  • Eine eventuell vorhandene Datei MEMORY_G3.bin_patched_bin löschen
  • Eine neue gepatchte Kopie erstellen
  • Den Geschwindigkeitswert an mehreren Speicheradressen eintragen
  • Falls gewählt, den US-Region-Code (0x43) an die entsprechende Adresse schreiben
7. Speicher flashen
  • Pin 5 erneut mit C45 kurzschließen
  • flash_memory_patched.bat ausführen
  • Trenne die Verbindung zum Kondensator, wenn dazu aufgefordert
  • Der Vorgang ist nur abgeschlossen, wenn diese Meldung erschein


Console.webp

Wichtige Hinweise
  • Die Zeile zum Trennen der Verbindung wird nicht konkret benannt
  • Mathematische Ausdrücke im Original dienten nur optischer Gestaltung
  • Einige Speicheradressen sind vermutlich verschleiert oder symbolisch (z.B. „I“ statt „1“)
  • Sei vorsichtig beim Umgang mit Fahrzeugsteuerungselektronik


Abschluss
Nach erfolgreichem Flash-Vorgang ist die Modifikation abgeschlossen.
Du kannst alle Programmiergeräte vom Scooter trennen.


Sry für die Formatierung^^
 
Hey - vielen Dank für die Anleitung.

Bei mir hängt es am übertragen der gepatchten Memory_g3.bin.pachted.bin ...

Sobald ich das flash_memory_patched.exe ausführe kommt die Meldung, das er die Datei Memory_g3.bin.pachted.bin nicht findet - ist aber definitiv da.

Hast du eine Idee?
 
Hey - vielen Dank für die Anleitung.

Bei mir hängt es am übertragen der gepatchten Memory_g3.bin.pachted.bin ...

Sobald ich das flash_memory_patched.exe ausführe kommt die Meldung, das er die Datei Memory_g3.bin.pachted.bin nicht findet - ist aber definitiv da.

Hast du eine Idee?
wenn deine Datei wirklich irgendwas mit "pachted" benannt ist, könnte es daran liegen.
 
Also egal was ich mache, es klappt bei mir nicht. Ich habe verschiedenste Versionen geladen, den ST Link mehrfach neu mit den Treibern bespielt, verschiedene Kabel, verschiedene USB Ports, aber er erstellt NIE die memory_g3. Egal ob er die Zeile 37 anzeigt, bei der man das eine Kabel loslassen soll, oder der batch direkt zugeht nach dem Öffnen. Jemand eine Idee?

Edit: Jetzt kommt nur noch "Read version failed". Kabel habe ich geprüft und erneut neu gemacht. Da sollte alles passen. Jemand eine Idee?
 
Zuletzt bearbeitet:
Zeige doch mal ein Foto der Verkabelung deines Programmieraufbaus und ein Screenshot vom Geräteeintrag deines ST-Link im Gerätemanager.
Eben hat er von jetzt auf Gleich die Datei erstellt. Der Patch hat ebenfalls funktioniert, aber jetzt geht der Scooter gar nicht mehr an. Woran kann das liegen?
 
vermutlich ist er zwischen löschen und neu beschreiben abgebrochen..nur ein screenshot von dem was du angezeigt bekamst könnte das weiter klären.

Probiere den Schritt 7 erneut, bis er hoffentlich mit der "wrote..."-meldung abgeschlossen wird.
 
vermutlich ist er zwischen löschen und neu beschreiben abgebrochen..nur ein screenshot von dem was du angezeigt bekamst könnte das weiter klären.
Das ist der erste Flash:

Screenshot_1.webp


Nun erhalte ich folgendes:
Screenshot_2.webp

Sollte jetzt richtig sein oder

Edit: Scooter geht immer noch nicht an. Ich hatte den ST Link auf WinUSB (v6.1.7600.16385), dort hat er die memory gedumped und alles geflashed. Danach ging er nicht mehr an. Mit libusb-win32 (v1.4.0.0) bekomme ich erneut nur "read version failed"
 
Zuletzt bearbeitet:
  • Hilfreich!
Reaktionen: Couchmann
sieht gut aus jetzt.. so wie oben beschrieben.
Scooter geht immer noch nicht an. Ich hatte den ST Link auf WinUSB (v6.1.7600.16385), dort hat er die memory gedumped und alles geflashed. Danach ging er nicht mehr an. Mit libusb-win32 (v1.4.0.0) bekomme ich erneut nur "read version failed"

Screenshot_3.webp
1.webp
2.webp

Die Kabel die ich zusammen gebastelt habe sind in der Reihenfolge Rot Gelb Grün und Blau als 3.3v
Bild_2025-05-20_004815029.webp
 
UPDATE:

Ich konnte durch die DUMPs, die in V1.9 direkt enthalten sind den Scooter wieder zum Leben erwecken. Man muss nur über einen Hex Editor (HxD zB), die Seriennummer in 1F020 und 0x1F020 anpassen. jetzt ging er zumindest wieder an und möchte über die Ninebot App aktiviert werden. Ich warte jetzt erstmal, bis ich hier mehr Tipps bekomme, bevor ich weiter mache... :D Er lässt sich jetzt nur nicht über die Standortaktualisierung zu den 22km/h machen.
 
Gibt es schon eine Möglichkeit es so zu flashen, dass der Scooter wenn man ihn ausschaltet wieder auf allen Modi nur 22 km/h fährt ?
 
Gibt es schon eine Möglichkeit es so zu flashen, dass der Scooter wenn man ihn ausschaltet wieder auf allen Modi nur 22 km/h fährt ?
Du meinst ein GM? Nein aber du kannst in der App gleich die Geschwindigkeit anpassen auf die legalen Werte (Und diesmal auch den Eco und Drive Modus). So das die Rennleitung so es nicht so einfach feststellen kann.
 
E-Scooter Ninebot G30D2 48V.

Das ist mein alter. Der hat ** Bezahlsoftware ** drauf.
Da kommt man nur mit einem Passwort in den "Bootmodus" wo er 55km....Reichweite ;) hat. Sobald er wieder aus ist und man ihn normal anschaltet, fährt er nur die zugelassenen 20. Das ist schon sehr beruhigend. Da müssten die Dienstboten die auf meinem Privatgrundstück herumlaufen und besorgt um mich sind den Scooter schon sehr genau ansehen - was sie wohl eher nicht machen, wenn man nicht gerade ein Auto überholt oder so ;)

Der neue G3D macht nichtmal 22.

Standort einstellen geht nicht, da kommt eine Fehlermeldung.

Ich werde mal sehen, wieviel Aufmerksamkeit der Scooter erregt, bis ich ihn bearbeite ;)
 
Hallo, ich habe ein Problem.
Ich habe es ja auch auf release.v1.9.1 gemacht aber mit der MEMORY_G3_1CGCС00007C0000_1.5.4.bin von Sharkboy. Habe diese umbenannt und die SN geändert mit dem Programm was bei der 1.4 dabei ist. Aber jetzt geht nichts mehr. Der will ein Passwort obwohl ich nie ein benutzt habe und wenn ich versuche es wieder zu patchen geht es nicht. Was kann ich noch machen?????
 

Anhänge

  • 20250525_210256.webp
    20250525_210256.webp
    727,3 KB · Aufrufe: 0
  • scooter2.webp
    scooter2.webp
    28 KB · Aufrufe: 0
Er gibt jetzt eine Softwarelösung, die keine Wünsche übrig lässt, wenn es einen nur um die Freischaltung der Geschwindigkeit geht.

Edit Mode:
Medienlink Entfernt. Dies Entspricht nicht unseren Richtlinien und Regeln.


Wer 69 EUR übrig hat, kann das Thema an dieser Stelle beenden, funktioniert perfekt (y)

45 macht der G3D allerdings nicht. Meiner macht "nur" 40 - reicht mir aber vollkommen aus.

Das Firmwareupdate schaltet nach Eingabe eines Codes im Modus "S" die Geschwindigkeit frei. D und E bleiben unverändert.
Wenn man den Scooter ausschaltet ist er wieder normal.
 
Zuletzt bearbeitet von einem Moderator:
  • Augenrollend
Reaktionen: Heiko S.