[GH-ISSUE #113] Potential fix for intermittent connection drops #46

Closed
opened 2026-10-22 05:00:41 +00:00 by roman · 7 comments
Owner

Originally created by @cdleveille on GitHub (Jul 3, 2026).
Original GitHub issue: https://github.com/safijari/openpuck/issues/113

I pulled down the latest earlier today in main (latest commit 4bbe7bc), built and flashed to my board, and messed around with some games for a while in the default Steam Input mode. It worked great for the first 20 min or so, but then I started to get random disconnects. During these disconnects, I also noticed that the controller would continue to falsely report the last registered input until it reconnected.

With some help from Claude Code, I may have found a fix for both of these issues in my fork. I've been testing it in Steam Input and XInput modes for a couple hours now and have had no disconnects. The fix essentially bumps up the max TX power to 8dBm, which is supposed to reduce the likelihood of connection drops. And if it does disconnect, the fix should also make it stream a neutral, blank input instead of whichever input it last registered.

Will continue to play around with it and test some more, but just wanted to post this here in case you'd like to pull the change in. Happy to open a PR if you like. Thanks for putting this project together!

Originally created by @cdleveille on GitHub (Jul 3, 2026). Original GitHub issue: https://github.com/safijari/openpuck/issues/113 I pulled down the latest earlier today in `main` (latest commit [4bbe7bc](https://github.com/safijari/openpuck/commit/4bbe7bc24b6354030e6e50910f482ac3186649c8)), built and flashed to my board, and messed around with some games for a while in the default Steam Input mode. It worked great for the first 20 min or so, but then I started to get random disconnects. During these disconnects, I also noticed that the controller would continue to falsely report the last registered input until it reconnected. With some help from Claude Code, I may have found a [fix for both of these issues](https://github.com/safijari/openpuck/compare/main...cdleveille:openpuck:disconnect-fix) in my fork. I've been testing it in Steam Input and XInput modes for a couple hours now and have had no disconnects. The fix essentially bumps up the max TX power to 8dBm, which is supposed to reduce the likelihood of connection drops. And if it does disconnect, the fix should also make it stream a neutral, blank input instead of whichever input it last registered. Will continue to play around with it and test some more, but just wanted to post this here in case you'd like to pull the change in. Happy to open a PR if you like. Thanks for putting this project together!
roman closed this issue 2026-10-22 05:00:42 +00:00
Author
Owner

@safijari commented on GitHub (Jul 3, 2026):

Is this correlated with distance?

<!-- gh-comment-id:4879020884 --> @safijari commented on GitHub (Jul 3, 2026): Is this correlated with distance?
Author
Owner

@safijari commented on GitHub (Jul 3, 2026):

Also can you link your board please?

<!-- gh-comment-id:4879029688 --> @safijari commented on GitHub (Jul 3, 2026): Also can you link your board please?
Author
Owner

@cdleveille commented on GitHub (Jul 3, 2026):

I have this one. Unsure about distance currently - I've been testing it with the board sitting maybe 3 to 4 feet away from the controller, but will mess around with further distances a bit and see if it makes any difference.

<!-- gh-comment-id:4879039657 --> @cdleveille commented on GitHub (Jul 3, 2026): I have [this one](https://www.amazon.com/dp/B0CYLNZ6V4?ref=ppx_yo2ov_dt_b_fed_asin_title). Unsure about distance currently - I've been testing it with the board sitting maybe 3 to 4 feet away from the controller, but will mess around with further distances a bit and see if it makes any difference.
Author
Owner

@safijari commented on GitHub (Jul 3, 2026):

I have this one. Unsure about distance currently - I've been testing it with the board sitting maybe 3 to 4 feet away from the controller, but will mess around with further distances a bit and see if it makes any difference.

This is definitely a problem board but I also tested it and found it to be stable last night. These disconnects are not hangs right? Like the puck itself doesn't reboot (WebUSB panel would tell you if the last boot was from an error or not)?

What's the max that the TX power can be set at? I don't see a reason for us to be conservative here.

<!-- gh-comment-id:4879049503 --> @safijari commented on GitHub (Jul 3, 2026): > I have [this one](https://www.amazon.com/dp/B0CYLNZ6V4?ref=ppx_yo2ov_dt_b_fed_asin_title). Unsure about distance currently - I've been testing it with the board sitting maybe 3 to 4 feet away from the controller, but will mess around with further distances a bit and see if it makes any difference. This is definitely a problem board but I also tested it and found it to be stable last night. These disconnects are not hangs right? Like the puck itself doesn't reboot (WebUSB panel would tell you if the last boot was from an error or not)? What's the max that the TX power can be set at? I don't see a reason for us to be conservative here.
Author
Owner

@cdleveille commented on GitHub (Jul 3, 2026):

Have not checked out the WebUSB panel so I'll have to get back to you on that, but I believe it was just a temporary disconnect, not a hang/reboot - the blue light continued to blink steadily on the board while the controller was unresponsive, and I saw a "Steam Controller disconnected" followed by a "Steam Controller connected" Steam notification on my monitor.

Unsure about the max TX power question - I'm a web developer with no authority on this stuff, so I would defer to Claude or others with more experience on that one. Seems to be stable at 8dBm during my limited testing, though.

<!-- gh-comment-id:4879083499 --> @cdleveille commented on GitHub (Jul 3, 2026): Have not checked out the WebUSB panel so I'll have to get back to you on that, but I believe it was just a temporary disconnect, not a hang/reboot - the blue light continued to blink steadily on the board while the controller was unresponsive, and I saw a "Steam Controller disconnected" followed by a "Steam Controller connected" Steam notification on my monitor. Unsure about the max TX power question - I'm a web developer with no authority on this stuff, so I would defer to Claude or others with more experience on that one. Seems to be stable at 8dBm during my limited testing, though.
Author
Owner

@safijari commented on GitHub (Jul 3, 2026):

Ok yeah 8 is the max. Can you please open a PR?

<!-- gh-comment-id:4879188716 --> @safijari commented on GitHub (Jul 3, 2026): Ok yeah 8 is the max. Can you please open a PR?
Author
Owner

@cdleveille commented on GitHub (Jul 3, 2026):

Ok yeah 8 is the max. Can you please open a PR?

Done! #115

<!-- gh-comment-id:4879226906 --> @cdleveille commented on GitHub (Jul 3, 2026): > Ok yeah 8 is the max. Can you please open a PR? Done! #115
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#46
No description provided.