Commit Graph

90 Commits

Author SHA1 Message Date
Marius Gehrmann
04d92ec44e Add additional product ID for Cloud III Wireless 2026-01-03 09:49:09 +01:00
Lennard Kittner
87b9f9adff Fix capitalization in get_display_data 2025-11-17 11:49:43 +01:00
Lennard Kittner
39ddba7fdb Add conditional debug printing 2025-11-15 17:02:42 +01:00
Lennard Kittner
b6265e6f24 Conditionally enable passive Refresh 2025-11-08 13:46:33 +01:00
Lennard Kittner
eb304eda01 Use can set functions in cli app 2025-11-08 13:26:43 +01:00
Lennard Kittner
fc01eee908 Clippy fixes 2025-11-08 13:19:30 +01:00
Lennard Kittner
2f18725c11 Remove debugging code 2025-11-08 13:13:19 +01:00
Fabio Scaccabarozzi
f7c230a8ef Show read-only markers in CLI output (Option A)
Changed DeviceState Display trait to use to_string_with_readonly_info()
instead of to_string_with_padding().

This allows CLI users to see which features are hardware-limited before
attempting to use them, providing helpful context and reducing confusion
about why certain commands might not work.

The tray application continues to use to_string_with_padding() since
it's display-only and doesn't allow user interaction.

Implements Option A as discussed in PR #14
2025-10-27 23:10:20 +00:00
Fabio Scaccabarozzi
7a937efd91 Remove read-only markers from tray application
The tray application is display-only and doesn't allow users to change
any settings. Therefore, showing (read-only) markers doesn't provide
value since all fields are implicitly read-only in this context.

Changed to_string_with_readonly_info() back to to_string_with_padding()
for the tray display.

Addresses PR #14 review comment from @LennardKittner
2025-10-27 23:09:21 +00:00
Fabio Scaccabarozzi
84bbc4a122 Refactor: eliminate code duplication in DeviceState display methods
Create helper function get_display_data() that returns the device data
array with 4-tuple format (prefix, value, suffix, readonly_flag).

Both to_string_with_padding() and to_string_with_readonly_info() now
call this helper function:
- to_string_with_padding() ignores the readonly flag
- to_string_with_readonly_info() uses it to add (read-only) markers

This eliminates ~100 lines of duplicated code and makes the codebase
easier to maintain.

Addresses PR #14 review comment from @LennardKittner
2025-10-27 23:08:44 +00:00
Fabio Scaccabarozzi
5ba124b086 Add documentation about unknown command 4 2025-10-19 18:32:35 +01:00
Fabio Scaccabarozzi
80976df212 Some features are read-only: either they require Windows APO, or they really don't have a software command available. Add the plumbing to detect and report this. Also, add documentation for the featureset. 2025-10-19 18:21:31 +01:00
Fabio Scaccabarozzi
8c3d954e0e Align everything to Headset_protocol.md (Copilot) 2025-10-19 18:08:46 +01:00
Lennard Kittner
83c811b72d Only display known information 2025-10-19 15:25:19 +02:00
Lennard Kittner
6b4e49ffc5 Query full report more frequently 2025-10-19 15:24:26 +02:00
Lennard Kittner
9dc5f243a3 Hide help of unsupported commands 2025-10-19 14:46:22 +02:00
Lennard Kittner
8350c25cc0 Add mute playback to CLI app 2025-10-19 14:12:04 +02:00
Lennard Kittner
b0265629a4 Add WIP cloud 3 support 2025-10-19 14:05:10 +02:00
Lennard Kittner
ba53b55d48 Remove 2 sec waiting time 2025-10-18 18:04:17 +02:00
Lennard Kittner
dc7c68b460 Fix get_event_from_device_response hyperX cloud 2 2025-10-18 18:03:10 +02:00
Lennard Kittner
b0569ec47a Fix get_event_from_device_response on HP cloud 2 2025-10-18 17:57:29 +02:00
Lennard Kittner
04895cab8c Add new packets 2025-09-29 08:52:48 +02:00
Lennard Kittner
4724df1920 Tray fixes 2025-09-29 08:51:34 +02:00
Lennard Kittner
deae62cd01 Detect surround sound 2025-09-25 19:58:09 +02:00
Lennard Kittner
3627f3d639 Set old cloud 2 as always connected 2025-09-25 19:08:39 +02:00
Lennard Kittner
ca60e021be prepare_write in cli app 2025-09-25 19:08:11 +02:00
Lennard Kittner
fca6440892 Fix tray 2025-09-25 09:14:11 +02:00
Lennard Kittner
cfa5f06f56 Stop periodically requesting packets 2025-09-24 20:25:33 +02:00
Lennard Kittner
f2372c75b9 Add more debug printing and delays 2025-09-24 17:57:12 +02:00
Lennard Kittner
4f91ddd7cc Add new surround sound packet 2025-09-24 17:56:17 +02:00
Lennard Kittner
f4e9ffa926 Fix packet parsing 2025-09-24 17:55:54 +02:00
Lennard Kittner
7c26d9d192 More debug printing 2025-09-24 17:55:18 +02:00
Lennard Kittner
97ef1d40ad Add some debug stuff 2025-09-17 12:23:10 +02:00
Lennard Kittner
b9028fe287 Fix buffer size 2025-08-29 09:18:27 +02:00
Lennard Kittner
4516354a76 Change print to eprint 2025-08-24 12:29:04 +02:00
Lennard Kittner
9614f5b2b4 Improve packet_tester 2025-08-24 12:16:09 +02:00
Lennard Kittner
6840cec0f2 Add support for old cloud 2 2025-08-24 12:15:40 +02:00
Lennard Kittner
6eabd6867e Use new connect_compatible_device function 2025-08-18 20:14:01 +02:00
Lennard Kittner
fab983ff73 Improve device init and add prepare_write function 2025-08-18 20:12:36 +02:00
Lennard Kittner
ac43ef8000 Remove old cloud 2 from cloud 2 dts 2025-08-18 20:11:32 +02:00
Lennard Kittner
fe90ec19ed Add tester 2025-08-02 18:58:42 +02:00
Lennard Kittner
856a91fe67 Formatting 2025-05-16 13:20:34 +02:00
Lennard Kittner
ea4a76739f Add passive_refresh_state 2025-05-16 13:20:09 +02:00
Lennard Kittner
536ffcd5e2 Add second mic packet to get_event_from_device_response 2025-05-16 13:18:18 +02:00
Lennard Kittner
906ea1c221 Updated hyperx vendor ID 2025-05-16 13:17:36 +02:00
Lennard Kittner
7977017bcb It is now possible to set the refresh interval.
Update descriptions.
2025-03-27 23:08:13 +01:00
Lennard Kittner
4897096826 Rename to hyper_headset 2025-03-27 22:24:56 +01:00
Lennard Kittner
ae40be64d4 Add second base packet which might work on the older HyperX Cloud 2 2025-03-27 22:01:56 +01:00
Lennard Kittner
50f61a7775 Remove handle_error function 2025-03-27 22:01:06 +01:00
Lennard Kittner
268528e47b Update help 2025-03-27 21:25:35 +01:00