Conversation
Adds the Nova Pro Omni GameHub (VID 0x1038, PID 0x2290). The Omni's GameHub is a close cousin of the Nova Pro Wireless but its vendor HID interface differs: commands use report ID 0x01 and 64-byte reports, and interface 3 exposes two top-level collections, so the command/response channel (usage page 0xFFC0, report ID 1) must be selected explicitly. Verified empirically on firmware rev 0x0132: - Battery: 01 B0 -> reply[6] battery %, reply[15] status (01 offline / 02 charging / 08 online). - Sidetone: 01 38 <enable> <level>, level 0-10. Write-only (no readable sidetone state exists on this hub), so no getSidetone. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds support for the SteelSeries Arctis Nova Pro Omni GameHub (VID
0x1038, PID0x2290).Capabilities
01 B0status poll;reply[6]= headset battery %,reply[15]= status (0x01offline,0x02cable charging,0x08online).01 38 <enable> <level>, level 0–10. Write-only: the hub exposes no readable sidetone state (verified against the status poll, the config feature report, and the Nova 7's0x20query), so nogetSidetone.Notes for reviewers
The Omni's GameHub is a close cousin of the Nova Pro Wireless base station, but its vendor HID interface differs in two ways, which is why it's a new device rather than an added PID:
0x01(not0x06) and 64-byte reports (not 31).0xFFC0, report ID 1, selected viagetCapabilityDetail(same pattern as the Nova 7 Gen 2).It extends
SteelSeriesNovaDevice(64-byte packets + usage-page selection) with battery/sidetone overrides for the Omni's report-ID and status-byte layout.Testing
Built on Windows (MSYS2/MinGW, GCC 16) and tested against real hardware (firmware rev
0x0132):headsetcontrol --listdetects the device.headsetcontrol -breturns a correct battery level (verified 93%, matching the OLED).headsetcontrol -s 0/128toggles sidetone audibly.Reverse-engineered by USB capture (USBPcap) of SteelSeries GG traffic plus replay verification. The 1035-byte HID feature report (hardware EQ/preset store) is never written.