Describe the bug
On my Debian machine with a backport-kernel (5.9.15) the udev-rule
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users"
suggested here: https://github.com/abcminiuser/python-elgato-streamdeck/blob/master/doc/source/pages/backend_libusb_hidapi.rst
produces to a TransportError
raise TransportError("Could not open HID device.")
It turns out that on none of my debian machines my user was part of the users group. However, all of these machines were upgraded from earlier versions (this also applies to a raspbian rpi4 - here only the pi user is part of users, not additional users added with adduser).
I was able to fix the issue by modifying the udev rule based on randomly found similar issues for other projects (e.g.. https://wiki.archlinux.org/index.php/Talk:Udev or stapelberg/openhantek@b02d417 )
# does not work on my Debian 10 machine
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users"
# works
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
# works
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users", TAG+="udev-acl"
# # works
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users", TAG+="uaccess"
# does not work on my machine
# SUBSYSTEMS=="usb", ATTRS{idVendor}=="0fd9", GROUP="users", MODE="0660"
Unfortunately my knowledge of udev-internals is very limited and therefore I cannot propose a "correct" fix (if this is actually an issue). However, my understanding of the uaccess tag is that it grants access rights to every logged-in user, which seems reasonable for the use of the streamdeck.
To Reproduce
Use and apply the udev rules a proposed in the manual.
StreamDeck Information
List the model of StreamDeck(s) you are using here.
System Information
Debian 10.7 (buster)
Linux nathan 5.9.0-0.bpo.5-amd64 #1 SMP Debian 5.9.15-1~bpo10+1 (2020-12-31) x86_64 GNU/Linux
steamdeck library installed in fresh virtualenv from pypi (0.8.2, python 3.7)
Describe the bug
On my Debian machine with a backport-kernel (5.9.15) the udev-rule
suggested here: https://github.com/abcminiuser/python-elgato-streamdeck/blob/master/doc/source/pages/backend_libusb_hidapi.rst
produces to a TransportError
It turns out that on none of my debian machines my user was part of the users group. However, all of these machines were upgraded from earlier versions (this also applies to a raspbian rpi4 - here only the pi user is part of users, not additional users added with adduser).
I was able to fix the issue by modifying the udev rule based on randomly found similar issues for other projects (e.g.. https://wiki.archlinux.org/index.php/Talk:Udev or stapelberg/openhantek@b02d417 )
Unfortunately my knowledge of udev-internals is very limited and therefore I cannot propose a "correct" fix (if this is actually an issue). However, my understanding of the uaccess tag is that it grants access rights to every logged-in user, which seems reasonable for the use of the streamdeck.
To Reproduce
Use and apply the udev rules a proposed in the manual.
StreamDeck Information
List the model of StreamDeck(s) you are using here.
System Information
Debian 10.7 (buster)
Linux nathan 5.9.0-0.bpo.5-amd64 #1 SMP Debian 5.9.15-1~bpo10+1 (2020-12-31) x86_64 GNU/Linux
steamdeck library installed in fresh virtualenv from pypi (0.8.2, python 3.7)