Find a file
nathan e78f3c4e0f more c cleanup and label physics adjustments
Former-commit-id: 0915c6c04f958bbf233b02981320be626aae7d31
Former-commit-id: d63cf3baf92d2b35e462b324ce47bea8225ed39a
2020-03-20 22:08:40 -07: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
old_hw_build directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
rtlsdr directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
.DS_Store builds and runs 2020-03-10 16:56:59 -07:00
.gitignore builds and runs 2020-03-10 16:56:59 -07:00
Aircraft.cpp more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
Aircraft.h more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
AircraftList.cpp more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
AircraftList.h more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07: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 begin conversion to c++. modified existing c files to compile with g++ 2020-03-07 13:19:49 -08:00
anet.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
AppData.cpp removed defs.h and structs.h 2020-03-18 22:38:00 -07:00
AppData.h more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
dump1090.h massive refactor to c++ in progress, doesn't build now 2020-03-07 17:22:20 -08:00
getmap.sh map loading fixes 2020-03-01 22:40:11 -08:00
Input.cpp more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
Input.h removed defs.h and structs.h 2020-03-18 22:38:00 -07:00
interactive.c massive refactor to c++ in progress, doesn't build now 2020-03-07 17:22:20 -08:00
magma.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
Makefile all map and drawing is now c++ 2020-03-18 22:22:59 -07:00
Map.cpp all map and drawing is now c++ 2020-03-18 22:22:59 -07:00
Map.h all map and drawing is now c++ 2020-03-18 22:22:59 -07:00
map1090.cpp more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
map1090.REMOVED.git-id more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
mapbox_testing basic label physics setup 2019-09-15 19:54:06 -05:00
mapconverter.py map loading fixes 2020-03-01 22:40:11 -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 massive refactor to c++ in progress, doesn't build now 2020-03-07 17:22:20 -08:00
monokai.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
monokai.h removed defs.h and structs.h 2020-03-18 22:38:00 -07:00
net_io.c massive refactor to c++ in progress, doesn't build now 2020-03-07 17:22:20 -08:00
parula.c directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00
parula.h begin conversion to c++. modified existing c files to compile with g++ 2020-03-07 13:19:49 -08:00
README.md some readme updates and cleanup 2020-03-06 21:49:40 -08:00
run_view1090.sh builds and runs 2020-03-10 16:56:59 -07:00
TODO.md cleaning up unused 2020-03-02 22:22:35 -08:00
View.cpp more c cleanup and label physics adjustments 2020-03-20 22:08:40 -07:00
View.h removed defs.h and structs.h 2020-03-18 22:38:00 -07:00
view1090.bak massive refactor to c++ in progress, doesn't build now 2020-03-07 17:22:20 -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
winstubs.h directory cleanup of old hw stuff (retained in subdir 2019-09-08 15:06:42 -05:00

#map1090

###BUILDING

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 process map data Until more comprehensive map source (e.g., Mapbox) is integrated, map1090 uses the lat/lon SVG files from https://www.mccurley.org

The getmap.sh pulls the svg file for the contiguous 48 US states and produces a binary file for map1090 to read.

./getmap.sh

###RUNNING

  1. Start dump1090 (http://www.github.com/MalcolmRobb/dump1090) locally in network mode:
dump1090 --net
  1. Run map1090
./view1090 --fullsceen

map1090 will open an SDL window set to the resolution of your screen.

###RUNTIME OPTIONS

--server [domain name or ip] Specify a dump1090 server. Renamed from the view1090 "--net-bo-ip-addr" argument --port [port number] Specify dump1090 server port. Renamed from the view1090 "--net-bo-port" 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

###HARDWARE NOTES

map1090 is designed to be portable and work on a variety of systems, however it is intended to be used on a handheld device.

The software was originally develped for Raspberry Pi devices, and it is currently optimized for the Raspberry Pi 4 with the following configuration:

If running as a front end only, with a separate dump1090 server, the best option is to use an Android phone, such as the Pixel 2, which significantly outperforms a Raspberry Pi 4.

map1090 has been tested on other boards such as the UP Core and UP Squared, but these boards have significantly poorer performance than the Raspberry Pi 4 with less software and peripheral support, so they are not recommended. With low resolution maps the software will run on these boards or even a Raspberry Pi Zero, so these remain options with some tradeoffs.

Of course, a variety of other devices work well for this purpose - all of the development so far has been done on a touchscreen Dell XPS laptop.