matmair / brother_ql-inventree

Python package for the raster language protocol of the Brother QL series label printers
GNU General Public License v3.0
26 stars 10 forks source link

QL-800: Printer response doesn't start with the usual header #34

Closed paolobarbolini closed 1 year ago

paolobarbolini commented 1 year ago

Hello, first of all thank you for making this fork.

When I initially tried to print it gave me an Invalid argument error, so I've patched this line to use 2 instead of self.write_dev.

I'm trying to print with the QL-800 on ArchLinux but I'm getting a Printer response doesn't start with the usual header (80:20:42) error.

sudo ./bin/brother_ql --debug  --backend linux_kernel --printer "file:///dev/bus/usb/003/009" --model=QL-800 print --label 62x29 SomeFile.png
DEBUG:brother_ql.raster:raster_image_size: 720x271
INFO:brother_ql.backends.helpers:Sending instructions to the printer. Total: 25647 bytes.
DEBUG:brother_ql.backends.generic:Writing 25647 bytes.
aaSz�
     >M@AdgZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ��������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ���������������������?����������������������▒DEBUG:brother_ql.backends.generic:Read 32 bytes.
Traceback (most recent call last):
  File "/home/paolo/Programming/m4ss/thing/./bin/brother_ql", line 8, in <module>
    sys.exit(cli())
             ^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/core.py", line 1157, in __call__
    return self.main(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/core.py", line 1078, in main
    rv = self.invoke(ctx)
         ^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/core.py", line 1688, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/core.py", line 1434, in invoke
    return ctx.invoke(self.callback, **ctx.params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/core.py", line 783, in invoke
    return __callback(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/click/decorators.py", line 33, in new_func
    return f(get_current_context(), *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/brother_ql/cli.py", line 147, in print_cmd
    send(instructions=instructions, printer_identifier=printer, backend_identifier=backend, blocking=True)
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/brother_ql/backends/helpers.py", line 77, in send
    result = interpret_response(data)
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paolo/Programming/m4ss/thing/lib/python3.11/site-packages/brother_ql/reader.py", line 166, in interpret_response
    raise NameError("Printer response doesn't start with the usual header (80:20:42)", hex_format(data))
NameError: ("Printer response doesn't start with the usual header (80:20:42)", '12 01 00 02 00 00 00 40 F9 04 9E 20 00 01 01 02 03 01 09 02 20 00 01 01 00 C0 00 09 04 00 00 02')

If I comment out this check in the code I instead get the following error and nothing gets printed:

sudo ./bin/brother_ql --debug  --backend linux_kernel --printer "file:///dev/bus/usb/003/009" --model=QL-800 print --label 62x29 SomeFile.png
DEBUG:brother_ql.raster:raster_image_size: 720x271
INFO:brother_ql.backends.helpers:Sending instructions to the printer. Total: 25647 bytes.
DEBUG:brother_ql.backends.generic:Writing 25647 bytes.
aaSz�
     >M@AdgZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ��������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZ���������������gZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZgZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ��������������?�������?����������������������gZ���������������������?����������������������▒DEBUG:brother_ql.backends.generic:Read 32 bytes.
DEBUG:brother_ql.reader:Byte  0         Print head mark: 12
DEBUG:brother_ql.reader:Byte  1                    Size: 01
DEBUG:brother_ql.reader:Byte  2          Fixed (B=0x42): 00
DEBUG:brother_ql.reader:Byte  3        Device dependent: 02
DEBUG:brother_ql.reader:Byte  4        Device dependent: 00
DEBUG:brother_ql.reader:Byte  5          Fixed (0=0x30): 00
DEBUG:brother_ql.reader:Byte  6  Fixed (0x00 or 0=0x30): 00
DEBUG:brother_ql.reader:Byte  7            Fixed (0x00): 40
DEBUG:brother_ql.reader:Byte  8     Error information 1: F9
DEBUG:brother_ql.reader:Byte  9     Error information 2: 04
DEBUG:brother_ql.reader:Byte 10             Media width: 9E
DEBUG:brother_ql.reader:Byte 11              Media type: 20
DEBUG:brother_ql.reader:Byte 12            Fixed (0x00): 00
DEBUG:brother_ql.reader:Byte 13            Fixed (0x00): 01
DEBUG:brother_ql.reader:Byte 14                Reserved: 01
DEBUG:brother_ql.reader:Byte 15                    Mode: 02
DEBUG:brother_ql.reader:Byte 16            Fixed (0x00): 03
DEBUG:brother_ql.reader:Byte 17            Media length: 01
DEBUG:brother_ql.reader:Byte 18             Status type: 09
DEBUG:brother_ql.reader:Byte 19              Phase type: 02
DEBUG:brother_ql.reader:Byte 20     Phase number (high): 20
DEBUG:brother_ql.reader:Byte 21      Phase number (low): 00
DEBUG:brother_ql.reader:Byte 22     Notification number: 01
DEBUG:brother_ql.reader:Byte 23                Reserved: 01
DEBUG:brother_ql.reader:Byte 24                Reserved: 00
ERROR:brother_ql.reader:Error: No media when printing
ERROR:brother_ql.reader:Error: Not used
ERROR:brother_ql.reader:Error: Main unit in use (QL-560/650TD/1050)
ERROR:brother_ql.reader:Error: Printer turned off
ERROR:brother_ql.reader:Error: High-voltage adapter (not used)
ERROR:brother_ql.reader:Error: Fan doesn't work (QL-1050/1060N)
ERROR:brother_ql.reader:Error: Transmission / Communication error
ERROR:brother_ql.reader:Unknown media type 20
ERROR:brother_ql.reader:Unknown status type 09
ERROR:brother_ql.reader:Unknown phase type 02
DEBUG:brother_ql.backends.helpers:TIME 0.012 - result: {'status_type': 9, 'phase_type': 2, 'media_type': 32, 'media_width': 158, 'media_length': 1, 'errors': ['No media when printing', 'Not used', 'Main unit in use (QL-560/650TD/1050)', 'Printer turned off', 'High-voltage adapter (not used)', "Fan doesn't work (QL-1050/1060N)", 'Transmission / Communication error']}
ERROR:brother_ql.backends.helpers:Errors occured: ['No media when printing', 'Not used', 'Main unit in use (QL-560/650TD/1050)', 'Printer turned off', 'High-voltage adapter (not used)', "Fan doesn't work (QL-1050/1060N)", 'Transmission / Communication error']
WARNING:brother_ql.backends.helpers:'printing completed' status not received.
WARNING:brother_ql.backends.helpers:'waiting to receive' status not received.
WARNING:brother_ql.backends.helpers:Printing potentially not successful?

What could I try next?

paolobarbolini commented 1 year ago

I was doing it all wrong. See #35