# FreeJoy-Team/FreeJoy

STM32F103 USB HID game device controller with flexible configuration

Repository: https://github.com/FreeJoy-Team/FreeJoy
Canonical: https://ross.abutalabs.com/products/freejoy
Language: C
License: GPL-3.0
License Family: copyleft
Topics: joystick, hotas, pedals, steering-wheel, rudder, game-controller, usb-hid
Last push: 2026-04-19T09:12:55+00:00

## Health v2 (maintenance only)
Score: 69/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 78, release rhythm 39, longevity 100
- inputs: {"age_days": 2525, "days_push": 136, "days_rel": 193, "gap_med": null, "n_releases_24m": 1}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1022, forks 179 (observed 2026-08-28T04:03:16.058416+00:00)

## What it is
FreeJoy is open-source firmware for the STM32F103C8 microcontroller that turns the board into a highly configurable USB HID game controller. It supports analog axes, up to 128 digital inputs, encoders, sensors, and LEDs for building custom HOTAS, pedals, steering wheels, and other sim racing or flight sim hardware.

## Use cases
- build a DIY HOTAS joystick controller
- make custom racing pedals for sim racing
- convert analog sensors into a USB steering wheel
- create a button box with encoders and LEDs
- customize an existing joystick controller firmware
- wire shift registers for many buttons on a game controller

## When to choose
- you want a cheap, flexible DIY USB game controller based on STM32F103
- you need many inputs (axes, buttons, encoders, hats) on one device
- you want configurable calibration, curves, deadbands, and shift modifiers
- you want to control LEDs or integrate with SimHub

## When to avoid
- you need a plug-and-play commercial controller without soldering or firmware flashing
- your hardware is not STM32F103C8-based
- you need force feedback or console (non-PC) compatibility

## Facets
- artifact type: application
- maturity: active
- function: embedded, game, sdk
- domain: gaming-tools, hardware, embedded-systems
- platform: embedded, windows
- tags: stm32f103, usb-hid, joystick, hotas, sim-racing, flight-sim, firmware, game-controller, stm32, linux, macos

## Member repositories
- FreeJoy-Team/FreeJoy (main) score 69

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:16.058416+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:08:41.300767+00:00, confidence not recorded.
  - readme: https://github.com/FreeJoy-Team/FreeJoy (fetched 2026-08-28T04:03:16.058416+00:00, sha 3a5a4b548557)
- Data as of 2026-08-30T08:39:29.467469+00:00.
