Eddystone configuration
General
Eddystone is a Bluetooth Low Energy beacon profile released by Google.
We use Eddystone-URL frame, which broadcasts a URL using a compressed encoding format in order to fit more within the limited advertisement packet. It has following frame specification:
Byte offset
Field
Description
0
Frame Type
Value = '0x10'
1
TX Power
Calibrated TX power at 0 m
2
URL Scheme
Encoded Scheme Prefix
3+
Encoded URL
Length 1-17
Setting up Eddystone for YSoft SafeQ Mobile Terminal
Required data
Terminal Server IP Address
Terminal Server SQTA Port (default is 5021 for HTTP, 5022 for HTTPS)
Device ID
Where to find required data
You can scan the QR code generated for the installed device with a basic QR code scanner. It contains all the required information you will need for setting up an Eddystone.
The data in QR code looks like {"terminalServerEndpoint":"<url_scheme><terminal_server_ip>:<port>/et/v1/<device_id>"}
Other option is to use simple web conversion tool: https://www.ysofters.com/qr/?q=%7B%22terminalServerEndpoint%22:%22https://10.0.13.199/et/v1/1%22%7D
Creating compressed data for Eddystone
Convert IP Address's octets from decimal to hex representation (ignore dots between octets)
the result MUST be exactly 8 characters long
e.g.: 10.0.13.199 would be converted to 0A000DC7
Convert Terminal Servers SQTA Port from decimal to hex representation
the result MUST be exactly 4 characters long
e.g.: 5021 would be converted to 139D
e.g.: 200 would be converted to 00C8
Convert device ID from decimal to hex representation
the result MUST be at most 5 characters long
e.g.: 719 would be converted to 2CF
Concatenate all the results
e.g. Terminal Server at 10.0.13.199 with SQTA port 5021 and device ID 719 would be 0A000DC7139D2CF
Other option is to use simple web conversion tool. Just specify valid URL from terminalServerEndpoint and result will be visible in the field Eddystone: https://www.ysofters.com/qr/?q=http://10.0.13.199:5021/et/v1/719.
Writing compressed data to Eddystone
To write data to an Eddystone, you have to use your Eddystone's manufacturer's application.
Data MUST be written to Eddystone-URL frame (field Encoded URL)
You MUST also set whether you want the URL scheme to be HTTP or HTTPS (secure)
0x02 is http://
0x03 is https://
Beacon configuration with iBKS Config Tool
Prerequisites:
Android/iOS device
Device with Bluetooth Low Energy support
Bluetooth is turned ON
YSoft currently uses beacons from Accent Systems (https://accent-systems.com/). To configure this beacon, you will need mobile configuration application from Accent Systems which is available for
Android (https://play.google.com/store/apps/details?id=com.accent_systems.ibks_config_tool)
iOS (https://itunes.apple.com/us/app/ibks-config-tool/id929525388?mt=8)
The application provides you with a nice tutorial which will help you at the beginning.
For more information: https://accent-systems.com/support/knowledge/getting-started/
Simple configuration steps:
List of available devices (only devices with the white background are in connectable mode)
To be able to connect to the beacon, a user needs to stop scanning (by tapping the blue circle in bottom right corner). Otherwise, the application will show a warning.Connection to selected device
After a successful connection, a user is able to see and configure different beacon services. Accent Systems beacons offer two main services: Eddystone and iBeacon. To be able to use beacon with Mobile Terminal, we will need Eddystone service. And because we won't need iBeacon, it is better to turn it off and save some battery.Eddystone service configuration
Eddystone URL offers 4 values to be configured:
Advertising interval - how often are packets broadcasted. Lower number means better signal stability and accuracy, but higher battery consumption. For our purposes, default value (950ms) should be ok.
Radio Tx. Power - advertising power. Default value is 0 which results in range about 30-40 m (depending on number of obstacles between beacon and mobile device). Lower the value, lower the advertising power. For example value "-16" results in a range about 5-8 meters.
Calibration power - this is a default value which doesn't need to be changed.
URL - actual broadcasting value. Needs to be properly configured according to documentation above.
The application offers also more advanced features like changing beacons name or setting a password. These options can be useful for managing beacons.