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

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.

The CAD assembly driven through its real linkage: yaw both ways, each toe brake, then differential braking

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.

The plan was a Teensy 2.0. The board that arrived was counterfeit and came with dead pins, so I swapped to an Arduino Pro Micro: same ATmega32U4, same native USB, and the firmware moved across unchanged.

It reads the three Hall sensors and enumerates as a standard USB HID gamepad, so every simulator sees it the moment it is plugged in. No driver, no mapping utility.

I measured each axis's real travel on the bench, and the firmware maps those endpoints onto the HID range and clamps anything past them. Rudder, left brake and right brake go out as three independent axes at 100 Hz.

The pedal feel comes from the linkage, but whether it is usable comes from the firmware. Neither could be finished without the other.

Previous: The bend fixture Next: Therma-Shift