0

I have a SureMark 4610 printer that I'm trying to connect to, but for some reason it hangs when I connect. I've installed the necessary drivers for the printer. What could be the problem?

I'm using Windows 10 if that is of any use to you all.

Here's the printer device info

    DEVICE ID 04b3:4535 on Bus 000 Address 019 =================
 bLength                :   0x12 (18 bytes)
 bDescriptorType        :    0x1 Device
 bcdUSB                 :  0x110 USB 1.1
 bDeviceClass           :    0x0 Specified at interface
 bDeviceSubClass        :    0x0
 bDeviceProtocol        :    0x0
 bMaxPacketSize0        :   0x40 (64 bytes)
 idVendor               : 0x04b3
 idProduct              : 0x4535
 bcdDevice              :  0x216 Device 2.16
 iManufacturer          :    0x1 (c) Copyright IBM Corp. 2000
 iProduct               :    0x5 Printer Interface (Usage = 3500h, Usage Page = FF45h)
 iSerialNumber          :    0x3 060725163603C100193
 bNumConfigurations     :    0x1
  CONFIGURATION 1: 0 mA ====================================
   bLength              :    0x9 (9 bytes)
   bDescriptorType      :    0x2 Configuration
   wTotalLength         :   0x22 (34 bytes)
   bNumInterfaces       :    0x1
   bConfigurationValue  :    0x1
   iConfiguration       :    0x0 
   bmAttributes         :   0x40 Self Powered
   bMaxPower            :    0x0 (0 mA)
    INTERFACE 1: Human Interface Device ====================
     bLength            :    0x9 (9 bytes)
     bDescriptorType    :    0x4 Interface
     bInterfaceNumber   :    0x1
     bAlternateSetting  :    0x0
     bNumEndpoints      :    0x1
     bInterfaceClass    :    0x3 Human Interface Device
     bInterfaceSubClass :    0x0
     bInterfaceProtocol :    0x0
     iInterface         :    0x5 Printer Interface (Usage = 3500h, Usage Page = FF45h)
      ENDPOINT 0x82: Interrupt IN ==========================
       bLength          :    0x7 (7 bytes)
       bDescriptorType  :    0x5 Endpoint
       bEndpointAddress :   0x82 IN
       bmAttributes     :    0x3 Interrupt
       wMaxPacketSize   :   0x10 (16 bytes)
       bInterval        :    0x4

Here is the simple code

from escpos import printer
p = printer.Usb(idVendor=0x04B3, idProduct=0x4535, timeout=10, in_ep=0x82)
print(p.idProduct)

I cannot get to the print because it just hangs indefinitely at line 2.

Lord of Grok
  • 323
  • 3
  • 12
  • Why are you trying to use the raw USB protocol while saying you have the printer driver installed? If you normally use a vendor driver, wouldn't you use the device with the interface (printer or serial) it provides? Does the vendor's driver have no documentation on how it can be used? Without it, it would be faster to contact the vendor. – kunif Jul 12 '22 at 11:33
  • @kunif Good questions. Documentation is lacking for sure. We are trying to develop a tool that can get specific statistics about the printer. There is definitely software already present that does that, but we would like to develop our own. I suppose we could contact the vendor to see how we could do this, but in the meantime do you know how we could achieve getting something like 'cut count'? – Lord of Grok Jul 12 '22 at 11:37
  • Look for information on what such tools (provided by the vendor?) Are using as OS devices. Is there a guide to specify the name of the connected COM port or printer? If you specify a COM port, it's easy to deal with, and you can change it to use PySerial instead of the USB protocol. If you specify a printer name, wait for information from the vendor. – kunif Jul 12 '22 at 11:45

0 Answers0