AXA Stenman Nederland AXA-ERL-01 AXA E-RL Bycicle lock User Manual eRL Wireless Bluetooth LE Datasheet

AXA Stenman Nederland B.V. AXA E-RL Bycicle lock eRL Wireless Bluetooth LE Datasheet

User Manual

BLUETOOTH LOW ENERGY E-RL LOCK
DRAFT INTERFACE SPECIFICATION
Version 0.9
25/01/2016
AXA Stenman
EnergieStraat 2
3903 AV Veenendaal
Netherlands
http://www.axa-stenman.com/
T: +31 318 536 111
F: +31 318 595 535
Copyright © 2016, AXA Stenman
Page 2 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Disclaimer
The information contained in this document is believed to be correct and complete. However,
Axa-Stenman does not give any representations or warranties, expressed or implied, as to the
accuracy or completeness of such information and shall have no liability for the consequences
of use of such information. In no event shall Axa-Stenman be liable for any indirect,
incidental, punitive, special or consequential damages (including - without limitation - lost
profits, lost savings, business interruption, costs related to the removal or replacement of any
products or rework charges) whether or not such damages are based on tort (including
negligence), warranty, breach of contract or any other legal theory.
Notwithstanding any damages that customer might incur for any reason whatsoever, Axa-
Stenmans aggregate and cumulative liability towards customer for the products described
herein shall be limited in accordance with the Terms and conditions of commercial sale of
Axa-Stenman
Customers are responsible for the design and operation of their applications and products
using Axa-Stenmans products, and Axa-Stenman accepts no liability for any assistance with
applications or customer product design. It is customer’s sole responsibility to determine
whether the Axa-Stenmans product is suitable and fit for the customer’s applications and
products planned, as well as for the planned application and use of customer’s third party
customer(s). Customers should provide appropriate design and operating safeguards to
minimize the risks associated with their applications and products.
Axa-Stenman reserves the right to modify any of the documentation at any time and without
notice. Axa-Stenman assumes no responsibility for any infringements of patents or other rights
of third parties that may result from the use of any product or documentation of Axa-Stenman.
Information in this document is believed to be accurate and reliable.
Copyright
This document is copyrighted. All rights are reserved.
Copyright © 2013 - 2016 Axa-Stenman Veenendaal, Netherlands.
Page 3 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Page 4 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Table of Contents
1. INTRODUCTION ..................................................................................................................................... 6
1.1 QUICK OVERVIEW OF BLUETOOTH LE ..................................................................... 6
1.1.1 Application Perspective ..................................................................................... 6
1.1.2 Services .............................................................................................................. 9
1.1.3 Profiles ............................................................................................................. 10
1.1.4 Attributes and Characteristics ......................................................................... 10
1.1.5 Advertising and Connections ........................................................................... 11
1.1.6 Pairing and Bonding ........................................................................................ 12
1.1.7 Radio Communication ..................................................................................... 13
1.2 SYSTEM DESCRIPTION ........................................................................................... 15
2. E-RL PROFILE ....................................................................................................................................... 16
2.1 BATTERY SERVICE ................................................................................................... 16
2.2 DEVICE INFORMATION SERVICE ............................................................................... 16
2.3 LINK LOSS SERVICE ................................................................................................. 17
2.4 IMMEDIATE ALERT SERVICE ..................................................................................... 17
2.5 TX POWER SERVICE ................................................................................................. 17
2.6 PROXIMITY PROFILE ................................................................................................. 17
2.7 LOCK COMMAND CONTROL SERVICE ....................................................................... 18
2.8 DEVICE FIRMWARE UPDATE SERVICE ...................................................................... 18
3. OPERATION ........................................................................................................................................... 19
GENERIC ACCESS PROFILE ............................................................................................. 19
UNLOCKED MODE SECURED / UNSECURED / UNEXPECTED ......................................... 20
BLUETOOTH LE MODE UNLOCKING / LOCKING ........................................................... 20
4. APP REQUIREMENT SPECIFICATION ........................................................................................... 24
5. ELECTRICAL CHARACTERISTICS ................................................................................................. 26
APPENDIX A BATTERY SERVICE ..................................................................................................... 27
APPENDIX B DEVICE INFORMATION SERVICE .......................................................................... 29
APPENDIX C TX POWER SERVICE ................................................................................................... 35
APPENDIX D LOCK COMMAND CONTROL SERVICE ................................................................ 37
APPENDIX D.1 LOCK STATE ATTRIBUTE ..................................................................... 40
APPENDIX D.2 LOCK COMMAND ATTRIBUTE .............................................................. 41
APPENDIX E DEVICE FIRMWARE UPDATE SERVICE ................................................................ 42
APPENDIX F TEST SCENARIOS ......................................................................................................... 43
APPENDIX G INSTALLING APPS ON ANDROID ............................................................................ 44
Page 5 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
ANDROID 4.X ................................................................................................................. 44
ANDROID 5.0 .................................................................................................................. 45
INSTALLATION PHASE ..................................................................................................... 45
APPENDIX H APP REQUIREMENT SPECIFICATION ................................................................... 46
Page 6 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
1. Introduction
The Bluetooth Low Energy Wireless eRL lock can be controlled directly through
standard Bluetooth LE communication without the need for a proprietary
communication stack. Bluetooth Low Energy sometimes referred to as Bluetooth 4.X
or Bluetooth Smart is a new technology completely different and not compatible with
Classic Bluetooth that has been around since 2001. Classic Bluetooth is well known
for its use in hands free car kits and wireless earphones remote controls for GSM and
smart phones.
The Bluetooth Low Energy (BLE) based eRL takes all complicated lock handling,
timing and key management out of the hands of the App builder and offers a simple
straightforward standard interface to control and monitor the eRL. The eRL employs
an extreme smart low power saving mode minimizing current consumption to
maximize battery life while offering selective response to control commands. The eRL
remembers and learns the user’s behavior and automatically adopts itself to the user’s
needs maximizing the time it’s asleep. The net effect will be that when the user is
asleep the eRL will be asleep as well and before the user comes to take his bicycle the
eRL will wake up and prepares for just another day at the office. All this is done with
only one sole purpose and that is to maximize battery life while minimizing the
negative effects for the user.
1.1 Quick Overview of Bluetooth LE
Bluetooth Low Energy (BLE) is a Bluetooth technology which was released into the
main Bluetooth standard in 2010 along with the Bluetooth Core Specification Version
4.0. Classic Bluetooth devices had suffered from being extremely energy greedy, and
the need for a better energy management was necessary. BLE solved this problem and
has since been used on most modern devices (all Apple iPhone since the 4S, Samsung
phones since the Galaxy SIII, and many more). BLE allows us to use the bluetooth
communication for small data exchanges and hence to avoid consuming as much
energy.
1.1.1 Application Perspective
Before we get into the description of how the eRL works in detail, let’s simply review
a couple characteristics of Bluetooth LE devices and how the eRL fits in these:
Servers vs. Clients: these definitions are fairly classic. The Client emits
requests and receives responses while the Server listens for requests and sends
responses.
Central vs. Peripheral: The peripheral device has valuable information to
share with central devices. The central device treats the received data to fulfill
specific tasks.
Page 7 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Figure 1.
Figure 1 is giving an overview of the different roles, so what is the difference between
a client and a server? First let me remind you that a client and a server is not
interchangeable with master/slave.
Figure 2.
Standard Bluetooth LE peripherals broadcast their presents in order to be found by
centrals like smartphone’s and tablets, see Figure 2. The eRL is no exception to this,
when not connected by a central its broadcasting its presents so other centrals can find
it during a scan and make a connection if the peripheral allows connections that is.
Apart from the higher power consumption this introduces a security risk for some
product like bicycle locks, thieves will be able to locate bicycles in garages and/or
sheds by simply using one of the many freely available Bluetooth LE scanner/localizer
apps for smartphones. In order to overcome this kind of problems and to extend the
battery lifespan the BLE eRL uses a smart sleeping mechanism, during a sleeping
period it’s not broadcasting and undetectable even for the bicycle owner’s app.
Exiting this particular sleeping state the eRL needs to be woken-up by a subtle
movement to start it advertising again during a set period. The smartphone app will
now be able to detect the advertising packets and act accordingly depending on the
relationship with the eRL.
Page 8 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Figure 3.
In real-life situations smartphones (Central) will be surrounded by peripherals
broadcasting (Advertising) their presents, see Figure 3.
A master (or Central) is the BLE device that initiates an outgoing connection request
to an advertising peripheral device.
A slave (or Peripheral) is the BLE device which accepts an incoming connection
request after advertising.
A slave can only be connected to one master, but a master can be connected to
multiple slaves. In the smartwatch example, your iPhone can theoretically connect to
multiple smartwatches at the same time. However, your smartwatch can only ever
connect to one smartphone at a time.
There is no limit in the Bluetooth SIG on the number of slaves a master can connect
to. Generally this will be limited by the BLE technology or Bluetooth stack you use.
Devices such as smartphones or tablets would generally (but not exclusively) adopt
the role of “Scanner” and would “discover” other devices that have adopted the
“Advertiser” role by a process called discovery which can be active (“are there any
devices out there?”) or passive (“I’ll listen whilst devices advertise their presence”).
Devices that adopt the “Advertiser” role are generally (but not exclusively) smaller
footprint devices such as heart rate monitors or temperature sensors.
Once devices have discovered one another one will act as an “Initiator” (typically the
smartphone or tablet type device) and attempt to connect to one of the devices that it
has discovered. If successful it will adopt the role of Master and the other will
adopt the role of Slave”. Masterdevices will initiate commands and requests to
Slave” devices which will respond.
One of the first task of a Bluetooth LE application, such as on a smartphone app, is to
discover other Bluetooth LE devices that it can connect to.
Page 9 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
1.1.2 Services
Once a device has been discovered the next task is to figure out what services are
offered by the device. So, what’s a service? Well, a service consists of:
A Service Specification, which consists of:
o A collection of characteristics;
o References to other service.
Figure 4 is giving an visualization to help cement the concept of services and
characteristics. When talking about services we use the names:
GATT Server
GATT Client
This highlights the client/server model that is used at this level of the architecture.
Figure 4.
Let’s move on to the differences between a GATT server and a GATT client
A GATT client is a device which accesses data on the remote GATT server via read,
write, notify, or indicate operations.
A GATT server is a device which stores data locally and provides data access
methods to a remote GATT client.
You can easily see that it is possible for a device to be a GATT server and a GATT
client at the same time. While it is most common for the slave (peripheral) device to
be the GATT server only and the master (central) device to be the GATT client, this is
not required. The GATT functionality of a device is logically separate from the
master/slave role. The master/slave roles control how the BLE radio connection is
managed, and the client/server roles are dictated by the storage and flow of data.
Page 10 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
1.1.3 Profiles
A GATT database implements one or more profiles, and each profile is made up of
one or more services, and each service is made up of one or more characteristics.
Figure 5.
GATT servers can implement as many profiles, services, and characteristics as needed
by the product, figure 5. When using a non-standard profile, a 128bit UUID is
required and must be provided by the peripheral producer offering this unique profile.
You can also adhere to any Bluetooth SIG profiles (services, and characteristics)
currently supported, in which case the profile UUID is 16bit long. Every BLE device
acting as a GATT server must implement the official Generic Access service. This
includes two mandatory characteristics: Device Name and Appearance.
1.1.4 Attributes and Characteristics
Remember that a service is made up of one or more characteristics. However, one
characteristic may be comprised of many different attributes.
Each attribute is given a unique numerical handle which the GATT client may use to
reference, access, and modify it. Every characteristic has one main attribute which
allows access to the actual value stored in the database for that characteristic. When
you “write a value to a characteristics” or “read the value of the characteristic” you are
doing read and write operations on the main data attribute (of said characteristic).
Some other related attributes are read-only (such as a Characteristic User
Description attribute), some control the behavior of the characteristic (such as
the Client Characteristic Configuration attribute which is used to
enable notify or indicate operations).
Page 11 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Every attribute has a UUID. These may be either 16 bits (e.g. 0x180A“) or 128 bits
(e.g. 0x23D1BCEA5F782315DEEF121200000000“). All 16-bit UUIDs are defined
by the Bluetooth SIG and are known as adopted UUIDs. All 128-bit UUIDs are
custom and may be used for any purpose without approval from the Bluetooth SIG.
Two very common 16-bit UUIDs that you will see are 0x2901, the Characteristic User
Description attribute and 0x2902, the Client Characteristic Configuration attribute (to
enable either “notify” or “indicate” on a characteristic).
One important note is that some attribute UUIDs do not technically need to be unique.
Their handles are always unique, but the UUIDs occasionally overlap. For example,
every Client Characteristic Configuration attribute has a UUID of 0x2902, even
though there may be a dozen of them in a single GATT database.
1.1.5 Advertising and Connections
The Generic Access Profile (GAP) specifically describes behaviors and procedures for
device discovery, connection establishment, security, authentication, and service
discovery, and this along with performing a single defining role. In essence, a
Bluetooth device may incorporate either initiating or accepting procedures, and the
peer device must support the corresponding functionality. One of the most important
things to understand with Bluetooth low energy is how two devices first find one
another, work out what they can do with one another, and how they can find and
connect with one another repeatedly. This is really what GAP defines.
There are four GAP roles defined for a Bluetooth low energy device:
Broadcaster
Observer
Peripheral
Central
A broadcaster is a device that sends advertising packets. Typically, this is used to
broadcast some data from a service to other devices that happen to be in an observer
role. A broadcast must have a transmitter but does not need a receiver. A broadcast-
only device, therefore, only needs a transmitter.
An observer is a device that scans for broadcasters and reports this information to an
application. An observer must have a receiver; it can also optionally have a
transmitter.
A peripheral is a device that advertises by using connectable advertising packets. As
such, it becomes a slave once connected. A peripheral needs to have both a transmitter
and a receiver. The eRL has adopted the role of peripheral device and as such is
sending advertising packets while not connected.
Page 12 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
A central is a device that initiates connections to peripherals. As such, it becomes a
master when connected. Just like a peripheral, a central needs to have both a
transmitter and a receiver. We explained before that since the eRL has adopted the
role of peripheral device the smartphone will need to accept the role of central in this
system. The role that is already normal for smartphone’s since most other BLE
peripherals connected to the smartphone are peripheral’s, for example smartwatches
or other body sensors that measure vital signs while cycling. A device can support
multiple GAP roles at the same time. For example, a device can be a broadcaster and a
peripheral at the same time.
1.1.6 Pairing and Bonding
Just a quick writeup on the difference between pairing and bonding, since these terms
get used interchangeably. This has to do with the usage of ‘pairing’ in Bluetooth
Classic, or BR/EDR.
As far as Bluetooth LE is concerned, pairing and bonding are two very distinct things.
The short explanations are that pairing is the exchange of security features each device
has, and creating temporary encryption for the livecycle of the connection. Bonding is
the exchange of long term keys after pairing has occurred, and storing those keys
for later use. Pairing is not the creation of permanent security between devices, that is
called bonding. Pairing is the mechanism that allows bonding to occur.
Pairing
Pairing is the exchange of security features. This includes things like i/o capabilities,
requirement for man-in-the-middle protection, etc. The client side begins this
exchange. The client essentially says ‘hey, i’d like it if you had these features’. The
server replies, ‘yeah, well, this is what I can do’. Once this exchange is made, the
security that will be used has been determed. For example, if a server supports just
noInput/noOutput for i/o capabilities, the Just Works pairing mechanism is going to
be used. Once the pairing feature exchange is complete, a temporary security key is
exchanged and the connection is encrypted, but only using the temporary key. In this
encrypted connection, long term keys are exchanged. These keys are things like the
(long term) encryption key to encrypt a connection, and also things like a digital
signature key. The exact keys exchanged are determined by the security features of
each device.
Bonding
This really just means that after the pairing features exchange and the connection has
been encrypted (these two together are called ‘pairing’), and keys have been
exchanged, the devices store and use those keys the next time they connect. Keys can
be exchanged using the bonding procedure, but that does not mean they are bonded if
the keys are not stored and used the next time.
Page 13 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
If a device is bonded with another device, like a heart rate monitor and a smartphone,
they can encrypt the connection without exchanging any sensitive security
information. When the smartphone connects to the heart rate monitor, it can just issue
a ‘turn on encryption’ request, and both sides will use the keys already stored, so
nobody snooping can see a key exchange and therefore decode the messages being
sent, as is done when pairing.
Certificate
Standard BLE does not use certificates for setting up a secure connection between the
master and slave, the eRL does however use certificates signed by the cloud certificate
authority KeySafe for setting up secure connections. Without the certificate handover
by the master (e.g. smartphone) and positive outcome of the verification the eRL will
not allow any device to pair, all pairing requestes by the master will be rejected with
an insufficient authentication error code. When the certificate is accepted by the eRL
it will initiate the setup of a secure link between the devices and allows the user to
input the 6 digit passkey on older smartphones or on the more modern smartphones
allows the app to input the 128 bit passkey for the user automatically. Entering the
passkey is only required once during pairing and bonding, all other times the
smartphone will remember the saved bonding information and connects flawlessly
with the eRL until the certificates time has expired. Both the certificate and passkey
are provided by the KeySafe cloud service upon requesting for an eKey. The system
will be completely compatible with the future revisions of BLE which will introduce
DiffieHellman key exchange to secure the pairing and bonding even further.
1.1.7 Radio Communication
Classic and Bluetooth LE operates in the 2.45 GHz band which it shares with Wi-Fi,
Zigbee and microwave ovens worldwide!. Bluetooth LE still retains its fundamental
resilience by splitting its radio traffic across 40 channels as shown below (Figure 6).
Figure 6.
Page 14 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
The Bluetooth low energy channels differ from classic channels because of the relaxed
modulation index. This means that the radio energy for each channel is spread wider;
therefore, to prevent interference between adjacent Bluetooth low-energy channels,
they are separated by 2MHz, instead of the classic 1MHz. In the Link Layer, these
channels are divided into two types: advertising channels and data channels. These
channel types are aligned with the advertising packets and data packets, as described
earlier. When a packet is transmitted, if the packet is sent on an advertising channel, it
is an advertising packet. If the packet is sent on a data channel, it is a data packet.
There are 3 advertising channels and 37 data channels, as shown in Figure 6 (the
advertising channels are rendered in light blue shading). The 3 advertising channels
are not all placed in the same part of the ISM band because that would mean that any
deep fade in a single part of the band would stop all advertising. Instead, the
advertising channels are placed a minimum of 24MHz apart from one another.
The advertising channels are placed strategically away from significant interferers
such as a Wi-Fi access point. These public access points typically use one of three
802.11 channels, either channel 1, channel 6, or channel 11. These channels have
center frequencies of 2412MHz, 2437MHz, and 2462MHz and a width of
approximately 20MHz. This means that channel 1 extends from 2402MHz to
2422MHz, channel 6 extends from 2427MHz to 2447MHz, and channel 11 extends
from 2452MHz to 2472MHz. The advertising channels are placed at 2402MHz,
2426MHz, and 2480MHz. This means that the first advertising channel is below Wi-
Fi channel 1, the second advertising channel is between Wi-Fi channel 1 and channel
6, and the third advertising channel is above Wi-Fi channel 11. This is illustrated in
Figure 6, in which 3 Wi-Fi channels have blocked the use of data channels 0 to 8, 11
to 20, and 34 to 32. The 3 advertising channels, 37, 38, and 39, are all interference
free. Bluetooth LE Radio traffic hops around these channels in a pseudo random
manner so that the data with get through even though it’s in an areas shared by a
number of Wi-Fi networks, or microwave ovens. One of the differences between
Bluetooth LE and classic Bluetooth is the number and use of these channels.
When in a data connection, an adaptive frequency-hopping algorithm is used.
Adaptive frequency hopping makes it possible for a given packet to be remapped from
a known bad channel to a known good channel so that the interference from other
devices is reduced. To do this, a channel map of good and bad channels is kept in both
devices. If the channel that would have been chosen by the master device is a good
channel, then that channel is used; if the channel that would have been chosen is a bad
channel, then it is remapped onto the set of good channels. A minimum of two data
channels must be marked as good by a master.
Suppose, for example, that a Bluetooth low energy device is in the same area as a Wi-
Fi channel 1 access point that is streaming data to another Wi-Fi device. The
Bluetooth low energy device would mark Link Layer data channels 0 to 8 as bad
channels. This means that when the two devices are communicating, they would cycle
through the channels and remap these channels to a set of good channels,
Page 15 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
1.2 System Description
Making the complicated system setup of the eRL Keysafe cloud service and its
operation clear a visualization in Figure 7 is helping cement the concept of the
Keysafe cloud service. The app on the smartphone (1) is detecting the presents of
bikes available for renting and offering this to the customer. The customer is making
his or her selection and the app is sending renting details to the renting companies’
computer system for availability. When approved by the renting agent computer
system an eKey will be requested (2) for this particular bike, the cloud computer is
generating a certificate holding information regarding the bike, renting time and
smartphone. The cloud will forward this information (3) including a freshly generated
passkey to the requesting rental agent computer who will forward this information to
the app (4).
Figure 7.
It’s up to the app to present the certificate (5) to the eRL on the selected bike for
verification and approval and send the passkey using an API call to the OS on the
smartphone. When the certificate is accepted by the eRL a secure pairing/bonding
sequence will follow providing a permanent bond during the specified renting time
period, 48h in the given example. When the renting period has expired it will not
automatically close the eRL but will not allow the renting customer to unlock the Bike
anymore. The permanent bond with the smartphone is not transferable to a different
smartphone since its using unique markers to identify the smartphone from all others.
Page 16 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
2. e-RL Profile
The eRL profile is offering the following 9 Standardised and non-standard services:
The Standardised Service, which consists of:
o Generic Access Service. (Mandatory for all BLE devices)
o Generic Attribute Service. (Mandatory for all BLE devices)
o Battery Service.
o Device Information Service.
o Link Loss Service. (Implemented in next software release)
o Immediate Alert Service. (Implemented in next software release)
o Tx Power Service.
The Non-standard Service, which consists of:
o Lock Command Control Service.
o Device Firmware Update Service.
All services are explained in the following sections and furthermore specified in detail
in the Appendices of this document.
2.1 Battery Service
The Battery Service is a standardized Bluetooth service that exposes the Battery State
and Battery Level characteristic (as defined in Appendix A) of the CR123A
(CR17335) primary lithium battery in the eRL lock. The Battery Level characteristic
returns the current battery level as a percentage from 0% to 100%; 0% represent a
battery that is fully discharged, 100% represents a battery that is fully charged.
2.2 Device Information Service
The Device Information Service is a standardized Bluetooth service that exposes the
eRL device specific information characteristics (as defined in Appendix B) including
the following version specific information:
Manufacturer Name String:
o Axa Stenman Nederland BV
Model Number String:
o eRL 2016 Beta
Serial Number String:
o 0000000000000000
Page 17 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Hardware Revision String:
o V1.00
Software Revision String:
o V0.80
This information shall be used by the client application (e.g. APP) on how to proceed
with the connection and which services and features can be expected from the eRL.
2.3 Link Loss Service
The Link Loss Service is a standard Bluetooth service that exposes an Alert Level
Characteristic that continues until the radio link is disconnected. The service will
notify the eRL when the link has been lost, and which Alert Level has been set.
2.4 Immediate Alert Service
The Immediate Alert Service is a standard Bluetooth service that exposes an Alert
Level Characteristic that continues until the radio link is disconnected. The service
will notify the eRL when the Alert Level characteristic value changes.
2.5 Tx Power Service
The Tx Power Service is a standard Bluetooth service that exposes the Tx Power
Level characteristic (as defined in Appendix C) to expose the current transmit power
level of the eRL when in a connection.
2.6 Proximity Profile
The Proximity profile is based on the services offered by the Link Loss Service,
Immediate Alert Service and Tx Power Service to build a proximity profile. The
Proximity profile defines the behavior when a device moves away from a peer device
so that the connection is dropped or the path loss increases above a preset level,
causing an immediate alert. This alert can be used to notify the user that the devices
have become separated. As a consequence of this alert, a device may take further
action, for example to lock one of the devices so that it is no longer usable. The App
can notify the user that he or she is leaving the bike unlocked while unattended.
The Proximity profile can also be used to define the behavior when the two devices
come closer together such that a connection is made or the path loss decreases below a
preset level.
Page 18 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
2.7 Lock Command Control Service
The device specific eRL Lock Command Control Service is a is a non-standard
Bluetooth service that exposes
2.8 Device Firmware Update Service
The device specific eRL Device Firmware Update Service is a is a non-standard
Bluetooth service that exposes an secure interface for FOTA
Page 19 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
3. Operation
Bluetooth Low Energy works with standard profiles and custom profiles every profile
can have a number of attributes as explained in chapter 1, attributes can have different
characteristics like read only, write only, notify and many others not relevant at this
moment. Standard GATT based profiles, like the Battery and Proximity profiles and
many more have a universally unique identifier (UUID) of 16 bits, custom UUID’s are
128 Bit long. All UUID’s that are custom and not standardised by the Bluetooth SIG
have a length of 128 Bits, the Axa UUID used in the Demo is no exception to this
since no standard Bluetooth SIG profile and hence UUID has been defined for Locks
and in particular Bicycle Locks. The Axa Base UUID used for the Demo is:
0x23D1BCEA5F782315DEEF121200000000
Figure 3. Base UUID
All BLE Axa eRL Locks have the same UUID and hence follow the same custom
profile specification. The profile currently holds two attributes, one attribute is used to
control, opening and closing of the lock while the other attribute is to read the current
lock state. The following attributes are used by the eRL Lock:
UUID_SERVICE 0x1523
UUID_LOCK_CHAR 0x1525 (Lock Control)
UUID_STATE_CHAR 0x1524 (Lock Status)
Generic Access Profile
The Generic Access Profile (GAP) is the cornerstone that allows Bluetooth Low
Energy devices to interoperate with each other. It provides a framework that any BLE
implementation must follow to allow devices to discover each other, broadcast data,
establish secure connections, and perform many other fundamental operations in a
standard, universally understood manner. To identify and connect the Bluetooth LE
eRL is advertising using GAP its presents when woken-up by a disturbance like a
double tick during a set period, this period is currently fixed at 30 seconds.
During this advertising period it’s the apps responsibility to identify the eRL and
connect to it if the Axa marker matches. In the advertising packet every eRL lock will
send a marker in the following format:
AXA eRL Demo
Figure 8. Axa Marker
Page 20 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Unlocked Mode Secured / Unsecured / Unexpected
Figure 9 presents the condition the leaver is in when the lock is Unlocked and the
leaver is secured. This is the normal condition the lock is in when Unlocked.
Figure 9. Unlocked Figure 10. Unsecured Figure 11. Locked
The status reported to the user will be “Unlocked”. Figure 10 presents the condition
the leaver is in when the lock is Unlocked and the leaver is unsecured and is still able
to move. This condition happens when the user Unlocks the lock and the spring inside
the lock is not able to move the leaver completely in the Unlocked condition of Figure
9 due to an object (eq. spokes, hand) blocking this. This is an abnormal condition
since the lock can now either be put in the Unlocked secured leaver condition from
Figure 9 or in the Locked condition from Figure 11. The status reported will be
Unlocked in both the Unlocked secured (Fig 9) and Unlocked unsecured conditions
(Fig 10), if the leaver is moved from the Unlocked unsecured into the Locked
condition from Figure 11 the status reported will be updated and reports Locked. This
status update, the unexpected locking can happen in the Demo lock anytime when the
lock is in the Unlocked condition and the software designer should be ignoring this
condition since the hardware will be modified to cope with this condition.
Bluetooth LE Mode Unlocking / Locking
The Unlocking / Locking sequence is controlled by the attribute property
UUID_LOCK_CHAR sending a 0x00 will open the eRL Lock when closed and
sending a 0x01 will close the eRL Lock when open. The status attribute property
UUID_STATE_CHAR will reflect the current eRL Lock status, 0x01 will represent
“closed” and 0x00 will represent “open”.
LOCK_OPEN_STATUS 0x00
LOCK_UNSECURED_OPEN_STATUS 0x08 (child safety removed)
LOCK_WEAK_CLOSED_STATUS 0x09
LOCK_STRONG_CLOSED_STATUS 0x01
LOCK_ERROR_STATUS 0xFF
Page 21 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
This document specifies the messages exchanged between the eRL device and the
smartphone or table application trough Bluetooth Low Energy (BLE). We will call the
smartphone or tablet application the client application in this document.
Bluetooth Low energy main functions
Connectivity
• Scanning of the BLE devices available.
• Recognizing eRL BLE devices.
• Establish a link with a eRL BLE device.
• Handle the disconnections started by the eRL device.
Monitor live data
• Retrieve Battery status.
• Retrieve current device state.
• Configure the eRL.
• Retrieve
Control the eRL Lock
• open/close the Lock at user’s request.
Connectivity
The eRL device communicates with the client application using BLE. It will act as a
peripheral and uses GAP and GATT profiles. The client application should configure
its BLE stack as central.
eRL device Scan
When not connected, the eRL device is in advertising mode. The configured
connection interval is 0.5 second, which means that an advertising frame will be sent
every 500 mseconds on each of the 3 advertisement channels. The client application
should scan for all BLE devices.
Identify that a device is an eRL device
-- The client application must identify a BLE device as a eRL device when:
It declares to support the live service in the advertisement data (39e1FA00--84a8-
-11e2--afba-- 0002a5d5c51b is included in the list of available service UUID).
-- The scan response data is obtained by performing active scanning.
Retrieve the eRL device system ID
A eRL Lock is identified by its System ID. This is a unique identifier assigned to eRL
devices. It can be retrieved in two ways:
• By building it from the device Bluetooth address (preferred method).
By building it from the advertisement frame information (for Firmware version 1.1
or higher).
Page 22 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
By reading the “system ID” characteristic which is part of the device information
service (0x180A).
This method shall only be used when the current Bluetooth implementation does
not give access to the device Bluetooth address.
The system ID is an 8 bytes buffer. When retrieved, it should be converted into a
string representing the system ID encoded in hexadecimal format.
The following table describes the correspondence between the Bluetooth Mac address
and the eRL system ID.
Connect to the desired device
When one or several devices have been identified as eRL devices, the application
could establish a connection to one of them. There are 3 reasons for the application to
connect to the eRL device:
-- The “move detected” flag is set on the scan response data (see Appendix B for scan
response description).
-- The “unread entries” flag is set on the scan response data.
-- The user starts a live session on that device.
Disconnecting from a device For now the Apple devices stay connected to the devices
event when the application requested a disconnection. In order to limit connection
time, the eRL device may disconnect from the application after a certain amount of
time without incoming BLE request. It has been decided (arbitrary) to set this time to
1 second, but we may change this timeout value if needed.
Control and monitor the eRL devices
Identify a eRL device A eRL sensor is identified by its System ID. This is a unique
identifier assigned to eRL devices. It can be retrieved in two ways:
• By building it from the device Bluetooth address (preferred method).
• By reading the “system ID” field of the device information BLE service.
This method shall only be used when the current Bluetooth implementation does not
give access to the device Bluetooth address. The system ID is an 8 bytes buffer. When
retrieved, it should be converted into a string representing the system ID encoded in
hexadecimal format. The following table describes the correspondence between the
Bluetooth Mac address and the Flower Power system ID.
Retrieve Battery status
The eRL device includes the Battery service UUID as specified by the Bluetooth
specification:
http://developer.bluetooth.org/gatt/services/Pages/ServiceViewer.aspx?u=org.bluetoot
h.service.batter y_service.xml
Page 23 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
The battery service implemented in the eRL device allows to retrieve the current
battery status (in %), and has the ability to send a notification when the battery level is
critical.
-- When connecting to the device, the application reads the battery status (the
characteristic with UUID 0x2A19).
-- When connecting to the device, the application registers to notifications for the
battery status notifications.
-- When a notification is received for the battery status from the eRL device, the
client application should report it to the user.
Page 24 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
4. App Requirement Specification
TBD
Page 25 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
4. Test Scenarios
Test scenarios are test cases designed for the software designers that ensure that all
possible situations and conditions are tested from end to end. The scenarios are
independent tests; or a series of tests that follow each other, where each of them
depends upon the output of the previous one. The scenarios were prepared by
reviewing general functional requirements, and are designed to represent both typical
and unusual situations that may occur in the user case. The test scenarios are executed
through the use of test procedures given in Appendix A, the procedures define a series
of steps necessary to perform one or more test scenarios.
Page 26 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
5. Electrical Characteristics
Absolute Maximum Electrical Ratings(†)
Characteristic
Ambient temperature under bias
-25°C to +85°C
Ambient temperature during operation
-20°C to +55°C
Supply Voltage Vdd pin with respect to Vss (Idle)
3V
Supply Voltage Vdd pin with respect to Vss (Running)
3V
Supply Voltage Vdd pin with respect to Vss (Stall)
3V
Supply Current Vdd pin
250mA
Peak (10s) Supply Current Vdd pin @ 3V (Stall)
500mA
ESD protection on all pins (HBM; MM)
2kV; 400V
Standard Electrical Operating Conditions (unless otherwise stated)
Operating temperature -20°C TA +55°C
Characteristic
Min
Typ.
Max
units
Conditions
Supply Voltage (Vdd)
2.2
3.6
V
Normal Mode
Supply Voltage (Vdd)
2.8
3.6
V
BLE FOTA Mode
Supply Current
mA
Motor Running
Peak Supply Current
350
mA
Motor Startup < 100ms
Motor Stall Current
500
mA
Motor Stall < 10s @ 3V
Power-saving Current1
15
µA
Vdd = 3V, (Sleep mode)
Start-up Time
500
ms
Power up
Unlocking Time
1.5
2.1
s
Locked -> Unlocked
Locking Timeout
14.9
15.1
s
Unlocked -> Unlocked
Stall Timeout
9.9
10.1
s
Vdd = 3V
Page 27 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix A Battery Service
Name: Battery Service
Type: org.bluetooth.service.battery_service
Assigned Number: 0x180F
Abstract:
The Battery Service exposes the state of a battery within the eRL lock.
Summary:
The Battery Service exposes the Battery State and Battery Level of the CR123A (CR17335) primary lithium single battery in the eRL lock.
Service Dependencies
This service has no dependencies on other GATT-based services.
GATT Requirements
Sub-Procedure
Server Requirement
Read Characteristic Descriptors
Mandatory
Notifications
C1: Mandatory if the Battery Level characteristic properties supports notification, otherwise excluded.
Write Characteristic Descriptors
C1: Mandatory if the Battery Level characteristic properties supports notification, otherwise excluded.
Transport Dependencies
Transport
Supported
Classic
true
Low Energy
true
High Speed
Page 28 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Error Codes
This service does not define any application error codes that are used in Attribute Protocol.
Service Characteristics
Overview
Properties
Security
Descriptors
Name:
Battery Level
Description:
The Battery Level characteristic
is read using the GATT Read
Characteristic Value sub-
procedure and returns the current
battery level as a percentage from
0% to 100%; 0% represents a
battery that is fully discharged,
100% represents a battery that is
fully charged.
Type:
characteristic.battery_level
Requirement:
Mandatory
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Optional
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
Overview
Permissions
Name:
Characteristic Presentation Format
Type:
descriptor.gatt.characteristic_presentation_format
Requirement:
if_multiple_service_instances
Permission
Requirement
Read
Mandatory
Write
Excluded
Name:
Client Characteristic Configuration
Type:
descriptor.gatt.client_characteristic_configuration
Requirement:
if_notify_or_indicate_supported
Permission
Requirement
Read
Mandatory
Write
Mandatory
Page 29 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix B Device Information Service
Name: Device Information
Type: org.bluetooth.service.device_informationDownload / View
Assigned Number: 0x180A
Abstract:
The Device Information Service exposes manufacturer and/or vendor information about a device.
Summary:
This service exposes manufacturer information about a device. The Device Information Service is instantiated as a Primary Service. Only one
instance of the Device Information Service is exposed on a device.
Service Dependencies
This service is not dependent upon any other services.
Transport Dependencies
Transport
Supported
Classic
true
Low Energy
true
High Speed
Error Codes
This service does not define any application error codes that are used in Attribute Protocol.
Page 30 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Service Characteristics
Overview
Properties
Security
Descriptors
Name:
Manufacturer Name String
Description:
This characteristic represents the name of the manufacturer of the device.
Type:
org.bluetooth.characteristic.manufacturer_name_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Name:
Model Number String
Description:
This characteristic represents the model number that is assigned by the device vendor.
Type:
org.bluetooth.characteristic.model_number_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 31 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Overview
Properties
Security
Descriptors
Name:
Serial Number String
Description:
This characteristic represents the serial number for a particular instance of the device.
Type:
org.bluetooth.characteristic.serial_number_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Name:
Hardware Revision String
Description:
This characteristic represents the hardware revision for the hardware within the device.
Type:
org.bluetooth.characteristic.hardware_revision_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 32 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Overview
Properties
Security
Descriptors
Name:
Firmware Revision String
Description:
This characteristic represents the firmware revision for the firmware within the device.
Type:
org.bluetooth.characteristic.firmware_revision_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Name:
Software Revision String
Description:
This characteristic represents the software revision for the software within the device.
Type:
org.bluetooth.characteristic.software_revision_string
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 33 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Overview
Properties
Security
Descriptors
Name:
System ID
Description:
This characteristic represents a structure containing an Organizationally Unique Identifier (OUI)
followed by a manufacturer-defined identifier and is unique for each individual instance of the product.
Type:
org.bluetooth.characteristic.system_id
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Name:
IEEE 11073-20601 Regulatory Certification Data List
Description:
This characteristic represents regulatory and certification information for the product in a list defined in
IEEE 11073-20601.
Type:
org.bluetooth.characteristic.ieee_11073-20601_regulatory_certification_data_list
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 34 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Overview
Properties
Security
Descriptors
Name:
PnP ID
Description:
The PnP_ID characteristic is a set of values used to create a device ID value that is unique for this
device.
Type:
org.bluetooth.characteristic.pnp_id
Requirement:
Optional
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 35 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix C Tx Power Service
Name: Tx Power
Type: org.bluetooth.service.tx_powerDownload / View
Assigned Number: 0x1804
Abstract:
This service exposes a device’s current transmit power level when in a connection.
Summary:
The Tx Power service is instantiated as a Primary Service. There is only one instance of the Tx Power service on a device. There is exactly
one instance of the Tx Power Level characteristic
Service Dependencies
This service has no dependencies on other GATT-based services.
Transport Dependencies
Transport
Supported
Classic
false
Low Energy
true
High Speed
Error Codes
This service does not define any application error codes that are used in Attribute Protocol.
Page 36 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Service Characteristics
Overview
Properties
Security
Descriptors
Name:
Tx Power Level
Description:
The Tx Power Level characteristic represents the current transmit power level of a physical layer for
which the characteristic is associated.
Type:
org.bluetooth.characteristic.tx_power_level
Requirement:
Mandatory
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Excluded
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
None
Page 37 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix D Lock Command Control Service
Name: Lock Command Control
Type: Proprietary, Non-standard
Assigned Number: 0x1523
Abstract:
This service exposes the state and allows the control of the Lock when in a connection.
Summary:
The Lock Command Control service is instantiated as a Primary Service. There is only one instance of the Lock Command Control service on
a device. There is exactly one instance of the Lock State and Lock Control characteristic
GATT Requirements
Sub-Procedure
Server Requirement
Read Characteristic Descriptors
Mandatory
Notifications
C1: Mandatory if the Lock State characteristic properties supports notification, otherwise excluded.
Write Characteristic Descriptors
C1: Mandatory if the Lock State characteristic properties supports notification, otherwise excluded.
Transport Dependencies
Transport
Supported
Classic
false
Low Energy
true
High Speed
Page 38 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Service Characteristics
Overview
Properties
Security
Descriptors
Name:
Lock State
Description:
The Lock Command Control
characteristic is read using the
GATT Read Characteristic Value
sub-procedure and returns the
current Lock state as a binary
value; 0x00 represents an open
lock, 0x80 represents an open
lock with child safety removed.
0x01 represents a closed lock,
0x81 represents a weak closed
lock state.
Type:
characteristic.lock_state
Requirement:
Mandatory
Property
Requirement
Read
Mandatory
Write
Excluded
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Optional
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
Overview
Permissions
Name:
Characteristic Presentation Format
Type:
descriptor.gatt.characteristic_presentation_format
Requirement:
if_multiple_service_instances
Permission
Requirement
Read
Mandatory
Write
Excluded
Name:
Client Characteristic Configuration
Type:
descriptor.gatt.client_characteristic_configuration
Requirement:
if_notify_or_indicate_supported
Permission
Requirement
Read
Mandatory
Write
Mandatory
Page 39 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Overview
Properties
Security
Descriptors
Name:
Lock Command Control
Description:
The Lock Command Control
characteristic is read using the
GATT Read Characteristic Value
sub-procedure and returns the
current Lock state as a binary
value; 0x00 represents an open
lock, 0x80 represents an open lock
with child safety removed. 0x01
represents a closed lock, 0x81
represents a weak closed lock
state.
Type:
characteristic.lock_command
Requirement:
Mandatory
Property
Requirement
Read
Mandatory
Write
Mandatory
WriteWithoutResponse
Excluded
SignedWrite
Excluded
Notify
Optional
Indicate
Excluded
WritableAuxiliaries
Excluded
Broadcast
Excluded
ExtendedProperties
None
Overview
Permissions
Name:
Characteristic Presentation Format
Type:
descriptor.gatt.characteristic_presentation_format
Requirement:
if_multiple_service_instances
Permission
Requirement
Read
Mandatory
Write
Mandatory
Name:
Client Characteristic Configuration
Type:
descriptor.gatt.client_characteristic_configuration
Requirement:
if_notify_or_indicate_supported
Permission
Requirement
Read
Mandatory
Write
Mandatory
Page 40 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix D.1 Lock State Attribute
Name: Lock State Bit Field
Type: Proprietary
Assigned Number: 0x1524
Abstract:
Categories of alerts/messages.
Summary:
The value 0x00 is interpreted as “Lock is open.
The value 0x80 is interpreted as “Lock has been opened and child safety is removed, waiting for user to close. 15 seconds timeout applies.
The value of 0x01 is interpreted as “Lock has been closed by user, lock in closed and locked state
The value of 0x81 is interpreted as “Lock has been closed by user but lock is in error, lock will try to remove the error automatically
Value Fields
Names
Field
Requirement
Format
Minimum
Value
Maximum
Value
Additional Information
Lock State Bit Field
Mandatory
uint8
N/A
N/A
Bit Field
Bit
Size
Name
Definition
Key
Value
0
1
Lock
State
0
Open
1
Closed
7
1
Alerts
0
Normal
1
Warning / Error
Page 41 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix D.2 Lock Command Attribute
Name: Lock Command Bit Field
Type: Proprietary
Assigned Number: 0x1525
Abstract:
Categories of alerts/messages.
Summary:
The value 0x00 is interpreted as “Force the Lock to open.
The value 0x01 is interpreted as “Force the Lock to remove the child safety mode, the user should now close the lock manually. 15 seconds
timeout applies before the lock returns to the open state and the user is unable to close the lock manually.
Value Fields
Names
Field
Requirement
Format
Minimum
Value
Maximum
Value
Additional Information
Lock Command Bit Field
Mandatory
uint8
N/A
N/A
Bit Field
Bit
Size
Name
Definition
Key
Value
0
1
Lock
Command
0
Opening
1
Closing
Page 42 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix E Device Firmware Update Service
TBD.
Page 43 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix F Test scenarios
Test Case Title
Current Status
Description
Expected Status
Muralis Comments
Test Completed
Unlocked/Locked
Unlocked/Locked
Failed / Passed
Power-Up Sequence
Unlocked
Don't give any command and wait for 20
seconds.
Unlocked
The Lock shall remain idle.
Uncompleted Locking
Sequence
Unlocked
Give a Locking command and don’t move the
leaver, wait for 20 seconds timeout.
Unlocked
The Lock shall return to unlock
secured after timeout. Making it
impossible to move the leaver again
Interrupted Locking
Sequence
Unlocked
Give a Locking command, move the leaver
halfway and wait for 20 seconds.
Unlocked
The Lock shall return to unlock
secured after timeout. Making it
impossible to move the leaver again
Completed Locking
Sequence
Unlocked
Give a Locking command and move the leaver
to Locked position.
Locked
The Lock shall Lock successfully.
Uncompleted
Unlocking Sequence
Locked
Give an Unlocking command, block the leaver
from opening into the Unlocked secured
position.
Locked
The Lock shall put itself into the
Locked condition again. Status
always remained Locked during the
test.
Blocked Unlocking
Sequence
Locked
Give an Unlocking command, block the leaver
halfway from opening completely and move
the leaver after sometime into the Locked
position again.
Locked
Status will be “Unlocked” when lock
is halfway and updated again when
Lock is put into Locked position.
Completed Unlocking
Sequence
Locked
Give an Unlocking command.
Unlocked
Spring inside the Lock shall pull the
leaver into the Unlocked secured
position.
Page 44 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix G Installing apps on Android
Installing apps on Android is relatively straightforward with the app store for Android,
known as Google Play. You search for an app, select it and click install. These
Android Apps are all signed and check for viruses and other harmful software before
they are uploaded into the Google Play store. However, the Axa eRL Bluetooth Demo
App is not available in the Android app store, not because it’s not check and/or signed
but because it’s a demo App. In this case you will have to manually download the App
and install an .apk file. An .apk file behaves in a similar manner to an “.exe” file on
Windows, you need to copy it to your devices Download directory and run it by
clicking on it from your phone. Before you do this you have to enable installing apps
from “Unknown Sources” explained in the following paragraphs.
Android 4.X
Here are some ways that you can manually install an application on Android without
going through the app store. However, this is disabled by default for security reasons.
Enable “Unknown Sources Fig 1. Before attempting a manual installation of apps
using the .apk files, you must first allow your phone to install from “Unknown
sources” (i.e. non-app-store apps). To do this on Android 4.3 and 4.4, navigate to
Menu -> System settings -> General -> Security and check the box marked “Unknown
sources”. In Dutch this is Menu-> Systeeminstellingen -> Algemeen -> Beveiliging
and check the box marked “Onbekende bronnen”.
Figure 1.
Page 45 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Android 5.0
Installing the Demo App on Android 5.0 Lollipop is going a little bit different and
easier.
Go to your Android device’s “Settings” and then “Security Settings”
Search for an option Unknown Sources”
Check the box. A warning will appear, accept and allow the change
You’re all done!
Manually installing an application on Android without going through the app store, is
disabled by default for security reasons. Enable “Unknown Sources Fig 2. Before
attempting a manual installation of apps using the .apk files, you must first allow your
phone to install from “Unknown sources” (i.e. non-app-store apps). To do this on
Android 5 Lollipop use the steps described above and mark the box “Unknown
sources”.
Figure 2.
Installation phase
When you have enabled installation from “Unknown Sources you can proceed to
installing de Axa Demo .apk file. Connect your phone to a computer via the USB
interface and enable it to work like a memory stick. Now copy the .apk file to the
Download directory on your phone, once it is copied and saved you should browse on
your phone to the Download directory and click on the Axa Demo .apk file. Agree
with the messages you get from the phone and the Axa Demo app will be installed.
When installed you can delete the .apk file in the download directory since it’s no
longer being used.
Page 46 of 46
© copyright Axa-Stenman, 2016, Bluetooth eRL Datasheet V0.9
Appendix H App Requirement Specification
TBD

Navigation menu