1. Because not all paparazzis are evil!

This manual is available also as PDF at this link.

Geopaparazzi is a tool developed to do very fast qualitative engineering/geologic surveys.

Even if the main aim is in the field of surveying, it contains tools that can be of great use also to OpenStreetMappers as well as tourists that want to keep a geo-diary.

01 nexus5
Figure 1. Geopaparazzi on a nexus 5

The main aim of Geopaparazzi is to have a tool that:

  • fits in any pocket and can be always at hand, when needed

  • gives the possibility to take georeferenced and possibly orientated pictures during a survey, with further possibility to import them into GIS applications like gvSIG

  • is able to easily exploit an internet connection, if available

  • is extremely easy to use and intuitive, providing just few important functionalities

The main features available in Geopaparazzi are:

  • georeferenced notes

  • georeferenced and oriented pictures

  • gps track logging

  • form-based data surveys

  • easy export of collected data

  • a map view for navigation with support for raster tiles and spatialite vector data

Geopaparazzi is available only for the Android Operating System.

2. Installation

2.1. From Google Play

  • connect your Android device to internet

  • open the Play Store

  • type geopaparazzi within the Search textbox

02 google play
Figure 2. Google Play Store presents 2 versions of Geopaparazzi.
  • select the first app (not Geopaparazzi 3)

03 geopaparazzi4
Figure 3. The right choice: Geopaparazzi (not Geopaparazzi3)
  • follow installation procedures

2.2. Manual Installation

The following example explains how to install version 4.4.0. We suggest to always use the latest version available.

  • from your devices visit the geopaparazzi releases page making sure to load the desktop site (not the mobile site).

  • select the releases tab and pick the last available release:

04 github
Figure 4. Geopaparazzi github page.
  • select the latest release apk download link:

05 github releases
Figure 5. The releases panel.
  • the apk installation file will download on the device:

06 github download
Figure 6. The download dialog.
  • and the user will be prompted to open the file:

07 github open
Figure 7. The download dialog.
  • opening the file will propose the installation:

08 install
Figure 8. The download dialog.
  • select install and follow the installation procedure.

3. The Main View

Once you launch Geopaparazzi, the dashboard appears.

All the features that need to be quickly accessed, such as toggling GPS on and off, creating a note or taking a picture, as well as visualizing the current position on a map, are accessible from the dashboard.

00 dashboard
Figure 9. The dashboard of geopaparazzi.

From the dashboard the following primary functions can be accessed:

  • the action bar functions

  • take notes

  • view or modify the project metadata

  • take a GPS Track

  • switch to Map View

  • import Data

  • export Data

3.1. Action Bar

The action bar, from right to left, presents the following functions:

  • the main menu

  • the general settings button

  • the gps and map information button

The info button shows information about the current selected map and the status of the gps. If the gps has acquired a fix, information about the position is given:

10 info button
Figure 10. Information shown when tapping the info button.
The gps status icon can be of the following colors: RED if the GPS is not switched on, ORANGE if the GPS is on but no fix was acquired, GREEN if the GPS is on and has fix, but no log is being recorded and BLUE if the GPS is logging.

3.2. The panic button

At the bottom of the view the orange Panic Button is visible. Once pushed it leads to the panic! view, which presents two buttons:

  • the PANIC! button

  • the just send position button

20 panic
Figure 11. The panic panel.

The panic button sends a request for help sms with the last available GPS position to a phone number that can be configured in the [settings] of geopaparazzi.

If no number is configured, the system sms dialog opens up with a precompiled message and the user will have to select the contact to which to send the message:

21 panic sms
Figure 12. The system sms dialog

The just send position button opens up the sms dialog directly filling in the position without any request for help message. It is meant for quick sending the current position via sms so that it can be opened from Geopaparazzi.

3.3. The dashboard buttons

3.3.1. Notes

Geopaparazzi supports 4 different types of notes:

  • text notes

  • picture notes

  • sketch notes

  • form-based notes

To access them you can tap on the first icon of the dashboard, the take notes icon. Once you tap on it, the take notes dialog appears:

03 notes
Figure 13. The view from which notes are taken.

The switch button at the top of the view gives the possibility to choose whether the note will be inserted in the current gps position (in case gps is on) or in the the center of the map (the crossfade).

At the right end of the actionbar the quick note buttons are placed. From left to right:

  • The Quick text note button, which opens a simple dialog, inside which the text note can be written. Want to save the note? Tap on the ok button. Want to trash it? Tap on the cancel button.

The position of the note is taken when the note view is opened, not closed, in order to have all the time needed to insert the text while moving.
04 textnotes
Figure 14. The simple text note dialog.
  • The Quick picture note button, which will launch the camera application that comes with your android system which gives lots of possibilities of customization of the images size, focus and so on. This has one drawback, which is the fact that we are not able to pick the azimuth of the camera shot at the exact moment it is taken. The azimuth is therefore recorded at the moment the camera application is closed. That means that to have a realistic azimuth, you need to take the picture and stay with the device in the same position of the snapshot until you have closed the camera app.

  • The Quick sketch note button, which allows you to draw on a small panel and save your sketch. One can change stroke style, color, and width. The sketch panel comes from the open source app Acrylic Paint.

05 sketchnotes
Figure 15. An example of taking sketch note.
Once a simple note has been saved, it can’t be modified.
Form based notes

Form based notes are complex notes that allow for better surveys. Some examples are available in the base installation of geopaparazzi.

The example button in particular shows all the possible form widgets available:

06 form based notes
Figure 16. An example of form based notes.

The notes can be saved and modified at any time.

To understand how to create forms, have a look at the section dedicated to [forms].

3.3.2. Project Information

The project view shows information about the project database.

It shows:

  • the database file name

  • the project name

  • the project description

  • project notes

  • creation and last closing date

  • the user that created the project

  • the user that last modified the project

Apart of the dates, that are set by the system, all data can be changed and saved through the save button.

07 project info
Figure 17. The project metadata view.

It is also possible to add additional metadata to the project information. The plus button at the right side of the actionbar openes an input dialog that allows to define a key, a labell and a value for the new metadata entry:

07 project info plus
Figure 18. The new metadata entry dialog.

3.3.3. Gps Logging

To start logging, the user simply has to push the logging button.

Once it is tapped, the user is prompted to insert a name for the log or to accept the one generated based on the current date and time ( log_YYYYMMDD_HHMMSS ).

It is also possible to attach the new log to the last created log by checking the box: Continue last log. In that case the proposed name of the log (or any user inserted) is ignored, since no new log is created.

08 start logging
Figure 19. The new log dialog. From here it is possible to continue the last log.

Once logging has started, the logging button will turn orange and the gps status icon blue.

09 logging on
Figure 20. The stop logging button with its red sign.

To stop logging, the same button is used. Once tapped, the user is prompted to verify the action.

3.3.4. Map View

The map view presents a map and a set of tools that can be used to navigate the map, make measurements or edit datasets. The various tools are presented in the section dedicated to the Map View.

12 map view
Figure 21. The map view.

3.3.5. Import

13 import
Figure 22. The import view.

Geopaparazzi supports the import of:

  • gpx datasets

  • bookmarks

  • WMS

  • mapurl configuration files for online tiles

  • default spatialite databases

  • geopaparazzi cloud projects

GPX

By tabbing on the GPX icon, the user is taken to a simple file browser.

16 import gpx
Figure 23. The simple geopaparazzi file browser.

The browser only shows folders and files with gpx extensions. On selection, the file is imported.

Bookmarks

Bookmarks can be imported from csv files that must be placed in the root of the sdcard and the name of which has to start with the part bookmarks and to end with the extension .csv.

Geopaparazzi will let the user select the files to import if more than one are available and load the bookmarks from there and import only those that do not exist already.

The format of the csv is: NAME, LATITUDE, LONGITUDE as for example:

Uscita Vicenza Est, 45.514237, 11.593432
Le Bistrot, 46.070037, 11.220296
Ciolda, 46.024756, 11.230184
Hotel Trieste, 45.642043,13.780791
Grassday Trieste,45.65844,13.79320
WMS

It is possible to import basemap configurations from WMS getCapabilities URLs.

16 import wms
Figure 24. The WMS dialog.

Once the getCapabilities URL is inserted and the refresh button is tapped, the list of available layers is presented. The selected layer is then imported in the list of available tile sources.

Mapurls

Since the creation of a mapurl configuration file for WMS services is complex, a small service has been created, that automatically generates mapurls for known services.

Once chosen the services query view appears:

14 mapurls
Figure 25. The TANTO mapurl service view.

If requested, the service will consider the device’s position to gather only dataset in that area. Also some minor text filters can be added.

An example with the gps placed in Italy is the following:

15 mapurls

The service can then simply be downloaded. It will install the mapurl inside your system. The user is prompted for a custom name to name the service after, else the original name will be used. Since the original name could be duplicated in different services, the prefix tanto_ will be added in that case.

This service is in an experimental state right now, but it works fairly well. If you experience problems, please report them at the homepage of the service.

The same link also contains instruction about how to suggest to suggest new WMS services.

Default databases

When tapping the default database import button, the user is asked to name the new database to create. Let’s use the default name proposed based on the current date and time:

19 mapsforge

The newly created database is editing ready and contains a layer of each type. Since it is a template db, the attributes table have been created as generic fields with names from field1 to field10. It is very generic and simple, but still of use when you have to quickly collect some data with attributes and have no database prepared..

3.3.6. Export

18 export
Figure 26. The export view.

Geopaparazzi supports the export to the following formats:

  • kmz

  • gpx

  • bookmarks

  • images

  • geopaparazzi cloud projects

KMZ

It is possible to export all collected data to kmz format.

KMZ is well known as it can be visualized in the 3D viewer Google Earth.

In the export:

  • the notes are placed as red pins having the first letters of the text content as label

  • the images are placed as yellow pins

  • the gps logs are visualized as tracks

GPX

The lines and notes data are exported to gpx, creating tracks and waypoints.

Bookmarks

Bookmarks can be exported to a csv file that has to be called bookmarks.csv and must be placed in the root of the sdcard.

Geopaparazzi will write to the file only those bookmarks that do not exist already in the csv.

Images

Since images are kept inside the database, this export is handy if the user needs to use the images inside a different software. In this case all the images of the project are exported inside a folder and a popup message shows the folder path.

4. The Main View Menu

The main presents the following options:

  • Select tile source: allows the selection of a map tile source to be used as base map

  • Create new project: this will create a new project on the sdcard. A timestamp based name is proposed to the user

  • Load existing project: gives the possibility to browse the filesystem to select an existing geopaparazzi project folder (the one with the database in it) to load it

  • GPS Status: opens a GPS status application to check on satellites visibility

  • Advanced: shows some advanced user options such as the application log or custom database queries

  • About: visualises the about page, which contains infos, links and acknowledgements

  • Exit: shuts down geopaparazzi properly. This is important, because geopaparazzi is meant to continue logging also in background. Therefore, if one uses the android home button to exit the app, it will continue to work in background, most probably draining your battery through GPS use.

01 menu
Figure 27. The main view menu.

4.1. Select tile source

From the main menu, when pushing the tile source button, the list of available tile sources are presented, divided by folder:

02 select tiles
Figure 28. The basemaps view.

Each map source has a name and a type description between brackets.

At the current time 4 types are supported:

  • Map

  • Mapurl

  • MBTiles

  • RasterLite2

The supported datasets section lists and describes all supported map types.

Through the button at the top of the view the user can filter the source types to show.

03 select tiles
Figure 29. The map type filter dialog, set to only show MBTiles sources.

which makes searching simpler when a lot of sources are present on the device.

04 select tiles

Basemaps can be loaded from the device storage through the two buttons at the bottom of the view. The right one allows to pick a single file to add it as a basemap, while the left one allows to bulk load a complete folder of maps.

4.2. Create a new project

When a new project is created, the user is prompted to insert a name for the new project file. This is the name that will be given to the database file that contains all data surveyed in Geopaparazzi.

05 new project
Figure 30. The new project input dialog.

Once the name is defined, an new empty database is created and Geopaparazzi is restarted and opened loading the new created project.

4.3. Load an existing project

Existing projects can be loaded using a simple file browser from within Geoapaparazzi. The Geopaparazzi project files are visualized with a different icon to help the user to choose the proper files.

4.4. GPS Status

The GPS status entry launches the open source application GPS test. The app shows the current status of the satellites fix and a skymap. This often helps to understand why the GPS is not working.

4.5. Exit

The exit button closes Geopaparazzi and stoppes any ongoing logging and sensor activity.

This might seem obvious, but it is important to note that this is the only way to properly close Geopaparazzi. Pushing the home button of the device will not close Geopaparazzi, which will continue any activity started. This is important, because it makes very long loggings possible even if interrupted by phone calls or other uses of the device.

Often users that ignore this, after pushing the home screen and thinking that Geopaparazzi has been closed, experience a faster battery drop, because of the active application in the background.

5. The Map View

The map view is the central view of the application. It can be used to view the current gps position overlayed on maps and vector datasets.

01 mapview
Figure 31. The map view.

The map engine comes from the mapsforge project.

The supported datasets section lists and describes all supported map types. Just to cite a few, one can view:

  • OpenStreetMap maps both when online (downloading new tiles) and offline (visualizing those that were cached during online mode)

  • mbtiles databases

  • local and remote TMS tiles

  • mapsforge vector files

5.1. Map view tools

The map view has a set of tools that can be exploited to interact with the map.

When first launched, the tools are already visible on the map. To have a cleaner mapview, the user can long-tap on the upper right menu button to toggle the visibility of the tools.

02 mapview tools off
Figure 32. The map view with disabled tools.

Available tools are:

  • Left screen side

    • add note (the same that is accessed from the dashboard) and list notes (long tap)

    • add bookmark and list bookmarks (long tap)

    • activate the gps log analizer

    • activate the measure tool

  • Right screen side

    • the context menu button

    • the zoom in and out buttons

  • Lower center

    • battery status

    • center screen on GPS position and GPS status button

    • editing tools

01 mapview
Figure 33. The map view with all map tools visible.

5.2. Map navigation

The navigation of the map is probably the most basic and important part.

  • pan: panning of the map, i.e. moving the map around is simply done by dragging the map with a finger. While panning, the current longitude and latitude of the map center are displayed.

29 pan coords
  • zoom: zoom in and out can be done in different ways. There are the zoom in/out buttons at the lower right part of the map. It is also possible to zoom in by double-tapping on the map. Zoom in and out can also be achived through pinch-zoom gestures.

  • center on gps: through the lower center button it is possible to center the map on the gps position. The button also shows the status of the GPS the same way as the icon on the main view’s action bar.

5.3. Add Notes

03 notes
Figure 34. The view from which notes are taken.

The add notes button opens the same notes view as the button on the dashboard. There is only once difference. Since notes can be added both in the gps position and in the middle of the map, to open the add note view from the dashboard, the GPS is required to have a fix.

Instead from the map view the user can open the add note view even without GPS signal, in which case he will be allowed to insert notes only in the map center position.

For further information about taking notes, visit the notes section.

5.4. The Notes List

The notes list shows all the available notes, both text and image notes.

03 noteslist1
Figure 35. The notes list view.

The icon on the right side of the actionbar allows the user to sort the notes by different modes:

  • None: inertion order

  • By Name and inverse: sorts the notes by their name

  • By Mapcenter distance and inverse: sorts the notes by the distance from the current mapcenter position

04 noteslist sortorder
Figure 36. The notes sort order dialog.

In the upper part of the view there is a textbox that helps to filter out a particular note based on its name.

04 noteslist filter
Figure 37. Notes can be filtered by text.

At the right side of the list 2 icon are available. The left one positions the map on the selected note’s position while the rigth one opens a menu:

05 note menu
Figure 38. The note menu.

From the note menu the user is able to:

  • edit form based notes or view simple notes

  • share the note through social networks

  • delete the note

  • use the current note as a filter. All notes with the same name will be visible.

  • access the submenu related to all notes

07 notes all menu
Figure 39. The submenu that considers all notes.

From the all-notes submenu the user can:

  • select all notes

  • invert the current selection

  • delete the selected notes

5.5. Add Bookmark

Bookmarks are in a layer on their own, that contains saved settings of the current map view. When a bookmark is added, the user is prompted to insert a name for the bookmark or leave the generated name based on the current time and date.

08 add bookmark
Figure 40. The add bookmark dialog.

When a bookmark is added, a small star is added on the map in the center of the screen.

Also the map bounds and zoom are saved. That way one can return to the scenario that the bookmark represents in any moment.

It is possible to tap on the bookmark to read its label.

10 bookmark open
Figure 41. A tapped bookmark.

5.6. The Bookmarks List

The bookmarks list shows all the saved bookmarks.

In the upper part there is a textbox that helps to filter out a particular bookmark based on its name.

The user has 4 options, as the icons on each bookmark entry shows:

  • go to the bookmark location (left icon)

  • edit the bookmark

  • delete the bookmark

11 bookmarks list
Figure 42. The list of bookmarks.

5.7. Gps log analysis tool

The log analysis tool allows to analyze the various positions of a gps log.

Once enabled, one can simply touch the screen near a gps log and information about the nearest log point will be shown. Also the color of the text will be the one of the currently queried log:

28 gps log analysis
Figure 43. The GPS log analysis tool.

5.8. Measure tool

Activating the measure tool puts the app in measure mode. This mode disables the ability to pan the map while enabling the possibility to draw a line on the map and measure the line drawn.

The approximate (the distance is calculated without considering elevation deltas and with the coordinate picking precision of a finger on a screen) distance is shown in the upper part of the map view.

When active, the measure tool has a red colored icon, when inactive the icon is green instead.

12 measure tool
Figure 44. An example of qualitative measurement on the map.

6. The Map View Menu

The map menu gives the possibility to access some additional map tools:

  • access the gps data list

  • access the spatialite data list.

  • toggle the scalebar

  • open the compass

  • toggle automatic centering on the gps position

  • center the view on the current base map (if possible)

  • go to a location

  • share the current position

  • view the data visible in the viewport in Mixare

  • import data from the underlying mapsforge map

13 map menu
Figure 45. The map menu.

6.1. Gps data list

The gps data list shows the data surveyed, both points and tracks.

14 gpsdatalist
Figure 46. The gps data view.

In the actionbar there are possibilities to select all, unselect all and merge selected logs. The first icon from left is the notes properties button. From there some properties of the notes can be set.

Notes can be visualized as icons or as circular shapes. The size, color and opacity can be customized by the user. This can be usefull in those cases in which many notes have to coexist in a small space for better readability.

It is also possible to show the label for the note and customize its size and halo.

15 notes properties
Figure 47. The notes properties view.

The list of gps logs gives the possibility to customize the logs. It is possible to change the visibility of the single track using the checkbox. The icon on the rigth side of each entry opens the gps log properties panel:

16 log properties
Figure 48. The gps log properties panel.

From the properties panel it is possible to:

  • change the name of the track

  • check the start and end date and time

  • update and read the track length

  • enter the track style panel to change stroke and fill

  • zoom to the first or last point of the track in the map view

  • chart the track. The chart has two axes, speed [km/h] on the left and elevation [m.s.l.] on the right.

17 chart log
Figure 49. The GPS log chart.
  • remove the track

6.2. Spatialite data list

The spatialite data list view holds the list of loaded spatialite databases. For each database its spatial tables are shown and each table can be made visible or hidden through the checkbox on each entry.

The rendering order can be changed through a combobox at the left side of each entry.

New databases can be added throught the 2 buttons at the bottom of the view, by single file or folder.

To remove a database longtap on its entry.

18 spatialite data list
Figure 50. The list of spatialite based data.

At the right part of each entry a menu is available, which allows the user to change the style and labelling of the features in the layer, as well as its stroke dash and zoomlevel visibility. It is also possible to zoom to a given layer extent.

6.3. Go to

The go to function has two possibilities:

  • go to coordinate

  • use geocoding and/or routing

19 goto1

In the go to coordinate panel it is possible to insert lat/long coordinates and navigate to the inserted point on the map view:

20 goto coord

Through geocoding it is possible to insert some address and find its location (uses google maps geocoding).

21 goto point

From the same panel it is possible to create a route from the current position to the inserted location.

The routing service used is OSRM.

Once the OK button is tapped, the route is calculated by the service starting from the current map center to the destination point. The route is then downloaded and placed in the gps logs tracks.

24 route rome
Figure 51. The fresh downloaded route from Bolzano to Rome.

6.4. Share position

The share position entry opens the usual sharing dialog of Android:

If for example telegram is chosen, the sent link will look like:

26 telegram

6.5. Import mapsforge data

The mapsforge tiles are generated on the device from a particular vector format. This means that there are information available in the database. Problem is that, very very simply put, the information contained is extracted differently at different zoom levels, because in fact the library and the format have been done that way to allow best rendering performance.

But still it is possible to extract almost everything we see, which is nice.

Let’s see how this works. For this to work it is mandatory that the loaded background map is of type "map". Assume you have a job to do, are out in the field and want view information overlayed on the ortofoto pictures from the local WMS service.

Well, the map file you get from mapsforge looks like the following:

27 mapsforge1

Once the import mapsforge data has been chosen, its panel appears:

27 mapsforge2

From the view you can see that 2 types of data can be imported: points and ways.

6.5.1. Points

Since the points are often visible on a different zoomlevel then the current, also 3 zoomlevels below the current are investigated to extract data and double points are not considered. So if you start this at zoomlevel 16, you will also get 17, 18, 19. Since the same are at a different zoomlevel will have many more tiles, about 10000 tiles are read to import the data.

You can add a filter text to import only tags containing a given text or exclude all those containing the text.

Points are imported in the current projectdatabase and saved as forms notes containing all the values Openstreetmap has. As such they can also be edited.

All imported notes have a (MF) in their name. That is done so one can quickly select and remove them. Believe us, that is a feature you want to have since such imports can generate very crowded notes lists.

27 mapsforge10
Figure 52. The notes list after a mapsforge import.

6.5.2. Ways

Many types of ways are stored in the mapsforge map files and many of them are actually related to areas.

The user can choose to import:

  • ways: roads, railways, cableways and similar

  • waterways: lines that represent water

  • contours: contour lines if they are available

Since these data are heavy, the data are imported into a dedicated spatialite database. A database for mapsforge extracted data is automatically created if there is none present. You will find a database named mapsforge_extracted.sqlite always present in your maps folder. And you will find 3 layers always present in the spatialite data layers: osm_waterlines, osm_roads and osm_contours.

27 mapsforge3
Figure 53. The mapsforge database and layer that host imported data.

Just select the data you want to import and push the start button. In the case you selected all data types, you should see first an import dialog like this:

27 mapsforge4
Figure 54. The mapsforge import dialog.

and then something like this:

27 mapsforge5

Depending on what has been imported first, the labels might not be coming from the right osm field. In that case it can be simply changed in the spatialite layer settings. Refer to the spatialite data list section.

7. Vector Editing

to be done

8. Settings & Preferences

The preferences page is divided in main categories:

01 settings
Figure 55. The settings view.

8.1. Gps Settings

02 gps
Figure 56. The gps settings view.

In the gps preferences it is possible to

  • define the time interval for taking a point when in logging mode

  • define the minimum distance in meters, within the taken gps point is not added to the gps log. This is useful for example in the case in which the user stops during logging and the gps continues to supply points (due to the inaccuracy), while instead the user stands still in a point.

  • have the mapview recentered on the gps position when the position reaces the screen border (usefull while driving)

  • use network based position instead of GPS position. This can be useful for testing purposes. The network based position is by no means precise!

8.2. Sms Settings

03 sms
Figure 57. The sms settings view.

It is possible to activate an SMS catcher. If activated, the phone listens to incoming short messages containing the word:

GEOPAP

If such a message comes in, the phone answers with an SMS to the incoming number by sending the last known position.

From here it is also possible to insert the panic numbers(s), i.e. the numbers to which a status update is sent when the panic button is pushed.

8.3. Screen Settings

04 screen
Figure 58. The screen settings view.

In the screen preferences it is possible to

  • change the map center cross properties (size, color, stroke width)

  • change the mapsforge map text size factor (normal is 1. To make text bigger, increase the value)

  • enable the always screen on mode

  • toggle the use of metric/imperial units

  • enable settings to optimize rendering for high density displays

8.4. Spatialite Settings

05 spl recovery
Figure 59. The Spatialite settings view.

In the Spatialite preferences it is possible to enable the Spatialite Recovery Mode

When should Spatialite Recovery Mode be used?

When a new Database has been added and the geometry does not show up, the preference needs to be activated and Geopaparazzi restarted.

On restart faulty entries in the databases will be PERMANENTLY corrected where possible. Since the process might be time consuming, after a recovery, the settings is switched off again.

8.5. Custom sdcard path

This can be used for those devices that have more than one external storage recognized by the device.

Use it at your own risk. We use it regularly, but it needs to be done properly.

8.6. Force Locale

The locale of Geopaparazzi can be changed regardless of the locale used for Android.

This setting opens a menu in which a locale can be chosen between the available ones:

06 locale
Figure 60. The force locale dialog.

After that, each newly loaded view will be in the new locale.

8.7. Cloud Projects Sync Settings

This setting allows the user to set a server with user and password, to which upload and from which download geopaparazzi projects.

Known projects that allow for such aconnection are:

  • gvSIG Desktop with the hydrologis4gvsig plugins installed

  • gvSIG Online

9. Supported datasets

Geopaparazzi’s mapview supports several map-types: vector or raster, editable or static. Also, maps can be pulled live from an Internet server, or be generated locally from a map data file for offline operation. You can switch between these modes in settings.

There are two types of maps in Geopaparazzi:

  • basemaps: the background map in the map view

  • overlay maps: vector maps that can be shown on top of the basemaps

The following sections will detail various map source types. In case you want to prepare tailored map datasets as map sources in one of below map formats, please refer to the data preparation section.

9.1. Basemaps

Basemaps can be of 4 different types:

  • mapurls

  • mbtiles

  • mapsforge maps

  • rasterlite2

9.1.1. Mapurls: Custom tiles based maps

Mapurl files are simple text files containing definitions of tile sources, either local or remote. A mapurl file must have the file extention/suffix .mapurl to be recognised by Geopaparazzi.

Remote Tile sources

By default, Geopaparazzi is configured to load map mapnik rendered tiles live from the Internet, from OpenStreetMap’s tile server. Compare the contents of the included mapnik.mapurl file for how this is done. You can exchange the OSM tile server with any other tile server as long as it adheres to the Mapurl URL conventions. The basics are:

url=http://tile.openstreetmap.org/ZZZ/XXX/YYY.png
minzoom=0
maxzoom=19
center=11.42 46.8
type=google
format=png
defaultzoom=13
mbtiles=defaulttiles/_mapnik.mbtiles
description=Mapnik - OpenStreetMap and contributors, ODbL.

The mandatory information is:

  • the url of the tile server, having:

    • ZZZ instead of the zoom level

    • XXX instead of the tile column number

    • YYY instead of the tile row number

This information can be tested also in a browser http://tile.openstreetmap.org/9/271/182.png has ZZZ=9, XXX=271 and YYY=182
  • the minimum zoom level that is supported

  • the maximum zoom level that is supported

  • the center of the tile source

  • the type fo tile server. Currently both standard TMS and google based numbering of the tiles is supported by the line:

    • type=tms

    • type=google

  • the backup mbtiles path. This one is used to save downloaded tiles in the local mbtiles database

Also WMS works as remote source, as long as it can be accessed through an EPSG:4326 projection.

An example for the url part is
url=http://sdi.provincia.bz.it/geoserver/wms?LAYERS=inspire:OI.ORTHOIMAGECOVERAGE.2011&TRANSPARENT=true&FORMAT=image/png&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&EXCEPTIONS=application/vnd.ogc.se_inimage&SRS=EPSG:4326&BBOX=XXX,YYY,XXX,YYY&WIDTH=256&HEIGHT=256

Important here are:

  • SRS=EPSG:4326

  • BBOX=XXX,YYY,XXX,YYY

Geopaparazzi will cache/store downloaded Mapurl tiles in a local MBTiles SQLite file, so pre-fetched tiles will remain viewable when Geopaparazzi is operated disconnected from a remote Mapurl source (in offline operation).

Local Tile sources

Just like your mapurl configuration may reference an online/remote tile sources, your mapurl setting may reference a local tile source for offline use. This way it’s possible to load on any smarthphone complex maps as for example the following map that has a technical basemap with shapefiles overlayed in transparency

To be able to load such maps, one needs to prepare the tiles properly. This can be done via in several ways as explained in the data preparation section.

The tile folder have then to be loaded in the same folder as the description of the tile source:

url=mytilesfolder/ZZZ/XXX/YYY.png
minzoom=12
maxzoom=18
center=11.40553 46.39478
type=tms

Nothing changes against the description for the remote source apart of the url. The url in this case represents the relative path of the tiles folder.

Filesystems are know to have problems in handling large amounts of very small files. This the exact case of local tile sources. If the dataset is large, it gets very hard to move the data from and to the device. Therefore this method, even if still supported, is flagged as deprecated. The MBTiles datasource, explained in the next section, should be used instead.

9.1.2. MBTiles

MBTiles is a file format for storing map tiles in a single file. It is, technically, a SQLite database. See the openstreetmap wiki for more information.

9.1.3. Mapsforge maps

The mapsforge project provides free and open software for the rendering of maps based on OpenStreetMap. It developed an efficient binary format for storage of OSM map data (usually with file extension .map), and is offering country specific .map files for download. Geopaparazzi is able to render map tiles locally from .map files and will cache rendered tiles in a local MBTiles store.

Apart from Mapsforge itself, openandmaps is also offering .map files but with a different data bias and different render theme.

mapsforge

These are the standard maps generated, maintained and distributed by the mapsforge team and can be downloaded from their server.

In their default style they kind of look like:

01 mapsforge maps
Figure 61. The standard mapsforge map.
openandromaps

Openandromaps generates maps following the opencycle theme, with isolines and more hiking related stuff. The map files are larger but worth every byte. Their download area is here.

With the Oruxmaps theme that is available from the download area, the maps look like:

02 cycle maps
Figure 62. The openandro styled mapsforge map.
Apply a render theme

When rendereing mapforge tiles locally, Geopaparazzi applies render themes if they are found on the disk. In order to be found, the render theme xml file needs to have the same name as the map file. Ex, the above cycle map example has a:

italy_cycle.map

and a:

italy_cycle.xml

render theme file in the same folder as the map file itself.

9.1.4. RasterLite2

RasterLite2 is a raster format implemented in the spatialite database.

At the time of writing it is released as development version and supported in Geopaparazzi for testing.

9.2. Overlay maps

The only datasets that can be overlayed on top of basemaps are vector maps coming from a spatialite database.

10. Handling datasets from and for Geopaparazzi

Several applications can be used to prepare and evaluate datasets for Geopaparazzi. The current ones known are:

  • gvSIG

  • STAGE

  • Spatialite GUI

  • GDAL

10.1. STAGE 0.7

STAGE (Spatial Toolbox And Geoscripting Environment) is a standalone application dedicated to spatial analyses.

Related to Geopaparazzi, it contains functionalities to:

  • Create mbtiles files from raster and vector sources.

  • Export geopaparazzi projects (version 3 or 4) to shapefiles, notes, profiles, and other details.

  • Convert geopaparazzi projects from version 3 to version 4.

10.1.1. Installation

STAGE can be downloaded from the github releases page.

Steps:

  • copy the zip file in a folder:

    • stage_0.7_win64.zip for 64 bits windows operating systems

    • stage_0.7_win32.zip for 32 bits windows operating systems

    • stage_0.7_lin64.zip for 64 bits linux operating systems

  • unzip the file in a folder

  • enter the unzipped folder

  • run the Stage application (ex. stage.exe for windows)

01 stage
Figure 63. The Stage application on windows.

The mobile section contains modules related to Geopaparazzi.

02 stage
Figure 64. The mobiles section.

10.1.2. MBTiles creation

For the creation of an MBTiles file from a set of GIS data, as shapefiles and tiff rasters, select the module: GeopaparazziMapsCreator

03 stage

The user will be able to add:

  • up to 2 raster tiff or asc maps

  • up to 5 vector shapefiles

  • define the name of the new mbtiles dataset

  • define the minimum and maximum wanted zoomlevel (zoomlevels > 18 start to take long time to build because of the large number of tiles generated)

  • the image type to use:

    • jpg: this should be used when photographic data are used (ex. aerial images)

    • png: this should be used when images are used (ex. technical maps)

  • the output folder, inside which the database will be created

Once the parameters are set, the module can be launched by pushing the green play button in the top right toolbar.

In case of big data the user should consider to set the memory put available to the run module. This is done in the lower left combobox labeled Memory [MB]. The number to set is considered to be MegaBytes. A safe value to use is a bit less than the amount of RAM available on the computer.

For windows 32bit machines it is not possible to use more than 1000 MB due to technical limitations of Java itself.

10.1.3. Converstion of Geopaparazzi data to GIS data

Through the module Geopaparazzi4Converter it is possible to export data from a Geopaparazzi project database.

04 stage

The only parameter to set are the input Geopaparazzi database path and the output folder. It is also possible to toggle the creation of some of the data contained in the database.

To run the module, refer to the mbtiles section.

How are the data are exported from the Geopaparazzi database? The following is created:

  • point shapefiles for each type of note also complex forms

  • point shapefiles with reference to pictures taken and sketches

  • all pictures are exported to a media folder

  • line and points shapefiles for log lines and points

  • profile charts and csv of log data

  • a simple text project metadata file

10.2. Spatialite GUI

The Spatialite GUI can be used to create spatialite databases from shapefiles.

You can find the application on the spatialite homepage, at the time of writing a good version for windows is version 1.7.1 available in this download area.

Open it and find yourself with:

01 spl

We now create a new empty database in which to load the shapefile data:

02 spl

You will be asked to save the database somewhere on disk. Once done, you should find yourself with something like this, but with different path:

03 spl

To then load a shapefil, locate the Load Shapefile icon:

04 spl

In this example I will import a set of shapefiles from the Natural Earth dataset, in particular the following ones:

05 spl

The import dialog is the important one to fill the right way:

06 spl

The really important things to take care of, are underlined in red:

  • the SRID, i.e. the EPSG code of the data projection. If that one is not right, then you will not be able to see the data in geopaparazzi. Don’t even hope in miracles!

  • the Charset Encoding. Make sure to choose the right one. For example Japanese people might want to choose SHIFT_JIS if they want to see the labels rendered properly

  • force the creation of the spatial index

If you then the push the ok button, you should find yourself with an ok message like this after the import:

07 spl

You are almost there, one last step to go.

Right-click on the database name and select the Update Layer Statistics command.

08 spl

Depending on the amount of data it should keep your harddisk working for a bit. Don’t think it finished unless you see a result like the following:

09 spl

Once this result appears to you, you are good to go.

Move the spatialite database to your device, fire up geopaparazzi and go directly to the spatialite data view and load the database.

10.3. OGR

OGR2OGR can be used to create Spatialite databases supported by geopaparazzi using different datasources.

The command that can be used is similar to:

ogr2ogr -f "SQLite" -t_srs "EPSG:3857" -dsco SPATIALITE=YES output_ortrans.sqlite ORTrans_public.gdb
More info available here

10.4. GDAL

Geopaparazzi does not support reprojecting raster data sources on-the-fly, so the file must be warped to the proper projection before using it. To do it you can use gdalwarp command.

The target projection must be Google Web Mercator (EPSG code 3857); you must know also the source projection of the raster you are converting. As an example, if you have a WGS 84 projected (EPSG code 4326) input file, you will run this kind of command:

gdalwarp -s_srs EPSG:4326 -t_srs EPSG:3857 -r bilinear input.tif output.tif
To create the tiles you can use gdal2tiles.py script, using as input your Google Web Mercator projected raster file
gdal2tiles.py output.tif

It generates directory with TMS tiles, that you can use in Geopaparazzi. In the root of the this directory you will find "tilemapresource.xml" file which contains all the information to build the .mapurl file:

    <?xml version="1.0" encoding="utf-8"?>
    <TileMap version="1.0.0" tilemapservice="http://tms.osgeo.org/1.0.0">
      <Title>temp3.vrt</Title>
      <Abstract></Abstract>
      <SRS>EPSG:900913</SRS>
      <BoundingBox minx="46.39742402665929" miny="11.28858223249814" maxx="46.45081836101696" maxy="11.37616698902041"/>
      <Origin x="46.39742402665929" y="11.28858223249814"/>
      <TileFormat width="256" height="256" mime-type="image/png" extension="png"/>
      <TileSets profile="mercator">
        <TileSet href="12" units-per-pixel="38.21851413574219" order="12"/>
        <TileSet href="13" units-per-pixel="19.10925706787109" order="13"/>
        <TileSet href="14" units-per-pixel="9.55462853393555" order="14"/>
        <TileSet href="15" units-per-pixel="4.77731426696777" order="15"/>
        <TileSet href="16" units-per-pixel="2.38865713348389" order="16"/>
        <TileSet href="17" units-per-pixel="1.19432856674194" order="17"/>
        <TileSet href="18" units-per-pixel="0.59716428337097" order="18"/>
      </TileSets>
    </TileMap>

Note that the BoundingBox and Origin values created by gdal2tiles are have x and y values switched against how we need them:

minx="11.28858223249814"
miny="46.39742402665929"
maxx="11.37616698902041"
maxy="46.45081836101696"
x="11.28858223249814"
y="46.39742402665929"

11. Geopaparazzi & gvSIG

to be done

12. Using form based notes

Geopaparazzi supports complex notes called form based notes. To use them, a tags.json file needs to be created and placed inside the geopaparazzi folder inside the sdcard. In that file a json format description of the wanted tags and forms needs to be placed.

By default, to help the user to start, a sample tags.json is created in the Geopaparazzi installation. It contains form samples and examples to show all supported form widgets.

01 tags

Currently no tool is available to create forms in an interactive way, they have to be created manually.

A good online tool to at least validate your json form is the Json Lint Validator. Make sure it passes that test before putting it on the device and test it in geopaparazzi.

12.1. Supported tags (via the example form)

The example form that is available by default shows all the possible options available.

12.1.1. Text

      "formname": "text",
      "formitems": [
          {
              "key": "some text",
              "value": "",
              "type": "string"
          }
      ]
02 text

12.1.2. Multiple Text

      "formname": "multiple text",
      "formitems": [
          {
              "key": "some text",
              "value": "text1; text2; text3",
              "type": "dynamicstring"
          }
      ]
03 text multi

12.1.3. Text with key and label

In simple forms the key element is also used as label for the widget (ex. some text in the text note). Some charactersets are not suitable to be used as keys for a database, so in that cases the user should consider to define both the key (ex. in English) and the label (in the own language). Here an example:

"formname": "text example with key and label",
"formitems": [
    {
        "key": "the_key_used_to_index",
        "label": "the label used to describe",
        "value": "",
        "type": "string"
    }
]
03 text key

12.1.4. Numbers

"formname": "numeric text",
"formitems": [
    {
        "key": "a number",
        "value": "",
        "type": "double"
    },{
        "key": "an integer number",
        "value": "",
        "type": "integer"
    }
]
04 numeric

To use one of the values as label in the map view add the islabel tag:

"formname": "numeric text used as label in map",
"formitems": [
    {
        "key": "a number",
        "value": "",
        "islabel": "true",
        "type": "double"
    },{
        "key": "an integer number",
        "value": "",
        "type": "integer"
    }
]

12.1.5. Date

"formname": "date",
"formitems": [
    {
        "key": "a date",
        "value": "",
        "type": "date"
    }
]
05 date

12.1.6. Time

"formname": "time",
"formitems": [
    {
        "key": "a time",
        "value": "",
        "type": "time"
    }
]
06 time

12.1.7. Labels

"formname": "labels",
"formitems": [
    {
        "value": "a simple label of size 20",
        "size": "20",
        "type": "label"
    },{
        "value": "a underlined label of size 24",
        "size": "24",
        "type": "labelwithline"
    },{
        "value": "a label with link to the geopaparazzi homepage",
        "url": "http://www.geopaparazzi.eu",
        "size": "20",
        "type": "labelwithline"
    }
]
07 labels

12.1.8. Checkbox

"formname": "boolean",
"formitems": [
    {
        "key": "a boolean choice",
        "value": "",
        "type": "boolean"
    }
]
08 boolean

12.1.9. Combos

"formname": "combos",
"formitems": [
    {
        "key": "a single choice combo",
        "values": {
            "items": [
                {"item": ""},
                {"item": "choice 1"},
                {"item": "choice 2"},
                {"item": "choice 3"},
                {"item": "choice 4"},
                {"item": "choice 5"}
            ]
        },
        "value": "",
        "type": "stringcombo"
    },{
        "key": "a multiple choice combo",
        "values": {
            "items": [
                {"item": ""},
                {"item": "choice 1"},
                {"item": "choice 2"},
                {"item": "choice 3"},
                {"item": "choice 4"},
                {"item": "choice 5"}
            ]
        },
        "value": "",
        "type": "multistringcombo"
    },{
        "key": "two connected combos",
        "values": {
            "items 1": [
                {"item": ""},
                {"item": "choice 1 of 1"},
                {"item": "choice 2 of 1"},
                {"item": "choice 3 of 1"},
                {"item": "choice 4 of 1"},
                {"item": "choice 5 of 1"}
            ],
            "items 2": [
                {"item": ""},
                {"item": "choice 1 of 2"},
                {"item": "choice 2 of 2"},
                {"item": "choice 3 of 2"},
                {"item": "choice 4 of 2"},
                {"item": "choice 5 of 2"}
            ]
        },
        "value": "",
        "type": "connectedstringcombo"
    },{
        "key": "two connected combos, default selected",
        "values": {
            "items 1": [
                {"item": ""},
                {"item": "choice 1 of 1"},
                {"item": "choice 2 of 1"},
                {"item": "choice 3 of 1"},
                {"item": "choice 4 of 1"},
                {"item": "choice 5 of 1"}
            ],
            "items 2": [
                {"item": ""},
                {"item": "choice 1 of 2"},
                {"item": "choice 2 of 2"},
                {"item": "choice 3 of 2"},
                {"item": "choice 4 of 2"},
                {"item": "choice 5 of 2"}
            ]
        },
        "value": "items 2#choice 4 of 2",
        "type": "connectedstringcombo"
    }
]
09 combos

12.1.10. Pictures

"formname": "pictures",
"formitems": [
    {
        "key": "a picture archive",
        "value": "",
        "type": "pictures"
    }
]
10 pictures

12.1.11. Sketches

"formname": "sketches",
"formitems": [
    {
        "key": "a sketches archive",
        "value": "",
        "type": "sketch"
    }
]
11 sketches

12.1.12. Map screenshot

"formname": "map",
"formitems": [
    {
        "key": "an image of the last seen map",
        "value": "",
        "type": "map"
    }
]

12.2. Other supported tags

12.2.1. hidden

Not shown in the gui, but useful for the application to fill in infos like the GPS position:

    {"key":"LONGITUDE", "value":"", "type":"hidden"}

12.2.2. primary_key

An item of particular importance, can be used by the application to link to particular infos:

    {"key":"tourism", "value":"", "type":"primary_key"}

12.2.3. Constraints

Constraints are conditions that are checked when the ok button of the form is pushed.

mandatory

To make an item mandatory, just add:

    "mandatory": "yes"
range

To peform a range check on a numeric field you can add something like:

    "range":"[0,10)"

which would check that the inserted number is between 0 (inclusive) and 10 (exclusive).

12.3. Create a simple form to map fountains

As an excercise we will now create a simple form to map fountains.

12.3.1. Sections

Every form is composed of sections, each of which create a button in the add notes view. We want to create a form for a fountain, so one section is enough. The blueprint for such a form, i.e. the empty button shell starts with:

[
    {
        "sectionname": "fountain",
        "sectiondescription": "fountain",
        "forms": [

and ends with:

        ]
    }
]

12.3.2. Form subsections

Each section can contain several sub-forms, that will create a tab each.

A sub-form starts with:

            {
                "formname": "General data",
                "formitems": [

and ends with:

                ]
            },

Note that the comma at the end is only needed if more than one sub-form is added.

12.3.3. Form elements

To add content to the sub-forms, any of the tags described in the supported tags section can be used.

For example lets add two textfields to prompt the user for a name and street. Also the name should then be the label rendered in the map view.

                    {
                        "key": "name",
                        "value": "",
                        "islabel": "true",
                        "type": "string",
                        "mandatory": "yes"
                    },
                    {
                        "key": "street",
                        "value": "",
                        "type": "string",
                        "mandatory": "no"
                    }

12.3.4. Finalize the form

This is everything that needs to be done. Let’s also add some technical data in a dedicated tab and also a tab for media, inside which it is possible to take pictures.

We leave the exercise to the reader.

The complete tags.json file can be found in the appendix section.

13. The Geopaparazzi Database

The Geopaparazzi project database is a plain sqlite database with the extension .gpap.

All data are saved in WGS84.

13.1. Database tables described

Table 1. The Metadata Table

key

key for the record

value

value for the record

Table 2. The Notes Table

_id

unique id

lon

longitude of the note

lat

latitude of the note

altim

elevation

ts

timestamp

description

description of the note

text

text of the note

form

the form data

isdirty

is dirty field (0 = false, 1 = true)

style

style of the note

Style and isdirty are currently unused.
Table 3. The Images Table

_id

unique id

lon

longitude of the image

lat

latitude of the image

altim

elevation

ts

timestamp

azim

azimuth

text

text of the note

isdirty

is dirty field (0 = false, 1 = true)

note_id

an optional note id, to which it is bound to

imagedate_id

id of the connected image data

Table 4. The Imagedata Table

_id

unique id

data

the image data

thumbnail

the image thumbnail data

Table 5. The Bookmarks Table

_id

unique id

lon

longitude of the bookmark

lat

latitude of the bookmark

zoom

the zoom of the bookmark

north

the north bound of the bookmark

south

the south bound of the bookmark

west

the west bound of the bookmark

east

the east bound of the bookmark

text

the name of the bookmark

Table 6. The GPS logs Table

_id

unique id

startts

log start timestamp

endts

log end timestamp

lengthm

the length in meters

isdirty

is dirty field (0 = false, 1 = true)

text

name of the log

Table 7. The GPS logs data Table

_id

unique id

lon

longitude of the log point

lat

latitude of the log point

altim

elevation of the log point

ts

timestamp of the log point

logid

id of the log of which the point is part

Table 8. The GPS logs properties Table

_id

unique id

logid

id of the log the properties are part of

color

the color to use to draw the log

width

the width to use to draw the log

visible

flag that defines if the log is visible at the time given

14. Use case: Use of Geopaparazzi in Egypt to create a map to improve the management of small wastewater treatment plants.

14.1. Introduction

Have you ever tried to type in google: sanitation maps, sanitation coverage, sanitation or inventory tracking?

It is interesting to note that the agencies managing the wastewater treatment plants in the United States and Canada monitor and continuously update the inventory of small delocalized plants in order to optimize their management, while the numerous development agencies that deal with sanitation in developing countries express and declare the state of inadequacy of the system of waste treatment but do not quantify the state of art.

The management of small treatment plants of domestic sewage in decentralized communities is an issue with different perspectives. In any place on earth it involves many actors, linking technical to cultural, environmental, educational and health services. It is a topic that often touches critical as well as hidden issues. Experts in this field are well aware of that!

When you think of a small village, a rural setting with a few houses and lots of animals, or a peri-urban area that grew quickly and without any planning or again neighboring communities linked by a waterway that carries waste from upstream to valley, it is not immediat to think that all these places (due to the presence of man and animal) are a source of biomass. They are a sources of waste and organic material that often brings a high and invisible pathogenic charge.

Many projects related to developing countries today focus the attention on the proper disposal of the waste and on prevention as fundamental for the health of the inhabitants. Numerous agencies and associations dedicated to development cooperation have shown that untreated wastewater spilled into the surrounding environment without any attention is the primary vector of diseases and therefore often of epidemics in areas with deficits at levels of hygiene and public health (see the Water, Sanitation and Hygiene and the Joint Monitoring Programme).

The target C of the seventh Millennium Development Goal aimed to halve by 2015 the proportion of people without sustainable access to safe water and basic health services. The assessment tool implemented in recent years has been the count of the percentage of population using the health service.

But:

  • What is the scenario in terms of plants?

  • Where are they?

  • What do they produce?

  • How much?

  • What is the trend?

  • What are the possible risk factors?

  • What are the environmental characteristics of their location?

  • And the social context?

  • The cultural?

  • How many and which animals contribute?

  • What are the types of installations in operation?

It is clear that to get a complete picture of this kind takes time, lots of data collection, laboratory tests, and then hypothesis, correlations, ideas and possible strategies.

It is now well known that from a technical standpoint there are no prepackaged solutions exportable in contexts with very different boundary conditions. Some causes may seem trivial, but if underestimated they end up affecting the efficiency of the treatment.

It should be enough to say that there are places in the world where the toilet paper is not thrown into the toilet; there are places where after defecation you clean up with your hand; others where even plastic, cloth and diapers are thrown into the toilet and places in which under the sink there is a shredder and everything ends up into the sewer system.

These are information that decide the diameter of the pipes even before the type of treatment and planting. And if the diameter of the tubes is wrong the whole system becomes meaningless.

How many socio-cultural aspects exist in the various regions of the world that we do not know, that we can’t even imagine, that can make you smile or frighten, but that in the construction of a plant have the same weight as the distribution of BOD5?

There is no doubt that a tool that allows you to collect data of this kind, to catalog them, and most important geotag them to make them visible on a map and return the state of the existing as well as facilitates the correlation is crucial in the whole process of planning and improvement of health services in developing contexts.

14.2. Monitoring activities

During fall of 2010 Geopaparazzi has been used in the monitoring of small waste water treatment plants in decentralized communities of the Nile Delta, in a thesis project in Environmental Engineering within a larger project of technical development cooperation (ESRISS project).

The idea was to be able to do an effective analysis and mapping of the plants in the area of the Nile Delta to compare different types of treatment and analyze the parameters that contribute to the success or failure of a solution. The result of this campaign suggested the usefulness of this application and the need to widen its use to build the existing maps that consider all the complexity of the factors involved in the search for solutions to improve the health conditions of the contexts under analysis. Only in this way it is possible to build an updated database on the basis of which appropriate solutions can be proposed.

The main goal has been to integrate missing plants data.

To give an idea, information about the available data are shown for some of the plants:

07 plant1
Figure 65. The El Moufty plant, the one with most available information.
08 plant2
Figure 66. The OM SEN plant, with no lab information available and some general information missing.
09 plant3
Figure 67. The EL KOLEAAH plant, with no lab information available and some general information missing.

14.3. Technical background

Based on the available data a dedicated form has been designed to collect in a standardized way as much data as possible.

Once the form has been loaded into Geopaparazzi, it has been possible to access it from the add notes view.

01 tags
Figure 68. The add noves view, in an older version of geopaparazzi.

The form has been divided into 5 main sections to make it easier to read:

  • General data

02 general
  • Construction info

03 construction
  • Technical data

04 technical
  • Lab data: this section has been added even if it is quite impossible to gather lab data in the field. But since the form based notes can be opened and modified at any time, the section has been added for further update

05 lab
  • Media

06 media

The complete tags.json file can be found in the appendix section.

14.4. Acknowledgement

This usecase is a very small and superficial extract of the Geopaparazzi related part from the master thesis of Vania Zillante: ANALISI DI TECNOLOGIE PER LA DEPURAZIONE DEI REFLUI DOMESTICI IN COMUNITÀ DECENTRATE DEL DELTA DEL NILO E PROPOSTA PER IL TRATTAMENTO DELLA FRAZIONE ORGANICA. APPLICAZIONE DI UN SOFTWARE OPEN SOURCE PER LA GEOREFERENZIAZIONE DEGLI IMPIANTI ESISTENTI..

Focus has been put only on the data collection and form creation. It is beyond the scope of this document to describe or comment any other of the contents of Vania’s thesis.

Vania’s thesis also won the scolarship prize by ABL Premio Giovanni Lorenzin.

15. Projects that base on Geopaparazzi

15.1. gvSIG Mobile

gvSIG Mobile is completely based on geopaparazzi and extends its capabilities with enterprise level functionalities to connect to the services of gvSIG Online to allow syncronization of data between teams of surveyers.

gvsig mobile

15.2. Gasdroide - Natural Gas Emission Flux Measurements on Android platform

Checkout the homepage here

gasdroide

15.3. Disaster Management Information System

The Disaster Management Information System of the city of Osaka is mainly meant for collecting information about water-supply infrastructure to promote post-disaster recovery for water supply.

dmis

The same team has also been responsible for the Japanese translation of Geopaparazzi. Kudos!

15.3.1. TrashMapper

The TrashMapper is a tool used to keep information about the waste management of a town. Through it it is possible to sample and update information out in the field and then syncronize the data with a central database/webgis.

trashmapper

15.3.2. Trackoid

Trackoid is a mobile system for the geolocalization of small/medium fleets and teams of people (rescue). It is a realtime system with a mobile and server side.

trackoid mobile

trackoid 01

trackoid server

trackoid 02

15.3.3. Your app here

If you are using Geopaparazzi in any flavour we would be happy to list it here with some screenshot. Just drop us a note!

16. Appendix

16.1. The finalized tags.json of the Forms section

[
    {
        "sectionname": "fountain",
        "sectiondescription": "fountain",
        "forms": [
            {
                "formname": "General data",
                "formitems": [
                    {
                        "key": "name",
                        "value": "",
                        "islabel": "true",
                        "type": "string",
                        "mandatory": "yes"
                    },
                    {
                        "key": "street",
                        "value": "",
                        "type": "string",
                        "mandatory": "no"
                    }
                ]
            },
            {
                "formname": "Technical data",
                "formitems": [
                    {
                        "key": "protected",
                        "value": "true",
                        "type": "boolean",
                        "mandatory": "no"
                    },
                    {
                        "key": "type",
                        "values": {
                            "items": [
                                {
                                    "item": ""
                                },
                                {
                                    "item": "manual"
                                },
                                {
                                    "item": "electrical"
                                },
                                {
                                    "item": "gravity"
                                }
                            ]
                        },
                        "value": "manual",
                        "type": "stringcombo",
                        "mandatory": "no"
                    },
                    {
                        "key": "PH",
                        "values": {
                            "items": [
                                {
                                    "item": ""
                                },
                                {
                                    "item": "PH < 5"
                                },
                                {
                                    "item": "5 < PH < 7"
                                },
                                {
                                    "item": "PH > 7"
                                }
                            ]
                        },
                        "value": "PH < 5",
                        "type": "stringcombo",
                        "mandatory": "no"
                    },
                    {
                        "key": "number of served people",
                        "value": "",
                        "type": "double",
                        "mandatory": "no"
                    },
                    {
                        "key": "is working",
                        "value": "true",
                        "type": "boolean",
                        "mandatory": "no"
                    },
                    {
                        "key": "needs",
                        "values": {
                            "items": [
                                {
                                    "item": ""
                                },
                                {
                                    "item": "nothing"
                                },
                                {
                                    "item": "maintainance"
                                },
                                {
                                    "item": "rehabilitation"
                                }
                            ]
                        },
                        "value": "nothing",
                        "type": "stringcombo",
                        "mandatory": "no"
                    }
                ]
            },
            {
                "formname": "Media",
                "formitems": [
                    {
                        "key": "Images",
                        "value": "",
                        "type": "pictures",
                        "mandatory": "no"
                    }
                ]
            }
        ]
    }
]

16.2. Complete tag.json for the Egypt usecase

[

    {
        "sectionname": "WWT-plant",
        "sectiondescription": "WWT-plant",
        "forms": [

        {
            "formname": "General data",
            "formitems": [

        {
             "key": "Plant name",
             "value": "El Moufty Plant",
             "islabel": "true",
             "type": "string",
             "mandatory": "yes"
        }
,
        {
             "key": "Local Responsible Admin",
             "value": "Kafr el Sheikh",
             "type": "string",
             "mandatory": "no"
        }
,
        {
             "key": "District",
             "value": "Sidi Salim",
             "type": "string",
             "mandatory": "no"
        }
,
        {
             "key": "Village",
             "value": "El Moufty",
             "type": "string",
             "mandatory": "no"
        }
             ]
        }
,
        {
            "formname": "Construction info",
            "formitems": [

        {
             "key": "WWTP technology",
             "values": {
                 "items": [
                     {"item": ""},
                     {"item": "Stabilization ponds (GTZ model)"}                 ]
             },
             "value": "",
             "type": "stringcombo",
             "mandatory": "no"
        }
,
        {
             "key": "Designed by",
             "value": "Prof M.Abdel Azeem",
             "type": "string",
             "mandatory": "no"
        }
,
        {
             "key": "Year of construction",
             "value": "",
             "type": "date",
             "mandatory": "no"
        }
,
        {
             "key": "Startup",
             "value": "",
             "type": "date",
             "mandatory": "no"
        }
             ]
        }
,
        {
            "formname": "Technical data",
            "formitems": [

        {
             "key": "Served population [inhab]",
             "value": "3000.0",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Plant capacity [m3/d]",
             "value": "450.0",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Surface [m2]",
             "value": "6000.0",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Pro capita inflow [m3/inhab d]",
             "value": "0.066",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Pro capita water use [l/inhab d]",
             "value": "111.0",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Inflow [m3/d]",
             "value": "200.0",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Outflow quality analysis",
             "values": {
                 "items": [
                     {"item": ""},
                     {"item": "monthly"},
                     {"item": "yearly"}                 ]
             },
             "value": "",
             "type": "stringcombo",
             "mandatory": "no"
        }
             ]
        }
,
        {
            "formname": "Lab data",
            "formitems": [

        {
             "key": "PH",
             "values": {
                 "items": [
                     {"item": ""},
                     {"item": "PH < 5"},
                     {"item": "5 < PH < 7"},
                     {"item": "PH > 7"}                 ]
             },
             "value": "PH < 5",
             "type": "stringcombo",
             "mandatory": "no"
        }
,
        {
             "key": "BOD in [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "BOD out [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Coliforms in [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Coliforms out [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "COD in [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "COD out [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Suspended solids in [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
,
        {
             "key": "Suspended solids out [mg/l]",
             "value": "",
             "type": "double",
             "mandatory": "no"
        }
             ]
        }
         ]
    }
]