Collect can't connect securely using a subset of devices

A friendly hello!

1. What is the issue? Please be detailed.

In a project with many users of ODK Collect, today three people got the same error while setting up the project.
Procedure:
ODK was installed via Playstore and via QR code the project was added (everyone has the same code). However, when trying to load the stored forms, there was an error message that the form update failed. The list of "Fill Blank Form" remained empty and the update button above is this with an exclamation mark.
The three have different smartphone models (Samsung and Huawai). Since others have no problems with the identical project settings, it is most likely not due to this. The affected smartphones also have a general Internet connection.

2. What steps can we take to reproduce this issue?
The problem is that I do not have direct access to the respective smartphones, but the setup can only be done via video call and instructions. However, this error does not seem to be an individual one (since three have it and they get the error permanently).

3. What have you tried to fix the issue?
For numerous other users, the setup and update of the forms works without any problems. I also could not reproduce the error by myself, everything works here as it should. So in ODK Central the project is set up correctly and also the QR code points to the correct project.
So far attempts to solve the problem:

  • Deleting and setting up the project again
  • Uninstalling and reinstalling the app
  • Checking the settings ("exactly match server")
  • Check if an internet connection is available.
  • Release all permissions in the system settings
  • Restarting the device
  • Check if a SIM card must be inserted, as some do not have one (for me it works without SIM card)

So...as I said, what causes can theoretically prevent access to the forms by isolated people? I hope you have one or two smart tips.

Best regards
Lars

Sorry to hear you're running into this! We just had a Collect release and it could be related to that. Can you please check the Collect version on the devices that are having trouble and ones that aren't? You can see the version at the bottom of the project landing screen below all the action buttons.

Thanks for the quick reply.
The version in all problematic cases is the v2022.2.0
For other people (including me) it works with this version.

On one affected device, we now manually installed the older version v2022.1.2. Unfortunately the same error.
When using another device, one person could now access the forms. So it must be some setting or something like that on some smartphones.

Thanks very much for that troubleshooting, @LarsR, this does not look like an error we've seen before. Can you please go to Settings > Form management and change the Blank form update mode to Manual, then try Get Blank Form from the landing screen and see if there's any more helpful error message there?

We have actually already tried that this morning. Unfortunately with the same resulting error message.

Good thinking on your part. What is the exact error message?

Have you also tried creating a project with a very simple form and seeing if that can be configured? In other words, are those devices able to download any forms at all?

If you have the capacity to plug the device into a computer with adb (Android Studio), there might be errors visible there.

What Android version(s) are they running?

Even with a simple project, no connection is possible.

The Android versions are 5.0.4 and twice 7. Not exactly the latest versions, possibly a reason for the error? I have no overview what others use, where it works.

Unfortunately we have here no possibility of smartphones to connect to a computer with adb.

Here is a screenshot of the error message (it's in german).

It says "Form list download failed. Collect cannot securely connect to the server at https:... . Did you enter the url correctly? If you continue to have this problem, report it to the person who hired you to collect data."
The URL is correct and the person mentioned would be me, among others.

Thanks for sharing the exact error and trying a simpler project. This looks to me like there is an incompatibility between the SSL certificate that your server has and the certificate store on those devices.

You can look at your certificate from a browser and see if you can find anything about the certificate chain and its interaction with Android. You can also describe how you configured your server and particularly how that may deviate from here and see if anyone has ideas.

Thank you for your efforts. We will take a look at it and let you know if we make any progress there.

A colleague has just tested the certificate via an external server. Everything is in the green zone. The result was "A+", and simulations with old Android versions also worked. So he does not believe that it is the SSL certificate.
Unfortunately, we have no way to get directly to the affected devices to test.
Ultimately, those people who are affected will probably have to switch to other devices.

1 Like

A small update: One of those who were affected had reset his Android smartphone to factory settings: That did not help. Then he updated his device from Android 7 to Android 8. This has solved the problem and ODK can now access the forms. So it seems to be related to a problem with some ( old ) Android versions.
However, since these are still isolated cases, the problem is manageable.

2 Likes

Is it possible that the devices had the wrong datetime? Sometimes that causes SSL problems.

1 Like