Skip to content

Free and open waste ink counter resetter for some (EPSON) printers.

License

Notifications You must be signed in to change notification settings

LeFZdev/reinkpy-fix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

reinkpy-fix

Free and open waste ink counter resetter for some (EPSON) printers.

reinkpy-fix (Epson Printer Waste Counter Reset)

A working fork of the reinkpy project by Daniel Gerber 'https://codeberg.org/atufi/reinkpy' with critical fixes implemented for resetting the Epson EcoTank waste ink counter.

Status: Confirmed working for Epson L3060 Series and similar.


Problem Solved:

The original reinkpy library fails when attempting to execute the waste counter reset (driver.reset_waste()) via LAN/SNMP. This is because:

  1. The reinkpy/snmp.py file lacked the necessary SNMP SET command logic for writing data.
  2. The library failed to correctly pass the necessary proprietary write community string (EPCF_PASS) from the user script to the SNMP connection.

This repository fixes both issues.

🛠️ How to Use (LAN Fix)

  1. Clone this Repository:

    git clone https://github.com/LeFZdev/reinkpy-fix
    cd reinkpy-fix
  2. Recommended Installation Path: Install this fork's dependencies:

    pip install -r requirements.txt

    To ensure all original project dependencies (UI, USB, etc.) are available, you may also need to install the original project (ensure you use this step BEFORE running the script, as your local fixed files will overwrite the critical ones):

    pip install -e git+https://codeberg.org/atufi/reinkpy#egg=reinkpy[ui,usb,net]
  3. Setup Virtual Environment (If needed):

    python -m venv venv
    .\venv\Scripts\activate
    pip install -r requirements.txt
  4. Run the Reset Script: Modify the provided main.py to use the correct printer IP and the necessary values of your printer.

  5. Execute:

    python main.py

Notable Contributions (My Fixes)

The following changes were implemented to enable LAN write functionality:

  • reinkpy/snmp.py: Added the missing _set_cmd method utilizing pysnmp.hlapi.setCmd to enable SNMP SET (write) operations.
  • reinkpy/__init__.py: Patched NetworkDevice to accept and pass the write_user argument from the calling script to the SNMPLink constructor.
  • Fixed syntax erros in reinkpy/__init__.py, and reinkpy/snmp.py, As well as changing file nominations of reinkpy/usbtest.py and reinkpy/netscan.py to prevent circular imports

Disclaimer

This is software. It won't actually replace pads.

THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.

The author(s) and contributor(s) are not liable for any damage, data loss, or printer malfunction that may occur from its use. Use this software at your own risk.


Make sure to check out the original project !

link: https://codeberg.org/atufi/reinkpy

About

Free and open waste ink counter resetter for some (EPSON) printers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published