Zebra MotionWorks Proximity Client 1.2 MotionWorks Proximity Client 1.2 User Guide (en)

MotionWorks Proximity
Client
User Guide
MN-003978-02EN Rev. A
ZEBRA and the stylized Zebra head are trademarks of Zebra Technologies Corporation, registered in many jurisdictions worldwide. Google, Android, Google Play and other marks are trademarks of Google LLC. All other trademarks are the property of their respective owners. © 2020 Zebra Technologies Corporation and/or its affiliates. All rights reserved.
Information in this document is subject to change without notice. The software described in this document is furnished under a license agreement or nondisclosure agreement. The software may be used or copied only in accordance with the terms of those agreements.
For further information regarding legal and proprietary statements, please go to:
SOFTWARE:zebra.com/linkoslegal COPYRIGHTS:zebra.com/copyright WARRANTY:zebra.com/warranty END USER LICENSE AGREEMENT: zebra.com/eula
Terms of Use
Proprietary Statement
This manual contains proprietary information of Zebra Technologies Corporation and its subsidiaries (“Zebra Technologies”). It is intended solely for the information and use of parties operating and maintaining the equipment described herein. Such proprietary information may not be used, reproduced, or disclosed to any other parties for any other purpose without the express, written permission of Zebra Technologies.
Product Improvements
Continuous improvement of products is a policy of Zebra Technologies. All specifications and designs are subject to change without notice.
Liability Disclaimer
Zebra Technologies takes steps to ensure that its published Engineering specifications and manuals are correct; however, errors do occur. Zebra Technologies reserves the right to correct any such errors and disclaims liability resulting therefrom.
Limitation of Liability
In no event shall Zebra Technologies or anyone else involved in the creation, production, or delivery of the accompanying product (including hardware and software) be liable for any damages whatsoever (including, without limitation, consequential damages including loss of business profits, business interruption, or loss of business information) arising out of the use of, the results of use of, or inability to use such product, even if Zebra Technologies has been advised of the possibility of such damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation or exclusion may not apply to you.
Publication Date
November 24, 2020
Version 1.1.0.131
2
Contents
About This Document ........................................................................................................................ 5
Introduction ...................................................................................................................... 5
Chapter Descriptions........................................................................................................ 5
Notational Conventions.................................................................................................... 5
Icon Conventions ............................................................................................................. 6
Related Documents and Software ................................................................................... 6
Service Information .......................................................................................................... 6
Introduction......................................................................................................................................... 7
Client Features................................................................................................................. 7
Supported Devices........................................................................................................... 8
Device Requirements....................................................................................................... 8
Network Requirements..................................................................................................... 8
Barcode Requirements .................................................................................................... 9
Device Cleaned ........................................................................................................ 9
User Associated Barcode ......................................................................................... 9
User Disassociated Barcode .................................................................................... 9
Installation......................................................................................................................................... 11
Download the MotionWorks Proximity Package ............................................................ 11
Importing the MotionWorks Proximity CSP File ............................................................. 11
Create StageNow Profiles.............................................................................................. 11
Installation Profile ................................................................................................... 11
Configuration Profile ............................................................................................... 12
Device Staging............................................................................................................... 12
Error Conditions...................................................................................................... 12
Notes ...................................................................................................................... 13
3
Contents
Configuration .................................................................................................................................... 14
Server Settings............................................................................................................... 14
Proximity Range Settings............................................................................................... 14
Proximity Alert Settings.................................................................................................. 14
Low Battery Alert Settings.............................................................................................. 15
Miscellaneous Settings .................................................................................................. 16
Application Mode Settings ...................................................................................... 16
Advanced Settings ......................................................................................................... 16
App Notification Settings................................................................................................ 16
App Notifications..................................................................................................... 17
Using the App ................................................................................................................................... 18
MotionWorks Proximity Flow.......................................................................................... 18
Unsanitized............................................................................................................. 18
Sanitized................................................................................................................. 19
User Associated ..................................................................................................... 20
Battery Low............................................................................................................. 24
Known Issues and Behaviors........................................................................................ 26
StageNow Profiles ............................................................................................................................ 27
Creating an Installation Profile ....................................................................................... 27
Prerequisite ............................................................................................................ 27
Procedure ............................................................................................................... 27
Creating the Configuration Profile.................................................................................. 30
Proximity Range Threshold Calibration ......................................................................................... 32
4

About This Document

Introduction

This guide provides information about using the MotionWorks Proximity (MWP) client application.
IMPORTANT: If you have a problem with your equipment, contact Zebra Global Customer Support for your region. Contact information is available at: zebra.com/support

Chapter Descriptions

Topics covered in this guide are as follows:
Introduction provides overview of the MotionWorks Proximity Client application.
Installation provides information on installing the client on a Zebra mobile computer.
Configuration provides information on the solution with Zebra mobile computers.
Using the App provides information on using the client application.
.
StageNow Profiles provides instructions for creating installation and configuration profiles.
Proximity Range Threshold Calibration provides instructions for calibrating the proximity range
threshold values.

Notational Conventions

The following conventions are used in this document:
Bold text is used to highlight the following:
Dialog box, window and screen names
Drop-down list and list box names
Check box and radio button names
Icons on a screen
Key names on a keypad
Button names on a screen.
Bullets (•) indicate:
Action items
Lists of alternatives
5
Lists of required steps that are not necessarily sequential.
Sequential lists (such as those that describe step-by-step procedures) appear as numbered lists.

Icon Conventions

The documentation set is designed to give the reader more visual clues. The following graphic icons are used throughout the documentation set. These icons and their associated meanings are described below.
NOTE: The text here indicates information that is supplemental for the user to know and that is not required to complete a task.
IMPORTANT: The text here indicates information that is important for the user to know.
CAUTION: If the precaution is not heeded, the user could receive minor or moderate injury.
WARNING: If danger is not avoided, the user CAN be seriously injured or killed.
About This Document

Related Documents and Software

The following documents provide more information about the MotionWorks Proximity Solution.
MotionWorks Proximity Portal User Guide.
MotionWorks Proximity Solution User Guide.
For the latest version of this guide and all guides, go to zebra.com/support

Service Information

If you have a problem with your equipment, contact Zebra Global Customer Support for your region. Contact information is available at zebra.com/support
When contacting support, please have the following information available:
Serial number of the unit
Model number or product name
Software/firmware type or version number
Zebra responds to calls by email, telephone or fax within the time limits set forth in support agreements.
If your problem cannot be solved by Zebra Customer Support, you may need to return your equipment for servicing and will be given specific directions. Zebra is not responsible for any damages incurred during shipment if the approved shipping container is not used. Shipping the units improperly can possibly void the warranty.
.
.
If you purchased your Zebra business product from a Zebra business partner, contact that business partner for support.
6

Introduction

With the recent onset of COVID-19 and its ability to spread quickly when individuals are in close contact, there is an urgency for organizations to have the ability to quickly respond when an employee is positively diagnosed with COVID-19 and to prevent further outbreaks in the workforce. MotionWorks Proximity provides proximity alerts for employees to maintain a safe distance range and contact tracing so action can be taken immediately in locating each individual which the infected employee may have interacted with, isolating the spread of infection and ensuring the safety of other employees.
With MotionWorks Proximity, the device is inaccessible to the user until it has been sanitized and the user agrees to proper device use. When a user is within safe proximity range of another user, a proximity alert is triggered as a warning. Each proximity event is logged by the solution, including dwell time within that distance and user names. If a user is positively diagnosed with COVID-19, a trace report can be generated to pinpoint potential co-worker exposure so swift action can be taken to prevent further spread of the infection.

Client Features

Report device status and contact events periodically to the server.
Trace contact exposure to limit workforce productivity impact once a worker experiences COVID-19
symptoms. Uses Bluetooth Low Energy (BLE) based proximity alert system and contact tracing between worker devices.
Device proximity alerts ensure workers maintain a safe distance from others.
A centralized contact tracing system identifies exposed contacts at-risk, while protecting the infected
individual's identity.
Simple tracing process using QR barcode scanning for:
Device Disinfection - ensure devices are sanitized before use to prevent spread of infection
User Association - associate the user to a device to track users and easily identify exposed contacts
at-risk.
User Disassociation - disassociate the user from the device when returning the device to be re-sanitized.
Device low battery alerts to notify workers to take an action.
Remote device management to install and configure the application using StageNow and Enterprise
Mobility Management (EMM) tools.
7

Supported Devices

Table 1 Current Supported Devices
Introduction
Device
EC30 Android ™ Oreo 01-23-18.00-OG-U15-STD
MC3300 Android Oreo 02-13-15.00-OG-U20-STD
MC3300 Android Nougat 01-01-49.00-NG-U20-STD
MC9300 Android Oreo 01-30-04.00-OG-U06-STD
TC21 Android 10 10-12-13.00-QG-U17-STD-HEL-04
TC26 Android 10 10-12-13.00-QG-U17-STD-HEL-04
TC51 Android Nougat 01-01-49.00-NG-U20-STD
TC51 Android Oreo 02-32-04-00-OG-U02-STD
TC52 Android Oreo 01-30-04.00-OG-U06-STD
TC56 Android Oreo 02-13-15.00-OG-U20-STD
TC57 Android Oreo 01-23-18.00-OG-U15-STD
TC70x Android Oreo 02-13-15.00-OG-U20-STD
TC70x Android Nougat 01-01-49.00-NG-U20-STD
TC72 Android Oreo 01-23-18.00-OG-U15-STD
TC77 Android Oreo 01-23-18.00-OG-U15-STD
TC8300 Android Oreo 01-30-04.00-OG-U13-STD
Operating
System
Supported BSP

Device Requirements

Operating System:
Android Oreo or Android Nougat with Google Mobile Services (GMS) (non-restricted).
Google Play Services version 12.8.76 or higher.
Bluetooth must be enabled for the device to detect other devices in proximity.
Wi-Fi must be enabled and connected to the network to communicate with the server.
For WWAN devices, GPS must be enabled.
Location must be enabled on both WAN and WLAN devices to detect other devices in proximity.
For WAN devices, in Location settings, select High Accuracy or Battery Saving modes.
For Android 10 and higher, Battery Saver mode should always be off in order for the MVP app to detect
the beacons. If Battery Saver mode is set to Turn On, the MWP app will not be able to detect beacons.

Network Requirements

The client application sends the device status and contact events to the MotionWorks Proximity Solutions server over HTTPS. The network port 443 must be enabled to reach the Google Cloud Firebase Platform.
The following URL must be accessible:
8
https://<<ProjectID>>.firebaseio.com
where <<ProjectID>> is supplied by Zebra services after the server is set-up.

Barcode Requirements

There are three types of required QR barcodes.

Device Cleaned

When the device is in the Unsanitized screen and after the device is disinfected, scan this barcode to designate the device is cleaned or sanitized. JSON format required for the barcode:
zmwprox1://{id:"ffffffff-ffff-ffff-ffff-ffffffffffff",un:"Cleaned"}
After scanning the barcode, the device is then ready-for-use for an end user to scan their user barcode to associate to the device.
Figure 1 Cleaned Barcode
Introduction

User Associated Barcode

When the device is in the Sanitized screen, scan this barcode to associate the user to the device for the duration of their work shift and begin user login. JSON format required for the barcode (replace appropriate strings where prompted):
zmwprox1://{id:"<<Enter valid user id to send to server>>”, un:"<<Enter user name to be displayed on device screen>>"}

User Disassociated Barcode

When the device is associated to a specific user, the user can disassociate from the device by launching the app then scanning the device return barcode. This disassociates the user from the device and the device screen reverts back to the unsanitized screen. JSON format required for the barcode:
zmwprox1://{id:"00000000-0000-0000-0000-000000000000", un:"Returned"}
9
Figure 2 Return Device Barcode
Introduction
10

Installation

Install and configure the MotionWorks Proximity client app using StageNow or an EMM. After the installation or upgrade, launch the application for it to start functioning.

Download the MotionWorks Proximity Package

Download the MotionWorks Proximity package from Zebra Support site, zebra.com/support.

Importing the MotionWorks Proximity CSP File

To import the MotionWorks Proximity CSP.zip file into the StageNow CSP Library:
1. In the StageNow home screen left menu, click CSP Library.
2. Upload the .zip file to the CSP Library by clicking Choose File then browsing to the .zip file, or by
dragging and dropping the .zip file. Click OK in the confirmation message.
3. Once successfully uploaded, the CSP Library is listed in the Plugin tab.
Figure 3 Import Plugin into CSP Library

Create StageNow Profiles

Create an Installation and Configuration profile.

Installation Profile

Create an Installation Profile to:
Install the MotionWorks Proximity client .apk file.
11
Configure battery optimization.
Start the app to register with MX in order to accept configurations.
Add a delay using ConditionManager to allow time for the app to register with MX.
See to Creating an Installation Profile on page 27 for step-by-step instructions on creating the Installation profile.

Configuration Profile

Create a Configuration Profile to:
Push the XML server settings (provided by Zebra Services) to the devices using Batch Manager CSP.
Configure the app with MotionWorks Proximity CSP.
See to Creating the Configuration Profile on page 30 for step-by-step instructions on creating the Configuration profile.

Device Staging

Perform one of the following methods to deploy based on the tool used for device staging. The device must be connected to the network during staging:
Installation
1. StageNow: Open StageNow client on the device and scan the barcodes generated from the Installation
and Configuration profiles.
or
2. EMM: Export each StageNow XML file from step 3. Do not edit this XML file, it can cause unexpected
behavior. Send the XML using one of the following methods based on the mode:
Device Owner mode - use OEMConfig to configure the app. Refer to
techdocs.zebra.com/oemconfig/10-0/about/
Device Administrator mode - use MX to configure the app. Refer to techdocs.zebra.com/mx/
The installation is complete.
Reboot the device. Once the app is started on Android Oreo or higher devices, a MotionWorks Proximity notification message displays in the device notifications drawer. This notification cannot be dismissed, indicating that MotionWorks Proximity is running in the background. This is not visible in older Android Nougat and older versions.

Error Conditions

If the server settings are not configured on the device, an error message is displayed and the
application will not function.
A connection to server error message is displayed and the application will not function if the following conditions occur:
.
.
If the server settings are configured incorrectly. The administrator must apply the correct server
settings and reboot the device to apply the settings.
If the server settings are configured correctly but not connected to the network during the staging
process. The device must be rebooted to recover.
12

Notes

Installation
The MotionWorks Proximity app does not support:
Enterprise Home Screen (EHS)/EMM kiosk mode
Multi-user mode.
StageNow Tool may display error message CSP Plug-in CSP/DSD version to import is already available on the stage now tool when MotionWorks Proximity CSP imported after deletion. The work
around is rename the
StageNow.vdb5
C:\Users\<<Current user>>\AppData\Roaming\StageNow\AST\
and import by restarting the StageNow Tool.
13

Configuration

Configure application settings using EMM or StageNow.

Server Settings

The MotionWorks Proximity server is setup by Zebra Services for each customer and the server connectivity settings are delivered in XML format with encrypted values.
IMPORTANT: Do not edit the XML file.
The XML can be deployed to the device using EMM or StageNow according to the installation and configuration instructions. Devices must be connected to Wi-Fi during the staging process.

Proximity Range Settings

These settings determine the approximate physical range and beacon threshold to trigger the proximity of a contact. The default threshold is set for a specific environment, device, and its position. Due to multiple factors affecting beacon signal strength, it is required for this to be fine-tuned to the environment. See
Proximity Range Threshold Calibration on page 32 for more information.
Table 2 Proximity Range Settings
Configuration Name Description Default Value
Proximity Beacon Rx RSSI Threshold

Proximity Alert Settings

Proximity alert enables an audio sound to be heard when another device is in proximity for a given 30 or 60 second interval. The sound repeats each 30/60 seconds, based on the settings in StageNow, while the device remains in proximity. If multiple devices are in contact, it is possible to have two sounds played each 30 seconds depending on the timing of when the devices are contacted.
Sets the receiving signal strength (RSSI dBm) level to detect when a device is within the proximity range, triggering a contact.
14
-90 dBm
Configuration
A device generates a Proximity Alert, after sensing the proximity of another device (user). These alerts will continue at the chosen interval until devices (users) have moved apart and stay apart. No records are kept for Proximity Alerts. The purpose of the Alert is to provide users real time feedback regarding their social distancing behaviors so that it can be self-corrected, reducing the risk of spreading the virus and preventing the generation of Proximity Events. If multiple devices are in contact, it is possible to have two sounds played at the configured intervals depending on the timing of when the devices are contacted. Alerts can be configured through StageNow as shown in Table 3 below.
Table 3 Proximity Alert Settings
Configuration Name Description Default Value
Proximity Audio Alert Set whether audio alerts are triggered when a
contact is detected within the proximity range.
false
Proximity Alert Mode Set whether the audio and/or vibration occurs.
Proximity Audio URI Sets the audio file to be played when a contact
Proximity Audio Volume Sets the sound volume for the audio file being
User Disabled Proximity Alert Expiry Time
Proximity Alert Interval Set to 30 or 60 minutes. 60

Low Battery Alert Settings

By default, the application displays the low battery alert screen when the device reaches the low battery state. The user can exit the lower battery alert by pressing the back button. The low battery alert can be configured with the settings described in Table 4.
Options: Sound, Vibration, Both.
is detected within proximity. If no value is specified, it plays the default app audio file. Supports .mp3 audio files.
played (in %). Accepted range: 15-100.
Sets the time period (in minutes) to temporarily disable proximity audio alerts. This is triggered when the user taps the Mute Alert button, preventing audio alerts from being played for the specified time period. A user can override the timer and re-enable alerts by selecting the UnMute option. When set to 0, this option is disabled and Mute Alert button is not visible to the user. Accepted range: 0-1000.
Sound
Default app audio file
100
60
Table 4 Low Battery Alert Settings
Configuration Name Description Default Value
Low Battery Audio Alert Sets whether Low Battery Audio Alerts should be
played by the app.
Low Battery Audio URI Sets the audio file to be played when the device
reaches low battery state. If no value is specified, it plays the default Android notification sound. Supports .mp3 audio files.
Low Battery Audio Volume
Sets the sound volume for Low Battery Audio Alerts (in %). Accepted range: 15-100.
15
true
Default Android notification
100

Miscellaneous Settings

Table 5 Miscellaneous Settings
Configuration Name Description Default Value
AP Info Collection Sets whether AP data is collected (e.g., MAC
Configuration
false
Address).
Logging Set whether logging is enabled to facilitate debugging

Application Mode Settings

IMPORTANT: Do not change the Application Mode settings while the MWP client app is in use. Doing so
will cause incorrect data on the portal. Only change Application Mode settings after a client device is disassociated from the portal.
There are two modes supported in MWP application:
Server Mode: This mode enables the application to upload the proximity data collected by the application to the server (default). When selected, user must to provide server settings in Advance
Settings > Server Connectivity Settings.
Proximity Only: With this mode, application does not cache any data or upload it to the server. The
alert sound will be heard if and only if Proximity Audio Alert is set to Turn On and other device(s) comes in proximity. Since this mode does not upload data to the server, Server Connectivity Settings option will not be provided under Advance Settings. Wi-Fi is not required for the application to work and no server settings are required in Configuration.
false and collect proximity data to aid in identifying proximity thresholds. Proximity log data folder location:
/sdcard/beaconscanner. Additional data along with
proximity events are logged to RxLogger (if enabled).

Advanced Settings

The following settings are available in the CSP when Advanced Settings is selected.
NOTE: It is not recommended to select/modify the default settings as they were tuned for optimal performance.
Beacon Advertise Settings
Beacon Scan Time Settings
Proximity Beacons Rx Packet Threshold.

App Notification Settings

App Notification settings are provided for reference only. These settings should not be changed manually.
To view the MotionWorks Proximity app notification settings touch Settings > Apps & notifications > MotionWorks Proximity > App notifications.
16
Figure 4 App Notifications
Configuration

App Notifications

Allow notification dot displays a small dot above the app icon if it has a corresponding notification.
The MotionWorks Proximity services that the notifications correspond with are classified under Categories:
[blank] - provides notification settings for the Configuration/CSP Service of the app
Download Channel - provides notification settings for the MotionWorks Proximity sensing service
Both categories provide options to enable/disable audio sound, blinking light or a visual popup message when notifications are triggered. The audio sound can be adjusted to play a selected tone.
Both categories will be given more appropriate names in the next version of MotionWorks Proximity.
17

Using the App

Proximity contact sensing with MotionWorks Proximity provides visibility into an organization to ensure the health and safety of employees. QR barcodes are used to designate devices that were disinfected and ready for use. The user scans unique user-specific QR barcodes to allow access to the device and proceed with their line-of-business app. Once a user completes their work shift, the user places the device back in the charged docking station to re-sanitize for the next user. To dis-associate from the device, the worker can scan the Disassociate User barcode or place the device on a charging cradle at the sanitation station.

MotionWorks Proximity Flow

1. Unsanitized - The device is waiting to be sanitized or disinfected. It is locked down and cannot be
accessed by the user.
2. Sanitized - The device has been sanitized or disinfected and is available for a user to be associated.
3. User Associated - At the beginning of the work shift, the user associates to the device and is prompted
to accept the agreement and confirmation. When the user successfully associates to the device, proximity events are recorded and sent to the server. The user can proceed with using their line-of-business app for the duration of their shift.
4. User Disassociated - The user completes their work shift and returns the device for sanitization. This is
triggered by scanning the return barcode or placing the device on the cradle.
5. Low Battery - The device reached the low battery threshold, notifying the user to charge the device.

Unsanitized

The device is waiting to be sanitized or disinfected. It is locked down and cannot be accessed by the user.
18
Figure 5 Unsanitized Screen
Using the App
The user is prevented from accessing the device to perform work. This screen is also displays whenever the user places the device in a powered cradle or the device is rebooted.

Sanitized

Once a device is sanitized or disinfected, the user scans the CLEANED barcode to place the device into the Sanitized screen. The device may then be placed into a powered cradle until the end user begins their shift. Device access is not permitted until the end user associates to the device by scanning their user associated barcode.
19
Figure 6 Sanitized Screen
Using the App

User Associated

When a user is ready to begin their shift, they remove the sanitized device from the cradle and scan their user associated barcode to be associated with the device. A screen with a graphic appears prompting the user to place the device on their belt or strap.
Figure 7 Instruction Screen
All Devices Except EC30 EC30 only
The user must touch Next, which subsequently displays a screen stating two requirements - wear the device at all times and do not share the device with another worker.
20
Figure 8 Confirmation Screen
Using the App
The user must touch Continue and the user is then granted access to the device and can begin using their line-of-business app for the duration of their shift. The following takes place:
The device reports the user information to the server.
The device begins transmitting BLE beacons to other nearby devices to detect for proximity contacts
within range.
The device begins detecting BLE beacons from nearby devices within the proximity range. These signals are analyzed to detect a contact. When a contact is detected, proximity audio alerts are played to notify the user and proximity data is collected.
A report containing a history of proximity contacts is sent to the server every five minutes. If the network is unavailable, the contacts history is maintained up to 2,000 contact events. If this is exceeded, the older data is overwritten. When the network is available, all contact history is reported to the server.
When re-launching the MotionWorks Proximity app, the following status screen displays with the user name, instructing the user to return the device to the cleaning station once their shift is complete.
21
Figure 9 Main Screen
Using the App
If the User Disabled Proximity Alert Expiry Time option is enabled by the administrator in the Proximity Alert Settings, a Mute Alert button displays at the bottom of the screen.
Figure 10 Main Screen with Mute Alert
This permits the user to prevent audio alerts from playing for the time period specified in the setting (default - 60 minutes). This is useful in cases where the user may be in a meeting or in a quiet environment.
When the user taps the Mute Alert button, a dialog box appears indicating the amount of time that the alert will be muted. Touch OK to enable muting.
22
Figure 11 Mute Alert Dialog Box
Using the App
The user can touch the UNMUTE ALERT button to re-enable the audible and/or haptic alert when in proximity of another device.
Figure 12 Main Screen with Unmute Alert
The mute time appears in the notification bar. The user can touch UNMUTE to disable muting from the notification bar.
23
Using the App
Figure 13 Mute Alert Notification Bar
The proximity alert does not produce any sound when in proximity of a contact. After the mute time period elapses, the audio alert is automatically re-enabled and the user has the option to tap the button again to continue disabling audio alerts for the set time period.
When a device is detected within the approximate proximity range (based on the Proximity Range Settings from Application Configuration) of another device and remains in that range for more than one minute, this is recorded as a contact on both devices. If enabled, the proximity alert generates audio beeps when a contact is detected to enforce safe distancing. This is configurable in the Beacon Scanner Settings. A history of contacts within the configured reporting period is collected and the data is sent to the server every five minutes. If an individual is later positively diagnosed with COVID-19, their exposure contact history can quickly be retrieved from the MotionWorks Proximity server to identify those at risk. Action can then be taken to locate and notify those at-risk so they can self-quarantine or get tested.
When completing a work shift, the user either scans the User Disassociated Barcode or places the device back on the powered cradle to disassociate and recharge the device. The device automatically reverts back to the Unsanitized screen, ready to be re-sanitized.

Battery Low

When the battery power reaches below the device's low battery threshold, the Battery Low message displays on the screen prompting the user to return the device to the cleaning station to be charged and re-sanitized. If the device is associated with a user, the user can exit the low battery screen by tapping the back button. If the device is not associated with a user, access to the device is blocked until the device is charged.
24
Figure 14 Low Battery Alert Screen
Using the App
25

Known Issues and Behaviors

After deleting the MotionWorks Proximity app file which is imported as a plug-in CSP, StageNow may
encounter an error. To address this issue, export all profiles and delete the StageNow DB. Then re-import all profiles. (StageNow DB is located in %APPDATA%.)
If using Persist Manager CSP, only app installation and launch is supported to persist through an enterprise reset or OS Update. MotionWorks Proximity application configurations cannot persist. In order to skip the Google Setup Wizard, use Power Manager CSP in the same profile.
If MotionWorks Proximity plug-in CSP is used to set custom proximity audio alerts and the profile is changed with a null value for the Proximity Audio URI field, after deployment the custom audio is still heard rather than the default app audio file. To recover, send an invalid custom URI value (e.g., "Empty") or an invalid file name that does not exist, or delete the audio file on the device.
The server settings XML file provided by Zebra Services contain the following values that have no effect on the client functionality:
<parm name="ShowProximityRange" value="0" />
<parm name="ShowProximityAlert" value="0" />
<parm name="ShowBatteryAlert" value="0" />
Using the App
<parm name="ShowMisc" value="0" />
26

StageNow Profiles

Creating an Installation Profile

Prerequisite

IMPORTANT: Only required for BSPs released after July 2020.
1. Download SigTools.jar from techdocs.zebra.com/emdk-for-android/7-6/samples/sigtools/
2. Extract the certificate from the MotionWorks Proximity APK using one of the following command:
Encoded as Binary DER
Java -jar SigTools.jar GetCert -INFORM APK -OUTFORM BASE64 -IN <motionworks apk path along fullname including apk> -OUTFILE <filename>.crt
Encoded as HEX string
Java -jar SigTools.jar GetCert -INFORM APK -OUTFORM hex -IN <motionworks apk path along fullname including apk> -OUTFILE <filename>.hex
Encoded as Base64 string
Java -jar SigTools.jar GetCert -INFORM APK -OUTFORM BASE64 -IN <motionworks apk path along fullname including apk> -OUTFILE <filename>.base64
where:

Procedure

To create a Installation Profile:
1. Open StageNow application on a PC.
IMPORTANT: Only required for BSPs released after July 2020.
Download and install the StageNow latest desktop tool (4.2 or newer),
zebra.com/us/en/support-downloads/software/utilities/stagenow.html
Make sure to select MX10.0 while creating profile.
2. In the StageNow home screen left menu, click Create New Profile. The Select a Wizard window
<
motionworks apk path along fullname including apk> is the location of the MotionWorks
Proximity APK file
<filename> is the filename you give to the extracted certificate file.
.
appears.
27
StageNow Profiles
Figure 15 Select a Wizard Window
3. In the top drop-down list, select the proper MX version. This should match the MX version on the
device. Refer to MX documentation for instructions how to check the version.
4. Select Xpert Mode.
5. Click Create.
6. In the Enter Profile name field, enter the profile name.
7. Click Start.
8. Scroll down and click the plus (+) sign next to FileMgr. This adds FileMgr to the Config tab on the right
side.
9. Scroll up and click the plus (+) sign next to AppMgr. This adds AppMgr to the Config tab on the right
side.
10. Repeat step 9 two more times. AppMgr is listed three times in the Config tab.
11. Scroll up and click the plus (+) sign next to AccessMgr. This adds AccessMgr to the Config tab on the
right side.
12. Scroll up and click the plus (+) sign next to ConditionMgr. This adds ConditionMgr to the Config tab
on the right side.
Figure 16 Add/Edit Window
13. Click Add.
14. Either use FileMgr or another mechanism to copy the file to the device. If using FileMgr, proceed to
step 15. Otherwise, skip to step 17.
15. StageNow Config 1. In the FileMgr screen under the Create New Setting tab, select and enter the
desired options to install the APK.
28
StageNow Profiles
Click Continue.
16.
17. StageNow Config 2. For the first AppMgr, select the following:
Action: Install
APK Path and Name: <APK Path in device along with APK name>
18. StageNow Config 3. For the second AppMgr, enter/select the following:
Action: Application for Battery Optimization
Remove Application for Battery Optimization: com.zebra.mwproximity
19. Click Continue.
20. StageNow Config 4. For the third AppMgr, enter/select the following:
Action: Launch an application
Application Name: MotionWorks Proximity
21. Select the desired options for the remaining fields.
22. Click Continue.
23. StageNow Config 5. For the AccessMgr, enter/select the following:
Permission Access Action: Grant Permission to application
Application Package Name: com.zebra.mwproximity
Application Signature: Path for the extracted certificate (see Prerequisite on page 27 for details on
how to extract the certificate).
Click Continue.
24. StageNow Config 6. In the ConditionMgr screen under the Create New Setting tab, enter/select the
following:
Data Type: Integer
Integer System Value: Battery Level
Integer Condition Test: Equal-to a Constant Integer
Integer Constant Value: 0
Condition Met Action: Success
Condition Not Met Action: Retry
Condition Repeat Count: 5
Condition Repeat Interval: 1
Suppress the error message: enable.
This sets the condition such that if the battery level is not 0, it retries five times with an interval of one second for each retry. The end result is a five second delay.
25. Enter/select the desired options for the remaining fields.
26. Click Continue.
27. Click Complete Profiles.
28. Perform one of the following based on the staging method. Ensure devices are connected to the
network during the staging process:
a. StageNow: Generate the barcode. Open StageNow on the device and scan the barcode to deploy
the app.
29
StageNow Profiles
EMM: Click on Export the XML for MDM. Send the XML using one of the following methods based
b.
on the mode:
Device Owner mode - use OEMConfig to configure the app. Refer to
techdocs.zebra.com/oemconfig/10-0/about/
.
Device Administrator mode - use MX to configure the app. Refer to techdocs.zebra.com/mx/

Creating the Configuration Profile

To create a Configuration Profile:
1. Open StageNow on a PC.
2. In the StageNow home screen left menu, click Create New Profile. The Select a Wizard windows
appears.
Figure 17 Select a Wizard Window
.
3. Ensure the proper MX version is selected at the top drop-down selector. This should match the MX
version on the device. See MX documentation for instructions how to check the version.
4. Select Xpert Mode.
5. Click Create.
6. Enter the profile name.
7. Click Start.
8. Click the plus (+) sign next to Batch. This adds Batch to the Config tab on the right side.
9. Scroll down and click the plus (+) sign next to com.zebra.mwproximity. This adds
com.zebra.mwproximity to the Config tab on the right side.
30
StageNow Profiles
Figure 18 Add/Edit Window
10. Click Add.
11. StageNow Config 1. In the Batch screen under the Create New Setting tab, select the following:
Batch File Type: XML File
Batch File Access Method: File embedded in XML
XML File Data: [browse to the server configuration XML file supplied from Zebra services].
12. Click Continue.
13. StageNow Config 2. For com.zebra.mwproximity, see Configuration for additional information.
14. Enter/select the desired options.
15. Click Continue.
16. Click Complete Profiles.
17. Perform one of the following based on the staging method. Ensure devices are connected to the
network during the staging process:
a. StageNow: Generate the barcode. Open StageNow on the device and scan the barcode to deploy
the app.
b. EMM: Click on Export the XML for MDM. Send the XML using one of the following methods based
on the mode:
Device Owner mode - use OEMConfig to configure the app. Refer to
techdocs.zebra.com/oemconfig/10-0/about/
.
Device Administrator mode - use MX to configure the app. Refer to techdocs.zebra.com/mx/
.
31

Proximity Range Threshold Calibration

The default values for proximity range threshold (Proximity Beacon Rx RSSI Threshold) is set based on a specific environment, devices, and their position. Due to multiple factors affecting beacon signal strength, it is required for this to be manually fine-tuned to the specific environment and devices. If the proximity contact event results are not satisfactory, the proximity range threshold needs to be calibrated with the following steps after application installation and configuration on two test devices:
1. Open StageNow app and scan the Enable Logging barcode to enable logging.
Figure 19 Enable Logging Barcode
2. Wear the device as required for the workflow (e.g., either on a lanyard or belt clip with screen facing
outward).
3. Place a marker on the floor to indicate 0 feet. This should be performed in the environment where the
devices will be in use.
4. Place additional markers one foot above and one foot below the desired proximity distance. For
example, if the desired proximity distance is 6 feet, place a marker at 5, 6 and 7 feet.
5. For each device, scan the user associated barcode to start sensing.
6. For the first device, the device remains stationary at the 0 foot mark and can be propped against
something to simulate a person wearing a device. For best results, if possible, have someone wear the device.
7. For the second device, have one person wear the device starting at one foot further than the desired
proximity distance. Remain at the marker for 2 minutes before advancing to the next marker. Longer test times result to more sampling data to identify the threshold. Manually record the time stamp (from the device) and marker distance until all markers are recorded.
8. Open StageNow app and scan the Disable Logging barcode to disable logging.
32
Proximity Range Threshold Calibration
Figure 20 Disable Logging Barcode
9. Connect the device to a computer. Download the device log file from /sdcard/beaconscanner.
10. Open the .csv file. File names are based on the time stamp when the user is associated.
11. Identify the strongest RSSI_RA value at one foot further than the required proximity distance. Set the
Proximity Beacon Rx RSSI Threshold to a slighter stronger value than that identified.
Table 6 Threshold Values
RSSI_RA TimeStamp
Distance
(manually entered)
-89.78125 2020-05-08 15:06:54.008+0000 5
-87.90243902 2020-05-08 15:07:24.011+0000 5
-88.48717949 2020-05-08 15:07:54.008+0000 5
-87.18421053 2020-05-08 15:08:24.024+0000 5
-86.79310345 2020-05-08 15:08:54.010+0000 5
-86.03703704 2020-05-08 15:09:24.002+0000 6
-88.1875 2020-05-08 15:09:54.018+0000 6
-88.92307692 2020-05-08 15:10:24.021+0000 6
-87.1 2020-05-08 15:10:54.017+0000 6
-91.51515152 2020-05-08 15:11:24.012+0000 6
-93.48717949 2020-05-08 15:11:54.011+0000 7
-92.80645161 2020-05-08 15:12:24.016+0000 7
-93.09090909 2020-05-08 15:12:54.019+0000 7
-93.42857143 2020-05-08 15:13:24.005+0000 7
Table 6 displays sample data captured ranging from 5 to 7 feet. At 7 feet, the strongest value is -92.
Since the values at 5 and 6 feet are stronger than -90, the proximity threshold value can be set to
-90. (-90 is stronger than -92.)
12. Repeat testing as needed to collect data from different locations within the same site.
33
Proximity Range Threshold Calibration

Recommended RSSI Threshold Baseline

IMPORTANT: Use the below table as a starting point for RSSI setting. Customer must validate if the
default value is suitable for their environment using the above procedures.
Table 7 Device RSSI Threshold Baseline
Device RSSI
EC30 Android Oreo -90
MC3300 Android Nougat -80
MC9300 Android Oreo -90
TC21 Android 10 -93
TC26 Android 10 -90
TC51 Android Nougat -84
TC51 Android Oreo -84
TC52 Android Oreo -94
TC56 Android Oreo -81
TC57 Android Oreo -88
TC70x Android Nougat -74
TC70x Android Oreo -74
TC72 Android Oreo -82
TC77 Android Oreo -100
TC8300 Android Oreo -90
34
www.zebra.com
Loading...