Skip to content

Instantly share code, notes, and snippets.

@Dom4n
Last active May 31, 2025 19:26
Show Gist options
  • Save Dom4n/3d5777832afd422775463e1847d66e04 to your computer and use it in GitHub Desktop.
Save Dom4n/3d5777832afd422775463e1847d66e04 to your computer and use it in GitHub Desktop.
Epson L3260 waste pad error reset
mkdir reinkpy
cd reinkpy
pip install -U uv
uv venv --python "3.12"
uv pip install "git+https://codeberg.org/atufi/reinkpy#egg=reinkpy[ui,usb]"
sudo su
source .venv/bin/activate
python reset_waste.py
import reinkpy
#for p in reinkpy.Device.find():
# print(p)
# print(p.info)
# get a specific device
p = reinkpy.Device.from_usb(manufacturer='EPSON')
print(p)
print(p.info)
e = p.epson
print(e.spec.model)
# print(e.read_eeprom())
e.reset_waste()
INFO reinkpy.usb Using backend "usb.backend.libusb1"
INFO reinkpy.usb Locating USB interface for {'manufacturer': 'EPSON'}...
INFO reinkpy.usb Found device DEVICE ID 04b8:1186 on Bus 001 Address 040 =================
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 : 0x1186
bcdDevice : 0x100 Device 1.0
iManufacturer : 0x1 EPSON
iProduct : 0x2 L3260 Series
iSerialNumber : 0x3 58384B553030353910
bNumConfigurations : 0x1
CONFIGURATION 1: 2 mA ====================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x2 Configuration
wTotalLength : 0x11e (286 bytes)
bNumInterfaces : 0x6
bConfigurationValue : 0x1
iConfiguration : 0x4 USB2.0 MFP(Hi-Speed)
bmAttributes : 0xc0 Self Powered
bMaxPower : 0x1 (2 mA)
INTERFACE 0: Vendor Specific ===========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x0
bAlternateSetting : 0x0
bNumEndpoints : 0x3
bInterfaceClass : 0xff Vendor Specific
bInterfaceSubClass : 0xff
bInterfaceProtocol : 0xff
iInterface : 0x5 EPSON Scanner
ENDPOINT 0x1: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x1 OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x82: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x82 IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x83: Interrupt IN ==========================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x83 IN
bmAttributes : 0x3 Interrupt
wMaxPacketSize : 0x8 (8 bytes)
bInterval : 0xb
INTERFACE 1: Printer ===================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x1
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x2
iInterface : 0x6 USB2.0 Printer
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 1, 1: Printer ================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x1
bAlternateSetting : 0x1
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x4
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 2: Vendor Specific ===========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x2
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0xff Vendor Specific
bInterfaceSubClass : 0xaa
bInterfaceProtocol : 0x1
iInterface : 0x8 EPSON Utility
ENDPOINT 0x8: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8 OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x89: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x89 IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 3: Vendor Specific ===========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x3
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0xff Vendor Specific
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x0
iInterface : 0x0
ENDPOINT 0xA: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xa OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8B: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8b IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 3, 1: Printer ================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x3
bAlternateSetting : 0x1
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x4
iInterface : 0x0
ENDPOINT 0xA: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xa OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8B: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8b IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 4: Vendor Specific ===========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x4
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0xff Vendor Specific
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x0
iInterface : 0x0
ENDPOINT 0xC: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xc OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8D: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8d IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 4, 1: Printer ================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x4
bAlternateSetting : 0x1
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x4
iInterface : 0x0
ENDPOINT 0xC: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xc OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8D: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8d IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 5: Vendor Specific ===========================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x5
bAlternateSetting : 0x0
bNumEndpoints : 0x2
bInterfaceClass : 0xff Vendor Specific
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x0
iInterface : 0x0
ENDPOINT 0xE: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xe OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8F: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8f IN
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
INTERFACE 5, 1: Printer ================================
bLength : 0x9 (9 bytes)
bDescriptorType : 0x4 Interface
bInterfaceNumber : 0x5
bAlternateSetting : 0x1
bNumEndpoints : 0x2
bInterfaceClass : 0x7 Printer
bInterfaceSubClass : 0x1
bInterfaceProtocol : 0x4
iInterface : 0x0
ENDPOINT 0xE: Bulk OUT ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0xe OUT
bmAttributes : 0x2 Bulk
wMaxPacketSize : 0x200 (512 bytes)
bInterval : 0x0
ENDPOINT 0x8F: Bulk IN ===============================
bLength : 0x7 (7 bytes)
bDescriptorType : 0x5 Endpoint
bEndpointAddress : 0x8f 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
EPSON L3260 Series sn:X @usb:1:40:1:(133,4)
ChainMap({}, {'idVendor': 1208, 'idProduct': 4486, 'iManufacturer': 1, 'iProduct': 2, 'iSerialNumber': 3, 'manufacturer': 'EPSON', 'product': 'L3260 Series', 'serial_number': '58384B553030353910', 'bInterfaceNumber': 1, 'bAlternateSetting': 0}, {'MFG': 'EPSON', 'CMD': ('ESCPL2', 'BDC', 'D4', 'D4PX', 'ESCPR2', 'END4', 'GENEP'), 'MDL': 'L3260 Series', 'CLS': 'PRINTER', 'DES': 'EPSON L3260 Series', 'CID': 'EpsonRGB', 'FID': 'FXN,DPN,WFA,ETN,AFN,DAN,WRA', 'RID': '41', 'DDS': '022500', 'ELG': '1162', 'SN': '58384B553030353910'})
L3260
INFO reinkpy.epson Running do_reset_All_waste_counters_x1Cx34x35x36x37xFFx2Fx30x31x32x33xFCxFDxFE
INFO reinkpy.d4 Entering IEEE 1284.4 mode...
INFO reinkpy.d4 Exit OK
INFO reinkpy.epson Current EEPROM values: [(28, 0), (52, 233), (53, 32), (54, 104), (55, 94), (255, 104), (47, 0), (48, 202), (49, 24), (50, 0), (51, 0), (252, 170), (253, 0), (254, 0)]
INFO reinkpy.epson Writing to EEPROM: ((28, 0), (52, 0), (53, 0), (54, 94), (55, 94), (255, 94), (47, 0), (48, 0), (49, 0), (50, 0), (51, 0), (252, 0), (253, 0), (254, 0))
INFO reinkpy.d4 Entering IEEE 1284.4 mode...
INFO reinkpy.d4 Exit OK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment