Come resettare il contatore dell’inchiostro di spurgo delle stampanti Epson EcoTank

Mi sono imbattuto da poco nella problematica in oggetto: una stampante multifunzione Epson ET-2850 ha smesso di stampare perché lamentava il serbatoio dell’inchiostro di pulizia pieno (Errore E-11).

Parte hardware

Su consiglio di un amico / collega che ha un’attività di rivendita di stampanti ho ordinato il serbatoio di ricambio (originale Epson).

Per sostituirlo basta svitare due viti esterne e una che lo tiene fermo all’interno, è davvero semplicissimo. Nel farlo mi sono però accorto che né quello che stavo togliendo (e che si potrebbe anche pulire, in realtà), né quello nuovo avevano alcun chip o contatto elettrico. Da una parte è un bene, ho pensato, ma dall’altra immaginavo già che questa assenza avrebbe fatto sì che la stampante non sapesse della sostituzione. E infatti, una volta richiuso il vano col nuovo tampone inserito, l’errore era ancora lì.

Parte software

È a questo punto che è cominciata la ricerca su come far sparire l’errore e quindi far tornare la stampante a fare il suo lavoro (completamente, perché in realtà le scansioni credo le potesse fare).

Per chi avesse fretta E fosse in grado di intuire i passaggi senza tanti dettagli, ho fatto un riassunto alla fine dell’articolo.

Non è stato facile e mi sono imbattuto in varie strade che elencherò di seguito, ma prima mi preme evidenziare che la via ufficiale sarebbe quella di portare la macchina ad un centro autorizzato Epson che ti fa tutto il lavoro, ma non ho idea di quanto possa chiedere.

Facendo un po’ di ricerche nel web, i primi risultati li ho trovati su YouTube: ci sono alcuni video che mostrano come fare attraverso un software (inizialmente solo per Windows, ma mi sembra lo abbiano rilasciato anche per MacOs e Linux) che ti fa fare una (e una sola!) prova gratuita, per vedere se effettivamente è efficace, portandoti il valore all’80% (dicono). Se questa va a buon fine ti propongono l’acquisto di un codice per sbloccare completamente il programmino e far sì che possa azzerare il contatore della stampante.

La chiave mi pare costasse una decina di dollari o euro, per cui sarebbe anche una cifra accettabile, ma io sono un attivista sfegatato del Software Libero e pertanto mi sono chiesto: possibile mai che nessuno abbia analizzato la cosa, facendo un po’ di sniffing e/o reverse engineering per capire quali sequenze mandare alla stampante per azzerare tale contatore?

Così mi sono messo giù di punta a leggere i vari post nei diversi forum, dove ho trovato altre strade, la maggior parte delle quali (se non tutte) in questo utilissimo thread:

https://www.reddit.com/r/Epson/comments/ndv32v/comment/lgberp9

Nei vari post ho trovato dapprima un altro software, sempre a pagamento, ma a importo libero, poi un form sul sito Epson dove potrebbe essere che ti mandino il loro software ufficiale (ma non ho provato, questa la URL: https://epson.com/epsonstorefront/orbeon/fr/us_regular_s03/us_ServiceInk_Pad_Reset/new) e alla fine un meraviglioso progetto FLOSS!

Soluzione con software libero

Il programma che ho trovato è in Python ed è quindi eseguibile su qualunque sistema operativo, e a differenza dei programmini citati sopra, che richiedono il collegamento in USB e in alcuni casi l’installazione del driver originale Epson (chiudendo però lo Status Monitor), questo software agisce via rete, senza necessità di collegarsi fisicamente alla stampante.

È però necessario, pertanto, collegare la stampante alla rete col cavo (se possibile) o in Wi-Fi (come ho fatto io), e sapere l’IP che ha ottenuto, se non impostato staticamente sulla macchina stessa.

Per sapere tale IP, si potrebbe chiedere alla macchina, ma questa che ho non te lo dice sullo schermino, bensì te ne propone la stampa su carta… peccato che non possa (voglia) stampare..!

Quindi io ho risolto chiedendo al mio router l’elenco dei lease e lì in mezzo ho riconosciuto la stampante e letto l’IP assegnatole.

Questo dato servirà tra poco nel programma, da scaricare al seguente indirizzo:

https://github.com/Ircama/epson_print_conf/releases

Una volta scaricato il file zip va naturalmente scompattato (consiglio vivamente 7-Zip) e poi è necessario entrare nella directory che si viene a creare.

Nel caso di sistemi operativi Linux o MacOs, consiglio di lanciare il programma come segue:

python ui.py

Per Windows credo sia necessario scaricare Python se non tutto il sottosistema Linux, ma ci sono istruzioni più dettagliate nella pagina home del progetto:

https://github.com/Ircama/epson_print_conf

Dall’interfaccia del programma è possibile notare che il primo widget che si incontra è una drop down che elenca le stampanti che il programma conosce. Se lì in mezzo non c’è la Epson che si deve sbloccare, è possibile scaricare un altro file che contiene le “definizioni” di molti altri modelli, tra cui il mio. Questa la URL da cui scaricarlo:

https://codeberg.org/attachments/147f41a3-a6ea-45f6-8c2a-25bac4495a1d

Per salvarlo sarà sufficiente fare Salva dal menu File del browser (se visibile, se no premere ALT) o più semplicemente premere CTRL + S.

Una volta salvato, si potrà importare dal software dal suo menu File scegliendo la voce Import a XML printer configuration… e andando a puntare il file scaricato e salvato poco fa.

Dopo qualche istante di elaborazione, l’elenco dei modelli si allungherà a dismisura, portando ottime possibilità di  incontrare il modello desiderato.

A questo punto va inserito l’indirizzo IP nella casella a fianco del modello e premuto uno dei tasti Get dei controlli successivi, per verificare che il software riesca effettivamente a parlare con la stampante e leggerne qualche dato.

Se queste interrogazioni vanno a buon fine, si può finalmente premere il fatidico tasto Reset Waste Ink Levels. Dopo qualche altro istante nella zona sottostante (Status) comparirà l’esito delle operazioni (in inglese) che esorterà a riavviare la stampante.

Incrociando le dita, sarà necessario premere il pulsante di spegnimento, attendere che la macchina si spenga e poi riaccenderla dopo qualche secondo.

Rullo di tamburi… se tutto è andato bene l’errore sarà sparito!

Riassumendo

  1. Collegare la stampante in rete e trovarne l’IP
  2. Scaricare il software da qui:
    https://github.com/Ircama/epson_print_conf/releases
  3. Lanciare il programma (dopo averlo scompattato ed entrando nella sua directory):
    python ui.py
    (o lanciare l’eseguibile se si sta usando Windows)
  4. Verificare se il modello desiderato è in elenco, altrimenti scaricare e salvare questo file:
    https://codeberg.org/attachments/147f41a3-a6ea-45f6-8c2a-25bac4495a1d
  5. Se necessario importare il file scaricato nel programma
  6. Selezionare il modello di stampante e inserirne l’IP nella casella accanto
  7. Premere uno dei tasti Get per vedere se riesce a parlarci e a leggere dati
  8. Premere il tasto Reset Waste Ink Levels
  9. Incrociare le dita e riavviare la stampante.

Voglio precisare che io ho fatto tutto da Linux, dove Python è presente “di serie”. Per Windows si può provare a scaricare una versione eseguibile (EXE) dalla pagina del progetto, che però non ho provato, oppure scaricare Python.

Spero di aver fatto cosa gradita per il prossimo, alla prossima.

Ravanando negli screenshot, ogni tanto trovi delle piccole perle