Find a file
nathan 57686fc8b4 map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow)
Former-commit-id: fdd12fece3 [formerly 87b04ceb9008fabd80258f5c979b9d238411e748] [formerly cd38a9b42c4973e454f8d7b7208539c7bcc6495e]
Former-commit-id: c770542b274873228b4eb8bf5cff3210a8876e84
Former-commit-id: db0f8a35610270ed4b381463c8cc4c83a56f5726
2020-03-01 21:17:12 -08:00
font map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
map_conversion map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
old_hw_build map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
rtlsdr directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
.gitignore fixed issues with selected plane label, can now select off screen plane 2020-02-17 22:47:42 -08:00
android_notes changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
anet.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
anet.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
defs.h geography renders to a seprate texture, only updates when moved 2020-02-17 22:19:45 -08:00
draw.c changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
draw.log.REMOVED.git-id directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
dump1090.h moving everything out of dump1090.h and interactive.c 2019-09-08 23:23:38 -05:00
dump1090.log.REMOVED.git-id directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
font.c moving everything out of dump1090.h and interactive.c 2019-09-08 23:23:38 -05:00
init.c removed threading holdovers from dump1090. started working on android build (not working yet). map drawing now resumes next frame if frame times out 2020-02-18 15:37:41 -08:00
input.c geography renders to a seprate texture, only updates when moved 2020-02-17 22:19:45 -08:00
interactive.c removed threading holdovers from dump1090. started working on android build (not working yet). map drawing now resumes next frame if frame times out 2020-02-18 15:37:41 -08:00
list.c fixed message rates and plane count 2019-09-08 23:52:09 -05:00
magma.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
Makefile changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
mapbox_testing basic label physics setup 2019-09-15 19:54:06 -05:00
mapdata.c map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
mapdata.h changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
mode_ac.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
mode_s.c.REMOVED.git-id directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
monokai.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
monokai.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
net_io.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
parula.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
parula.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
planeObj.c basic label physics setup 2019-09-15 19:54:06 -05:00
README.md changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
status.c map quadtree in progress 2020-01-19 22:22:58 -08:00
structs.h changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
TODO.md changed doubles to float. wrote out mapdata.bin and read in, this is still hacky, but compiles faster now 2020-02-26 22:44:30 -08:00
view1090.c map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
view1090.dsp directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
view1090.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
view1090.REMOVED.git-id map conversion in python directly from svg to c array bin file, with bash script. File cleanup (BFG to follow) 2020-03-01 21:17:12 -08:00
winstubs.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00

#spidr1090

###INSTALLATION

Tested and working on Ubuntu 18.04, Raspbian Stretch, Buster

  1. Install SDL and RTL-SDR libararies
sudo apt-get install libsdl2-dev libsdl2-ttf-dev libsdl2-gfx-dev librtlsdr-dev
Note: On Raspbian the SDL2 package requires X to be running. See the Raspberry Pi section for notes on running from the terminal and other improvements.
  1. Download and build spidr
cd ~
git clone https://www.github.com/nmatsuda/spidr
cd spidr
make clean; make
  1. Download and build dump1090
cd ~
git clone http://www.github.com/MalcolmRobb/dump1090)
cd dump1090
make clean; make

4. Run

~/dump1090/dump1090 --net cd spidr ./view1090 --fullsceen

Runtime Options

--server [domain name or ip] Specify a dump1090 server. Renamed from the view1090 "--net-bo-ip-addr" argument --metric Display metric units rather than imperial.

--screensize [width] [height] Specify a specific resolution to pass to SDL_RenderSetLogicalSize, otherwise use resolution of display --uiscale [scale] Scale up UI elements by integer amounts for high resolution screen --fullscreen Render fullscreen rather than in a window

TODO

  • build for ios and android
  • menu system (toggles for UI elements)
  • map system (automatically load open source)
  • separate fully from view1090 (which interface?)

###HARDWARE

Right now, Pixel 2 is $109 on Amazon (https://www.amazon.com/Google-Pixel-64-Black-Refurbished/dp/B0787V183F). This significantly outperforms a rpi4.

best option seems to be pi4 + pijuice zero (w/ rewired i2c) + hyperpixel 4. RTLSDR (stratux) sticks down or needs u shaped adapter. For future tuner, need to test audio phat w/ little speaker, i2c knob, etc.

Notes: Pi 3b+ and below are a little underpowerd for unoptimized map drawing Pi 4 is smooth, may have USB issues with RTLSDR? Up squared is good, but large Up Core may be fine but bad connection options?

PiJuice is by far best battery option. FCC/CE certified!

Need to test stratux low power dongles. 987Mhz?

Waveshare 4.3" HDMI(B) and 5.5" AOLED are both very good, a little too large for handheld. Uses a lot of power, around 500ma for the 4.3", the AMOLED scales by the overal screen brightness. Pimoroni Hyperpixel 4.0 is the right size, but takes over default I2C pins so conflicts with PiJuice, unless some pin remapping. Also lower power, around 150ma Adafruit PiTFT 2.8" capacitive touch is ok, but a little small. Not sure about power draw. Docs claim no multitouch?

####Pi Zero Version

Part Link Cost
Raspberry Pi Zero W $10
Adafruit 2.4" PiTFT Hat (https://www.adafruit.com/product/2455) $35
NooElec Nano3 SDR $28
Adafruit GPS Hat (https://www.adafruit.com/product/2324) $45
Antenna
USB Jack
MicroSD Card
Total: $118+

####Battery Options (https://en.wikipedia.org/wiki/List_of_battery_sizes) Portrait Orientation: 18500 Batteries (18mm x 50mm), ~1000-2000mAh ea. The Pi Zero configuration consumes are 500mAh

Landscape Orientation 18650 batteries (18mm x 65mm). ~2200-3500mAh ea. Adafruit pack + PowerBoost Charger, ~$40 Anker PowerCore 10000, ~$25

Other options external recharger (maybe cheaper and smaller?) along with 18500/18650

Some 18500 / 18650 include current protection inside, such as: http://www.ebay.com/itm/2-x-Panasonic-NCR-18500-2000mAh-LI-ION-RECHARGEABLE-BATTERY-PCB-button-top-case-/391378348412?epid=1830264923&hash=item5b1ff7a97c:g:ePgAAOSwFqJWswnj, otherwise would require external protection circuit to be used in parallel.

####Pi 3 Version This gets you a slightly bigger screen, and slightly better performance using the SDR Smart rather than the Nano 3, but requires a ton of annoying port/header clipping and desoldering.

Part Link Cost
Raspberry Pi 3 $35
Adafruit 2.8" PiTFT Hat https://www.adafruit.com/product/2423 $45
NooElec SDR Smart $20
GlobalSat MicroGPS Dongle (https://www.amazon.com/GlobalSat-ND-105C-Micro-USB-Receiver/dp/B00N32HKIW/ref=sr_1_3?ie=UTF8&qid=1505829420&sr=8-3&keywords=gps+dongle) $30
Antenna
USB Jack
MicroSD Card
Total: $130+

alt screen https://www.amazon.com/3-5inch-RPi-LCD-Directly-pluggable-Displaying/dp/B01N48NOXI/ref=sr_1_26?ie=UTF8&qid=1505871836&sr=8-26&keywords=pi+3.5%22+tft, $30 instead of 45, larger, not cap touch

####Battery Options

Recommended: PiJuice

18650 batteries (18mm x 65mm). ~2200mAH ea. Adafruit pack + PowerBoost Charger, ~$40 http://www.ebay.com/itm/3-7-volts-6400-mAh-1S2P-18650-Li-Ion-Battery-Pack-PCB-protected-Panasonic-Cells-/221923032745?hash=item33aba4bea9:g:0-IAAOSw14xWLSr2