Open-source ADS-B Receiver & Flight Data Box
Pilot Kit Box receives nearby ADS-B / Mode-S traffic and renders it on a 360° traffic radar and G1000-style PFD, fuses BNO085 attitude with BMP388 barometric altitude and GT-U8 GPS, records every flight to LittleFS or MicroSD without an internet connection, and streams GDL90 traffic and own-ship reports to the Pilot Kit App over BLE — all from a single open-source hardware build with a fabricated carrier PCB and 3D-printed enclosure at around $50.
Four roles in one open box
A single ESP32-P4 build covers situational awareness, flight recording, backup instrumentation, and deep Pilot Kit App integration — all inspectable, all open-source.
Nearby traffic awareness
Receives 1090 MHz ADS-B / Mode-S signals via the on-board IFA antenna, tracks up to 64 targets at once, resolves each aircraft against an embedded identity database, and renders them on a 360° traffic radar with relative altitude.
Local flight recording
Writes raw flight and traffic data simultaneously via UART, rotating LittleFS or MicroSD on-device storage (about 1 GiB retention), and BLE raw streaming — no internet connection or cloud dependency required.
Backup PFD & sensors
Drives a 2.4″ transflective display at ~30 FPS with a G1000-style attitude indicator, heading/HSI, BMP388 barometric altitude tape with adjustable QNH, GPS ground speed, and vertical speed.
Pairs with Pilot Kit
Streams GDL90 Ownship, Traffic, Heartbeat, Raw, and Time Sync over BLE GATT, so the Pilot Kit App can pull traffic, own-ship state, and precise timestamps for richer logs and replay.
Open hardware reference design
A fabricated 120×80 mm carrier PCB integrates the ESP32-P4, RTL-SDR, GPS, IMU, barometer, and an on-board 1090 MHz IFA antenna on a single board, paired with a 3D-printed aviation-style enclosure and faceplate — anyone can source parts, inspect every schematic, and build or modify the design freely.
v0.8.0 carrier PCB fabricated and assembled; 3D-printed enclosure and faceplate prototype verified.
- Main MCU
- ESP32-P4NRW32 (32 MB Flash, 32 MB PSRAM) + ESP32-C6 (Wi-Fi 6 / BLE 5)
- SDR
- RTL-SDR FC0013, USB 2.0 HS, 1090 MHz / 2 MSPS IQ8, on-board IFA antenna
- Display
- TK024F3036 / ST7789, 2.4" 320×240, transflective SPI
- IMU
- BNO085, 100 Hz 9-axis attitude fusion
- Barometer
- BMP388, barometric altitude & vertical speed, adjustable QNH
- GNSS
- GT-U8 (ATGM336H), GPS / BeiDou, PPS + RMC time discipline
- Controls
- 4 tactile buttons (TARE / MODE / UP / DOWN)
- Connectivity
- BLE GATT (GDL90 Ownship / Traffic / Heartbeat / Raw), UART, MicroSD
Sixteen features already implemented
From raw IQ capture through Mode-S decode, display rendering, and BLE streaming — all implemented and running on the prototype hardware today.
ADS-B reception & decode
- USB-HS RTL-SDR direct drive at 1090 MHz / 2 MSPS IQ8
- dump1090-derived Mode-S decode with CRC filtering
- CPR global position fix, up to 64 targets aggregated
- On-board 1090 MHz IFA antenna on the carrier PCB
Display & UI
- G1000-style PFD at ~30 FPS with HSI forward-traffic overlay
- 360° traffic radar: heading-up / north-up, 2/5/10/20 NM ranges
- ADS-B list page with detail pane
- MODE cycles PFD → TRAFFIC → ADS-B LIST → SETTINGS → ABOUT → DIAG
Attitude & sensors
- BNO085 100 Hz 9-axis attitude fusion
- BMP388 barometric altitude & vertical speed, adjustable QNH
- GT-U8 GPS / BeiDou with PPS + RMC time discipline
- Scrollable live DIAG page with GPS SNR bars and QNH
Connectivity & data
- BLE GATT: GDL90 Ownship / Traffic / Heartbeat / Raw / Time Sync
- UART + rotating LittleFS / MicroSD + BLE raw three-way recording
- About 1 GiB log rotation with guarded formatting
- iOS Current Time Service auto-sync
Around $50 in commodity parts
All components are off-the-shelf modules available from major suppliers. The v0.8.0 baseline adds BMP388 barometer and GT-U8 GPS. Actual cost may vary slightly depending on shipping, supplier, and regional pricing.
Complete prototype reference BOM
~$50
- Waveshare ESP32-P4-WIFI6 Main board with ESP32-P4NRW32 + ESP32-C6, ~$11.40
- BNO085 IMU module 100 Hz 9-axis attitude fusion module, ~$11.40
- BMP388 barometer Barometric altitude & vertical speed, added in v0.8.0, ~$1.95
- GT-U8 (ATGM336H) GNSS GPS / BeiDou positioning, added in v0.8.0, ~$3.75
- RTL-SDR FC0013 dongle USB 1090 MHz receiver for ADS-B / Mode-S, ~$1.50
- 2.4" transflective display TK024F3036 / ST7789 320×240 SPI panel, ~$5.70
- 3.7V 10000mAh battery + Type-C charging module Portable LiPo power and regulated 5 V supply, ~$4.35
- Carrier PCB + 3D-printed enclosure + RF adapters JLCPCB board, printed case & faceplate, IFA antenna path, ~$10
Pairs natively with the Pilot Kit App
Connect the Box to your phone over BLE in seconds. The Box streams GDL90 Ownship, Traffic, Heartbeat, and Time Sync over BLE GATT, and the Pilot Kit App subscribes automatically. Own-ship position, nearby traffic, barometric altitude, and precise timestamps flow continuously back to the App, enabling richer flight logs, full replay, deeper analysis, and easy sharing.
- GDL90 Ownship Traffic Heartbeat Time Sync
Inspectable, affordable, and yours to extend
Every layer of the stack — from IQ capture to ADS-B decode to PFD rendering — is MIT-licensed and open for inspection, modification, and contribution.
Low cost
A ~$50 complete prototype BOM versus $200–700 for comparable commercial ADS-B receivers makes hardware accessible to every builder and student pilot.
Open implementation
The full SDR → Mode-S decode → state fusion → display chain is MIT-licensed and on GitHub — read it, run it, modify it, or fork it for your own project.
Tight Pilot Kit integration
Captured traffic and flight-state data streams directly to the Pilot Kit App over BLE GATT, giving every flight richer logs, accurate replay, and easy cloud sharing.
Room to grow
Wi-Fi GDL90 output (ForeFlight / Garmin Pilot), OTA A/B firmware updates, and enclosure iterations are all on the roadmap — the platform is designed to keep evolving.
An open alternative to Stratux, Sentry, Garmin GDL, and uAvionix ping — but inspectable, low-cost, and DIY-friendly.
Safety & certification boundary
Pilot Kit Box is an open-source prototype and situational-awareness device.
This repository does not represent FAA, EASA, CAAC, TSO, or other airworthiness certification.
Do not use it as a primary flight instrument, backup flight instrument, navigation source, or collision-avoidance system.
Flight decisions must remain based on certified avionics, installed instruments, visual scan, and applicable regulations.
Frequently asked questions
Open-source, low-cost, built to grow with Pilot Kit
Star the repo, follow along as the prototype evolves, or flash the firmware to your own hardware today.