Skip to content

Build Order

The hardware has genuine prerequisites. Each step below assumes the previous one is done and verified — the point of the order is that when something breaks, only one thing changed.

Verify at every step

The most common way to lose an afternoon is to wire everything, turn it on, and get nothing. Each step here ends with a check that produces visible output. Do not move on until it passes.

0. Order the parts

→ Parts list

Some items ship slowly. Order everything before you start, including the R17 resistor (47 kΩ, and a 33 kΩ as backup) for the sound detector.

1. Wire the sound trigger

→ Sound trigger wiring

Solder the R17 gain resistor, then wire GATE → HOST_INT and the shared ground. This is the one soldering job in the build.

Verify: the GATE LED flashes when you clap and goes out again. If it stays lit, fit a lower-value R17.

2. Set up the Raspberry Pi

→ Raspberry Pi setup

Install the OS and dependencies, run the setup script.

Verify: the server starts in mock mode — scripts/start-kiosk.sh --mock.

3. Persist rolling-buffer mode

→ Rolling buffer setup

One time, per radar. The OPS243 must hold rolling-buffer mode in flash or hardware triggers will not work.

Verify: test_rolling_buffer_persist.py --test reports triggers when you clap.

You now have a working launch monitor

Ball speed, club speed, and carry all work from here. Everything below adds angles. Play with it at this stage before continuing — it confirms the whole trigger and capture path is sound.

4. Move the OPS243 to the GPIO UART

→ OPS243 → GPIO UART

Required before the IWR6843, which needs the USB bus and real current. Do this migration on its own; adding the TI radar at the same time makes any failure ambiguous.

Verify: the diagnostic reports 230400 baud and roughly 22 KB/s. A pass reporting 19,200 is treated as a failure on purpose — it means the radar never received the I5 command, so check the Pi pin 8 → J3 pin 6 wire.

5. Add the IWR6843 angle radar

→ IWR6843 operator guide

The largest step, and itself ordered: wiring → flashing → mounting and geometry → start and verify.

Verify: the first capture returns a sane launch angle.

6. Put it in the case

→ openflight-enclosure

Itself ordered: choose a variant → required hardware → print → assemble.

Not an extra. Nothing measures repeatably until the boards are held in a fixed, repeatable arrangement, and the same printed set covers both builds: the radar front carries mounts for the OPS243 and the IWR6843, so an OPS-only build prints the same parts and leaves the IWR mounts empty.

The older IARC case page describes the housing this replaced. It is kept for existing builds; do not print it for a new one.

Verify: the unit sits square behind the ball, and nothing shifts when you pick it up and set it down again.

Optional extras

Any order, once the above works.

Add-on Guide Why
Inclinometer LIS3DH Compensates enclosure tilt so the IWR6843 angle stays honest if the unit is bumped
Battery Geekworm X1202/X1206 Portable operation with real telemetry and low-battery warnings
Simulators Connectors Stream shots to GSPro, OpenGolfSim, PAR-TEE, E6
Cloud sync Cloud sync Push filtered sessions to FlightWeb
Log shipping Observability Query sessions in Grafana Cloud

When something does not work

Start at the troubleshooting symptom index, which routes by what you are seeing rather than by which component you suspect.