SCOOTER / FIRMWARE TOOLS
Deine Binary.
Dein Geräteschlüssel.
Scooter verbinden, Schlüssel auswählen und eine
Firmware-Datei lokal verschlüsseln.
Scooter verbinden
Ninebot G3 · Segway ZT3 · Ninebot F3
Scooter einschalten. Beim ersten Koppeln den Power-Knopf kurz drücken, sobald du dazu aufgefordert wirst.
- Gerät
- —
- VCU-UID · 0xDA
- —
- MCU-CPUID · 0xC0
- —
- Firmware VCU / MCU
- — / —
Nur verfügbar, wenn die Firmware den Schlüssel freigibt. Für VCU einen bekannten Geräteschlüssel eingeben.
Firmware vorbereiten
TEA: z. B. VCU 1.6.2 / MCU 1.5.7. Das Verfahren muss zur Ziel-Firmware passen.
Auch 22 ASCII-Zeichen bzw. 44 Hex-Ziffern möglich: Die ersten 16 Byte werden verwendet, die letzten 6 Byte sind der Marker.
Binary auswählen und Geräteschlüssel eingeben.
info.json ansehen +
Gerätegebunden.
Mit separatem Schlüssel.
Die CPUID identifiziert den Controller. Der gelieferte Code ordnet darüber vorhandene Geräteschlüssel zu; er enthält keine Formel, die aus einer CPUID einen OEM-Schlüssel berechnet.
Das Image erhält Null-Padding und eine 32-Bit-Prüfsumme. Danach folgen 32 TEA- oder XTEA-Runden je 8-Byte-Block im CBC-Modus mit Null-IV und der gewählten Schlüsselrotation. BLE und BMS verwenden in diesem Code den gemeinsamen TEA-Schlüssel.
Technische Details & Grenzen +
TEA rotiert nach je 1024 Byte: Schlüsselbyte i wird modulo 256 um i erhöht. XTEA verwendet standardmäßig dieselbe Rotation; bei 120-Byte-Seiten liegt die gemeinsame Grenze bei 15360 Byte. Der CBC-Zustand läuft dabei weiter.
Vor der Verschlüsselung wird auf 4 Byte mit Nullen aufgefüllt. Falls nötig folgen weitere 4 Null-Byte, sodass Daten plus Prüfsumme durch 8 teilbar sind. Prüfsumme: Summe aller Little-Endian-32-Bit-Wörter modulo 2³², Halbworttausch, dann bitweises NOT.
Nach der Verschlüsselung werden Entschlüsselung, Prüfsumme, Originalbytes und Null-Padding geprüft. Das bestätigt das Dateiformat; die Annahme durch einen bestimmten Bootloader ist damit nicht nachgewiesen. Es gibt keine Flash-Funktion.
Bluetooth braucht einen unterstützten Browser und einen sicheren Kontext. Chrome-Dokumentation ↗