Hack für CLX – 3175 (F, N, etc.) sowie CLP 310/315

Ich habe meinen Samsung CLX-3175N Drucker nun fast schon ein Jahr. Langsam geht der Toner aus und man ist ja stets bemüht günstigen Toner zu besorgen. Das ist nicht nur bei diesem, sondern auch vielen anderen Geräten aber ein großes Problem, denn meistens werden nur die herstellereigenen Tonerkartuschen akzeptiert, da diese über einen speziellen Chip verfügen.kartusche-clp-310-315-clx-3175 Ein Rainbowkit (Cyan, Magenta, Yellow [je ~2000 Seiten] & Black [~2500 Seiten] kostet bei Amazon etwa 120 € was für die Druckmenge eigentlich ganz in Ordnung ist. Folglich liegt der Preis für eine Farbseite bei etwa 4,2Cent. Eine Doppelpackung schwarz kostet 66€ somit liegt der Preis einer S/W-Seite bei etwa 1,32 Cent, wenn man den Herstellerangaben traut.

Nur möchte ich mir nicht vom Drucker sagen lassen, dass die Kartusche leer sei, sondern selbst entscheiden und ggf. nachfüllen. Als Lösung dafür werden im Internet verschiedenste Formen der Nachfüllmöglichkeiten beworben:

  1. Möglichkeit: Chips die direkt auf die Vorderseite der Kartuschen geklebt werden können und dem Drucker so vorgaukeln, dass die Kartusche noch voll sei.NachfülltonerTonerchipsDie Kartuschen können dann mit günstigem Nachfülltoner, 37€ für alle vier Farben (1000 Seiten je Farbe | 2000 Seiten schwarz), aufgefüllt werden. Die Chips kosten im Pack bereits 40€ was die verringerten Druckkosten (2,5Cent Farbseite | 0,6Cent S/W-Seite) in etwa ausgleicht. Also total sinnfrei ;-)
  2. Möglichkeit: Permanentchip auf das Mainboard des Druckers löten
    Die Chips gibt es in den verschiedensten Ausführungen:PermanentchipPermanentchipSie kosten etwa 30 Euro, also in etwa so teuer wie die Wegwerfchips, dennoch müssen sie nur einmal installiert werden und gaukeln dem Drucker somit dauerhaft volle Kartuschen vor. Jedoch wird dem Drucker auch mitgeteilt, dass das Transportband, die Fixiereinheit, die Bildeinheit, die Rollen und der Scanner, welche freundlicherweise auch vom Drucker gesperrt werden, wenn deren “Chip”-Lebensdauer abgelaufen ist, komplett neu und unbenutzt seien. Daher ist diese Möglichkeit die bessere Wahl, da sich somit weitere Kosten einsparen lassen.
    Beispiel I: Der Chip wird direkt an das EEPROM 24C64 gelötet.Chip und MainboardBeispiel II: Das EEPROM 24C64 wird ausgelötet und der Permanentchip nimmt dessen Stelle ein.ohne_eepromNatürlich ist auch dieses Vorgehen nicht ganz unproblematisch (Löten von SMD-Bauteilen, Garantieverlust) und birgt zudem einen großen Nachteil: Die Zähler für die Tonerkartuschen, Bildtrommel etc. werden beim Einschalten des Druckers resettet. Danach muss der Drucker per Menü auf Werkseinstellungen zurückgesetzt werden. Folglich gehen alle Einstellungen (IP, Druckeinstellungen, Sprache) verloren. Zudem ist die MAC-Adresse und die Seriennummer nicht mehr dieselbe (anderer Chip -> andere MAC-Adresse). Alles in Allem ziemlich unakzeptabel, wenn man bedenkt, dass man für so einen Müll auch noch 30€ hinblättern darf.

Die Lösung:

Deshalb habe ich mir gedacht, dass es doch noch weitere Lösungen geben muss. Es fällt auf das sämtliche Permanentchips an den Daten des EEPROMs 24C64 (Ein I²C-EEPROM) interessiert sind.D. h. alle Daten wie Tonerstand, Seitenzähler und auch MAC-Adresse sowie Seriennummer werden hier abgespeichert. Ziel ist es also die Daten im EEPROM so zu ändern, dass unser Drucker denkt, er sei neu. Außerdem muss abschließend sichergestellt werden, dass die Daten im EEPROM nicht wieder durch den Drucker geändert werden. Dazu wird zunächst ein Interface benötigt, um die Daten auszulesen. Einerseits könnte dieses mittels Mikrokontroller umgesetzt werden, andererseits kann man hierfür auch die RS-232-Schnittstelle verwenden. Dazu habe ich mir folgenden Adapter gebastelt.Schaltplan von comunidadelectronicos.com

Hier der sehr unsaubere, aber funktionierende Aufbau:Das EEPROM 24C64 habe ich ausgelötet und jedes einzelne Bein mit einem Draht versehen und abschließend mit Heißkleber versiegelt, denn die Beine sind unglaublich dünn und brechen schnell ab.Am Mainboard habe ich anstatt des ICs ein 8-poliges Flachbandkabel gelötet und nach außen durchgeführt. Beim CLX-3175 gibt es eine Klappe und dahinter einen Hohlraum indem man das IC gut verstauen kann.Nun kann man bei Bedarf das EEPROM zum Programmieren entfernen und anschließend im Drucker testen. Für das Programmieren des EEPROMs habe ich PonyProg verwendet. Wichtig dabei ist, das Programm auf einen I²C Bus 16Bit EEPROM 2464/2465 einzustellen.Die Daten sollten als “.bin”-Datei abgespeichert werden und können dann anschließend von einem Hex-Editor bearbeitet werden. Dazu sollte unter Optionen->Einstellungen bei Spalteneinstellungen der Eintrag “4 Bytes pro Spalte” gewählt werden.Ganz oben steht die Seriennummer die ich geschwärzt habe. Nun sollten folgende Zeilen geändert werden:

Rücksetzen der gespeicherten Tonerseriennummern auf die Initialkartuschen:

00000010 00000009 00000000 00000000 4352554D ............CRUM
00000020 2D303030 30303030 30303030 4352554D -00000000000CRUM
00000030 2D303030 30303030 30303030 4352554D -00000000000CRUM
00000040 2D303030 30303030 30303030 4352554D -00000000000CRUM
00000050 2D303030 30303030 30303030 FFFFFFFF -00000000000....

Fixiereinheit zurücksetzen:

00000060 FFFFFFFF FFFFFFFF FFFFFFFF 00000000

Transferrolle zurücksetzen:
Papierrolle zurücksetzen:
Seitenzähler Farbe zurücksetzen:

00000070 00000000 FFFFFFFF 00000000 00000000

Seitenzähler S/W zurücksetzen:
Bildzähler zurücksetzen:

00000080 00000000 00000000 003F243E 002F8623

Bildeinheit zurücksetzen:

000000A0 00000101 00000089 00000000 000002BC

Gesamtseitenzähler zurücksetzen (B / C / M / Y):

000004A0 FFFFFFFF FFFFFFFF 0033FFAC 00000000
000004B0 00FF01FF 0035CCDF 00000000 00FF01FF
000004C0 0035E8AB 00000000 00FF01FF 0031B7D9
000004D0 00000000 00FF0100 00000000 00000000

Zähler für Glas-Scan zurücksetzen:

00000670 00000000 00000000 0AFFFFFF 00000000

Übertragungsbandzähler zurücksetzen:

00000540 00000000 00000000 00050005 00050005

< —– UPDATE: 04.04.2012 —– >

Real Dot Count:

000007A0 0063A08A 005F60CB 00000000 00000000
000007B0 00000000 00000000 00000000 00000000

Dot-Count-Remain:

000004A0 00000000 00000000 00000000 00000000
000004B0 00000000 00000000 00000000 00000000
000004C0 00000000 00000000 00000000 00000000

Motor on Time:

000007B0 00000000 00000000 00000000 00000000
000007C0 00000000 00000000 00000000 00000000

Black Band:

00000800 00000000 00000000 00000000 00000000
00000810 00000000 00000000 00000000 00000000

< —– UPDATE: 04.04.2012 ENDE —– >

Nun sollten alle Daten ins EEPROM geschrieben werden. Damit sind wir eigentlich fertig, jedoch müssen wir nur noch verhindern, dass der Drucker die Daten im EEPROM wieder ändert. Dazu setzen wir den PIN7 (Write-Protect) auf HIGH (5V). Möchte man Druckeinstellungen vornehmen und diese auch speichern lassen, so muss vorher das Gerät abgeschaltet werden, anschließend werden die Änderungen vorgenommen und danach wird der Drucker abgeschaltet und der PIN7 wird wieder aug HIGH gesetzt.Praktischerweise sollte man dafür eine Steckerleiste verwenden, so dauert das Umstöpseln nur ein paar Sekunden.

Tja, nun sind wir am Ende. Ihr könnt im Menü die Verbrauchsinformationen ausdrucken lassen und so sehen, ob alles funktioniert hat. Ich hoffe ich konnte einigen mit diesem Tipp helfen. Hinterlasst doch bitte ein kleines Feedback, damit ich das Dokument noch anpassen kann.

-Timo

Posted in Allgemein | 20 Comments