-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
Description
Feature Request
GameInput's model database is impressive, but missing support for several popular modern controllers.
Missing Controllers
- Xbox Series X/S Controller (multiple USB/Bluetooth variants)
- Nintendo Switch Pro Controller (standard mapping variant)
- Steam Deck built-in controls
- 8BitDo controllers:
- Pro 2
- Ultimate (wired & 2.4GHz variants)
- Lite, SN30 Pro+, etc.
- SCUF, Razer Wolverine, PowerA controllers
- Generic Bluetooth gamepads (common on Android/ChromeOS)
Current Model Database Location
// src/gameinput-models.js
export default class GameInputModels {
static Specific = [
// List of specific controller models
]
}Proposed Approach
- Community Contributions: Create a template for submitting new gamepad data
- Structured Format: Consider JSON/YAML database instead of hardcoded JS
- Testing Protocol: Document how to gather accurate mapping data
Example Submission Template
vendor_id: "045e"
product_id: "0b13"
name: "Xbox Series X Controller"
schema: "Hedgehog"
icon: "xboxone"
os: null # All platforms
notes: "Standard mapping on all major browsers"
tested_on:
- browser: "Chrome 120"
os: "Windows 11"
connection: "USB"
- browser: "Firefox 121"
os: "macOS 14"
connection: "Bluetooth"Benefits
- Better out-of-box support
- Community can contribute easily
- Reduced "unknown controller" scenarios
- More comprehensive testing coverage
Implementation Plan
- Create GAMEPAD_DATABASE.md with contribution guidelines
- Add issue template for new gamepad submissions
- Consider externalizing database to JSON/YAML
- Add validation script for database entries
- Document testing procedure (how to capture VID/PID, test mappings)
Help Wanted
If you own any of these controllers and can test them, please comment with:
- Controller name
- Vendor ID / Product ID (from browser console)
- Browser + OS + Connection type
- Mapping observations
Reactions are currently unavailable