[PR #31] [CLOSED] LED control, shutdown control, and battery level #160

Closed
opened 2026-10-22 05:06:52 +00:00 by roman · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/safijari/openpuck/pull/31
Author: @safijari
Created: 6/12/2026
Status: ❌ Closed

Base: main ← Head: more-buzz-and-quit


📝 Commits (10+)

📊 Changes

31 files changed (+2328 additions, -89 deletions)

View changed files

📝 .gitignore (+7 -0)
📝 OpenPuck/OpenPuck.ino (+6 -0)
➕ OpenPuck/build_info.h (+22 -0)
📝 OpenPuck/config.cpp (+39 -3)
📝 OpenPuck/config.h (+19 -0)
📝 OpenPuck/controllers.h (+4 -0)
📝 OpenPuck/gamepad_util.cpp (+1 -1)
📝 OpenPuck/haptics.cpp (+92 -33)
📝 OpenPuck/haptics.h (+18 -1)
📝 OpenPuck/mode_hidgyro.cpp (+32 -0)
📝 OpenPuck/mode_ps5.cpp (+39 -0)
📝 OpenPuck/puck_hid.cpp (+25 -18)
📝 OpenPuck/puck_hid.h (+1 -0)
📝 OpenPuck/radio.cpp (+3 -2)
📝 OpenPuck/radio.h (+1 -1)
📝 OpenPuck/rf_link.cpp (+35 -3)
📝 OpenPuck/rf_link.h (+8 -5)
📝 OpenPuck/serial_console.cpp (+6 -1)
📝 OpenPuck/webusb_config.cpp (+32 -6)
📝 docs/BUILD_AND_DEPLOY.md (+25 -3)

...and 11 more files

📄 Description

This PR adds LED brightness control, controller shutdown control through both Steam + Y chord and steam UI, controller shutdown on host suspend, and proper battery level indicator. It might also have more fixes for haptics, hard to tell.

It also adds some dev utilities like a sniffer to pick up traffic between the official puck and the controller as well as a utility to pair the controller without involving steam (and also to read the connection UUID which is necessary for sniffing)


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/safijari/openpuck/pull/31 **Author:** [@safijari](https://github.com/safijari) **Created:** 6/12/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `more-buzz-and-quit` --- ### 📝 Commits (10+) - [`a0253ca`](https://github.com/safijari/openpuck/commit/a0253cad8ebf1c3a1c7fc0bfba68225389e468d5) Add sniffer for debugging - [`4f25f1b`](https://github.com/safijari/openpuck/commit/4f25f1bea9d29acd967559a56e480eca5ba7c896) add pairtui - [`a55fffe`](https://github.com/safijari/openpuck/commit/a55fffe5d6ff072ddca253a91dc27872ef664bba) sniffer readme - [`bf49c5f`](https://github.com/safijari/openpuck/commit/bf49c5f0f96a993b28a547774f0e3d0f4331aefe) Shut off and LED brightness commands now work - [`88d1472`](https://github.com/safijari/openpuck/commit/88d147245481e333a66e327f7f54e88619d9d3db) battery readout works now - [`22e54b5`](https://github.com/safijari/openpuck/commit/22e54b53168c8647337c899117cd27360ef91750) Fix gyro bug - [`a4b50e1`](https://github.com/safijari/openpuck/commit/a4b50e16789e6ccf9fb2db95e0b1a68c9e9db24f) factory reset on flash - [`65116fd`](https://github.com/safijari/openpuck/commit/65116fd808a6bf59be86da24a0e0f055a49d18bd) build info in webusb - [`b3cfd47`](https://github.com/safijari/openpuck/commit/b3cfd47f7d4a5c1186cd4fa1d4068a84eae4f8e6) proper reset + buzz fix - [`3d47fec`](https://github.com/safijari/openpuck/commit/3d47fecee34882171e4bf8f93ec7ae5ef8160727) true haptics fix with fallback? ### 📊 Changes **31 files changed** (+2328 additions, -89 deletions) <details> <summary>View changed files</summary> 📝 `.gitignore` (+7 -0) 📝 `OpenPuck/OpenPuck.ino` (+6 -0) ➕ `OpenPuck/build_info.h` (+22 -0) 📝 `OpenPuck/config.cpp` (+39 -3) 📝 `OpenPuck/config.h` (+19 -0) 📝 `OpenPuck/controllers.h` (+4 -0) 📝 `OpenPuck/gamepad_util.cpp` (+1 -1) 📝 `OpenPuck/haptics.cpp` (+92 -33) 📝 `OpenPuck/haptics.h` (+18 -1) 📝 `OpenPuck/mode_hidgyro.cpp` (+32 -0) 📝 `OpenPuck/mode_ps5.cpp` (+39 -0) 📝 `OpenPuck/puck_hid.cpp` (+25 -18) 📝 `OpenPuck/puck_hid.h` (+1 -0) 📝 `OpenPuck/radio.cpp` (+3 -2) 📝 `OpenPuck/radio.h` (+1 -1) 📝 `OpenPuck/rf_link.cpp` (+35 -3) 📝 `OpenPuck/rf_link.h` (+8 -5) 📝 `OpenPuck/serial_console.cpp` (+6 -1) 📝 `OpenPuck/webusb_config.cpp` (+32 -6) 📝 `docs/BUILD_AND_DEPLOY.md` (+25 -3) _...and 11 more files_ </details> ### 📄 Description This PR adds LED brightness control, controller shutdown control through both Steam + Y chord and steam UI, controller shutdown on host suspend, and proper battery level indicator. It might also have more fixes for haptics, hard to tell. It also adds some dev utilities like a sniffer to pick up traffic between the official puck and the controller as well as a utility to pair the controller without involving steam (and also to read the connection UUID which is necessary for sniffing) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
roman 2026-10-22 05:06:52 +00:00
Sign in to join this conversation.
No labels
pull-request
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
safijari/openpuck#160
No description provided.