Hack: Ricoh Aficio SP100e Toner Chip

OP #4164782
Lesenswert?

Hallo,

heute ist es mir endlich gelungen den Toner Chip meines Druckers 
auszulesen und neu zu beschreiben. Ich dachte, es ist vielleicht für 
einige von euch ganz nützlich, wenn ich meine Erkenntnisse hier teile.

Der Ricoh Aficio SP 100e besitzt wie die meisten Laserdrucker einen Chip 
auf der Tonerkartusche, der die gedruckten Seiten "zählt". Wenn dieser 
leer ist kann nicht mehr gedruckt werden, auch wenn der Toner noch nicht 
leer ist oder bereits wieder aufgefüllt wurde, was bei diesen Kartuschen 
sehr einfach geht. Der Chip besitzt als Herzstück ein SO8-EEPROM des 
Typs FM24C02B. Dieses unterscheidet sich vom Microchip M24C02B nur 
darin, dass es Adresspins besitzt, die beim Auslesen mit der gesendeten 
Adresse übereinstimmen müssen. Der Chip ist so verdrahtet, dass man das 
EEPROM nicht auslesen kann, da A0 und A1 auf VCC gelegt sind und somit 
nicht mit der vom Programmer gesendeten Adresse übereinstimmen. Man muss 
also zum Auslesen A0 und A1 auf GND legen. Dann kann man mit jedem 
beliebigen EEPROM Programmer den Chip wie ein M24C02B auslesen und neu 
beschreiben. Bevor man den Chip jedoch wieder in den Drucker einsetzt 
muss man A0 und A1 wieder auf VCC legen, sonst wird der Chip nicht 
erkannt. Ich habe zum Testen einen halb "leeren" Chip ausgelesen und 
dessen Daten zurück auf einen "leeren" Chip geschrieben. Das 
funktioniert wunderbar und der Chip ist wieder nutzbar. Allerdings 
verstehe ich nicht, wie die Seitenzahl in den Chip geschrieben wird. 
Vielleicht kann jemand von euch mit dem Dump was anfangen.


Grüße

Max
Angehängte Dateien:
OP #4167225
Lesenswert?

Die Seitenzahl könnte passen, müsste ich noch mal genau nachsehen. Ich 
habe mir die Dateien ehrlich gesagt selbst noch gar nicht so richtig 
angesehen. Ich war erstmal zufrieden damit halb volle Chips zu kopieren. 
Die ersten 22 Byte scheinen eine Art Header zu sein, die sind bei beiden 
Dumps identisch. Die 12 Bytes ab Offset 0x20 sind auch gleich bei 
beiden. Ansonsten kann ich da aber nicht mehr viel herauslesen. Irgendwo 
müsste ja die Seitenzahl, die für diesen Chip noch übrig ist gespeichert 
sein. So ein Chip ist wohl eigentlich für maximal 1200 Seiten nutzbar, 
dann sollte die Kartusche leer sein.
Gast #4167274
Lesenswert?

Es sind doch leider recht viele verschiedene bits.
So leicht wollen die es einem wohl nicht machen.

Vermutlich müsstest Du eine Seite drucken, wieder auslesen, noch eine 
...

Dann sind sicher auch noch andere (Prüfsummen?) Werte mit dabei.

Ist wohl das Beste einen neuen Chip zu kopieren und das dump immer 
wieder zu verwenden. Es sei denn er stört sich an dessen Seriennummer 
die auch noch im Drucker verwaltet wird.

GHex z.B. zeigt schön verschiedene Zahlenformate an, das macht es 
leichter die möglichen Werte zu erkennen.
Angehängte Dateien:
#4167349
Lesenswert?

Max W. schrieb:
> Der Chip besitzt als Herzstück ein SO8-EEPROM des
> Typs FM24C02B. Dieses unterscheidet sich vom Microchip M24C02B nur
> darin, dass es Adresspins besitzt, die beim Auslesen mit der gesendeten
> Adresse übereinstimmen müssen. Der Chip ist so verdrahtet, dass man das
> EEPROM nicht auslesen kann, da A0 und A1 auf VCC gelegt sind und somit
> nicht mit der vom Programmer gesendeten Adresse übereinstimmen. Man muss
> also zum Auslesen A0 und A1 auf GND legen. Dann kann man mit jedem
> beliebigen EEPROM Programmer den Chip wie ein M24C02B auslesen und neu
> beschreiben. Bevor man den Chip jedoch wieder in den Drucker einsetzt
> muss man A0 und A1 wieder auf VCC legen, sonst wird der Chip nicht
> erkannt.

Das EEPROM ist vollständig kompatibel zu einem ST M24C02 oder MC 
24C02C. Ein MC M24C02B gibt es nicht, da ist ein M zu viel.
Gast #4188454
Lesenswert?

Hallo,

dein Post interessiert mich sehr. Mit welchem Mittel hast du den Eeprom 
über Linux auslesen und in einem Hex-Editor darstellen lassen können? 
Solch ein Tool suche ich noch :)

Wäre dir für einen Hinweis sehr dankbar.

Mit Gruß

Mike
#4189165
Lesenswert?

Ich kann nur Sagen wie das ganze bei Samsung fünktioniert, welche auch 
solche Chips benutzen. Dort wird die Seitenzahl nich auf dem 
Kartuschenchip gezählt, sondern auf einem EEPROM im Gerät selbst. Der 
Chip an der Kartusche enthält nur eine eindeutige ID mithilfe der 
Drucker die neue Kartusche von der alten unterscheiden kann und somit 
wieder von 0 beginnen kann zu zählen.

Den Chip im Drucker konnte man ganz leicht hacken indem man einfach den 
R/W-Pin fest auf das Read-Potential gelegt hat. Somit war dann Schluss 
mit neuen Zählwerten schreiben ;)
Gast #4240069
Lesenswert?

Max W. schrieb:
> ausgelesen habe ich das EEPROM mit einem USB Programmer aus Fernost
> (SP200SE) allerdings unter Windows.

Ich habe einen Ricoh SP250 Drucker und da dürfte der Toner chip ähnlich 
wie bei dir beschaltet sein (Address-Pins). Daher hab ich mir mit einem 
STM32 Discovery eine kleine Firmware zum flashen gestrickt. Habe von 
einem neuen Toner die EEPROM Inhalte ausgelesen und nun kann ich meine 
alten Toner damit programmieren. Die Firmware versucht auf die jenigen 
Adressen zuzugreifen, bei Erfolg wird einfach der Inhalt des neuen 
Toners reingeschrieben. Somit muss man nichtmal das PCB mit dem EEPROM 
ausbauen, einfach mit dem discovery verbinden, einmal auf den button 
drücken und fertig.
Details zu finden unter: 
http://esdblog.org/ricoh-sp-c250dn-laser-printer-toner-hack/
Gast #4360302
Lesenswert?

Hello, apologies that I cannot speak Deutch. I hope someone is able to 
understand what I am saying here.

I found this thread and ran it through translate as I am also looking to 
reuse my Ricoh chips on my sp100e. The address pins being tied high are 
not a problem, I was able to read the contents of the 24c02 using the 
chip address of 0x53 using an Arduino nano, outputting the memory over 
the serial monitor. My idea was to emulate the eeprom, but not being a 
programmer I realised it is beyond my ability. I can post the details 
from an 'empty' chip, and one that has printed two pages if that will 
help, but they are not bin files, just a list of memory values. Let me 
know if this would help.
Gast #4388549
Lesenswert?

Hi David,

Can you upload pictures of empty contend and then when 2 pages printed?
Wonder how it's changed. I have SP112 type.
Also question, what do you mean 'empty' chip?
Is it extraction of a starter toner (500pgs toner included with a new 
printer) or contend of new full cartage (1200 pgs)?
Gast #4401204
Lesenswert?

Meine Schwester hat auch so einen Drucker.
Es gibt fertige Ersatzeproms zu kaufen...
Hab aber dann doch einfach neuen Toner gekauft, da man doch in die 
Tonerkasette ein Lock brennen muss. Das war mir zuviel Gefummel.

Der ganze Drucker ist ja Beschiss. Denn ohne das e im Namen (e wie 
Europe) gibt/gab es das Teil in Asien auch. Nur da ohne Chipzwang und 
dazu noch Toner mit Nachfüllloch und Nachfülltonerbeutel. Tja... mit den 
ollen Europäern kannste's ja machen.
Persönliche Seite #4401217
Lesenswert?

Matthias B. schrieb:
> Ich kann nur Sagen wie das ganze bei Samsung fünktioniert, welche auch
> solche Chips benutzen. Dort wird die Seitenzahl nich auf dem
> Kartuschenchip gezählt, sondern auf einem EEPROM im Gerät selbst. Der
> Chip an der Kartusche enthält nur eine eindeutige ID mithilfe der
> Drucker die neue Kartusche von der alten unterscheiden kann und somit
> wieder von 0 beginnen kann zu zählen.
>

Was macht der Drucker, wenn man verschiedene Kartuschen durcheinander 
verwendet? Hat der für eine begrenzte Anzahl Kartuschen mehrere 
Speicherbereiche im Motherboard-EEPROM, damit er sie unterscheiden kann?
OP #4484637
Lesenswert?

Hallo,

sorry dass ich mich so lange nicht mehr zu Wort gemeldet habe. Ich hatte 
leider nicht die Zeit mich weiter mit dem Drucker zu beschäftigen. 
Gestern habe ich dann aber herausgefunden, dass der Drucker 80% 
Füllstand anzeigt, wenn man die 0xFF ab Offset 0x80 aus dem Dump mit 
0x00 ersetzt. Die Werte davor scheinen keinen Einfluss darauf zu haben.

Was aber viel wichtiger ist: Man kann den write protect Pin des EEPROM 
einfach auf VDD legen und schon kann man einen Chip ewig benutzen. 
Dieser ist auf der Leiterplatte mit GND verdrahtet, diese Leiterbahn 
muss also vor dem Brücken durchtrennt werden.

Danke für eure Hilfe! Jetzt können wir quasi für lau mit dem SP100e 
drucken.


David schrieb:
> Hello, apologies that I cannot speak Deutch. I hope someone is able to
> understand what I am saying here.
>
> I found this thread and ran it through translate as I am also looking to
> reuse my Ricoh chips on my sp100e. The address pins being tied high are
> not a problem, I was able to read the contents of the 24c02 using the
> chip address of 0x53 using an Arduino nano, outputting the memory over
> the serial monitor. My idea was to emulate the eeprom, but not being a
> programmer I realised it is beyond my ability. I can post the details
> from an 'empty' chip, and one that has printed two pages if that will
> help, but they are not bin files, just a list of memory values. Let me
> know if this would help.

Hello David,
I also tried emulating the EEPROM with an Attiny25 but the printer did 
not recognize it as a valid toner cartridge. I think this happens 
because the emulation is much slower than a normal EEPROM.
But there is no need for an emulation because you can prevent the 
writing of the chip by connecting the write protect pin (pin 7) of the 
EEPROM with the supply voltage. If you do so, the printer can read the 
content of the chip but can not write it anymore. This pin is connected 
to GND by default so you have to cut this connection first and then 
reconnect it to VDD.
Gast #4563647
Lesenswert?

Hi, sorry for the late reply and for posting in English. This is the hex 
dump from the two chips, I think the empty chip was the 500 page one 
shipped with the printer. The full chip was third party from eBay. I 
will write protect the eeprom thanks to the advice here.

Empty* chip dump (500 page one I think!)
20,0,1,3,3,1,1,0,0,0,34,30,37,31,36,36,
12,6,4D,41,16,0,0,82,0,0,0,0,20,0,1,1,
54,32,37,32,4D,37,37,30,30,36,36,20,0,45,0,0,
0,0,0,EB,0,0,0,0,0,0,3,48,0,0,0,0,
0,0,2,8F,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,3,40,20,0,1,1,20,0,1,1,
0,0,0,0,0,0,0,0,2,7F,0,0,0,0,0,0,
0,23,E3,DA,1B,0,1E,5D,0,0,0,0,0,0,0,0,

Full* chip dump (Clone from ebay)
0x20, 0x00, 0x01, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x34, 0x32, 
0x38, 0x30, 0x39, 0x33,
0x12, 0x06, 0x4D, 0x41, 0x16, 0x00, 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 
0x20, 0x00, 0x01, 0x01,
0x54, 0x32, 0x37, 0x32, 0x4D, 0x37, 0x37, 0x30, 0x30, 0x36, 0x36, 0x20, 
0x64, 0x30, 0x00, 0x00,
0x00, 0x00, 0x03, 0x7A, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x01, 0x01, 
0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x1E, 0xB7, 0x00, 0x00, 0x64, 0x05, 0x00, 0x00, 0x00, 0x00, 
0x00, 0x00, 0x00, 0x00,
Gast #4863044
Lesenswert?

Diese ganze Arbeit kann man sich auch sparen in dem man im Servce Mode 
eine Ziffer auf 0 stellt. Bei meinem Ricoh SP 112 geht das ohne Probleme 
und ich drucke weiterhin mit der Starterkartusche. Ich bin mir sicher, 
dass dies auch mit anderen Modellen der Marke Ricoh geht, weil im 
Service Mode auch andere Modelle standen.

Andere Modelle:
SP111
SP 111SU
SP SF
SP 112
SP 112SU
SP 112SF
SP 110
SP 110SU
SP 110SF

Sobald der Mauszeiger sich in dem Feld (Bild 3) befindet muss man dann 
Shift+Ctrl drücken und gedrückt halten und auf der rechten Maustaste 2x 
drücken.
Angehängte Dateien:
Gast #4863766
Lesenswert?

In einem Video hat einer ein Loch von oben mit einem Lötkolben 
geschmolzen. In das Loch hat er dann den Toner mit einer kleinen Flasche 
gekippt. Das war nur eine sauerei. Hineinbohren geht wahrscheinlich 
nicht wegen den Plastikpartikeln die dann in den Tonertank gelangen 
könnten.

Sollte ich da mal machen, dann werde ich das Loch so groß wie eine ein 
Cent Euromünze hineinschmelzen und mit einen kleinen Trichter das Pulver 
leicht hinein klopfen. Als Deckel für das Loch geht sicherlich ein 
zugeschnittener Plastikdeckel einer PET Flasche, welches man mit einer 
Heißklebepistole fixiert damit es auch Luftdicht ist bzw. keine 
Feuchtigkeit eindringen kann.
Beitrag #4863789 wurde von einem Moderator gelöscht.
Gast #4920667
Lesenswert?

@Josef1 (Gast)
Natürlich muss dabei der Drucker eingeschaltet sein. Schließlich wird 
diese Einstellung auf dem Gerät gespeichert. Und mit zweimal drücken ist 
ein Doppelklick gemeint.

Es kann aber auch sein, das dies auf deinem Modell nicht funktioniert.

Schaue ansonsten auf Youtube vorbei: "RICOH Aficio 211 toner reset"
https://www.google.de/search?q=RICOH+Aficio+211+toner+reset&client=opera&channel=suggest&prmd=ivns&source=lnms&tbm=vid&sa=X&ved=0ahUKEwj84O7k4rbSAhUmi1QKHYFbCCEQ_AUIBg
Beitrag #4971861 wurde von einem Moderator gelöscht.
Gast #5031829
Lesenswert?

Dieser Beitrag hat mir sehr geholfen,zeugt von großer Sachkenntnis !
Nach dem Ausführen der dargelegten Schritte,Bilder waren dabei sehr
hilfreich,hat alles auf Anhieb geklappt.
Die "leere" Kartusche druckt wieder.
Vielen Dank nochmals.
Eine Frage habe ich allerdings noch dazu:
Kann man die Anzeige der gedruckten Seiten auch auf "Null" stellen ?
Wenn ja,dann wie ?
In Erwartung auf eine positive Antwort und mit
frdl.Grüßen
Gast #5033011
Lesenswert?

@Vogtländer
Nicht das ich es wüsste. Ich selber denke da nur, dass der Zähler 
einfach nicht mehr zählt. Das Zählen der gedruckten Seiten scheint mir 
auch nicht wichtig, weil ja nicht jeder Druck identisch ist und man 
somit ja nur erahnen kann wieviel man noch drucken könnte. Spätestens 
wenn der Tonertank leer ist merkt man es.
Gast #5063980
Lesenswert?

Danke JG. Bin durch Google auf den Post gekommen und konnte mein Problem 
binnen Minuten lösen. Ist echt eine Frechheit, was sich die Firmen hier 
erlauben. Bin mit dem Drucker eigentlich zufrieden ... aber sowas ist 
unterste Schublade.

Herzlichen Dank Dir daher nochmals!
Gast #5417031
Lesenswert?

tja, alles nett, aber mit einem USB Anschluss kann man beim Ricoh SP 211 
SU keinen Zugriff per Smart Monitor auf den Drucker bekommen. das prog. 
braucht anscheinend eine IP-Adresse.
ich probier stattdessen mal einen neuen chip für 3,50 bei ebay aus.
Gast #5437786
Lesenswert?

Habe einen "RICOH SP C250DN"
Wenn ich dieser Beschreibung folge, (Wenn sich der Mauszeiger im Feld 
Bild 3 befindet, Umschalt+Strg drücken, gedrückt halten und mit der 
rechten Maustaste 2x klicken) dann passiert bei mir garnichts.
Giebt es da noch einen anderen Trick?
Gast #5454480
Lesenswert?

Mal ein Update: Der Trick mit der Druckertreibersoftware hat leider 
nicht funktioniert. Das geheime Menü kommt, konnte aber nichts 
zurücksetzen.

Jetzt steht der Drucker nur rum, weil er halt wieder sagt "Toner alle".
Dafür hat meine Schwester jetzt nen teureren, mit Scanner, Brother 
glaube, aber der zählt ja auch... hat zwar Tonersparmodus, aber ob der 
was bringt? Gibt auch noch keine Fakechips für den.

Egal. Ich habe mir spontan für 8 Euro bei Aliexpress 10 Tonerchips 
geholt. Versand ging sogar recht fix über Luftpost. Auf ebay bekomme ich 
dafür einen aus Deutschland. Werde jetzt den Trick mit dem Pin 7 auf VDD 
klemmen mal probieren, wenn's nicht klappt hab ich ja noch 9 chips :)
#5567334
Lesenswert?

Hallo!
Da dieser Thread relativ weit vorne in Google auftaucht, wenn man sucht 
wie man Chips umprogrammiert, möchte ich hier meine Ergebnisse zum Ricoh 
SP213W dokumentieren.

Im Anhang findet ihr einen Arduino Sketch, getestet habe ich es an einem 
Nano.
Der Sketch liest als erstes die alten Daten aus, zeigt dann welche neuen 
Daten draufgeschrieben werden und liest anschließend die neuen Daten vom 
Chip damit man sie im Nachhinein per Hand vergleichen kann.
Der Sketch ist aus verschiedenen Quellen zusammenkopiert, die wichtigste 
ist dieses Video: https://www.youtube.com/watch?v=Wwd5UCi9Huw
Darin wird auch erklärt wie das Ganze prinzipiell verkabelt werden muss. 
Allerdings ist die Pinreihenfolge beim SP213w etwas anders als gezeigt, 
deshalb habe ich nochmal ein Bild mit der Pinbelegung angehängt.

Viele Grüße,
Leo

Ps: Schaut den Sketch nicht zu genau an, ist nicht so schön geworden. :P 
Aber bei mir gehts und das reicht mir.
Die i2c Adresse vom Chip habe ich mir dem I2C Scanner von Arduino 
herausgefunden. https://playground.arduino.cc/Main/I2cScanner
Angehängte Dateien:
Gast #5609607
Lesenswert?

Falls es jemandem hilft:
Bin bei der Suche nach Möglichkeiten den IC41-Resttintenbehälter von 
meinem Aficio 2100N zurückzusetzen hier gelandet. Hatte leider keinen 
leeren Behälter als Vergleich, habe aber den fast vollen Behälter 
ausgelesen und als er ganz voll war einfach mal die ersten 16 Bytes vom 
Dump wieder daraufgeschrieben.
Jetzt wird er wieder als leer angezeigt.

Hier das Kommando für den I2C-Mode vom Buspirate:

[0xA8 0x00 0x00 0xE3 0x01 0x03 0x50 0x00 0x07 0xC5 0xF5 0xD6 0x20 0x14 
0x12 0x13 0x00 0x00]

0xA8 ist die Write-Adresse vom Chip, das erste 0x00 müsste die 
Startadresse sein (der Speicher hat anscheinend 256 Byte). Der Rest ist 
aus dem Dump.
Gast #5628787
Lesenswert?

Hallo, und Hallo zusammen,
Würde diese Art, "Man kann den write protect Pin des EEPROM einfach auf 
VDD legen und schon kann man einen Chip ewig benutzen. Dieser ist auf 
der Leiterplatte mit GND verdrahtet, diese Leiterbahn muss also vor dem 
Brücken durchtrennt werden.", auch bei den kartuschen eines  ricoh 
aficio sp c240dn klappen? Und, wenn ich noch nicht gefunden hab gibt's 
da ne Anleitung um Irrtümer auszuschließen??

Danke für eine aufschlussreiche antwort
#5769657
Lesenswert?

Hallo zusammen,
auch ich bin bei meinem RICOH-Drucker auf den "leeren" Toner und folgend 
auf eure Seite gestossen.
Mit der o.a. Prozedur "Ricoh_SP213w_Toner_Chip_Reset.ino" kam ich leider 
NICHT ans Ziel. Also wurde ein Toner Chip (CRISP150-700) gekauft, der 
Chip ausgelesen und auf den Alten draufgespielt. Läuft wunderbar! Siehe
1
Read_Out_Chip_exchange.txt
Dieser Code wurde in die o.a. Prozedur kopiert und alles ist gut für den 
SP150 Drucker.
Vielen Dank
Angehängte Dateien:
#8023606
Lesenswert?

auch wenn der Beitrag schon älter ist, wenn man ein Loch bohren will ohne das Späne in das Loch fallen sollen, könnte man über Kopf also nach oben bohren, dann fallen die Späne nach unten. Und am besten mit einem Stufenbohrer um später mit einem Stopfen arbeiten zu können um das Loch wieder ordentlich zu verschließen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren