Pirate Maps

Experiments with portable maps on the Raspberry Pi

Ian Turton, Astun Technology Ltd.

[email protected]

[email protected]

@ijturton

Meet Pip the Pirate

Pip has a problem...

He and his crew are very forgetful and very poor cartographers.

So they can't always find their treasure

Pip's Requirements

Pip needs a GIS

Pip needs some maps

So, Pip is happy?

No! His data plan is killing him:

Every tile comes over the satellite!

Also he can't share his maps with the crew.

Caching

Pip realises that most tiles don't change (very often) and he could update when he was in port to save roaming charges.

Software Needs

Remember Pip is still broke (and he has the phone bill still to pay).

Pip after some searching chooses MapProxy.

Other Software needs

Pip also needs to be able to store his routes and other useful information (where he buried the treasure).

He picks GeoServer to provide a WFS-T service to QGIS with PostGIS to store his data.

Hardware Needs

At first Pip, thinks he will use his laptop to store the cache. But then other crew members can't access the maps when he has shut it down.

As Pip is (still) broke he looks for a cheap computer.

He could get...

Which System on a Chip?

Pip needs:

Raspberry Pi

By Evan-Amos - Own work, Public Domain,

Raspberry Pi 3

Install the Software

sudo apt-get install python-imaging python-yaml libproj0
sudo apt-get install build-essential libjpeg-dev zlib1g-dev
     libfreetype6-dev
sudo -H pip install Pillow
sudo -H pip install MapProxy

sudo apt-get install oracle-java8-jdk unzip
wget http://sourceforge.net/projects/geoserver/files/GeoServer
     /2.11.1/geoserver-2.11.1-war.zip
unzip geoserver-2.11.1-war.zip
sudo cp geoserver.war /var/lib/tomcat7/webapps

Add Apache

sudo apt-get install apache2
sudo apt-get install apache2-dev
sudo apt-get install python-dev
wget https://pypi.python.org/packages/c8/d5/...
     /mod_wsgi-4.5.17.tar.gz
tar xvzf mod_wsgi-4.5.17
./configure
make
sudo make install

Fill the Cache

Warning

If you get a disk full message when df -h shows you have lots of space left try df -ih.

It is very easy to run out of inodes default is 15M - you need at least 16M

Connect QGIS

Set up WFS-T

Further Hardware

For full resilience add a solar panel and battery pack.

Also can add a VGA or small video screen, USB keyboard & mouse.

For bonus tracking it is easy to add a GPS chip to the Raspberry Pi and track the boat directly into the PostGIS database.

screen gps

Pip's FOSS4G Journeys

Conclusions

A Raspberry Pi:

Who could use this?

The End

Slides are at http://www.ianturton.com/talks/pirates-foss4g/index.html

Ian Turton, [email protected], twitter ijturton

SpaceForward
Right, Down, Page DownNext slide
Left, Up, Page UpPrevious slide
POpen presenter console
HToggle this help