dymoprint: LabelManager PC "ValueError: The device has no langid"

I’ve been following the project hoping my old labelmanager PC will be supported one day and I was lucky #83 - now I’m trying to get it working, but it doesn’t. I can’t tell for sure if the device is working anymore at all since I don’t have any windows xp around anymore and at the last windows system in this house (W10) it’s just toggling connected/disconnected all the time but I guess due to different driver architecture nowadays.

dymoprint 2.2.1.post1.dev20+g0a33ed7

silverstar@Utopia-Planitia:~$ dymoprint "test"
Traceback (most recent call last):
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/detect.py", line 30, in device_info
    dev.manufacturer
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/usb/core.py", line 898, in manufacturer
    self._manufacturer = util.get_string(self, self.iManufacturer)
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/usb/util.py", line 313, in get_string
    raise ValueError("The device has no langid"
ValueError: The device has no langid (permission issue, no string descriptors supported or device error)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/silverstar/.local/bin/dymoprint", line 8, in <module>
    sys.exit(main())
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/command_line.py", line 261, in main
    print_label(label_bitmap, margin_px=args.m, tape_size_mm=args.t)
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/dymo_print_engines.py", line 270, in print_label
    detected_device = detect_device()
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/detect.py", line 69, in detect_device
    print(f"Found one Dymo device: {device_info(dev)}")
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/detect.py", line 32, in device_info
    instruct_on_access_denied(dev)
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/detect.py", line 137, in instruct_on_access_denied
    instruct_on_access_denied_linux(dev)
  File "/home/silverstar/.local/pipx/venvs/dymoprint/lib/python3.10/site-packages/dymoprint/detect.py", line 214, in instruct_on_access_denied_linux
    raise RuntimeError("\n\n" + "\n".join(lines) + "\n")
RuntimeError: 

You do not have sufficient access to the device. You probably want to add the a udev rule in /etc/udev/rules.d with the following command:

  echo 'ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0922", ATTRS{idProduct}=="0011", MODE="0666"' | sudo tee /etc/udev/rules.d/91-dymo-11.rules

Next refresh udev with:

  sudo udevadm control --reload-rules
  sudo udevadm trigger --attr-match=idVendor="0922"

Finally, turn your device off and back on again to activate the new permissions.

If this still does not resolve the problem, you might need to reboot. In case rebooting is necessary, please report this at <https://github.com/computerlyrik/dymoprint/pull/56>. We are still trying to figure out a simple procedure which works for everyone. In case you still cannot connect, or if you have any information or ideas, please post them at that link.

Permissions should be alright since

silverstar@Utopia-Planitia:~$ cat /etc/udev/rules.d/50-dymo-11.rules
ACTION=="add", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0922", ATTRS{idProduct}=="0011", MODE="0666", GROUP="users"

and

silverstar@Utopia-Planitia:~$ groups $USER
silverstar : silverstar adm tty lp dialout cdrom sudo dip plugdev users lpadmin sambashare vboxusers libvirt

udevadm commands are done as given, plug out/in, logout/login, reboot, …

dmesg snippet:

[  402.607304] usb 1-7: unable to read config index 0 descriptor/all
[  402.607307] usb 1-7: can't read configurations, error -61
[  402.731760] usb 1-7: new low-speed USB device number 7 using xhci_hcd
[  402.883642] usb 1-7: unable to read config index 0 descriptor/start: -61
[  402.883659] usb 1-7: can't read configurations, error -61
[  402.883768] usb usb1-port7: attempt power cycle
[  403.299737] usb 1-7: new low-speed USB device number 8 using xhci_hcd
[  403.327442] usb 1-7: config 1 interface 0 altsetting 0 endpoint 0x81 is Bulk; changing to Interrupt
[  403.393393] usb 1-7: string descriptor 0 read error: -71
[  403.393397] usb 1-7: New USB device found, idVendor=0922, idProduct=0011, bcdDevice= 1.00
[  403.393398] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  403.394705] usb 1-7: can't set config #1, error -71
[  403.394750] usb 1-7: USB disconnect, device number 8
[  403.699741] usb 1-7: new low-speed USB device number 9 using xhci_hcd
[  403.852196] usb 1-7: config 1 interface 0 altsetting 0 endpoint 0x81 is Bulk; changing to Interrupt
[  403.950948] usb 1-7: string descriptor 0 read error: -71
[  403.950962] usb 1-7: New USB device found, idVendor=0922, idProduct=0011, bcdDevice= 1.00
[  403.950970] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  403.952764] usb 1-7: can't set config #1, error -71
[  403.953059] usb 1-7: USB disconnect, device number 9
[  404.259699] usb 1-7: new low-speed USB device number 10 using xhci_hcd
[  404.415276] usb 1-7: config 1 interface 0 altsetting 0 endpoint 0x81 is Bulk; changing to Interrupt
[  404.429560] usb 1-7: New USB device found, idVendor=0922, idProduct=0011, bcdDevice= 1.00
[  404.429574] usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  404.429580] usb 1-7: Product: DYMO LabelMANAGER PC
[  404.485285] usbcore: registered new interface driver usblp

and lsusb -v:

Bus 001 Device 015: ID 0922:0011 Dymo-CoStar Corp. DYMO LabelMANAG
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0922 Dymo-CoStar Corp.
  idProduct          0x0011 
  bcdDevice            1.00
  iManufacturer           1 DYMO
  iProduct                2 DYMO LabelMANAG
  iSerial                 3 01020412345621
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0021
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         7 Printer
      bInterfaceSubClass      1 Printer
      bInterfaceProtocol      2 Bidirectional
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 8
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4
Device Status:     0x0001
  Self Powered

Thank you in advance!

About this issue

  • Original URL
  • State: closed
  • Created 8 months ago
  • Comments: 17 (8 by maintainers)

Most upvoted comments

My printer still works with the current version of dymoprint.

2023-11-15-14-38-37-126

It is reported as:

Bus 001 Device 003: ID 0922:0011 Dymo-CoStar Corp. DYMO LabelMANAGER PC
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0922 Dymo-CoStar Corp.
  idProduct          0x0011 
  bcdDevice            1.00
  iManufacturer           1 DYMO
  iProduct                2 DYMO LabelMANAGER PC
  iSerial                 3 01020412345621
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0021
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower                2mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         7 Printer
      bInterfaceSubClass      1 Printer
      bInterfaceProtocol      2 Bidirectional
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 8
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            3
          Transfer Type            Interrupt
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0008  1x 8 bytes
        bInterval               4
Device Status:     0x0001
  Self Powered