trustcrypto / OnlyKey-App

The OnlyKey App is used for the initial setup and configuration of OnlyKey. Supported on Windows, macOS, Linux, and Chromebook (with Chrome App).
https://docs.crp.to/app.html
Other
106 stars 24 forks source link

"BRYO>Y" on TOTP inputs #175

Closed toastal closed 3 years ago

toastal commented 3 years ago

Not sure where to ask this, but I've had a recurring issue between my old Razer Arch laptop and my newer ASUS Nix laptop and on an older and newer model of the OnlyKey where if I just plug in the key and press or hold any button with a to use a TOTP profile, I just get BRYO>Y echoed out.

The only way to remedy this has been to open App via Brave (no Electron app in Nixpkgs), unplug, reauthenticate, then after loading the USB works as intended everywhere on the OS. The This is a bit of a hassle and isn't working as expected. Is there something I'm missing as far as a service needing to be running?

udev rules (not sure how to escape the cat # comments for console highlighting):

$ rg "OnlyKey" /etc/udev/rules.d/
/etc/udev/rules.d/99-local.rules
13:# UDEV Rules for OnlyKey, https://docs.crp.to/linux.html
$ cat /etc/udev/rules.d/99-local.rules                                                                             
\# Don't manage interfaces created by nixos-container.
ENV{INTERFACE}=="v[eb]-*", ENV{NM_UNMANAGED}="1"

KERNEL=="tun", TAG+="systemd"

\# Miscellaneous devices.
KERNEL=="kvm",                  MODE="0666"
KERNEL=="kqemu",                MODE="0666"

\# Needed for gpm.
SUBSYSTEM=="input", KERNEL=="mice", TAG+="systemd"

\# UDEV Rules for OnlyKey, https://docs.crp.to/linux.html
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"

\# The udev rules were updated upstream without an explanation as you can
\# see in [this comment][commit]. Assuming that hey have changed the
\# idVendor/idProduct, I've kept the old values.
\# TODO: Contact them upstream.
\#
\# [commit]: https://github.com/trustcrypto/trustcrypto.github.io/commit/0bcf928adaea559e75efa02ebd1040f0a15f611d
\#
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", ENV{ID_MM_DEVICE_IGNORE}="1"
ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789A]?", ENV{MTP_NO_PROBE}="1"
SUBSYSTEMS=="usb", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789ABCD]?", GROUP+="plugdev"
KERNEL=="ttyACM*", ATTRS{idVendor}=="16c0", ATTRS{idProduct}=="04[789B]?", GROUP+="plugdev"
onlykey commented 3 years ago

For TOTP you have to have the OnlyKey app or webapp to set time on onlykey. If not it prints NOTSET. https://docs.crp.to/usersguide.html#google-authenticator-otg

For the BRYO>Y I suspect maybe this is NOTSET but you have a different keyboard profile set that maps to different keys.

toastal commented 3 years ago

That's exactly what happened -- via Dvorak. Documentation makes sense too. Closing, and hopefully this may help another user in the future via search engine.