Epson Ink Tank printers are very economical compared to cartridge inkjet printers, which according to some opinions, are every bit as expensive as perfume. To increase the pain further, each cartridge may be equipped with a counter, so that the ink level in each cartridge is estimated. Furthurmore, some printers refuse to print in the remaining black if the colors were finished. Finally, the cartridge readily dry out.
Every Epson Ink Tank printer comes with a Waste Ink Tank. This is a foam lined tank which collects waste ink from printing operations. To prevent waste ink from overflowing, a waste ink counter ("WIC") counts the waste ink level. When the counter reaches the end, the printer is to all intents and purposes, bricked. Of course, this WIC is estimated. And with all things related to computers, the waste ink tank probably reaches its limit just when you need to print your report, and the service centers are closed for the day.
So, you need to reset the WIC temporarily, until you can pack the heavy printer off to the service center the next working day, and here's how:
Get reinkpy from https://codeberg.org/atufi/reinkpy and
run:
$ python -c 'import reinkpy;reinkpy.Device.from_usb().epson.reset_waste()'
INFO reinkpy.usb Using backend "usb.backend.libusb1"
INFO reinkpy.usb Locating USB interface for {}...
INFO reinkpy.usb Found device DEVICE ID 04b8:0067 on Bus 005 Address 002 =================
bLength : 0x12 (18 bytes)
bDescriptorType : 0x1 Device
bcdUSB : 0x200 USB 2.0
bDeviceClass : 0x0 Specified at interface
bDeviceSubClass : 0x0
bDeviceProtocol : 0x0
bMaxPacketSize0 : 0x40 (64 bytes)
idVendor : 0x04b8
idProduct : 0x0067
bcdDevice : 0x100 Device 1.0
iManufacturer : 0x1 EPSON
iProduct : 0x2 EPSON L1800 Series Series
iSerialNumber : 0x3 555342593031323334
bNumConfigurations : 0x1
CONFIGURATION 1: 2 mA ====================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x2 Configuration
wTotalLength : 0x20 (32 bytes)
bNumInterfaces : 0x1
bConfigurationValue : 0x1
iConfiguration : 0x0
bmAttributes : 0xc0 Self Powered
bMaxPower : 0x1 (2 mA)
INTERFACE 0: Printer ===================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x0
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x2
iInterface : 0x0
ENDPOINT 0x4: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x4 OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x85: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x85 IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0, interface (<ENDPOINT 0x85: Bulk IN>, <ENDPOINT 0x4: Bulk OUT>).
INFO reinkpy.d4 Entering IEEE 1284.4 mode...
INFO reinkpy.d4 Exit OK
INFO reinkpy.epson Loading specs for "L1800"
INFO reinkpy.epson Running do_reset_All_waste_counters_x1Cx1Dx1Ex1Fx46x47x48x49x4Ex4Fx4Cx4D
INFO reinkpy.d4 Entering IEEE 1284.4 mode...
INFO reinkpy.d4 Exit OK
INFO reinkpy.epson Current EEPROM values: [(28, 189), (29, 48), (30, 9), (31, 0), (70, 71), (71, 89), (72, 18), (73, 0), (78, 104), (79, 94), (76, 0), (77, 0)]
INFO reinkpy.epson Writing to EEPROM: ((28, 0), (29, 0), (30, 0), (31, 0), (70, 0), (71, 0), (72, 0), (73, 0), (78, 94), (79, 94), (76, 0), (77, 0))
INFO reinkpy.d4 Entering IEEE 1284.4 mode...
INFO reinkpy.d4 Exit OK
Now to print that report, and replace the waste ink tank foam tomorrow...