All offline from creating form to analyzing results

Hi all,

As internet is not always available in extremely remote areas, we had to
think about how to run the entire process of using ODK without any internet
connection, from creating a form to analyzing results. This means create
the form in XLS format, convert it to xml, put it on device, collect data,
and export results into .csv. Yaw Anokwa helped me figure out how to do
this, here is his answer :

"Nafundi's XLSForm Offline will let you design forms and convert them to
XML without Internet. From there you need to get them to the phone's
/sdcard/odk) /forms/ folder so ODK Collect can see the forms. I use adb (
https://lifehacker.com/the-easiest-way-to-install-androids-adb-and-fastboot-to-1586992378)
for that. We've set a recommended price for XLSForm Offline that allows
Nafundi to sustainably support it.

Submissions are stored on the device as long as you don't explicitly delete
them and you can store a ton of records without running out of space. You
can wait until you get to connection to send them to some server and export
to CSV that way. If that's acceptable, that's what I'd recommend.

If that's not acceptable, you have two options. You should try these before
you get into the field to see what works best for you.

The first option is to use ODK Briefcase (
https://opendatakit.org/use/briefcase) which can pull data from the /odk
folder and convert it to CSV. The first caveat here is that you need
someway to mount the Android device as a USB driver or an on-device way
like https://play.google.com/store/apps/details?id=nextapp.fx to zip up and
transfer the /odk folder to your desktop. The second caveat is that
Briefcase pulls all forms, even the incomplete ones.

The second option is to use the ODK Aggregate VM (
https://gumroad.com/l/odk-aggregate-vm) because it's a server that runs on
your local computer. The caveat here is that both the VM and the devices
have to be on the same network (usually WiFi) and that can be tricky to do."

For me using both XLSForm offline/ODK briefcase works well and seems the
easiest. To resume the steps you need to follow to use ODK completely
offline:

  1. Create the form in Excel : see guidance at http://xlsform.org
  2. Use XLSForm offline to convert the form to xml:
    https://gumroad.com/l/xlsform-offline
  3. Connect the device as USB driver to computer and put the xml form
    into the ODK>Forms folder (might need an app for that, see above. For mac
    users try Android File Transfer)
  4. Collect data, completed forms are stored into the ODK>instances
    folder of your device, in xml format
  5. Use ODK Briefcase to pull out/export results into a .csv file:
    https://opendatakit.org/use/briefcase
  6. Import the .csv into excel for analyses.

This is great for trainings and rare cases where internet cant be available
at all, however deploying the form online before collecting data is easier
and we will try to do that as much as possible for actual data collection
on big projects.

I would like to thank again Yaw for his help. Hope this post will be useful
for others.

Best

Diane

Thanks for sharing your findings, Diane!

ยทยทยท On Wed, Oct 19, 2016 at 1:02 PM, Diane Detoeuf wrote: > Hi all, > > As internet is not always available in extremely remote areas, we had to > think about how to run the entire process of using ODK without any internet > connection, from creating a form to analyzing results. This means create the > form in XLS format, convert it to xml, put it on device, collect data, and > export results into .csv. Yaw Anokwa helped me figure out how to do this, > here is his answer : > > "Nafundi's XLSForm Offline will let you design forms and convert them to XML > without Internet. From there you need to get them to the phone's > /sdcard/odk) /forms/ folder so ODK Collect can see the forms. I use adb > (https://lifehacker.com/the-easiest-way-to-install-androids-adb-and-fastboot-to-1586992378) > for that. We've set a recommended price for XLSForm Offline that allows > Nafundi to sustainably support it. > > Submissions are stored on the device as long as you don't explicitly delete > them and you can store a ton of records without running out of space. You > can wait until you get to connection to send them to some server and export > to CSV that way. If that's acceptable, that's what I'd recommend. > > If that's not acceptable, you have two options. You should try these before > you get into the field to see what works best for you. > > The first option is to use ODK Briefcase > (https://opendatakit.org/use/briefcase) which can pull data from the /odk > folder and convert it to CSV. The first caveat here is that you need someway > to mount the Android device as a USB driver or an on-device way like > https://play.google.com/store/apps/details?id=nextapp.fx to zip up and > transfer the /odk folder to your desktop. The second caveat is that > Briefcase pulls all forms, even the incomplete ones. > > The second option is to use the ODK Aggregate VM > (https://gumroad.com/l/odk-aggregate-vm) because it's a server that runs on > your local computer. The caveat here is that both the VM and the devices > have to be on the same network (usually WiFi) and that can be tricky to do." > > > For me using both XLSForm offline/ODK briefcase works well and seems the > easiest. To resume the steps you need to follow to use ODK completely > offline: > > Create the form in Excel : see guidance at http://xlsform.org > Use XLSForm offline to convert the form to xml: > https://gumroad.com/l/xlsform-offline > Connect the device as USB driver to computer and put the xml form into the > ODK>Forms folder (might need an app for that, see above. For mac users try > Android File Transfer) > Collect data, completed forms are stored into the ODK>instances folder of > your device, in xml format > Use ODK Briefcase to pull out/export results into a .csv file: > https://opendatakit.org/use/briefcase > Import the .csv into excel for analyses. > > This is great for trainings and rare cases where internet cant be available > at all, however deploying the form online before collecting data is easier > and we will try to do that as much as possible for actual data collection on > big projects. > > I would like to thank again Yaw for his help. Hope this post will be useful > for others. > > Best > > Diane > > > -- > -- > Post: opendatakit@googlegroups.com > Unsubscribe: opendatakit+unsubscribe@googlegroups.com > Options: http://groups.google.com/group/opendatakit?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "ODK Community" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to opendatakit+unsubscribe@googlegroups.com. > For more options, visit https://groups.google.com/d/optout.