This article outlines some of the more common issues that app developers may run into.
My token doesn’t seem to work.
The token is generated by your cloud, and signed with an APP API secret associated with your account. Make sure you are using an APP API key and secret (not a SYS, OPS or Provisioning key and secret), and that you haven't mistyped the API key and secret in your cloud. You can also paste your token into the Token Validator tool to see the token contents. If you can't resolve the issue, you can always generate a new APP API key and secret in the Management Center. If that doesn't resolve it, contact Cirrent and we'll help you out.
My app didn’t find any devices.
The most likely cause is that there are no nearby discoverable devices. A discoverable device is one that is on a ZipKey network, has uploaded its network status in the last 15 minutes, and has not been bound to any user account. You can look in the Device Explorer to see the most recent status update from your device. If there isn't a recent status update, you'll need to look at the WCM logs on the device to determine why it isn't connecting to the ZipKey network. If the device is connecting to a ZipKey network and there is a recent status update, it still may not be discoverable. If the device has already been bound to a user account, it won't be discoverable. Check the Bound status in the Device Explorer. For testing, you can go into the Device Explorer and reset the device history, so it will no longer be bound to a user account.
Another reason why the device may not be discoverable is if the device is on a private network. Delete the private networks from the device and reboot it, and it will connect to the ZipKey network. (If you are testing with a raspberry pi, you can configure it as a demo device so that it will delete its private networks every time it reboots.)
The device is online and discoverable but my app still didn't find it.
The second most common cause for your app not to find devices is that we cannot determine the location of your app. If you are on a cellular network, you need to turn on location services. If you are on Wi-Fi, we can derive the location by comparing the Wi-Fi scan list from the app to the Wi-Fi scan list from the devices. Note that if you are on iOS, we only get the network that you are connected to. If location services are turned off, and the Wi-Fi network you are on doesn't appear in the device Wi-Fi scan list, we won't be able to match them. (This could happen if your phone is on a 5GHz network and the device only supports 2.4GHz networks.) For best results, keep location services turned on.
Location services is turned on, and the device is discoverable, but I still can't find it.
If we've matched the location and the device is discoverable, but it still isn't being returned in the list of nearby devices, take a look at the account id and device type. We only return devices that match the account id in the app token, and of the device type that was included in the query. Make sure your app is looking for a device of the right type, and that the device you are testing with is of a matching device type and account. Take a look at the Log Explorer where you should be able to see what queries your app is making to the Cirrent cloud.
My app keeps timing out.
If the device isn't able to stay connected to the ZipKey network, it may not be able to go through the sequence of downloading the private network credentials and updating it status. This can happen if the ZipKey network is unreliable. If the app does time-out when waiting for status updates, take a look at the Log Explorer to see if the device is uploading the status correctly. Make sure that your app handles the timeout correctly (giving the user an option to locally onboard the device via SoftAP or some other local onboarding mechanism).
My app keeps finding the same device.
The app will keep on finding the same device as long as that device is discoverable. The device needs to be bound to a user account for it to become undiscoverable. It will also become undiscoverable when it joins a private network, but unless it has been bound to a user account, it will become discoverable again as soon as it rejoins a ZipKey network (if the private network becomes unavailable).
I have a different issue.
If you're still having problems, please contact Cirrent so we can help you out.