joypad-ai/joypad-os
Universal controller firmware core for adapters, dongles, and custom controllers. observed · 2026-08-28
Health v2 · maintenance only
99/100
- Activity 99
- Release rhythm 98
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 12.5
- age_days: 1445
- days_rel: 19
- days_push: 8
- n_releases_24m: 17
Adoption not part of the score
1568 stars · 88 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Joypad OS (formerly USBRetro) is open-source C firmware for microcontrollers (RP2040, ESP32-S3, nRF52840) that turns any input device into any output protocol. It powers controller adapters, custom controllers, and assistive input devices by normalizing USB HID, Bluetooth, and retro console inputs and routing them to outputs like GameCube, PCEngine, Dreamcast, N64, 3DO, Nuon, and USB/XInput.
Use cases
- use a modern USB or Bluetooth controller on a retro console like GameCube or PCEngine
- convert retro SNES, N64, or GameCube controllers to USB gamepads
- build a custom controller from buttons and sticks on a microcontroller
- merge multiple assistive input devices into a single gamepad output
- turn a Bluetooth controller into a wired low-latency USB gamepad
- flash firmware onto a controller adapter dongle
- remap buttons and configure controller profiles from a browser
When to choose
- you are building controller adapters, dongles, or custom gamepads on RP2040, ESP32-S3, or nRF52840 hardware
- you need protocol translation between USB HID/XInput/Bluetooth and retro console interfaces
- you want configurable input routing, profiles, and remapping in firmware
- you need assistive gaming input merging on embedded hardware
When to avoid
- you need a PC-side driver or software-only controller remapper rather than firmware
- your target console or protocol is not among the supported input/output interfaces
- you are not comfortable flashing .uf2 firmware or compiling embedded C
Facets
library · maturity active
embedded middleware sdk gaming-tools hardware embedded-systems cross-platform embedded iot cross-platform controller-firmware game-controller usb-hid bluetooth retro-gaming console-adapters rp2040 esp32-s3 nrf52840 input-routing xinput dinput tinyusb assistive-tech
4 sources
- readme: https://github.com/joypad-ai/joypad-os · fetched 2026-08-28 · a1ff7ab7bf09
- homepage: https://joypad.ai · fetched 2026-08-29 · fa019339edd5
- site_page: https://docs.joypad.ai · fetched 2026-08-29 · 3741ad526f6e
- site_page: https://docs.joypad.ai/getting-started/installation · fetched 2026-08-29 · 484dc463499b
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| joypad-ai/joypad-os | main | 99 |
For agents
markdown · JSON · MCP: product_card(name="joypad-ai/joypad-os")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem