ODK Scan - Loading template on Android Device

Dear All,

I hope you are well and safe.

I am having some difficulties with loading a template for ODK Scan. I have created a printable form using the following link ODK Scan. When downloading the created form, I get a .jpg and a .json files. I understand that the .jpg is the form that should be printed and administer to the participants, however, I don’t understand what the .json file is for. Is this the template that needs to be uploaded on the app? This brings me to the next question. I have downloaded the ODK Scan app and all the prerequisites needed (such as ODK-X services, survey and tables). However, when opening the ODK scan app it says that no template has been selected. I have copied the .json file from my laptop to my Android device but still, there is nothing appearing when I want to select a template. Could you please support me on this? How can I select a template?

Thank you in advance for your help and I remain available if you have any other questions.

Many thanks,
Olimpia

hi @OlimpiaLamberti I can try to solve your issue as I am also a beginner. I would suggest did you refer to this Managing ODK-X Scan — ODK-X Docs documentation first. Still, I will research for your issue and get back to you.
Thank you for sharing your problem I will try to help you out in my possible way

1 Like

@OlimpiaLamberti Did you downloaded the OI file Manager as well? and I think for your .jpg and .json file regarding that Using ODK-X Scan Form Designer — ODK-X Docs this might help you. if you still struck on any point, please ping me I will try to resolve that again

1 Like

Hi @khushishikhu, thank you very much for your help and replies. I have OI file manager on my Android device. I went through the links you have sent me and I think they suggest pushing the templates using the application designer. I have downloaded this and opened it in chrome. However, when I then used the command $grunt adbpush in the terminal, there are no forms pushed to my android device. Have you ever done this before? If yes, would it be possible to schedule a call and for you to show me how to do it exactly?

Thank you so so much
Olimpia

2 Likes

Hi @OlimpiaLamberti! Are you including the $ in your typing? That’s not something you type it just denotes the command line interface. grunt adbpush has worked for me, although sometimes there are error messages – but usually informative ones (for example, if it can’t push a file because the file is open).

Hi @elmps2018, thank you for your message. No I am not including $ in the typing in the terminal.
Just to go through my steps again and to make sure everything I am doing makes sense:

  1. I have created a form for ODK Scan using the link attached above in my first post
  2. I have downloaded the created form in a zip file which includes a .jpg and .json file
  3. I have downloaded and set up the Application Designer using the instructions provided above by @khushishikhu
  4. I have plugged in my Android device to my laptop and I have opened the terminal on my Mac laptop. I navigated to the Application Designer directory on my laptop and typed “grunt adbpush”.

When doing this, I don’t get any major errors but when going to the settings of ODK Scan on my phone to load a template there are still no templates appearing.

Is this what you usually do? If no, what do you do differently?

Thank you again very much for your help, I really appreciate it

Best
OL

1 Like

@OlimpiaLamberti Let’s figure out if the template made it on to your phone or not first. Can you go to OI file manager on the tablet, and navigate to where, in the opendatakit/app designer, the folder is that you put the template in? Is it there?

1 Like

Hi @elmps2018, thank you for assisting me. No, my OI file manager is empty. I only have one folder which is the SD card folder that is empty. How should I procede?

Thank you very much for your help
Olimpia

@OlimpiaLamberti if your SD card folder is empty, something went wrong with the push (the files did not make it to the tablet). What tablet and android version are you using?

What message are you getting in your terminal when you run grunt adbpush?

Hi both
@elmps2018 I am using an honor phone as a device.

@Jeff_Beorse, when I run the grunt adbpush I get the following warnings and output:

So I have tried to run grunt adbpush -f instead to try and force it and I get a very long output and it says “Done, but with warnings” .
Would it be possible to schedule a call to go through this? I think it might be easier.

Let me know and many thanks,
Olimpia

1 Like

Hi @OlimpiaLamberti if you read the error, it says the command adb is not found. There is some issue with your setup of the abd tools. The most likely issue is in the path variable, see Application Designer Prerequisites — ODK-X Docs and make sure all these directions worked (e.g. adb version should show the right output).

1 Like

Hi @elmps2018, thank you for the suggestion. I have done as you suggested and get the following output which I believe means everything ran smoothly.

However, when going to the ODK Scan app I still don’t have any templates for selection. Do you know why? Would it be possible to schedule a call to discuss this and for you to show me how to do it exactly?

Best,
Olimpia

I have also check the file OI Manager and did not get any files uploaded there either.

Hi @OlimpiaLamberti! I am not an expert on the scan part, but at least the adbpush part seemes to suggest you only pushed one csv. Was your directory set to the main app designer folder? You need to push the whole folder on to the tablet, not just a particular file, and indeed it should all be present on the tablet (exactly like on your computer app designer, in the opendatakit folder) after it pushes. If you are able to screenshot both the command and result that could help!

Hi @elmps2018, thank you for your reply and suggestion. Yes, my directory is set up to the main app designer folder. For the command, I just used “grunt adbpush” as suggested here (Building an Application — ODK-X Docs). See below the command line

The outcome of this line of code are multiple lines where for the different files in the application designer app it says “1 file pushed, 0 skipped”.

So I believe this is working fine but in my Android device there are none of these files appearing…

Thank you again for your help
Best,
Olimpia

Hi @OlimpiaLamberti. If your app designer has only one file, or pushes only one file, something has definitely gone wrong. Did you make sure to download the latest version of the app designer and build your scan files within it? Can you share a screeshot of the folders within your app designer?

Hi @elmps2018, yes, I have downloaded the latest version of the App designer and I have created my scan file with it. However I have not saved my scan file in the app designer, should I do that?

Below is a screenshot with the folders in my app designer

Thanks,
Olimpia

Hi @elmps2018, I have finally managed to upload the template in ODK Scan :partying_face: Thank you very much for your help. I think I was not uploading the forms in the app folder.

Now I have a new problem. When opening the ODK Scan app, I select the template and then when I click Scan form, the app just closes. Have you ever experienced this?
Thanks again
Olimpia

Hi @OlimpiaLamberti! Yes, putting the forms in the app folder and pushing is very necessary.

For the functioning of the scan app – here I will ask @Jeff_Beorse for advice. Scan hasn’t been updated recently and is in beta so it may be better actually to use earlier versions of app designer and the apps. Jeff, do you know which version of the ODK-X tools Scan last tested on?