Workshop using open source software for mobile data collection workshop - andrew faust
Using Open Source Software
For Mobile Data Collection
Andy Faust, GISP
North Central Wisconsin Regional
WLIA Annual Conference
Lake Geneva, Wisconsin
February 13, 2013
• Overview of the ODK Project
• Backend Storage Options
• Install ODK Collect
• Design Custom Forms
• Data Collection
• Analyze / View / Export Data
• Questions / Review
Open Data Kit
• Open Data Kit (ODK) is a suite of tools that allows data
collection using mobile devices and data submission to an
online server, even without an Internet connection or mobile
carrier service at the time of data collection.
• Created by developers at the University of Washington's
Computer Science and Engineering department , Members
of Change, and Google.
Open Data Kit is an open-source project available to all.
Open Data Kit
• Open Data Kit (ODK) is a free and open-source set of
tools which help organizations author, field, and
manage mobile data collection solutions. ODK
provides an out-of-the-box solution for users to:
1. Build a data collection form or survey online web
application (XLSForm is recommended for larger
2. Collect the data on a mobile device to send it to a
server. The application on the device;
3. Aggregate the collected data on a server and
extract it useful formats
• provide blank forms to ODK Collect,
• accept finalized forms (submissions) from ODK Collect and
manage collected data,
• visualize the collected data using maps and simple graphs,
• export data (e.g., as CSV files for spreadsheets, or as KML
files for Google Earth), and
• publish data to external systems (e.g., Google Spreadsheets
or Google Fusion Tables).
• ODK Aggregate can be deployed on Google's App
Engine, enabling users to quickly get running
without facing the complexities of setting up their
own scalable web service.
• ODK Aggregate can also be deployed locally on a
Tomcat server (or any servlet 2.5-compatible web
container) backed with a MySQL or PostgreSQL
• Run web application on Google’s server
Once you are signed up you need to create an
application, so just click on the button “Create an
Application” and give your application a name (called
“application identifier”). This name needs to be unique
among all users applications, so it might take a while to
find a unique one. Save your new application. After you
have created your first application you need to specify
your cell phone number. Google will then send you a
SMS with a code that you enter into their site. This
confirms that you are the owner of this Google App
Overview of ODK System
Google App Engine Local Server Formhub.org
PROS PROS PROS
No Hardware Required More Control Free
Low Cost More Secure Easy to setup
Easy to setup No Hardware Required
CONS CONS CONS
Cost Cost Loss of Control
Loss of Control Hardware Required Less Secure
Less Secure Harder to setup Form Limitations
XAMPP is a free and open source cross-platform web server solution stack package
consisting mainly of Apache and MySQL database.
XAMPP can be helpful to get your own local server up and running.
Fill in registration and wait for email confirmation
For help: https://formhub.org/getting_started/
Sign in and give formhub a try.
text Text input.
integer Integer (ie, whole number) input.
decimal Decimal input.
select_one [options] Multiple choice question; only one answer can be selected.
select_multiple [options] Multiple choice question; multiple answers can be selected.
note Display a note on the screen, takes no input.
geopoint Collect GPS coordinates.
image Take a photograph.
Scan a barcode, requires the barcode scanner app is
date Date input.
datetime Accepts a date and a time input.
audio Take an audio recording.
video Take a video recording.
calculate Perform a calculation.
start Start date and time of the survey.
end End date and time of the survey.
today Day of the survey.
deviceid IMEI (International Mobile Equipment Identity)
subscriberid IMSI (International Mobile Subscriber Identity)
sim_serial SIM serial number.
phone_number Phone number (if available).
Survey tab – Were database fields and questions are added to your survey.
name name of database field (no spaces in field name)
label What is displayed on the screen
hint Hint that is displayed on the screen
constraint constraint used to validate input….example: . > 0 and . < 120
constraint_message constraint message displayed if constaint is not met
required "yes" if the input is required
appearance numbers, maps, year, annotate, draw, signature, compact
default enter a default value
calculation displays a value calculated from another field
choice_filter Used for Cascading Selects
Survey Tab – Column Definitions
Choices tab – Were selection list are located
Settings tab – Were name and version of form are set
list_name option from the select
name value that is added to database
label what is displayed on survey screen
form_title Form Title
form_id Form ID
public_key Public ID Key used for encryption
submission_url Submission URL
version Form Version
1.the form ID should be short (ideally < 10 characters).
2.the form ID should be unique within your organization.
3.the form ID must not contain any spaces or punctuation characters.
4.the form ID should contain only alphanumeric characters and the characters '_' and '-'.
5.the form ID should start with a letter.
6.it may be useful to add a version designation (e.g, "medinfo-01") to aid in version tracking as you revise your
Form ID yyyymmddnn
yyyy = year ie. 2013
mm = month ie. 02
nn = form iteration within the given day