FreeJoy

Joystick and button box controller on a Blue Pill: up to 8 axes and 128 buttons for flight and racing sims.

Chipnik catalog@chipnik-catalog
Blue PillSolderingAbout 2 hLicense GPL-3.0-onlySource on GitHub

What you need

Board
Blue Pill
Parts
Potentiometers, hall sensors and buttons

FreeJoy turns an STM32 Blue Pill into a USB game controller for home made joysticks, throttles, pedals and button boxes. It reads up to 8 axes from potentiometers or magnetic sensors, up to 128 buttons in a matrix or shift registers, encoders and LEDs. Axis curves, dead zones and button modes are set in the FreeJoy configurator. Original project by the FreeJoy team on GitHub, GPL-3.0. Chipnik hosts the release binaries unchanged so you can flash them from the browser.

The Blue Pill must be a real STM32F103C8 or a CB with 128 KB; some cheap clones have a different chip. The wiring examples are in the FreeJoy wiki.

Firmware files come from the v1.7.3b0 release.

Parts

Buy everything for this project
1 ×Potentiometers, hall sensors and buttonsfor your joystick or button box

After flashing

  • The board restarts by itself when flashing is done.
  • If nothing happens, press the RST (EN) button once.

Flashing failed or the board behaves oddly

Versions

1.7.3-b0 added to Chipnik 2026-11-05

Release v1.7.3b0 of FreeJoy-Team/FreeJoy, files unchanged. Release notes on GitHub

Flash it onto Blue PillFlash it