Der vermutlich letzte Meilenstein meiner ALDL-Forschung ist erreicht.
Wir können nun gespeicherte Fehler löschen!
Ich schreibe so euphorisch, dass ich aktuell noch gar nicht sagen kann ob die magischen Worte
oder vielleicht doch
sind aber das wird sich noch zu meiner SPI-Zeit im Wiki wiederfinden.
Der ALDL-Viewer hat jedenfalls gerade seinen ersten gespeicherten Fehler gelöscht.
Ich denke, es wird noch eine Version 1.1 des Quelltextes für künftige Bastler geben!
Die Forschung war ziemlich spannend: Der Endurofant hat mich heute besucht und hatte sein TECH1 im Gepäck. Das haben wir mit ziemlich wilder Verdrahtung bei seiner Arbeit belauschen können.
Was folgte war das Sortieren von Unmengen Hexadezimalcode und schließlich 14 gefundene Bytes, die genau die gewünschte Arbeit verrichten.
Ich freu mich! Danke nochmal, Sebastian!
Ergänzung vom 10.01.2015:
Fehler werden gelöscht mit:
F4: Initialisierungsstring
60: Länge ALDL-Wort
04: ALDL Mode4 (bisher hatten wir zum Auslesen ja nur "01" genutzt)
00: nix
00: nix
40: Bit 6 gesetzt (hex40 ist binär 01000000)
00: nix
00: nix
00: nix
00: nix
00: nix
00: nix
00: nix
68: Prüfsumme
Es SCHEINT, als ob der Mode 4 nicht so fahrzeugspezifisch ist wie der Mode1. Jedenfalls steht
hier (im Dokument aus dem 3. Posting) ebenfalls beim Byte3 (Flag 3) dass man damit Fehler löscht. Mir ist es aber leider nicht gelungen mit dem gesetzten Bit 2 des Flag 2 die CheckEngine einzuschalten oder mit Bit 6 die Benzinpumpe.
Laut dieses Dokumentes sind in diesem Modus noch ganz andere Spielereien möglich.
Ach schade, dass meine SPI-Zeit in ein paar Tagen vorbei ist
Ergänzung vom 11.01.2015:
Zwischenmeldung: Habe soeben noch andere Schaltvorgänge erfolgreich durchführen können.
CheckEngine ein
Code: Alles auswählen
Send: $F4,$60,$04,$81,$01,$00,$00,$00,$00,$00,$00,$00,$00,$26
Recv: $F4,$56,$04,$B2
CheckEngine aus
Code: Alles auswählen
Send: $F4,$60,$04,$81,$00,$00,$00,$00,$00,$00,$00,$00,$00,$27
Recv: $F4,$56,$04,$B2
Lüfter an (ich hab nur einen im 2107)
Code: Alles auswählen
Send: $F4,$60,$04,$82,$02,$00,$00,$00,$00,$00,$00,$00,$00,$24
Recv: $F4,$56,$04,$B2
Lüfter aus
Code: Alles auswählen
Send: $F4,$60,$04,$82,$00,$00,$00,$00,$00,$00,$00,$00,$00,$26
Recv: $F4,$56,$04,$B2
Setze Solldrehzahl (Lehrlauf) auf 1000RPM
Code: Alles auswählen
Send: $F4,$60,$04,$00,$00,$00,$00,$00,$00,$03,$50,$00,$00,$55
Recv: $F4,$56,$04,$B2
Setze Solldrehzahl auf 1600RPM (Maximum)
Code: Alles auswählen
Send: $F4,$60,$04,$00,$00,$00,$00,$00,$00,$03,$80,$00,$00,$25
Recv: $F4,$56,$04,$B2