About the Wearabouts App

The Wearabouts App for Android is an application that enables tracking remotely, outdoors or indoors, the movements of mobile devices worn or carried by people, or attached to assets. These devices can be tracked:

  • Android wearables (e.g. smartwatches like this device).
  • Android smartphones.
  • Android tablets.
  • Android combo tags (e.g. mini smartphones like this device). You can attach the combo tags to assets or people using one of the solutions listed inside this page.

A device’s location is determined using one or more of the following sources:

  • the Wi-Fi 2.4 and 5 GHz access points.
  • the iBeacons.
  • the cellular towers.
  • the camera images.
  • the Android core location [accuracy not under the responsibility of Accuware].

When active, the Wearabouts App collects the list of radio signals (Wi-Fi access points, iBeacons, cellular towers) and/or camera images at the device’s current location and sends these data to the Wearabouts sever. The Accuware server estimates the device’s location after a pattern-matching against several information sources:

  • Indoors – the Accuware database of radio fingerprints (Wi-Fi and/or iBeacons) available if an indoor fingerprinting has been performed.
  • Global – the Navizon global database of Wi-Fi and cellular tower signals throughout the world. A fresh global location can be computed using the most recent cellular tower reading only when the device screen is unlocked or it is running on a charger. When the screen-locked or the device is not running on a charger the cellular tower readings are not reliable (and only the Wi-Fi signals are used).
  • Core [accuracy not under the responsibility of Accuware] – the Android location manager after having set the “Core location” parameter (described below) to ON. When the “Core location” parameter is set to ON the Wearabouts App will not obtain a GPS fix by itself but it will use the GPS coordinates from a GPS satellite fix obtained through a 3rd party app active on your device (e.g. Google Maps). This can increase the battery consumption.
  • Camera – the Accuware database of visual fingerprints (images) available if an indoor fingerprinting has been performed.

The location of the device is made available by the Accuware server as pairs of time-stamped coordinates (latitude and longitude in WGS84 format) and it can be:

  • visualized inside the Accuware dashboard.
  • integrated inside any web or mobile application capable of using RESTful API.

Features

These are the key features of the Wearabouts App:

  • Real-time indoor location – the highest update frequency is 5 seconds (this update frequency can not be increased).
  • Minimum battery usage – thanks to the motion detection parameters.
  • Minimum data usage – thanks to the motion detection parameters.
  • Background operation: the App can be used to track the location of a device while the screen is off and while the screen is on and the App is in background. Please be aware that:
    • the App, when installed on Android >= 6.0, is subject to the limitation introduced by the Doze mechanism described at this link.
    • there are some Android Apps that may interfere with the background operation.
  • Wireless configuration – the tracking parameters of the App are sent over-the-air (OTA) from the Accuware dashboard.
  • Privacy protection – the App preserves user’s privacy by using an identifier different from the device MAC address.

Display the device location inside the Wearabouts App: The Wearabouts App does NOT display the location of the device on which the App is running. The locations of all the devices that are running the Wearabouts App can be:

  • visualized inside the Accuware dashboard.
  • integrated inside any Web or Mobile application capable of using RESTful API.

Step 1 – Verify the prerequisites

These prerequisites MUST be met by all the Android devices on which you want to install the Wearabouts App:

  •  Android version – Jelly Bean 4.2 and above (API Level: 17). Android Wear is not supported at present.
  • a valid Internet connection (Wi-Fi or cellular data) that will be used to upload the radio signal sensed in real-time to the Accuware server. If you are using a Wi-Fi connection these are the requirements that MUST be met:
    • Accessible domain: its.accuware.com  – this is the address where the Accuware Wearabouts App sends the radio signals sensed in real-time.
    • Ports (opened outbound): 53/tcp (DNS), 80/tcp (HTTP) and 443/tcp (HTTPS).
  • enough storage space (1,7 M) to install the Wearabouts App (device memory or external memory). Please be aware that there are some Android devices with almost no internal memory. For these kind of devices you need to purchase an external memory of 4 GB.
  • Wi-Fi and/or Bluetooth chip turned ON – depending on the radio signals chosen for the fingerprinting of the site.
  • Wi-Fi Mobile Hotspot is OFF – otherwise the accuracy will be affected negatively.
  • (OPTIONAL) an accelerometer – if you want to take advantage of the power saving mechanisms described inside the next paragraphs.
  • (OPTIONAL) a camera – if you want to make use of the camera fingerprints.
  • a special user called navimote@navizon.com is inside the users of your Accuware site. This can be checked easily following these steps:
    1. Access the Accuware dashboard at at this link.
    2. Click on General > Accounts.
    3. Verify that navimote@navizon.com is inside the Registered Accounts table with “Read-Write” Access.

Step 2 – Choose the right location source for your project

When active, the Accuware Wearabouts computes multiple locations using the information sources described in the first paragraph of this page. Then, once multiple locations have been computed, the Wearabouts engine chooses (as best location) the location with:

  • the most recent time-stamp. The time-stamp related to one location is better then all the others if it is at least 15 seconds greater than the time-stamps of all the other locations.
  • or the higher accuracy (smaller radius of confidence) when there are multiple locations with time-stamps that do not differ for more than 15 seconds.

Despite this, having multiple location sources active, could have a negative effect on the accuracy when some of the location sources are not of interest. For this reason, before proceeding, we invite you to submit a support request using this form and let us know which location sources you don’t plan to use.

Examples:

  • if your project is to track the location of doctors and staff inside an hospital (where you have collected the fingerprints), it is not useful to have the Global and Core location sources active. Why? Because those 2 location sources will cause jumps outside the hospital if/when the Wearabouts engine won’t be able to compute the Indoor location.
  • if your project is to track truck drivers outside and you are already sure that the GPS is active on the Android devices owned by the truckers then it won’t be useful to leave the Global location sources active. Why? Because the Global location source will cause jumps if/when the Wearabouts engine won’t be able to compute the location using the Core location.

Step 3 – Install the Wearabouts App

The Accuware Wearabouts App can be downloaded directly by clicking this link from the Android devices, or by following these easy steps:

  • Open the Google Play Store App on your device.
  • Tap the Search icon from the upper portion of the screen.
  • Type Accuware Wearabouts, and tap on Search.
  • Tap on the Accuware Wearabouts app and tap on Install.
  • Accept the requirements.
  • Wait for the app to be downloaded and installed.

Google Play Services update: some devices may need an update of the Google Play Services. If this action is required, you need to follow the relevant prompts on the screen of the device.

Step 4 – Register the device to the Accuware server

To make the Accuware server aware of your device you need to register it to your Accuware site using the Accuware dashboard, following these easy steps:

  • Access the Accuware dashboard at this link and follow the instructions on the login screen. Please supply the credentials contained in the email from Accuware Activation email and press the Login to Dashboard button.
  • Click on Wearabouts > Devices. This section shows the list of all the devices registered within the site. By using the buttons on the right side of the table it’s possible to edit the information associated with a device (Name, Description), delete a specific device, or configure a specific device (device-specific settings). If you get the Error message “Error 400 – Bad Request”, it means that your Accuware site is not enabled for the usage of Wearabouts please submit a ticket request at this link.
  • Press the Add Device button, and type the unique device ID shown in the middle of the screen inside the Wearabouts App. The ID starts with the letter “W” and contains a total of 12 characters. Do not press on the Start Operation button of the Wearabouts App or you will get an error message.
  • (OPTIONAL) insert a Name and a Description
  • Click on the Save button. If you get the Error message “MAC ‘WXXXXXXXXX’ is already associated with another site, you need to remove the ID of that device from an already existing site. At present devices can not be associated to multiple sites.
  • Your device will appear in the Registered Devices table.

Unique device ID equal to “vo:id:vo:id:vo:id”: if your unique device ID shown inside the Wearabouts App is equal to vo:id:vo:id:vo:id, please submit a ticket request using this form and provide us:

  • the exact model of device
  • the exact Android version
  • the Wearabouts App version

Step 5 – Activate the Wearabouts App

Once the Accuware Wearabouts App is installed on the device and the device ID is registered in your site, you can activate the Wearabouts App and use it to:

  • track the location of your Android devices inside the Accuware dashboard.
  • integrate the location of your Android devices inside any Web or Mobile application capable of using Wearabouts API.

Above the unique device ID you will find the Wearabouts App version. Please provide us the version of the Wearabouts App when you ask for support.

Below the unique device ID you will find a button to start or stop the operation of the App:

  • Press the Start Operation button and the Wearabouts App will starts to perform scans in real-time of the radio signals at the device’s current location, sending the collected data to the Accuware server where the location is computed and made available on the Accuware dashboard and using the Accuware Wearabouts API. You can now track your device!  When using the Bluetooth please disassociate the Bluetooth from any other Bluetooth device in the environment (e.g. headsets, speakers etc..)
  • Press the Stop Operation button and the Wearabouts App will stop to perform scans in real-time of the radio signals.

What happens when your device is rebooted: the Wearabouts App is set to resume its last operational mode when the device is rebooted. This means that if the Wearabouts App is ON and the device is rebooted, the Wearabouts App will be ON by default after the reboot.

How to disable the pop-up notifications of the Wearabouts App: the pop-up notifications can be disabled on Android 6 under: Settings > Apps > Accuware Wearabouts > Notifications. Once inside this menu please choose the Block All switch.

Step 6 – Track your Android devices using the Accuware dashboard

To get the fresh location of a device that is running the Wearabouts App you need to follow these steps:

  • Click on Wearabouts > Map
  • Scroll down the page until the Devices table
  • Click on the blue icon located inside the Position field next to the Android device that you want to track.
  • Once clicked, the Google Map view will automatically move to the last location of the Android device that will be represented as a:
    • YELLOW dot: if the device has been seen active in the past 15 minutes.
    • GREY dot: if the device has been seen active more than 15 minutes ago.
  • By clicking on the dot you will be able to see this information:
    • Name – the optional name assigned under the Wearabouts > Devices section.
    • Desc – the optional description assigned under the Wearabouts > Devices section.
    • Mac – the device unique ID generated by the Wearabouts App.
    • Level ID – the level on which the device is located.
    • Position – the WGS84 location computed by the Accuware server along with the level ID.
    • Source – one of the four sources of location described in the first paragraph above.
    • Battery – the battery level detected along with a label for the charging status.
    • Last Seen: the amount of time passed since the device has been seen.
    • ACTIONS – this column contains 4 buttons:
      • Radius of confidence: this button can be used to visualize the radius of confidence.
      • Follow on the map: this button can be used to center the location on a specific device and follow its movements on the map.
      • Push notification: this button can be used to force a location update. A sound is emitted by the device.
      • Push silent notification: this button can be used to force a location update. No sound is emitted by the device.

Troubleshooting: if you encounter any issue related to the Wearabouts App or to the accuracy, please look at this page where you will find all the help you are looking for.

Tracking parameters

When your Accuware site is enabled for the usage of Wearabouts, by the Accuware Support team, the following JSON with site-wide parameters is associated to your Accuware site:

This means that all the Android devices registered to the Accuware server (using the Accuware dashboard as described in a previous section) will inherit these site-wide parameters. This is true unless the site-wide parameters are overwritten by device-specific parameters that can be optionally associated to specific Android devices.

The site-wide parameters and the device-specific parameters are downloaded by the Wearabouts App automatically when the Start Operation button is pressed the first time the Wearabouts App is launched. The Wearabouts App tries to download the parameters (site-wide or device-specific) for 3 times with a pause of 30 seconds between each attempt. If all 3 attempts fail, the Wearabouts App retries to get the parameters every 5 minutes until the Stop Operation button is pressed.

Once the parameters have been downloaded by the Android device and the Start Operation button is pressed, the Wearabouts App starts to perform scans of the environment at the device’s current location, and it sends the collected data to the Accuware server.

Site-wide parameters

To configure (Inspect, Save, Reset) the parameters for all the devices registered within the site (site-wide parameters):

  • Click on Wearabouts > Configuration

Here is what is shown in this page:

  • Last update: the amount of time passed since the site-wide parameters have been saved.
  • Show config for: a top-down menu that allows to show the parameters for a specific type of device (Android devices/iOS devices/Smart Tags)
  • For all the info about the parameters see the section Parameters paragraph below.
  • Controls: you can Inspect (view) the JSON with the parameters, Save the parameters, Reset the parameters to their default.

Device-specific parameters

To configure (Inspect, Save, Reset) the parameters for a specific device (device-specific parameters):

  • Click on Wearabouts > Devices
  • Click the Config icon with a gear located inside the Action column

Here is what is shown in this page:

  • Associated: the amount of time passed since the device has been registered.
  • Configured: the amount of time passed since a configuration has been sent to the device.
  • Show config for: show the type of device automatically detected. It can’t be changed.
  • For all the info about the parameters see the section Parameters paragraph below.
  • Controls: you can Inspect (view) the JSON with the parameters, Save the parameters, Reset the parameters ​to the site-wide parameters (which can be different from the the defaults).

Parameters

Here is a description of all the parameters that can be configured at site level (site-wide parameters) or at device level (device-specific parameters)

Position Updates Frequency
  • Moving [default = 30 seconds]: seconds between position updates when the device is moving. This value affects the battery life.
    • If Moving is set to X seconds (with X different from 0), the device wakes up every X seconds and checks the accelerometer for movement. If the energy determined exceeds the Moving Sensitivity threshold, a scan of the radio signals is initiated and the result is uploaded to the Wearabouts server (where the location is computed).
    • If Moving is set to 0, the periodic check of the accelerometer is disabled and there won’t be updates of the locations based on the Stationary parameter. In this scenario the only way to force the device to update its location is to issue a Push Notification request.
  • Stationary [default = 3600 seconds]: seconds between position updates when the device is stationary. This value affects the battery life.
    • If Stationary is set to X seconds (with X different from 0), the device will update its location every X seconds while stationary.
    • If Stationary is set to 0, enforced scans of the radio signals are not performed (and the location is updated only according to the Moving parameter or thanks to a Push Notification request).
PLEASE READ: ​we have recently found out that, when using the iBeacons, some Android devices are not able to update their location according to the value of the Moving parameter. This is due to a limitation introduced by Android 7. If you notice that the location is not updated according to the Moving sensitivity value we strongly suggest to increase step by step this value, until you find a value that works and fits your project.
Advanced settings
  • Wi-Fi Cmp Threshold [default = 5]: in order to overcome the limitations of the Moving Sensitivity parameter described below, you can work with the value Wi-Fi Cmp Threshold. This parameter allows to compare 2 consecutive radio signal scans in order to detect if there is a significant difference between the 2 scans (which means that the device is in a new location with different radio signals around).
    • If Wi-Fi Cmp Threshold is set to X (with X different from 0), the device checks whether the delta between 2 consecutive scans exceeds the Wi-Fi Cmp Threshold. If this is true then the freshest scan is uploaded to the Accuware Wearabouts server (where the location is computed).
    • If Wi-Fi Cmp Threshold is set to 0 no comparison is made and scan results are uploaded unconditionally, according to the Moving value.
    • If the device has been awaken by a Push notification then the Wi-Fi Cmp Threshold threshold is not taken into account.
  • Info Without Config [default = 0]: how many uploads a device does, until it recognizes a new configuration. E.g. a value of 5 means that the device is requesting a new configuration only with every six upload. By that this parameter controls the speed, by which a device reacts on configuration changes. The server will only send back a configuration, if there was a change.
  • Moving Sensitivity [default = 5]: this parameter can be used to avoid false-movement reports when there are no movements, or to avoid receiving false-stationary reports when there are real movements (e.g. on a bus or on a car). The higher the value of this parameter, the less sensitive the accelerometer becomes, requiring an higher amount of energy to consider the device as in motion.
    • If Moving Sensitivity is set to X (with X different from 0), the device wakes up every Moving seconds and checks the accelerometer for movements. If the energy measured by the accelerometer exceeds the Moving Sensitivity threshold then an ambient signals scan is made and uploaded.
    • If Moving Sensitivity is set to 0 the device is considered as always in motion,  the accelerometer is not checked and scans are made unconditionally. On some devices the accelerometer stops working if the device is on screen lock, the accelerometer readings return a value of 0 and also in this case the device is considered as always in motion (more information in this page). On other devices the accelerometer readings are invalid. In all the cases just exposed, the scans are always made BUT uploaded based on the value of Wi-Fi Cmp Threshold described above.
    • If the device has been awaken by a Push notification then the Moving Sensitivity threshold is not taken into account.
  • Core location (GPS) [default = On]:
    • Off – no Core location fixes are made.
    • On – a Core location fix is attempted (using the Coarse Location Update Mode of Android) whenever an upload has to be made as a result of the decision based on Moving Sensitivity and/or Wi-Fi Cmp Threshold. GPS is not actively involved, but could be used, if currently in use by a 3rd party app active on your device (e.g. Google Maps). Please keep in mind that:
      • the accuracy of the Core location is not under the responsibility of Accuware.
      • a value other than OFF may have an impact to power consumption of the device.
  • Bluetooth (iBeacons) [default = Off]: turn On/Off the detection of the iBeacons for the computation of the indoor locations.
  • WiFi [default = On]: turn On/Off the detection of the Wi-Fi access points on 2.4 GHz and 5 GHz for the computation of the indoor locations.
  • Camera [default = Off]: turn On/Off the options related to the Camera Positioning.
    • Camera positioning: this top-down menu allow to control whether the device should shoot and upload in real-time images from the front and/or rear camera of the device. The Wearabouts server will pattern match the images received in real-time with the images collected during the video fingerprinting done during the Setup process.
      • Rear camera only – shoot and upload images coming in real-time from the rear camera.
      • Front camera only – shoot and upload images coming in real-time from the front camera (selfie camera).
      • Front and rear cameras – shoot and upload images coming from the front camera (selfie camera) and rear camera – not supported at this time
    • Camera storage [default = Don’t store]: this parameter describes how the system should handle the storage of the images uploaded in real-time. Any option different from “Don’t store” generates a message related to the privacy inside the Accuware dashboard (as soon as the new configuration is SAVED) and inside the Wearabouts App (as soon as the new configuration is downloaded). Both the messages must be read and accepted in order to allow us to store (temporary or permanently [Auto-Age]) the images captured by the Wearabouts App:
      • Don’t store: the information about the images and also the viewable images are sent in real-time to the Accuware cloud server but destroyed after the location computation. Nothing can be retrieved for troubleshooting purposes.
      • Store in Cloud: the information about the images (but not the viewable images) are stored on the Accuware cloud server for an unlimited amount of time.
      • Store and Link: the information about the images (and also the viewable images) are stored on the Accuware cloud server for an unlimited amount of time. The viewable images can be accessed through a link when calling an API.
      • Store and Auto-Age: the information about the images (but not the viewable images) are stored on the Accuware cloud server for a limited amount of time (24-48 hours) and then destroyed.
      • Store, Link and Auto-Age: the information about the images (and also the viewable images) are stored on the Accuware cloud server for a limited amount of time (24-48 hours) and then destroyed. The viewable images can be accessed through a link when calling an API.

Please read:

  • The Wi-Fi Cmp Threshold and Moving Sensitivity thresholds are still experimental. Currently there are no perfect recommended values.
  • The movement detection via the Wi-Fi Cmp Threshold parameter is less effective in terms of battery preservation, because a scan is made before it may be decided to not upload it (keep into account that a scan consumes more battery than a check on the accelerometer reading). Best power saving can be achieved by using the Moving Sensitivity threshold (this is possible only when: there is an accelerometer, the accelerometer is reliable and the Moving Sensitivity parameter is set to anything other than 0).

Advanced contents

Notifications

Anytime, by opening the Android notifications you will be able to see the notifications provided by the Wearabouts App. There are currently 4 notifications provided:

  • Config Error – this message is returned when the Android device tries to get a configuration, but there is an error because of connectivity issues, or because there is no configuration for that specific device on the server. The Wearabouts App will make other attempts to get the configuration. This error is shown only during the download of the initial configuration. During the regular usage, configuration errors are not indicated.
  • Upload Fail – this message is returned when an upload of scans fails. The reasons for the Upload Fail can be many, but mostly it is due to connectivity issues. But, it could also happen if the device is un-registered/deleted from the Accuware dashboard and the Wearabouts App did not attempt to get a new configuration.
  • Update OK  – this message is returned when the Wearabouts App is able to scan and upload the radio signals: when the device is considered as in motion or the after a Push notification request.
  • Update OK (Enforced) – this message is returned when the Wearabouts App is able to scan and upload the radio signals when: the Start button is pressed or after the Stationary period has expired.

Notifications are provided silently, or, if debugging is enabled, with an audible feedback and vibrations.

Debug

The initial state of debugging is OFF. There is no audible feedback and no vibrations. Debugging is toggled by tapping 5 times within 3 seconds on the display of the app, while the app is in foreground. The current status (enabled/disabled) of debugging is displayed momentarily, if the tap sequence is detected. When debugging is enabled, there is some audible and vibrating feedback given:

  • Config Error – 1 short vibration + this sound
  • Upload Fail – 1 short vibration + this sound
  • Update OK – 1 long vibration + this sound
  • Update OK (Enforced) – 3 short vibrations + this sound

When in debug mode, in addition to the audible and vibrating feedback, the Wearabouts App writes a log file to the Android device or SD memory card, which may contain useful information in case the behavior of the App is not as expected. The file “wearabouts.log” is located inside the directory “accuware” on your device. To prevent the file to become too large, the file is removed on every change of general debugging state. Please send the file to Accuware Technical Support if you are asked to do so by clicking the setting button located in the top right corner of the Wearabouts App screen (the button with three dots). This button is available only if the debugging is enabled.