Zebra Zebra Bluetooth Low Energy Devices MPACT Enhanced Indoor Beacon Toolbox User Guide

MPact
Enhanced Indoor Beacon Toolbox
User Guide
[document #]
Contents
Introduction ................................................................................................................................................................1
Theory of Operation ...................................................................................................................................................2
Operation ...................................................................................................................................................................3
Additional Notes ............................................................................................................................................. 2
RSSI Limit..........................................................................................................................................4
Power ................................................................................................................................................5
Scan Duration .................................................................................................................................... 5
Max Scan Time..................................................................................................................................5
Broadcast Interval..............................................................................................................................6
One Cycle .......................................................................................................................................... 6
Change Packet Time ......................................................................................................................... 6
Report Mode ...................................................................................................................................... 6
Number of UUID ................................................................................................................................ 6
UUID List ...........................................................................................................................................7
Save Permanent and Reload Buttons ...............................................................................................8
Screen Menu .....................................................................................................................................8
Scanning............................................................................................................................................9
Connecting the Toolbox to Beacon .................................................................................................10
Clear Button.....................................................................................................................................10
Details..............................................................................................................................................10
Read Button.....................................................................................................................................12
ID ..................................................................................................................................................... 12
HW Address ....................................................................................................................................12
Firmware..........................................................................................................................................12
Model Number ................................................................................................................................. 12
OUI – Organization Unique Identi󰘰er ............................................................................................... 13
SKU – Zebra’s Part Number ............................................................................................................ 13
Con󰘰g Button ................................................................................................................................... 13
Reboot Command ...........................................................................................................................13
i
Introduction
This document describes using the enhanced indoor beacon (Super Beacon) toolbox.
This document will address the usage of each of the three screens in the Super Beacon Toolbox. It will go into detail on
setting up various parameters that the toolbox can con󰘰gure in each of the Zebra Super Beacons (excluding Zebra’s MPACT beacons). It also will address how various parameters may a󰘯ect the operation of the Super Beacon and best
practices for setting these values considering how the Super Beacons might be deployed.
Zebra’s locationing solutions deploy Super Beacons for various applications. The most common are:
y Extending the range of 󰘰xed IoT bridges such as the MPACT-MB5000-01-WR: Super Beacons can be used as both
a waypoint beacon and a BLE receiver. Super Beacons can be wall mounted in a patient’s room listening for nearby asset beacons also in the room. Super Beacons then beacon information regarding the nearby beacons (a proxy for
assets in the room) which could then be heard by 󰘰xed or mobile IoT bridges within range.
y Locating mobile IoT Bridges: Super Beacons’ transmission packets can also be used as location beacons by mobile
devices. When a mobile IoT bridge receives a Super Beacon packet the location system can use the Super Beacon
location to de󰘰ne the location of the mobile IoT bridge. This approach also works to locate mobile computers, tablets
and other mobile devices serving as mobile BLE bridges (as part of the same location solution).
y Asset Location: In this application, the Super Beacon will listen for the nearest waypoint/location beacon and then
transmit this information using BLE as a captured beacon which can be picked up by a 󰘰xed IoT bridge. A good
example of this application is restaurant table service. A Super Beacon may be part of a numbered order tent. A
BLE location beacon is installed under the table. When the order tent is placed on the table, the Super Beacon will
hear the location beacon below and then indicate it’s nearest to this beacon in the captured beacon it sends out.

Supported Operating Systems

y Android
y iOS
Please refer to any additional documentation about Bluetooth Low Energy Products for information not covered in this document.
1

Theory of Operation

The Super Beacon listens for BLE beacons for a short period of time and then for a much longer time transmits information regarding the beacons it heard. The Super Beacon receives and transmits BLE. Beacons which the Super Beacon heard and then will forward to an IoT Bridge (a BLE receiver that sends the received packets to the location engine) are called captured beacons. Listening for beacons and then transmitting captured beacons is called a cycle. The Super Beacon may
listen for 5–10 seconds for surrounding waypoint/location and asset beacons. Waypoint/location beacons are typically BLE beacons installed in 󰘰xed locations the location engine corresponds with physical locations. Operation 󰘰lters can be setup
using this toolbox to determine which captured beacons the Super Beacon will discard and which will be forwarded. Once
the Super Beacon 󰘰nishes the scanning period and applies the 󰘰lters, it will start beaconing captured packet information formatted to represent the captured beacons it heard. If there is one capture beacon, each chirp (a chirp is a beacon transmitted on all three advertisement channels) will contain the same captured beacon. If there are two capture beacons, it will take two chirps to forward the two captured beacons. If there are 50 beacons captured, it will take 50 chirps to transfer all of the captured beacons. This process continues for as many chirps needed to 󰘰ll up the entire rest of the cycle period. Care must be exercised here in that the listen/receive period consumes a lot of battery power and can dramatically a󰘯ect the operating lifetime of the Super Beacon. The transmit/beaconing part of the cycle has signi󰘰cantly less impact on the battery life. A cycle which has a 5 second scan/listen window and a 10 minute cycle with chirps at 1 second intervals is estimated last approximately 2 two years on 2 AA batteries. For example a change of the scan/listen window to 10 seconds
will cut the operating life approximately in half.
The Super Beacon can also be used to track an asset. One example might be a portable stocking/shelf ladder home goods stores use to reach items above the 󰘰rst level of racks. You can con󰘰gure the Super Beacon to listen for the closest
waypoint beacon during the scan window and to then forward the closest waypoint beacon as a captured beacon during the chirp period. This approach has the advantage that you don’t need a very complex locationing algorithm. The Super Beacon
can also be con󰘰gured to not just forward the closest beacon but also up to the two additional closest waypoint beacons.
The following sections will describe in detail how to con󰘰gure the Super Beacon by placing the Super Beacon in the connect
mode and then allowing the Super Beacon Toolbox to connect and modify the Super Beacon’s operating parameters. The
Super Beacon 󰘰rmware code cannot be updated over the air.

Additional Notes

y Super Beacons use a speci󰘰c UUID (a unique universal identi󰘰er). The 󰘰rst two bytes of a Super Beacon are 9A:9E
or 9A:9F. The Super Beacon will not forward a 9A:9E Super Beacon that it hears. The 9A:9F UUID will also be discarded. The Super Beacon does not forward other Super Beacon information.
y If a Super Beacon does not have any captured beacon meeting the associated 󰘰lter criteria to be forwarded to
abridge, the Super Beacon will send a null captured beacon. This beacon is basically a “heartbeat beacon” with most 󰘰elds set to zero. This heartbeat beacon indicating the beacon is working properly but does not have any captured beacons. The heartbeat beacon operation can be leveraged by a location engine to serve as a location/
waypoint beacon. This beacon also provides battery life information of the Super Beacon itself.
2

Operation

This section will describe in detail how to use the Super Beacon toolbox application (Toolbox). The Toolbox is not
distributed as an open application. It is only available for speci󰘰c iOS or Android versions and must be downloaded from the rink.hockeyapp.net website. You will need to contact the Location Solutions Product Manager (or your Zebra account
manager) to obtain a USER_ID and password to access the rink.hockeyapp.net website. Once you have access to the website and the app URL you can download the Toolbox app to either your device. The screenshot below shows the how the Toolbox app appears on an iPad once you’ve downloaded the app.
The BLE Toolbox icon is also shown on this screen. This is a separate app and there is a separate user’s guide for
con󰘰guring the BLE Beacons. You can now launch the app to proceed to next step.
3

Settings Screen

When the Super Beacon Toolbox application is launched, the 󰘰rst window to pop up is the settings menu.
The top banner shows the Super Beacon toolbox version. Go to rink.hockeyapp.net to check for updates. The left-hand column is marked Current Settings; this column shows the parameters that can be controlled using this toolbox. Some of these settings will control what the toolbox does and some represent parameters that can be pushed to a Super Beacon as
updates. The column on the right can be changed to re󰘱ect the new or old values being pushed to the Super Beacon. You cannot selectively change a parameter, so if you are changing one or more parameters, you must set the parameters you don’t want to change to be the same as those in the beacon you are updating. The following sections discuss each setting/
parameter.

RSSI Limit

The RSSI limit is a setting for the toolbox. This parameter is used by the toolbox to 󰘰lter out Super Beacons transmissions that are below a certain RSSI level. If there are numerous other beacons in the area relative to the toolbox device, the toolbox will only pay attention to beacons whose RSSI is above the value in this 󰘰eld, which in this settings screen shows
-60 dBm. If you are using the toolbox but not connecting with any beacons you should con󰘰rm that you are using an appropriate RSSI setting as it might otherwise be 󰘰ltering out beacons you want to connect to. A lower RSSI value will allow the Toolbox to connect to more (i.e., further away) beacons.
4

Power

This parameter is a Super Beacon setting that selects the transmit power (TX power) the Super Beacon will use to transmit
non-connect beacons. This is the power level of the normal beacon packet transmission. Super Beacons support a range of transmit power settings: most allow the user to set the power from 2 dBm to -21 dBm. This setting represents the transmit power at the radio (not the EIRP), it does not include any antenna gain and does not consider any pads in the RF path. So if you set the TX power to 2 dBm and the Super Beacon has an antenna gain of -5 dBm and a 0 dB pad, the actual TX power at the antenna is 2 dBm + ant gain (-5dBm) + pad (-0 dBm) = -3dBm. This is the EIRP calculation example using the antenna gain and pad values of the MPACT-SB2000-01-WR. We have provided a reference table at the end of this guide to
show what these values are for each beacon type. Since the Super Beacon’s function is mainly forwarding nearby captured
beacon information, we recommend that Super Beacons be set at the highest power setting to make sure their beacon
transmissions can reach one or more IoT bridge devices at once. The only time you may want to reduce the TX power is if
the Super Beacon is heard by too many IoT devices. Each systems deployment will be di󰘯erent and care should be taken in
setting the TX power accordingly.

Scan Duration

There are two variables that control the time the Super Beacon listens for nearby BLE asset and waypoint beacons. These parameters are Scan Duration which we also call the Scan Window and the Max Scan Time or number of scan windows.
The scan window is de󰘰ned as the time the BLE pro󰘰le uses to scan the three advertisement channels. If the Scan Duration is set to 333 ms, the BLE pro󰘰le will listen on channel 37 for 111 ms, then on 38 for 111 ms and then again on channel 39
for 111 ms: a total of 333 ms. Keep in mind that the scan time also includes the incremental time the radio takes to change
frequency and re-lock the PLL to the new channel.
There are a few things one should consider when setting the scan window timing. For this example, if the beacons the Super Beacon is trying to capture are chirping at a rate of 100 ms, there is only one opportunity in 333ms to hear the same beacons on all three channels. If the asset beacon is only chirping on a one channel, you will have only one opportunity. If the asset beacon is chirping at 200 msec on all three channels, then you have one chance to hear the beacon in the scan window. If the asset beacon is chirping on all three channels at one second intervals, the chances are reduced to 0.33: You
will need at least three scan windows to catch one beacon on any channel.
The next consideration is how many times do you need to scan. If you have an asset beacon that chirps every two seconds
on all three channels, you need at least 6 scan windows at 333 ms each to have a chance at catching the beacon once in two seconds. If you have asset beacons chirping on all three channels at 2,000 ms one might suggest a scan count of 15— which is 5 seconds worth of listening time—that will provide approximately 2.5 opportunities of hearing the beacon.
Another item to consider is the number of BLE beacons that are expected to be nearby and if you care about them or not.
The way the Super Beacon pro󰘰le works is that once you place the call to start, the pro󰘰le will bu󰘯er all of the beacons it receives without error in its bu󰘯er locations. As it receives beacons with the same MAC_ID, it will replace the current copy
of a beacon in memory with the last reception if the newer reception has a better RSSI. If it does not it will drop the second
appearance of that MAC_ID and move on to the next packet. At the end of the scan window, it will begin transferring the packets in the scan bu󰘯er to the BLE code running on the IoT bridge. The BLE code will then start transferring formatted, captured BLE packets to the main memory and toss those that do not meet the associated 󰘰lter requirements. At the same time, the Super Beacon may be starting a new scan window. Some packets can potentially be lost if when the data being transferred out of the pro󰘰le bu󰘯er gets overrun with data coming in on the next scan. If that is the case, extending the scan
window to a larger number like 500 msec might help. But a caution here. As the scan window grows the additional number
of beacons potentially received might also 󰘰ll up the pro󰘰le bu󰘯er causing the pro󰘰le to drop packets because of memory
space limitations.

Max Scan Time

The Max Scan Time variable is a whole number equal to the number of scan windows. If you set the scan window to 500 ms
and the Max Scan Time to 10, then 500 ms x 10 = 5,000 ms (a 󰘰ve second scan time). As discussed previously, you want the total scan time to be greater than the chirp rate of the slowest beacon and the larger scan times dramatically a󰘯ect the
battery power consumption and resultant operational life before needing a battery replacement.
5

Broadcast Interval

The Broadcast Interval setting is the time between beacons in msec. The value for iBeacon is 100 msec. One second
would be 1,000. 2,500 equates to 2.5 seconds. The max limit on the Broadcast Interval is 10,000 msec or 10 seconds. We
recommend using a 1 second Broadcast Interval to reduce the number of beacons a Super Beacon that it is reporting to the hub. It is important to consider the amount of data broadcast from all of the Super Beacons at the same time and the meaningful information forwarded by a bridge back to the location engine.

One Cycle

This is a four-byte 󰘰eld that the user can set to whatever is desired, the units are in milliseconds. This parameter minus the scanning time represents the amount of time the Super Beacon will chirp out the captured beacons. For example, if the Super Beacon scan period is 5 seconds (a 10 Max Scan Time setting and 500 ms Scan Duration; 10 x 500 ms = 5000 ms = 5 seconds) and the One Cycle parameter is set to 600,000 ms (600 seconds = 10 minutes), the Super Beacon will chirp for 9 minutes and 55 seconds. If the Broadcast Interval is set to 1,000 ms (1 second), the Super Beacon will chirp 595 times.

Change Packet Time

This 󰘰eld determines how many times each captured beacon is sent consecutively. For example, if the Super Beacon has 5 captured beacons to send, and this parameter is set to “1”, the captured beacon transmission order will be 1, 2, 3, 4, 5. If you change this parameter to 2, the captured beacon order will change to 1, 1, 2, 2, 3, 3, 4, 4, 5, 5. If you set this parameter to 3, then the order will be 1, 1, 1, 2, 2, 2, 3, 3, 3... There are pros and cons for this parameter. The cons are that if the chirp rate is 1 second, you need to be in the area of the Super Beacon for at least 9 seconds to acquire all of the captured beacons the Super Beacon is attempting to transfer if the Change Packet Time parameter is set to “2”. The pro
for this parameter is based on a noisy RF environment. If the Super Beacon was placed near a microwave oven or similar
periodical RF interferer, it might make sense to repeat the capture beacon several times (where the repeat time is greater
than the interference time) so as to hear all packets.

Report Mode

This parameter was added on version 1.3.0.18 of the Super Beacon code. If the Super Beacon you are con󰘰guring is
1.3.0.17, this 󰘰eld does not work but you can still use the toolbox to update parameters on Super Beacons running 1.3.0.17.
This parameter allows the user to specify how many of the closest beacons should be reported. If this parameter is set to
“0”, all beacons (less duplicates and those that fail to meet associated 󰘰lter requirements), will be forwarded to a receiver/ bridge. If this parameter is set to a “1”, the Super Beacon will forward only the single closest beacon (based on RSSI value and RSSI@1M). This feature can be used for “󰘰nd me” applications like “table service” where the Super Beacon within a numbered order tent is placed on a table by a customer and the table has a 󰘰xed beacon under it. The Super Beacon will
report to the location engine that it is closest to the waypoint beacon placed under the table. It will only report that beacon
(the strongest beacon signal received). Setting this 󰘰eld to “2” will have the Super Beacon sending out the two closest beacons. “3” is for the three closest beacons. This 󰘰eld is can be set for 0-30 captured beacons.

Number of UUID

The UUID 󰘰eld in a beacon is a 16-byte 󰘰eld that normally is used to identify the iBeacon format and to associate a beacon with an institution or company like Zebra. There are 󰘰ltering modes in both Zebra’s bridge products (like the MPACT­MB5000-01-WR) and the Super Beacon that use this 󰘰eld to control which beacons are forwarded to the location engine. The Super Beacon can be con󰘰gured to forward captured beacons from 1 to 10 di󰘯erent UUIDs. This parameter is used to
tell the Super Beacon how many beacon UUIDs it can forward to a receiver.
6

UUID List

The UUID list shows what UUIDs the Super Beacon will forward as captured beacons. This list will match the “Number of UUID” discussed previously. This table can be changed by touching the “ADD UUID” button. When you do this the screen
pops up with the following:
7
You can see that a second UUID appeared at top of the UUID list. You can edit either UUID in this list by touching the speci󰘰c UUID you want to edit. When you touch the UUID to edit you will see the next screen:
Notice this is the standard device keyboard for entering characters (in this case an iPad). Note the “47FAEAC938DB” in the upper left-hand corner of the keyboard. This represents the last 6 bytes of the UUID you are trying to edit. This lets the user
see that four characters have been removed and four new characters have been added without switching back and forth
between screens. You can edit all 16 characters if you desire. Changing only the last four characters to keep it simple.

Save Permanent and Reload Buttons

These buttons are used to save or recall the saved settings. If you are programming multiple Super Beacons at once, you can 󰘰rst set up all the parameters 󰘰rst and hit the “Save Permanent” button which will save the current values in the Toolbox settings. You can continue to make changes to the settings and uses these minor changes for other beacons. Once you are 󰘰nished con󰘰guring additional beacons, you can hit the “Reload” button and restore the current settings you changed to
those which you saved permanently.

Screen Menu

The bottom banner allows the user to move from one screen to another. There are three screens in this toolbox. The
“Settings” button on the bottom left selects this screen that we just reviewed in this section. The “Beacons” screen in the
middle of the banner allows you to select which beacon you want to connect to for the purpose of reading or changing
parameters. The “Details” button to the right of the “Beacons” button shows the parameters of a selected beacon and allows the user to read and write the beacon settings. Unlike the beacon toolbox, the “Upgrade” button does not exist in the Super
Beacon toolbox because you cannot use this toolbox to update the Super Beacon code.
8

Beacons Screen

The Beacon screen is shown below. This screen is used to see which Super Beacons have connected to the toolbox. You
need to connect to a beacon before you can read or modify parameters.
Right now, the screen is blank, the toolbox has not connected with any beacons. The 󰘰rst step to connect the toolbox to a
beacon is to start the toolbox scanning.

Scanning

To put the toolbox in connect mode, touch the “Start Scan” button. This puts the toolbox into scan mode looking for a nearby Super Beacon to connect. Next, the user needs to place the Super Beacon in the connect mode. All Zebra Super Beacons enter the connect mode by holding down the button on the beacon and watching the LED blinking. At 󰘰rst, the LED blinks
slowly. Releasing the button during this slow blink period places the Super Beacon back into beaconing mode. After the
slow blink is on for about 5 second, as the user continues to hold the button down, the blink rate will change from slow to fast. When this happens, you can remove your 󰘰nger from the button and the Super Beacon will go into connect mode. When the Super Beacon is in the connect mode and the toolbox is in the scan mode, the toolbox will pair with the beacon.
9

Connecting the Toolbox to Beacon

The screen shot below shows a SBeacon that is now connected to the toolbox. The last three bytes of the MAC_ID of the
beacon are shown on the left hand of the “Super Beacon” screen.
Notice that the “Start Scan” button has changed to “Stop Scan”. You can use this to stop the capture process if desired. If not, you can continue to add more Super Beacons to this list by performing the same connect button pushes described in
the previous section on other Super Beacons.
Once you have connected to the Super Beacon you want to read or modify, touch the MAC_ID on the left part of the screen you want to work with and the toolbox will take you to the “Detail” screen.

Clear Button

This button can be used to clear the beacon list on the left.

Details

This button will take you back to the previous “Detail” screen. To see the details of a Super Beacon on this screen, touch the MAC_ID of the beacon you want to work with on the “Detail” screen.
10

Detail Screen

This screen shot below shows the Detail screen. This is used to read and monitor the parameters in a Super Beacon.
On the left side of this screen you can see the names of various parameters and status indicators. On the bottom banner, you can see the buttons “Read”, “Con󰘰g”, “Reboot”, and “Stop”. Stop is not highlighted because the current Super Beacon Status is “Idle”. This button will become highlighted once one of the “Read”, “Con󰘰g” or “Reboot” functions are invoked. Notice that the Beacon Value column shows all zeros – this will change once the “Read” command is invoked. The Setting
Value column displays the values that were setup when starting with the Settings screen. These values can be changed by going back to the Settings screen and changing the parameters on that screen.
11

Read Button

To read the parameters on the selected Super Beacon, the user needs to touch the “Read” button. The screen below shows
the results of reading the values from the selected Super Beacon.
This section will review these columns and what they mean. Notice that after the “Read” was completed, the middle column became 󰘰lled in and highlighted. The current Beacon Status shows “Read Done”. Below the Read Done is the column header Beacon Value. This is separated into two parts, parameters that are 󰘰xed or cannot be modi󰘰ed by this screen and another Beacon Value section which has parameters that can be modi󰘰ed by this screen. To the right of this column is the
values we initially set in the Setting screen. Notice that the values in red are parameters read from the beacon which do not match the parameters set in the Setting Value column. The beacon parameters will be updated to match those in the Setting
Value column when the “Con󰘰g” button is touched.
ID
This is a random number which the SBeacon has.

HW Address

This is the last three bytes of the MAC_ID. This Super Beacon MAC_ID is A4:34:F1:9F:EE:C0.

Firmware

This parameter is the current version of 󰘰rmware loaded in the Super Beacon. In this case the 󰘰rmware is 1.3.0.17 which is
the initial code release with Rev A of the Super Beacon.

Model Number

This is the model number of the Super Beacon which is “MPACT-INDR1”. This is how the beacon is registered regarding Zebra’s regulatory certi󰘰cations and is di󰘯erent from the SKU used to purchase the product.
12
OUI – Organization Unique Identi󰄈er
This is the 󰘰rst 3 bytes of the MAC_ID. This block of MAC_IDs were issued to Texas Instruments who designed the BLE
chip Zebra is using. This Super Beacon MAC_ID is A4:34:F1:9F:EE:C0.

SKU – Zebra’s Part Number

This 󰘰eld contains the Zebra part number for this beacon. There are many SKUs for this style of beacon and all of them share the same model number. The SKU di󰘯erence indicates di󰘯erences which can be in the software, the antenna, the pad installed on the beacon, branding, or other. The Super Beacon SKU is the MPACT-SB2000-01-WR.
Con󰄈g Button
The “Con󰘰g” button is used to push the parameters shown in the Setting Value column on the right. When you invoke the “Con󰘰g” command, the screen will be as shown below.
Notice the Beacon Status changes to “Con󰘰g_Done.” Also note that the values in the Beacon Value column now match the values in the Setting Value column. The toolbox will reboot the Super Beacon after it has completed the con󰘰guration operation on the beacon. This places the Super Beacon back into the beaconing mode. You will need to go back to the scan “Beacons” screen to re-connect to the Super Beacon and also place the Super Beacon back into the connect mode before a
reconnection can be made.

Reboot Command

This button will reboot the Super Beacon shown on the screen. Once the beacon reboots, it will come up in the beaconing mode. You will need to go back to the scan “Beacons” screen to re-connect to the Super Beacon. You will also place need
to place the Super Beacon back into the connect mode if you wish to reconnect the beacon with the toolbox to read and update the Beacon Settings.
13

Appendix

Below are important parameters for each current Zebra Beacon SKU.
Name SKU
Antenna Type
Super Beacon MPACT-SB2000-01-WR Patch -5 0 -73 -57 9A9E 1000 2 -3 -21 2
Antenna Gain (dBm)
Pad (dBm)
RSSI at 1m power @ -21
RSSI at 1m power @ -5
UUID Last 4 Bytes
Default Chirp (ms)
BLE Power Default (dBm)
BLE EIRP Default (dBm)
BLE Power Min (dBm)
BLE Power Max (dBm)
www.zebra.com
Loading...