Skip to content

tuffrabit devices (tuffpad and tuffjoystick) pid submissions - #1262

Open
tuffrabit wants to merge 1 commit into
pidcodes:masterfrom
tuffrabit:master
Open

tuffrabit devices (tuffpad and tuffjoystick) pid submissions#1262
tuffrabit wants to merge 1 commit into
pidcodes:masterfrom
tuffrabit:master

Conversation

@tuffrabit

Copy link
Copy Markdown

Requesting two PIDs under VID 1209 for TuFFrabit open source game controllers

This PR adds an org page for TuFFrabit and two PID allocations:

• 1209:70AD — Tuffpad (source (https://github.com/tuffrabit/rasp-pi-pico-narwhal)): a one-handed gamepad (20-key keypad, analog stick, 5-way d-pad) built on an off-the-shelf RP2040 board, running open source CircuitPython firmware (GPL-3.0).
• 1209:70A7 — Tuffjoystick (source (https://github.com/tuffrabit/waveshare-joystick), Seeed variant (https://github.com/tuffrabit/seeed-joystick)): a one-handed analog joystick with integrated keypad, same firmware architecture, sold on two different off-the-shelf RP2040 carrier boards.

Why two PIDs: the Tuffpad's HID report descriptor differs from the Tuffjoystick's (the Tuffpad includes an 8-way hat switch; the joystick does not), and the two product lines evolve their descriptors independently. Sharing a VID/PID across devices with differing descriptors causes stale per-device configuration
in host OS controller caches, so each product line gets its own PID.

Why the Tuffjoystick PID spans two repos: the Seeed and Waveshare board variants are the same device at the USB level — byte-identical HID report descriptors and identical behavior — so they share one PID.

All firmware and the companion management app are public and GPL-3.0 licensed with LICENSE files in each repo. The devices are sold commercially as finished hardware, with all design firmware remaining open source.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant