Hallo!
Dinoearl hat mir vor einiger Zeit freundlicherweise eine WMF800 als Teilespender verkauft.
Damit habe ich dann wie schon beschrieben das P-Tasten Problem gefunden.
Nun lachte mich aber das EEPROM so an und da es gesockelt ist, lud es zum auslesen ein.
Also habe ich einen uP als EEPROM Leser/Schreiber/Sniffer/Emulator programmiert und mir das EEPROM angesehen.
Zugegeben war meine Hoffnung, daß ich die Stelle finde, wo man die Service Meldung löschen kann.
Das ist dann leider aber nicht so einfach.
Ziemlich einfach zu finden waren dagegen die Zählerstande und anderes Grundlegendes (die Hex-Zahl ist die Speicherstelle):
Einschaltzeit 040A
Anzahl Einschalt? 0416
Getr. Seit Rein.? 041E
Trester Zähler? 0420
ZS: intern 04EC
ZS: total 04F4
ZS: Espresso 04F6
ZS: Café 04F8
ZS: Cappuccino 04FA
ZS: LM 04FC
ZS: Milch 04FE
ZS: Wasser 0500
ZS: 2x Espresso 0502
ZS: 2x Café 0504
ZS: 2x Cappuccino 0506
Um das zu finden habe ich immer die Maschine nach einem Bezug ausgeschaltet, das EEPROM ausgebaut, ausgelesen und wieder von vorne.
Obwohl ich die entsprechenden Werkzeuge dafür habe, hätte das EEPROM das mechanisch nicht lange mitgemacht.
Als nächstes habe ich dann die Kommunikation zwischen uP und EEPROM belauscht und herausgefunden, daß die Parameter anscheinend in großen Strukturen organisiert sind, die dann nach einer Änderung komplett gespeichert werden.
Um die Analyse dieser Strukturen einfacher zu machen habe ich dann den uP direkt als Emulator anstelle des EEPROMS angeschlossen und unglücklicherweise ein weiteres Feature entdeckt:
Anscheinend speichert die Maschine einen Wert im internen uP und vergleicht diesen mit dem entsprechenden im EEPROM.
Dieser wird dann wohl bei jedem Einschalten geändert, wodurch man die EEPROMs nicht zwischen verschiedenen Maschinen austauschen kann.
Erkennt die Maschine, daß das EEPROM ausgetauscht wurde, löscht sie es.
Leider habe ich den Emulator nicht mit dem letzten EEPROM-Image gestartet, so daß nun auch mein EEPROM nicht mehr funktioniert.
Da ich aber einiges an Zeit investiert habe, wollte ich es hier dokumentieren, da es ja etwas über die Funktion der Maschine aussagt.
Dinoearl hat mir vor einiger Zeit freundlicherweise eine WMF800 als Teilespender verkauft.
Damit habe ich dann wie schon beschrieben das P-Tasten Problem gefunden.
Nun lachte mich aber das EEPROM so an und da es gesockelt ist, lud es zum auslesen ein.
Also habe ich einen uP als EEPROM Leser/Schreiber/Sniffer/Emulator programmiert und mir das EEPROM angesehen.
Zugegeben war meine Hoffnung, daß ich die Stelle finde, wo man die Service Meldung löschen kann.
Das ist dann leider aber nicht so einfach.
Ziemlich einfach zu finden waren dagegen die Zählerstande und anderes Grundlegendes (die Hex-Zahl ist die Speicherstelle):
Einschaltzeit 040A
Anzahl Einschalt? 0416
Getr. Seit Rein.? 041E
Trester Zähler? 0420
ZS: intern 04EC
ZS: total 04F4
ZS: Espresso 04F6
ZS: Café 04F8
ZS: Cappuccino 04FA
ZS: LM 04FC
ZS: Milch 04FE
ZS: Wasser 0500
ZS: 2x Espresso 0502
ZS: 2x Café 0504
ZS: 2x Cappuccino 0506
Um das zu finden habe ich immer die Maschine nach einem Bezug ausgeschaltet, das EEPROM ausgebaut, ausgelesen und wieder von vorne.
Obwohl ich die entsprechenden Werkzeuge dafür habe, hätte das EEPROM das mechanisch nicht lange mitgemacht.
Als nächstes habe ich dann die Kommunikation zwischen uP und EEPROM belauscht und herausgefunden, daß die Parameter anscheinend in großen Strukturen organisiert sind, die dann nach einer Änderung komplett gespeichert werden.
Um die Analyse dieser Strukturen einfacher zu machen habe ich dann den uP direkt als Emulator anstelle des EEPROMS angeschlossen und unglücklicherweise ein weiteres Feature entdeckt:
Anscheinend speichert die Maschine einen Wert im internen uP und vergleicht diesen mit dem entsprechenden im EEPROM.
Dieser wird dann wohl bei jedem Einschalten geändert, wodurch man die EEPROMs nicht zwischen verschiedenen Maschinen austauschen kann.
Erkennt die Maschine, daß das EEPROM ausgetauscht wurde, löscht sie es.
Leider habe ich den Emulator nicht mit dem letzten EEPROM-Image gestartet, so daß nun auch mein EEPROM nicht mehr funktioniert.
Da ich aber einiges an Zeit investiert habe, wollte ich es hier dokumentieren, da es ja etwas über die Funktion der Maschine aussagt.