Drop the brightness control, survive and explain a frozen mic

- Remove RGB brightness: firmware 2.1.2 stores the value but the LEDs
  never change, so the control did nothing. PROTOCOL.md notes why.
- Lock the device per transaction (flock) so the CLI and the web
  service can't interleave and steal each other's replies.
- Detect a mic that is plugged in but no longer answering and tell the
  user to replug it (a USB reset is not enough; settings survive).
  Seen when hardware buttons are held while settings are being written.
- Web page keeps the last known value when a poll comes back partial,
  instead of drawing unanswered settings as off.
- New screenshot.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 10:45:18 -05:00
co-authored by Claude Opus 5.5
parent 66d159b0d2
commit 1fcf73ed9d
7 changed files with 50 additions and 15 deletions
+1 -1
View File
@@ -55,7 +55,7 @@ The rest of the 64 bytes is zero-padded.
| 0x2026 | headphone monitoring | 2000 = on, 3000 = off |
| 0x2027 | noise cancellation | 0 / 1 |
| 0x2028 | noise cancellation strength | 0-100 |
| 0x202A | RGB ring brightness | 0-100 (the app does not show it for this model) |
| 0x202A | labelled RGB ring brightness in the app's shared code | stores 0-100, but the LEDs do not change on firmware 2.1.2; not exposed |
| 0x202C | vocal enhancement | 0 / 1 |
| 0x204B | level-meter enable | not answered by firmware 2.1.2 |