Posts: 57
Joined: Sun Feb 17, 2013 1:51 pm

Re: Building a RPi based GIS Tablet

Sun Jul 05, 2015 1:21 pm

It's been a while, but I have been on a geek holiday to Shenzhen, checking out the factories and markeys etc. Great place, and a recommended geek place to visit.

Before I left, I painted the outside MDF wood surfaces of GIS-Pi in chrome yellow. I went to assemble it, then realised I should really paint the edges and insides as well. I am doing this to help water proof, or moisture proof the prototype unit. MDF does not take too well to water:
GIS-Pi - open - no batteries.jpg
GIS-Pi - open - no batteries.jpg (32.88 KiB) Viewed 746 times
I fitted a small 2W loud speaker that I picked up in the SEG market in Shenzhen.

To help reduce the RFI interfering with the GSP external antenna, I fitted an approx. 9cm x 9cm 0.3mm sheet of aluminium to the inside surface of the lid. This brought the error rate down from 11m to a more manageable 3.5m (9 Sat. being used out of 12 sat. in the sky). This still needs more testing, as I haven't tried covering the LCD ribbon cable with aluminium shielding.

With two sets of batteries, GIS-Pi now weighs in at 1516gm! Ouch, that's heavy!
GIS-Pi in full colour.2.jpg
GIS-Pi in full colour.2.jpg (23.95 KiB) Viewed 746 times

Posts: 2
Joined: Thu Dec 03, 2015 9:51 pm

Re: Building a RPi based GIS Tablet

Thu Dec 03, 2015 9:53 pm

Just wondering how well you were able to get it to geotag the pictures? Also did you try a more advanced camera beyond the pi cam? I am looking at doing a similar project for mapping of sort.

Posts: 57
Joined: Sun Feb 17, 2013 1:51 pm

Re: Building a RPi based GIS Tablet

Fri Dec 04, 2015 10:31 am

I just read the current Lat/Long from the Adafruit Ultimate V3. GPS and write the data into the JPEG via the picamera python module. Here is the relevant function:

def take_photo():
# take a photo using the RPi Camera, and add in GPS coordinates
GPSLAT = gpsd.fix.latitude
GPSLONG = gpsd.fix.longitude
GPSALT = gpsd.fix.altitude + .01 # fudge factor to get the int working correctly
GPSDOP = gpsd.fix.epx
GPSMODE = gpsd.fix.mode
# prep the data ready for PiCamera use
ALT = exif_format(GPSALT)
DOP = exif_format(GPSDOP)
LAT = exif_latlong_format(GPSLAT)
LONG = exif_latlong_format(GPSLONG)
# now take a photo
photofilename ="_%Y-%m-%d_%H%M.jpg")
with picamera.PiCamera() as camera:
camera.exif_tags['IFD0.Copyright'] = 'Copyright (c) 2015 Parkview'
camera.exif_tags['IFD0.ImageDescription'] = 'GIS-Pi Photo'
camera.exif_tags['GPS.GPSDOP'] = DOP
camera.exif_tags['GPS.GPSAltitude'] = ALT
camera.exif_tags['GPS.GPSMeasureMode'] = str(GPSMODE)
camera.exif_tags['GPS.GPSLatitudeRef'] = exif_lat_ref(GPSLAT)
camera.exif_tags['GPS.GPSLatitude'] = LAT
camera.exif_tags['GPS.GPSLongitudeRef'] = exif_long_ref(GPSLONG)
camera.exif_tags['GPS.GPSLongitude'] = LONG
camera.resolution = (photo_width, photo_height)
# Camera warm-up time

Above I am using the python gpsd module to handle reading the data from the GPS unit.

While it is specific to the RPi camera, there are other bits of software that can do it for you, so you could use other cameras. I think with a bit of googling, you will find other examples.

Posts: 1
Joined: Mon Apr 22, 2019 5:08 am

Re: Building a RPi based GIS Tablet

Mon Apr 22, 2019 5:14 am

Hi Parkview
This is a long shot since it appears you have not been active for 2 years but I am really interested in doing something similar to your tablet. Is your code open source? If not, would you be able to explain me how you imported a georeferenced image and defined waypoints manually on it in your raspberry pi?
Thanks a lot in advance!

Posts: 57
Joined: Sun Feb 17, 2013 1:51 pm

Re: Building a RPi based GIS Tablet

Sun May 12, 2019 4:06 am


yes, I am still around. Sorry about the delay, I am in China and its difficult to receive email. I haven't done any further work on another version yet.

The code isn't open source per se, as it's embarrassing written. I don't have the code with me, but I can look it up and post some snippets later in June 2019 when I am back home.

In the mean time, I think I used a Python based shapefile module and wrote some functions to help with the processing. At the time, I was impressed by how (relatively) easy it was to work with and display geo-images, then overlay location markers etc.



Return to “Automation, sensing and robotics”