OpenIPC — open digital FPV (for later)

OpenIPC — open video link. We are looking at it. We are not buying it now.
We were digging into the O4 Pro and kept hitting the same word: OpenIPC. Open firmware. No DJI account. Your own ground station. Exactly the kind of rabbit hole where you spend an evening — and suddenly wonder if you ordered the wrong air unit.
Reality check: the O4 is (almost) on the way. Get that working first. Keep OpenIPC for later — a second video path, or if we ever really want off the closed chain. This post is mostly: what it is, why it stays interesting, and why we are not rebuilding the project around it.
What OpenIPC actually is
OpenIPC has been an open embedded-video platform since 2019. Three layers you often see together:
- Camera firmware — a Buildroot OS for dozens of SoCs (HiSilicon, Goke, SigmaStar, Rockchip, …). No abandoned vendor firmware that dies after two years.
- Low-latency FPV link — video over Wi‑Fi broadcast (wfb-ng / Wireless Framebuffer). Claim on supported hardware: around ~30 ms glass-to-glass. That number depends hard on MCS, FEC, and antennas — not magic.
- Tools — e.g. Configurator, msposd (MSP DisplayPort OSD), PixelPilot (Android decode).
Core idea: hardware that answers to you. No cloud subscription. No “server dies → camera is junk”.
Wiki (FPV): OpenIPC wiki — FPV general.
How it sits in a typical FPV stack
Our radio stays ELRS. OpenIPC is video (plus optional telemetry/datalink). Not a stick-link replacement. I mixed that up for a moment — “open FPV” sounds like everything. It is the video chain.
Camera board (OpenIPC + Majestic streamer)
↕ MSP DisplayPort UART (msposd)
Pixhawk / ArduPilot
↕ air: wfb-ng (Wi‑Fi broadcast + FEC)
Ground station (Radxa / SBC / PixelPilot Android)
→ goggles / monitor / recording
What we like: same DisplayPort family as our O4 OSD plans (SERIALn_PROTOCOL=42, OSD_TYPE=5). And room to experiment without buying a full DJI goggles kit first.
Why it is also hard (for us, now)
Open is nice. DIY is work.
Flashing, keys (drone.key / gs.key), FEC/MCS, antennas — more than “DJI Assistant → link”. RF lives on Wi‑Fi bands (2.4 / 5 / 6 GHz): EU/NL rules, plus real interference risk with ELRS 2.4 or home Wi‑Fi. A ground station you build yourself will not feel like Goggles 3. Image quality depends on sensor/SoC; O4 Pro wins on polish (1/1.3″, 4K/120, D-Log M). Support is community + docs — less “store + warranty”. And we already have scarce UARTs for OSD (not TELEM1/2).
Short: interesting. Not free in time.
OpenIPC vs our O4 choice
Same DisplayPort idea. Different trade-offs. DJI camera history: fpv.wtf post — timeline.
| DJI O4 Pro (now) | OpenIPC (later) | |
|---|---|---|
| Now | Ordered / path | On the radar only |
| Latency | Very low, polished | ~30 ms claim, depends on MCS/FEC |
| Image quality | Top for FPV content | Depends on sensor/SoC |
| Ground | DJI goggles (3 / N3) | Own GS / PixelPilot |
| OSD | Native DisplayPort | msposd DisplayPort |
| Lock-in | High (O4 ecosystem) | Low (open) |
| Time to working | Shorter | Longer (DIY) |
If we do it later
Deliberately later. Not needed to fly safely with what we have now.
- Pick a known FPV board (community-supported SoC + Wi‑Fi NIC).
- Flash OpenIPC FPV image. Share wfb keys with the ground station.
- UART to Pixhawk → msposd + ArduPilot DisplayPort (same family as native OSD).
- Ground: Radxa or PixelPilot. Tune latency/FEC. Respect EU channels.
- Leave ELRS alone. Separate antennas (RF).
That belongs on the later backlog as an alternate video path. Param progress: ArduPilot settings.
Sources
Read next
- O4 Air Unit Pro
- O4 install
- fpv.wtf & native OSD + DJI timeline
- ArduPilot settings progress
- DJI Goggles 3
Choice log
We stuck with O4 Pro + goggles. OpenIPC stays on the radar as an open fallback / second path — not buying until the build we are finishing now flies safely. Useful to know; no reason to reopen the box.
Photos
