Manjaro - OnlyKey can't interact with apps

First time poster, i own 3 keys. Love them :slight_smile:

On my Manjaro Linux computer, the OnlyKey app, as well as browsers, have stopped recognizing OnlyKeys.

  • OnlyKey can type passwords, but it cannot connect to the OnlyKey app (installed via AUR) or verify itself with a browser.
  • udev rules are in place – both /etc/udev/rules.d/49-onlykey.rules, AND /lib/udev/rules.d/49-onlykey.rules.
  • Stopped working 2-3 months ago for no obvious reason. Maybe something was updated that broke things.
  • On my other Arch linux laptop, the device connects properly with browsers and the OnlyKey app.

journalctl -f -n0

Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: new full-speed USB device number 14 using xhci_hcd
Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: New USB device found, idVendor=1d50, idProduct=60fc, bcdDevice= 1.00
Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: Product: ONLYKEY
Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: Manufacturer: CRYPTOTRUST
Nov 11 11:42:33 MyComputer kernel: usb 1-2.1: SerialNumber: 1000000000
Nov 11 11:42:34 MyComputer kernel: input: CRYPTOTRUST ONLYKEY as /devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-2/1-2.1/1-2.1:1.0/0003:1D50:60FC.0025/input/input44
Nov 11 11:42:34 MyComputer kernel: hid-generic 0003:1D50:60FC.0025: input,hidraw1: USB HID v1.11 Keyboard [CRYPTOTRUST ONLYKEY] on usb-0000:03:00.0-2.1/input0
Nov 11 11:42:34 MyComputer kernel: hid-generic 0003:1D50:60FC.0026: hiddev97,hidraw2: USB HID v1.11 Device [CRYPTOTRUST ONLYKEY] on usb-0000:03:00.0-2.1/input1
Nov 11 11:42:34 MyComputer kernel: hid-generic 0003:1D50:60FC.0027: hiddev98,hidraw3: USB HID v1.11 Device [CRYPTOTRUST ONLYKEY] on usb-0000:03:00.0-2.1/input2
Nov 11 11:42:34 MyComputer systemd[2049]: Started dbus-:1.5-org.xfce.Xfconf@7.service.
Nov 11 11:42:34 MyComputer systemd-logind[868]: Watching system buttons on /dev/input/event14 (CRYPTOTRUST ONLYKEY)
Nov 11 11:42:37 MyComputer kernel: input: CRYPTOTRUST ONLYKEY as /devices/pci0000:00/0000:00:01.3/0000:03:00.0/usb1/1-2/1-2.1/1-2.1:1.0/0003:1D50:60FC.0028/input/input45
Nov 11 11:42:37 MyComputer kernel: hid-generic 0003:1D50:60FC.0028: input,hidraw1: USB HID v1.11 Keyboard [CRYPTOTRUST ONLYKEY] on usb-0000:03:00.0-2.1/input0
Nov 11 11:42:38 MyComputer systemd-logind[868]: Watching system buttons on /dev/input/event14 (CRYPTOTRUST ONLYKEY)

---------- ISSUE RESOLVED ----------------
It was discovered that a 4-port USB switch was interfering with the device’s connectivity.
After reconnecting the USB switch to a different port on the motherboard, the OnlyKey functions normally. See thread below.

I just discovered that KeePassXC is able to properly identify the device and use it to unlock password databases. The OnlyKey app is chromium based, correct? If so this seems more like a browser connectivity issue.

KeePassXC uses a different way of communicating with device instead of USB HID it uses USB Keyboard, essentially sending small amounts of data in USB Keyboard packets. Which will work even if there is no udev rule. USB HID requires UDEV rule.

Do other vendor FIDO2 keys work? You can install udev rules for OnlyKey and other vendor keys by installing this GitHub - Yubico/libfido2: Provides library functionality for FIDO2, including communication with a device over USB or NFC.

  • Thanks for the reply! I guess it’s UDEV related.
  • I don’t have any other FIDO2 key products - just Onlykey.
  • I copied the UDEV rules over from an Arch laptop where everything works fine. However, the issue still continues.
  • I’m running udevadm info --attribute-walk and diffing the outputs from both machines now, but there’s nothing obviously out of place

Going to do more research on how the same UDEV rule could succeed on one machine, but not another.
The Arch laptop has much less package bloat than my Manjaro PC. FWIW

/etc/udev/rules.d/49-onlykey.rules

ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="60fc", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="60fc", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="60fc", MODE:="0666"
KERNEL=="ttyACM*", ATTRS{idVendor}=="1d50", ATTRS{idProduct}=="60fc", MODE:="0666"

*to be clear, the device is able to type out passwords without issue. The issue is entirely related to the WebAuth/FIDO stuff.

Ah, I’ve identified the problem… I’m using a 4-port USB Switch. The key works when plugged directly into the PC case or mobo, but is failing from the USB switch.

Here’s the switch for reference.
https://www.amazon.com/gp/product/B085915CTB/

Annoying since my PC is too far from me to reach right now, but at least I know what’s going on. Funny since it worked a couple months back.

The issue is resolved after plugging the switch into a better mobo USB port.