Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add udev rules troubleshooting #30

Merged
merged 5 commits into from
Aug 22, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .wordlist.txt
Original file line number Diff line number Diff line change
Expand Up @@ -130,4 +130,8 @@ noeeprom
eeprom
drgscrl
dragscroll
reflash
reflash

hidraw
uaccess
udevadm
30 changes: 30 additions & 0 deletions help/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,36 @@ Since the LEDs are arranged in a chain, focus your efforts on the last LED that

Please refer to the [diagnosing a broken trace](./diagnose_broken_trace.html#inspect-the-schematics) guide to learn how to inspect the schematics for your particular board.

# Flashing/Using Troubleshooting

## Keyboard not recognized by VIA

If your keyboard is not recognized by VIA, might be getting the following error:

```
Received invalid protocol version from device
```

Outlined below are some steps, in order of complexity:
- make sure you use a chromium-based browser like edge, google chrome
- flash the [latest firmware version](https://github.com/Bastardkb/bastardkb-qmk/releases/latest)

### Custom udev rules

If your keyboard is still not recognized and you are running a **Linux-based distribution**, you need to setup some custom udev rules to allow access to `hidraw` devices for regular users:

First, write this text to `/etc/udev/rules.d/92-via.rules`:

```
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
```

Then, reload `udev` by running this command as `root`:

```
udevadm control --reload-rules && udevadm trigger
```

# Glossary

This section explains some of the terms used while troubleshooting in brief.
Expand Down