Skip to content

STM32F103 USB HID game device controller with flexible configuration

License

Notifications You must be signed in to change notification settings

hexxter/FreeJoy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FreeJoy

FreeJoy is widely configurable game device controller based on cheap STM32F103C8 microcontroller board. It allows you to create your own HOTAS, pedals, steering wheel device or customize a purchased one.

Features

FreeJoy supports the following external periphery:

  • 8 analog inputs
  • 128 push buttons or toggle switches
  • 4 POV hats
  • 16 Incremental encoders
  • Converting analog inputs to buttons (up to 12 buttons per axis)
  • Shift registers 74HC165 and CD4021 for extending inpits number
  • TLE5010/TLE5011 sensors as axes sources

Axes

FreeJoy supports up to 8 analog inputs at pins A0-A7 and TLE5010/5011 sensors as axes sources. Every axis has its ouw settings as:

  • Source/destination (X, Y, Z, Rx, Ry, Rz, Slider1, Slider2)
  • Output enabling/disabling
  • Resolution
  • Calibration (manual or automatical)
  • Smothing (4 levels of filtration)
  • Inversion
  • Dead zone
  • Magnet offset option
  • Curve shaping
  • Functions for combined axes
  • Axes from buttons/encoders

Buttons

FreeJoy allows you to connect up to 128 digital inputs as single inputs (tied to VCC or GND), matrix of buttons, shift register inputs and axes to buttons inputs. Inputs can be configured as:

  • Regular push button
  • Inverted push button
  • Toggle switch ON/OFF
  • Toggle switch ON
  • Toggle switch OFF
  • POV hat button
  • Incremental encoder input
  • Radio buttons
  • 5 shifts

Exrenal configuration tool

FreeJoy configuration is possible both by changing definitions in source code and by using external utility.

For information how to configure your device check wiki page

About

STM32F103 USB HID game device controller with flexible configuration

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 79.1%
  • Assembly 16.1%
  • HTML 3.6%
  • Other 1.2%