Request PID block for Infinite HID controller base (electric, hybrid, diesel, steam)#1198
Request PID block for Infinite HID controller base (electric, hybrid, diesel, steam)#1198CDiOS wants to merge 7 commits intopidcodes:masterfrom
Conversation
Add index.md for Infinite project documentation
Added documentation for Electric Controller Base firmware.
Add initial documentation for Hybrid Controller Base firmware.
Add documentation for Diesel Controller Base firmware.
Add documentation for Steam Controller Base firmware.
Add index.md for Infinite project documentation
tannewt
left a comment
There was a problem hiding this comment.
I'd rather not grant four PIDs for example code. Example code can use test PIDs. A host can also inspect the HID report descriptor to know how many of each thing is present.
|
Thanks for the review, I appreciate the feedback. To clarify, the repository contains simplified reference sketches for accessibility, but the PIDs are intended for real hardware deployments rather than example-only use. The intent is to group devices into stable top-level controller classes (primarily electric and diesel), with individual models and configurations differentiated through USB descriptors and report structure rather than additional PIDs. For example:
Specific models within each class would then be identified through descriptors rather than separate PIDs. The example code is included so that users who encounter these PIDs have a working open reference, but it is not the primary purpose of the identifiers. I’m happy to reduce the request accordingly and request two PIDs to represent these core controller classes. |
|
Are the real hardware deployments a specific PCB design? |
|
The deployments are based on Arduino Leonardo–compatible (ATmega32U4) hardware, not a single fixed PCB design. The reference sketches reflect a baseline Leonardo-style implementation so they remain accessible and reproducible, but the intended devices are defined configurations of that platform with different control layouts, I/O mappings, and HID report structures depending on the controller class (e.g., electric vs diesel). So while they share a common USB-capable MCU platform, they are not simply the same device with minor firmware tweaks — each class represents a distinct HID configuration and interface layout. The goal is to maintain stable identification at the controller class level (via PID), while allowing specific models and variants within that class to be differentiated through descriptors and report structure rather than additional PIDs. |
Requesting a contiguous block of 4 PIDs for multiple USB HID controller variants based on a shared Arduino Leonardo-compatible platform using the Arduino Joystick Library.
Repository:
https://github.com/CDiOS/infinite-hid-controller-base
Requested assignments:
These are open reference/base sketches intended as starting points for builders to customize for their own simulation controller hardware.