Case study / Personal project Flight sim rudder pedals

I fly ultralights, and consumer sim pedals never felt right: short throw, toy-like centring, and potentiometers that get jittery as they wear. So I built my own, with fighter style geometry, three axes, and sensing that cannot wear out.

All work Full portfolio

Rudder pedals do three jobs at once: yaw through the sliding pedal motion, plus independent left and right toe brakes. Consumer hardware compresses all of that into short springy travel measured by potentiometers.

3Independent axes
0Potentiometers in the signal path
USB HIDNo drivers, any simulator
A1301Contactless Hall sensing

Potentiometers drift, jitter and eventually wear out, because the measurement depends on a wiper physically touching a track. On a control you stand on, that wear is not hypothetical.

I wanted fighter style pedal geometry with sensing that reads the same on day one and day one thousand.

01Three independent axes, yaw plus left and right toe brakes, in one mechanism
02Every structural part printable on a hobby FDM printer
03No contact based sensing anywhere in the signal path
04Recognised as a standard game controller by any PC, no drivers
05Pedal geometry close to an F-15 or F-18 layout
06Serviceable: a worn part can be reprinted, not replaced as an assembly

I designed the three-axis assembly in SolidWorks around fighter style pedal geometry and printed it, iterating on pivot placement and return feel.

Rapid prototyping earns its name here. Pedal feel is subjective, and the fastest way to evaluate a linkage is to stand on it.

Each axis is measured by an A1301 Hall effect sensor reading a magnet on the moving part. No wiper, no contact, nothing to wear. The output is smooth and continuous, and it is identical after a thousand hours.

That single component choice removes the entire failure mode that ruins potentiometer based controls.

A Teensy 2.0 reads the three sensors and presents itself as a standard USB HID game controller, so every simulator sees it the moment it is plugged in.

The C++ firmware learns each axis's real minimum, centre and maximum, and applies configurable deadzone logic, so mechanical imperfection never reaches the sim.

This is where mechanical design and embedded software stopped being separate skills. The pedal feel comes from the linkage, but whether it is usable comes from the firmware, and neither one could be finished without the other.

Previous: The bend fixture Next: Therma-Shift