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. This tutorial will show you how to upload forms and collect data in the field using the ODK Collect application on an Android mobile device. The next tutorial, Manage Your Data with ODK Aggregate, will show you how to store, manage and view your data using ODK Aggregate.
Created by developers at the University of Washington's Computer Science and Engineering department and members of Change, Open Data Kit is an open-source project available to all. Please visit their ODK project page for more information, recent updates, more tutorials, and to contribute to the project.
In this exercise, we will use a sample form for practice. Download the odk_sample.xml form to follow along with the tutorial.
1. Search for the "ODK Collect" application from the Android App Marketplace. Install the latest version to your mobile device. For more information about ODK Collect and its requirements, visit the ODK Project Page.
2. In the previous tutorial, you learned how to upload your forms to ODK Aggregate. Or, you may already have forms that have been uploaded to an instance of ODK Aggregate that you are using. Turn on your mobile device and tap the ODK Collect icon to open ODK Collect.
3. You will see the home screen, which lists four options: Enter New Data, Review Saved Data, Send Completed Data and Manage Files.
4. Select "Manage Files." This is where you can view the forms and data that are on your SD card (Local) and those that are stored on your ODK Aggregate instance (Remote). If you want to create your own forms or import existing forms to your mobile device, see Getting Started with Mobile Data Collection using ODK. In this tutorial, you will learn how to import forms that have already been created onto your mobile device.
In the previous tutorial, Getting Started with Mobile Data Collection using ODK, you learned how to set up your custom ODK Aggregate server. This is the online location where your forms and your form submissions are stored. Now, you need to make sure that your phone knows the address of your ODK Aggregate instance.
2. Select the button at the bottom of the phone that is not the Home icon, the Search icon or the Back arrow. This icon looks different on different models of phone. It is called the "Menu" button.
3. You will see the "Server Preferences" appear. Select it.
4. Under Server, you will see the URL of the ODK Aggregate instance to which your phone is connected. If this address has never been changed, the default is "http://open-data-kit.appspot.com".
5. Click on "Server" to change the server address to "http://odk-tutorial.appspot.com". Type in the new address. Now, any forms or data submissions you send will go to our demo server. Make sure you don't send private data to this server.
If you already have an ODK Aggregate server address, you can enter that URL in the Server Preferences and you'll be able to access and use any forms that have been uploaded to that server. You do not need to enter a username and password unless you've restricted access to the server (read more on Security).
6. Once you have entered in the name of the new server, hit the device's Back button to go back to the main menu. Confirm that you are accessing the new server by following the instructions in the next step.
You can either download forms directly onto your deivce's SD card by plugging in your phone to your computer and manually transferring them, or by accessing ODK Aggregate remotely and downloading the form files onto your phone over the Internet.
First, we'll cover downloading a form stored on your ODK Aggregate server. You must have an internet connection to proceed.
1. Turn on your phone and open ODK Collect.
2. Select "Manage Files."
3. You will see two tabs, "Local" and "Remote."
4. Select "Remote." If you have entered the URL for this tutorial, http://odk-tutorial.appspot,com, you will see Sample.xml listed as a form. Check the checkbox next to the form you wish to use, such as the Sample.xml form, and select "Add Selected Files." The files will download to your device's SD card. If you want to confirm the download, open the "Local" tab and you will see the new form in this list.
You can import a form onto your mobile device manually. The form must be an xml xforms like these sample forms.
Now that you have the right forms on your device, you're ready to start collecting data in the field. Before you travel long distances to get to your field location, test your form to make sure everything works. Remember to charge your device's batteries. Turn off settings that you won't need, like the wifi settings, to prolong battery life.
1. Open the ODK Collect application on your Android phone.
2. Select "Enter New Data." Select the form you want to use, in this case "Sample Form."
3. Enter data into the form, swiping from right-to-left with your finger to get to the next questions. Enter data in all required fields.
* Note: If you are using the "Sample" form for this tutorial, instead of a form you have uploaded to your own instance in the previous tutorial, any data you enter into the "Sample" form will become public and viewable to other tutorial users after you send it to ODK Aggregate in the next step. Avoid taking pictures of people and data that you want to remain private. If you want to learn more about privacy settings when you set up your own ODK Aggregate instance, learn more in the previous tutorial.
4. When you're finished, select "Save as Incomplete" if you want to go back later and enter data, or "Save as Complete" if you're finished. This will store the form data to your "Local" tab in the "Manage Files" section of ODK Collect.
1. On the ODK Collect Home screen, you can review the data you collected, whether it's been saved as incomplete or saved as complete. Select "Review Saved Data" and choose the data submission you'd like to review.
2. If you would like to edit submissions, you can do so regardless of whether the submission has been saved as "Incomplete" or "Complete." Tap the fields you wish to edit to get back to the form entry.
Once you're done entering and reviewing data in the field, you're ready to send it to ODK Aggregate so you can access it online later. You must have an Internet connection to proceed with this step.
1. Make sure your device is accessing the Internet, either via a WiFi connection or a data plan on a cellular service.
2. Open ODK Collect and select "Send Completed Data."
3. Check the box next to the entries that end in "Data". Those are the data submissions you entered in the field. The green check mark denotes selected files to be sent.
4. Hit "Send Selected File(s)." Your files will send over the network to your ODK Aggregate server instance, in this case http://odk-tutorial.appspot.com. You will see a message on your mobile device saying your data was sent successfully (or not, depending on your Internet connection). Remember not to send data you don't want to share with the public if you are sending to this sample server.
5. To confirm that your data has been successfully submitted, visit http://odk-tutorial.appspot.com, find the Sample Form, and click "View Submissions." Your submission(s) should appear in that list.
Congratulations -- you have completed the basics of collecting data in the field using ODK Collect!
Have questions about this tutorial? Want to give us some feedback? Visit the Google Earth Outreach Discussion Group to discuss it with others.