# planeMapper

ADS-B radar display on a Waveshare 7.3" 6-colour e-ink screen, driven by a Pi 5 + RTL-SDR dongle.

## Project goal

Render a live ~100nm radius radar map centred on home airfield, with aircraft positions, headings, altitudes, and callsigns. Refresh every 60 seconds.

## Stack

- **dump1090** — ADS-B decoder, JSON feed at `http://localhost:8080/data/aircraft.json`
- **Python + Pillow** — fetches JSON, renders map image
- **OpenStreetMap tiles** — base map, pre-cached locally
- **Waveshare Python library** — SPI driver for the e-ink HAT

## Hardware

- Raspberry Pi 5
- Nooelec NESDR Smart v5 RTL-SDR dongle (SMA, 0.5PPM TCXO)
- FlightAware 1090MHz antenna (5.5dBi)
- Waveshare 7.3" 6-colour e-ink HAT (E-Ink Spectra 6, 40-pin GPIO, SPI, driver board included)

## Design decisions

- Aircraft icons: rotated triangle/arrow aligned to heading, short track line behind
- Colour-coded by altitude band (6 colours available on display)
- Callsign + altitude label per aircraft
- Home airfield marked on map
- Potential: differentiate commercial/GA/helicopter, highlight own squawk code

## Full spec

See README.md in this directory.
