- 11 Oktober 2022
- 25
- 9
- E-Scooter
- G30D II
Status: Experimentell, Ungetestet
CFW: DRV173-SLS_27.bin
Mod Edit:
Link entfernt
Project (GitHub):
Ich habe für die DRV173 einen Speed Patch für den Speed Mode geschrieben. Das Projekt basiert auf dem
Status Controller: Der 1.1 Controller wurde von Nutzern gebrickt, da die ältere (+gepatchte) Firmware (wegen Kompilierung) nicht für den verbauten Artery Chip kompatibel ist. Soweit ich es verstande habe, ist der Flash an sich aber kein Problem. Ich denke daher, dass die CFW somit kompatibel sein müsste.
Ich habe nicht alle Mittel um diese CFW selber zu testen... aber wenn jemand Lust dazu hat und für den schlimmsten Fall dass KnowHow, den Controller per ST-LINK bzw. UART bei den neuen Controllern zu unbricken, kann die Person es gerne tuhen.
Ich bitte jemanden darum, auch nochmal auf den Code zu schauen.
So wurde für den Speed Patch vorgegangen:
1. Im Xiaomi Patcher wird bei der DRV319 des Mi 1S dass Offset 5d12 verändert:
von:
zu:
2. Ich habe in der DRV173 des Max befindet sich folgender (zu 99% sicher) equivalenter Code (konnte nichts so krass ähnliches woanders finden):
Daher sollte hier das Offset 6f2e verändert werden.
3. Ich habe nach der vorliegenden Logik des Xiaomi Codes in meinem Code folgende Änderungen gemacht:
Neue Signatur = [0x97, 0xf8, 0x51, None, None, 0x23, 0x4f, 0xf4, 0xfa, 0x5a]
vorher: [0x95, 0xf8, 0x34, None, None, 0x21, 0x4f, 0xf4, 0x96, 0x70]
(Ergibt sich durch die Daten vor dem Patch-Offset)
Neues Register: 12
vorher: 8
(Hier werden die km/h reingeschrieben. Dass Register wird im Code zum verifizieren angegeben)
Neues zusäzliches Offset: 0xa
vorher: 0xe
(Durch die Suchfunktion mittels des Patterns muss noch zusätzlich ein Offset hinzugefügt werden, um zum Offset des eigentlichen Patches zu gelangen)
4. Fazit
Log der Veränderungen meines Ninebot Patchers:
Insgesamt sollte im Ninebot Patch exakt das selbe mit minimal veränderten Parametern gemacht worden sein.
Zum Abgleich:
CFW: DRV173-SLS_27.bin
Mod Edit:
Link entfernt
Project (GitHub):
Um Links zu sehen, melde dich bitte an
Ich habe für die DRV173 einen Speed Patch für den Speed Mode geschrieben. Das Projekt basiert auf dem
Um Links zu sehen, melde dich bitte an
. Zukünftig sollen noch mehr Patches hinzugefügt werden.Status Controller: Der 1.1 Controller wurde von Nutzern gebrickt, da die ältere (+gepatchte) Firmware (wegen Kompilierung) nicht für den verbauten Artery Chip kompatibel ist. Soweit ich es verstande habe, ist der Flash an sich aber kein Problem. Ich denke daher, dass die CFW somit kompatibel sein müsste.
Ich habe nicht alle Mittel um diese CFW selber zu testen... aber wenn jemand Lust dazu hat und für den schlimmsten Fall dass KnowHow, den Controller per ST-LINK bzw. UART bei den neuen Controllern zu unbricken, kann die Person es gerne tuhen.
Ich bitte jemanden darum, auch nochmal auf den Code zu schauen.
So wurde für den Speed Patch vorgegangen:
1. Im Xiaomi Patcher wird bei der DRV319 des Mi 1S dass Offset 5d12 verändert:
von:
Code:
mov.w r8,#0x19
Code:
mov.w r8,#<NEUE KMH>
Code:
LAB_00005d04
00005d04 95 f8 34 30 ldrb.w r3,[r5,#0x34]=>DAT_200006f8
00005d08 14 21 movs r1,#0x14
00005d0a 4f f4 96 70 mov.w r0,#0x12c
00005d0e 44 f6 20 62 movw r2,#DAT_00004e20
00005d12 4f f0 19 08 mov.w r8,#0x19
2. Ich habe in der DRV173 des Max befindet sich folgender (zu 99% sicher) equivalenter Code (konnte nichts so krass ähnliches woanders finden):
Code:
LAB_00006f24
00006f24 97 f8 51 b0 ldrb.w r11,[r7,#0x51]=>DAT_200007cd
00006f28 14 23 movs r3,#0x14
00006f2a 4f f4 fa 5a mov.w r10,#0x1f40
00006f2e 4f f0 19 0c mov.w r12,#0x19
Daher sollte hier das Offset 6f2e verändert werden.
3. Ich habe nach der vorliegenden Logik des Xiaomi Codes in meinem Code folgende Änderungen gemacht:
Neue Signatur = [0x97, 0xf8, 0x51, None, None, 0x23, 0x4f, 0xf4, 0xfa, 0x5a]
vorher: [0x95, 0xf8, 0x34, None, None, 0x21, 0x4f, 0xf4, 0x96, 0x70]
(Ergibt sich durch die Daten vor dem Patch-Offset)
Neues Register: 12
vorher: 8
(Hier werden die km/h reingeschrieben. Dass Register wird im Code zum verifizieren angegeben)
Neues zusäzliches Offset: 0xa
vorher: 0xe
(Durch die Suchfunktion mittels des Patterns muss noch zusätzlich ein Offset hinzugefügt werden, um zum Offset des eigentlichen Patches zu gelangen)
4. Fazit
Log der Veränderungen meines Ninebot Patchers:
Code:
speed_limit_speed (Offset) 0x6f2e (HEX davor) 4ff0190c (HEX danach) 40f21b0c
(vorher)< mov.w ip, #0x19
(nachher)> movw ip, #0x1b
Insgesamt sollte im Ninebot Patch exakt das selbe mit minimal veränderten Parametern gemacht worden sein.
Zum Abgleich:
-
Um Links zu sehen, melde dich bitte an
-
Um Links zu sehen, melde dich bitte an
-
Um Links zu sehen, melde dich bitte an
-
Um Links zu sehen, melde dich bitte an
Zuletzt bearbeitet von einem Moderator: