2018 Blu

Download as pdf or txt
Download as pdf or txt
You are on page 1of 15

Received March 19, 2018, accepted April 21, 2018, date of publication May 8, 2018, date of current version

June 5, 2018.
Digital Object Identifier 10.1109/ACCESS.2018.2834479

Multi-Hop Real-Time Communications Over


Bluetooth Low Energy Industrial
Wireless Mesh Networks
LUCA LEONARDI, GAETANO PATTI, AND LUCIA LO BELLO , (Senior Member, IEEE)
Department of Electrical, Electronic and Computer Engineering, University of Catania, 95125 Catania, Italy
Corresponding author: Lucia Lo Bello ([email protected])

ABSTRACT Industrial wireless sensor networks (IWSNs) are used to acquire sensor data that need real-
time processing, therefore they require predictable behavior and real-time guarantees. To be cost effective,
IWSNs are also expected to be low cost and low power. In this context, Bluetooth low energy (BLE)
is a promising technology, as it allows implementing low-cost industrial networks. As BLE is a short-
range technology, a multihop mesh network is needed to cover a large area. Nevertheless, the recently
published Bluetooth mesh networking specifications do not provide support for real-time communications
over multihop mesh networks. To overcome this limitation, this paper proposes the multihop real-time
BLE (MRT-BLE) protocol, a real-time protocol developed on top of BLE, that allows for bounded packet
delays over mesh networks. MRT-BLE also provides priority support. This paper describes in detail the
MRT-BLE protocol and how to implement it on commercial-off-the-shelf devices. Two kinds of performance
evaluation for the MRT-BLE protocol are provided. The first one is a worst case end-to-end delay analysis,
while the second one is based on the experimental results obtained through measurements on a real testbed.

INDEX TERMS Bluetooth low energy, industrial wireless sensor networks, real-time, wireless mesh
networks.

I. INTRODUCTION AND MOTIVATION solutions for BLE. Unfortunately, such specifications do not
Bluetooth Low Energy [1] is a wireless technology intended provide support for real-time communications over multi-hop
for low-power, low-cost, low-complexity short-range com- mesh networks.
munications, that represents an interesting solution for To overcome the above discussed limitations, thus enabling
implementing Industrial Wireless Sensor Networks (IWSN). BLE to be introduced in industrial environments, this paper
In fact, BLE provides lower energy consumption compared proposes the Multi-hop Real-time BLE (MRT-BLE), that is a
to other wireless technologies adopted for industrial appli- real-time protocol, developed on top of BLE, able to realize
cations [2], [3]. Moreover, thanks to the low cost of devices low-cost IWSN with mesh topologies.
and to their diffusion, BLE is a good candidate for sev- The MRT-BLE protocol is connection-oriented, unlike
eral industrial applications [4]. However, the BLE specifica- the Bluetooth mesh networking specifications [8], which
tions [1], [5], [6] do not include support for real-time traffic, are defined as connectionless communications. There are
thus the BLE standard is not suitable for IWSN, which require two reasons for this choice. Firstly, the connection-oriented
bounded packet delays. A recent work [7] has provided a approach provides a higher throughput than the connection-
configuration method for the BLE standard to guarantee less one, as packets can be transmitted more frequently.
bounded packet latencies over star networks. As BLE is a Secondly, in the connection-oriented approach, 37 channels
short-range technology, a multi-hop mesh network is needed can be exploited for channel hopping, instead of the 3 chan-
to cover a large area. However, mesh topologies are not nels that can be used for connection-less advertising. This
foreseen in the new Bluetooth version 5 specification [6]. entails a lower channel collision probability and therefore
The Bluetooth Smart Mesh Working Group has recently a higher reliability. The MRT-BLE protocol adopts a Time
introduced the Bluetooth mesh networking specifications [8], Division Multiple Access (TDMA) approach that exploits a
which define the requirements to enable mesh networking transmission allocation scheme able to support the timely

2169-3536
2018 IEEE. Translations and content mining are permitted for academic research only.
VOLUME 6, 2018 Personal use is also permitted, but republication/redistribution requires IEEE permission. 26505
See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
L. Leonardi et al.: MRT Communications Over BLE IWSN

exchange of multi-hop real-time data packets. This paper IEEE 802.15.4 and BLE improve reliability and that cooper-
builds upon the approach proposed in [7], that outlines a ative solutions are required to achieve coexistence. In [17] an
protocol working on top of BLE. Such a protocol allows extension of the BLE channel access scheme in connection
to maintain bounded latencies over mesh networks. How- state that is based on the listen-before-talk mechanism is
ever, in the work in [7] the approach is merely sketched. proposed. The numerical results in the paper show that the
The ability of taking advantage of the Client Characteristic proposed scheme reduces the average transmission delay.
Configuration Descriptor (CCCD) in order to enable/disable Several studies investigated the BLE discovery phase,
connection is mentioned, but nothing is said about the timing which plays a critical role in the networks with dynamic
of this mechanism. Moreover, the work in [7] does not address topology. For instance, Cho et al. [18] address the influ-
the implementation of the MRT-BLE on Commercial-Off- ence of parameter settings on the latency and energy perfor-
The-Shelves (COTS) devices. Instead, this paper aims to mance of the discovery process. A mechanism to enhance
describe in detail how the MRT-BLE works, address the the discovery phase for BLE devices is proposed in [19].
timing of the connection enabling/disabling, introduce the The mechanism aims at avoiding collisions during the adver-
support for packet priority, and offer two kinds of evaluation. tisement process, so as to achieve lower latency and energy
The first one is based on measurements obtained in a realistic consumption.
scenario, while the second one is a worst-case end-to-end Modern BLE radio transceivers allow to partition the net-
delay analysis. The contribution of the paper consists in the work bandwidth between the BLE and another user-defined
MRT-BLE mechanism itself and the relevant timing analysis protocol. Marinoni et al. [20] show the feasibility of a dual-
that represents a useful tool for the network designers, since protocol approach and its capability to support a custom real-
it allows them to assess whether a feasible schedule for a time protocol running on top of the raw radio layer. The
given flow set can be found or not. In the negative case, proposed real-time protocol introduces a bounded overhead
the timing analysis helps designers in the re-engineering and can be implemented in specific devices able to support
process, allowing them to see the effects of changing the two different protocols.
flow periods or paths along the network. To the best of our In order to increase the communication coverage of BLE,
knowledge, this is the first work that proposes and assesses a Kim et al. [21], Jung et al. [22], Zenker et al. [23], and
mechanism to provide real-time multi-hop communications Hortelano et al. [24] proposed different methods prior to
over BLE through assessment in a real scenario. The paper the publication of the Bluetooth mesh networking specifi-
is organized as follows. Section II overviews related work, cations. For instance, Kim et al. [21] proposes a method to
while Section III summarizes BLE and the most relevant fea- implement a BLE network with a tree topology to extend
tures exploited by the proposed protocol. Section IV presents the coverage to other wireless sensor networks. A cluster-
the MRT-BLE protocol design, while Section V provides based on-demand routing protocol to support multihop com-
a timing analysis of the protocol. Section VI describes an munication in Bluetooth low energy ad hoc networks is
implementation of the MRT-BLE protocol on real devices and proposed in [22]. In [23] the applicability of BLE for
presents some experimental results. Finally, Section VII gives mesh-enabled applications is addressed. The results, obtained
our conclusions and hints for future work. using a prototype of the proprietary BLE-based CSRmesh
protocol [25], show that BLE mesh is a promising tech-
II. RELATED WORK nology for mesh applications, but that more studies are
Bluetooth Low Energy (BLE) is one of the most inter- needed to fully exploit its potential. Hortelano et al. [24]
esting solutions for short-range communications, thanks present a new mesh proposal based on the proprietary
to its low-cost, high throughput, broad compatibility with BLE-based CSRmesh protocol, that exploits a connection-
mobile devices, and low-power properties. BLE is gaining less network and tries to overcome some limitations of
ground in specific sectors, for instance, energy manage- the CSRmesh network (e.g. the scalability, the high num-
ment for smart homes [9], [10], food manufacturing and ber of retransmissions). Finally, Darroudi and Gomez [26]
traceability [11], [12], and also in applications, such survey state-of-the-art BLE mesh network solutions and dis-
as machine monitoring and structural health monitoring, cuss their advantages and drawbacks.
in which other technologies, e.g., the IEEE 802.15.4 standard, The IP support has recently turned BLE into a poten-
proved to be effective and efficient too [13], [14]. In [15] the tial candidate for a broad range of applications including
IEEE 802.15.4 and BLE protocols are evaluated in terms of healthcare, wearable devices, home automation, and Inter-
service ratio, delay, and energy efficiency under IPv6 traffic. net of Things (IoT) [27]–[29]. The delay performance of
Some studies analyzed the BLE system behavior in BLE for time-critical applications is addressed in [30]. The
wireless environments under realistic operating conditions. work analytically models the delay for connection-oriented
In particular, the work in [16] addresses the coexistence applications under different bit error conditions. The works
of IEEE 802.15.4, BLE and IEEE 802.11 through analysis in [31] and [4] explored the BLE suitability for industrial
and experiments to determine the effect of cross-technology and process automation communications and for time-critical
interference on the wireless network reliability. The paper Industrial IoT (IIoT) applications, respectively. In particular,
concludes that the MAC layer mechanisms of both the last one [4] presents a retransmission scheme able

26506 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

that uses a standard interface, called the Host Controller Inter-


face (HCI), which enables two-way communications with the
upper layers of the protocol stack that realize the so-called
Host in Fig. 1. Applications are developed on top of the Host.
The following subsections summarize the most important
features of the BLE Link Layer, the Attribute Protocol and
the Generic Attribute Profile. Such features are maintained
in the BLE versions 4.1 [1], 4.2 [5] and 5.0 [6].

A. LINK LAYER
The operation of the BLE Link Layer (LL) can be described
through a state machine with the following states: Standby,
Advertising, Scanning, Initiating, and Connection. The Link
Layer may run multiple state machine instances and each
FIGURE 1. The BLE protocol stack.
Link Layer state machine allows only one active state at a
time. When two devices are engaged in a connection, they can
play the master or the slave role. The master is the device that
to fulfill the reliability and timeliness requirements of initiates the connection and coordinates the medium access,
IIoT applications. periodically polling the slaves in a Time Division Multiple
The above mentioned literature indicates that it is worth- Access (TDMA) way.
while investigating novel extensions and configurations of The master controls the timing of the connection
BLE to make it more suitable for industrial environments. events (CE), i.e., the synchronization points for the master
For instance, in [7], a configuration method for the BLE and the slave. Since two devices must be tuned to the same
standard that guarantees bounded packet latencies with star RF channel to communicate and the Link Layer may use one
topologies was proposed, together with a new protocol for physical channel at a given time, the master and slave shall
BLE-based mesh topologies that is able to provide bounded also determine the data channel index for each connection
latencies. However, Patti et al. [7] leave for future work event to reduce the collisions. A physical channel collision
both the development of the proposed solution on COTS is possible because many BLE devices can independently
devices and the protocol assessment in a realistic multi-hop operate within the same spatial and temporal area, and the
scenario. Comparing with the work in [7], that simply outlines number of physical channels (up to 37) is limited, thus two
the MRT-BLE idea, this paper turns the idea into a pro- independent BLE devices may have their transceivers tuned
tocol, characterizing in detail the mechanisms to guarantee to the same physical channel.
bounded latencies on multihop communications and their The start time of a connection event, called an Anchor
timing. This paper also provides a timing analysis for multi- Point (AP), is the instant at which the master shall start to
hop communications to compute the worst-case end-to-end transmit a packet to the slave. During a connection event,
delay of periodic packets. In addition, this work addresses the the master and the slave send and receive packets alternately.
MRT-BLE protocol implementation on COTS devices and Consecutive packet transmissions are separated by an Inter
assesses the end-to-end delay performance in a realistic Frame Space (IFS), whose duration is 150 µs. A connection
multi-hop scenario. The measured delay values are compared event is considered open as long as both devices keep sending
with the computed worst-case end-to-end delays obtained packets. If none of the devices has data to transmit, the slave
through the analysis in Section V. As it will be shown, switches to the sleep mode until the next AP.
the theoretical upper bounds are found compliant with the The BLE specifications define two timing parameters for
measured values. connection events, i.e., the Connection Interval (CI) and the
The proposed MRT-BLE protocol differs from the Blue- Connection Slave Latency (CSL). The CI represents the time
tooth mesh networking specifications [8] as the latter are interval that regularly spaces the start times of connection
defined as connectionless communications, based on the events. The second parameter, the Connection Slave Latency,
GAP Broadcaster and Observer roles, while the MRT-BLE defines the number of consecutive connection events that a
protocol is connection-oriented and offers support for real- slave has to skip, while remaining in sleep mode, when it does
time communications over multi-hop mesh networks. not need to communicate with the master.
Several BLE implementations [32] require a guard
III. BLE SUMMARY band (GB) between the connection events to cope with the
The Bluetooth Low Energy core system architecture includes synchronization accuracy, and the master shall ensure that a
an RF transceiver and a protocol stack, shown in Fig. 1, that connection event closes at least one guard band before the
enable BLE devices to connect and exchange data. anchor point of the next connection event. Moreover, such
The lowest system layers are grouped into a subsystem BLE implementations provide configurable parameters to set
known as the Controller. This is a common implementation the maximum duration of each connection event. The master

VOLUME 6, 2018 26507


L. Leonardi et al.: MRT Communications Over BLE IWSN

FIGURE 2. Example of the BLE master scheduling for multiple


connections.

has the ability to schedule the connection event anchor point


at a time of its choice to efficiently schedule connection
events for the multiple connections it is involved in. This
way, the master basically splits the connection interval into
as many connection events as the number of connections.
Fig. 2 shows an example in which there are two slaves
(S1 and S2) and one master (M). In Fig. 2, the lower time
FIGURE 3. GATT profile hierarchy.
axis gives the schedule of the connection events for the two
connections, while the upper time axis shows the details of
each connection event.
At the anchor point of the slave S1 (APS1 ) the master starts {request, response} pair is considered a single transaction,
the polling, transmitting a packet to S1, thus beginning the i.e., once a client sends a request to a server (e.g., a Write
alternating transmission sequence (M to S1, S1 to M, etc.). request to write a server attribute), that client shall not send
The connection event for the slave S1 periodically repeats other requests to the same server until a response Protocol
with a period equal to CI. At the end of the first CE for S1, Data Unit (PDU) has been received (e.g., a Write response
here called CES1 , after the guard band the master starts the sent by the server to inform the client of the result of
connection event for the slave S2 (CES2 ), which periodically the Write request). Conversely, there are procedures, e.g.,
repeats with a period equal to 2*CI. the notification (a server-initiated procedure) that do not have
While the connection interval CI is the same for all the a response PDU. For example, a server notifies an attribute
slaves connected to the same master, the anchor points of the that contains the temperature detected by a sensor and updates
relevant slaves are shifted, so the master polls one slave at its value. This value is received by the connected clients that
a time. Every Link Layer connection uses a mechanism of have enabled the receiving of notification packets after the
acknowledgement and flow control. Consequently, the Link update of a specific attribute.
Layer guarantees the retransmission of the unacknowledged
packets. C. GENERIC ATTRIBUTE PROFILE
The Generic Attribute Profile (GATT) [1] defines a ser-
B. ATTRIBUTE PROTOCOL vice framework built on top of the Attribute Protocol. The
The Attribute Protocol (ATT) [1] allows a device, named GATT profile is designed to be used by an applica-
the server, to expose a set of attributes and their associated tion or another profile so that a client can communicate with
values to a peer device, named the client. An attribute is a a server. The GATT defines the hierarchical data structure,
value that has three properties associated with it, i.e., the shown in Fig. 3, that a device exposes to the connected
attribute type, the attribute handle and a set of permissions. devices and also defines the way two BLE devices exchange
The client can discover, read, and write the attributes exposed standard packets.
by the server. The server can indicate and notify its attributes. The server contains some attributes and the GATT Profile
For example an ATT server can expose three attributes that defines how to use the Attribute Protocol to discover, read,
represent the data detected by three sensors (e.g., tempera- write, notify, indicate, and obtain indications about these
ture, pressure and humidity) and periodically notifies the con- attributes.
nected clients with new measured data. In another scenario, The top level of the hierarchy is the Profile, which is
these attributes can be read by the clients when necessary. composed of one or more services that are needed to fulfill
A client may send an Attribute Protocol request to a server a use case. A service is generally composed of characteris-
and the server shall respond to all the received requests. tics or references to other services. Each characteristic con-
A device can implement both the client and the server roles, sists of various fields, i.e., a set of properties, a value, and
which can concurrently run in the same device, but each one or more optional descriptors. An important descriptor is
device shall run only one instance of a server. the Client Characteristic Configuration Descriptor (CCCD)
The Attribute Protocol procedures typically use a that configures for the client a characteristic on the server
sequential request-response protocol. An Attribute Protocol (e.g., enabling/disabling of notifications and/or indications).

26508 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

FIGURE 5. Example of topology with a master/slave device.

thus determining a collision that does not make it possible to


guarantee transmission.
Fig. 5 shows an example of network topology in which two
FIGURE 4. The BLE protocol stack including the MRT-BLE. sub-networks are linked by a master/slave device.
In Fig. 5 the sub-networks are coordinated by the nodes
MS1 and M1, respectively. The node MS1 is a master/slave
For example [33] a profile may expose two services, device, as it plays the role of master for the nodes S1, S2
i.e., the acceleration service and the environmental service. and S3, and the role of slave for the node M1. Since M1 and
The acceleration service contains a characteristic called free- MS1 are not synchronized, the communications in which
fall that cannot be read or written, but can be notified. MS1 acts as a slave may overlap with those in which it plays
The application will send a notification on this character- the master role. While MS1 is acting as a slave, its timing
istic if a free-fall condition is detected by a sensor. Noti- is defined by the master M1, therefore the timing of the
fications can be enabled or disabled by a client writing on connection event in which MS1 acts as a slave is not syn-
the related CCCD. The environmental service contains three chronized with the time base mechanism of the MS1 master
characteristics (with read-only properties) that expose data connections.
from some environmental sensors, i.e., temperature, pressure However, a viable solution to avoid the above-mentioned
and humidity. Each characteristic of the environmental ser- problem is to give MS1 a proper schedule so that, while
vice has a characteristic format descriptor that describes the MS1 is communicating with the nodes of its subnetwork
type of data contained inside the characteristic. (i.e., S1, S2 and S3), M1 avoids transmitting to MS1. On the
The basic elements used in a profile, i.e., services and contrary, S4 and S5 may transmit simultaneously with M1,
characteristics, are contained in the attributes used in the as MS1 is not intended to communicate directly with M1. The
Attribute Protocol. approach here proposed is based on the latter consideration.
The Attribute Protocol Maximum Transfer Unit In general, the problem of enabling adjacent subnetworks to
(ATT_MTU) is defined as the maximum size of any packet communicate can be solved by scheduling adjacent subnet-
exchanged between a client and a server. The GATT client work transmissions in two alternate timeslices, so that when
and server implementations shall support an ATT_MTU not a shared node (e.g., MS1) schedules the communication with
smaller than the default value (23 bytes). the nodes of its subnetwork, its adjacent master is prevented
from communicating with the shared node.
IV. PROTOCOL DESIGN To achieve this result, thus avoiding communication over-
The Multi-hop Real-time Bluetooth Low Energy (MRT-BLE) lap, in the proposed approach for each connection the dura-
protocol for Industrial Wireless Sensor Networks proposed in tion of one CE is configured offline, so as to allow the
this paper allows the creation of BLE-based mesh networks transmission of one packet between the slave and the master
able to provide bounded packet delays on multi-hop data and of one packet in the opposite direction. The connection
transmissions, thus offering support for real-time commu- intervals for all connections have to be set with the same
nications. Fig. 4 shows the positioning of the MRT-BLE duration. Moreover, CIs have to be sized so as to allow the
protocol in the BLE protocol stack. communication between all slaves and the master of a sub-
The main idea behind the MRT-BLE protocol is to subdi- network once. This way, the duration of one timeslice is equal
vide the network into a number of sub-networks, each one to the duration of one CI and the shared node alternates its
coordinated by a master. Two sub-networks are linked by a connections with a sub-network at a time.
device that is either a shared slave or a master/slave device. In the example shown in Fig. 5 the proposed solution con-
These devices act as ‘‘bridges’’ among the sub-networks. sists in alternating the connections of the node MS1 with its
As the masters of the two linked sub-networks are not syn- master, with those with its slaves. This means that, in a given
chronized, connection events may overlap at the bridge nodes, timeslice (according to the proposed solution a timeslice is

VOLUME 6, 2018 26509


L. Leonardi et al.: MRT Communications Over BLE IWSN

FIGURE 6. Solution to the overlapping CE problem with a master/slave FIGURE 8. Solution to the overlapping CE problem in the shared slave
shared device. topology.

In the example shown in Fig. 7 the proposed solution


consists in alternating the connections of the node S3 with the
masters. This means that, in a given connection interval the
node S3, acting as a GATT client, will disable the connection
with the node M1 and enable the one with the node M2, while
for the next connection interval the node S3 will enable the
connection with the node M1 and disable the one with the
node M2.
In this case, the shared slave S3 starts alternating its
FIGURE 7. Example of topology with a shared slave device. connections, for example, upon receiving a synchronization
packet. Assuming that S3 receives the synchronization packet
a multiple of one CI) the node MS1 will disable the con- from M1, the shared slave will start the mechanism at this
nection with the node M1 and enable the connections with very time instant. First, the node S3 disables the connec-
the nodes S1, S2, and S3, while in the next timeslice it tion with the node M1 and enables the connection with the
will operate in the opposite way. This solution can be easily node M2. After a time equal to one timeslice, the node S3
realized enabling/disabling a connection. will enable the connection with the node M1 and disable
Each device, before sending data, has to check that the the connection with the node M2. The described mecha-
connection is enabled. If this is not the case, the master nism repeats over time. This way the CE overlap problem is
will insert the packet in a queue managed by the MRT-BLE avoided.
protocol and transmit it in the next connection event. This way Fig. 8 shows the timing of the masters M1 and M2 in the
the CE overlap is avoided. topology shown in Fig. 7. The semi-transparent rectangles
Fig. 6 shows the timing of the masters MS1 and M1 rel- represent the intervals during which the node S3 disables the
evant to the topology shown in Fig. 5. The semi-transparent connection with one of the two masters.
rectangles represent the timeslices during which some con- Fig. 8 shows that the node S3 in the initial phase enables
nections are disabled. the notification only for the connection with the master M1.
Fig. 6 shows as the node MS1, acting as a GATT client, Upon receiving the sync packet, the node S3 disables the
can enable/disable the connections with the devices that act connection with the master M1 and enables the connection
as a GATT server. In the initial phase, MS1 enables the with the master M2. After one timeslice (in this case, equal
connection with the master M1 (shown in the lower time- to one connection interval) the node S3 makes the opposite
line), while keeping disabled the master connections. Once action, i.e., disables the connection with M2 and enables the
MS1 has received the first packet from M1 (considered a connection with M1, for another timeslice. This mechanism
synchronization packet), it disables the connection with the repeats over time.
master M1 and enables the master connections with the nodes Note that Fig. 6 and Fig. 8 show connections alter-
S1, S2, and S3 (shown in the upper timeline). After a time nating every connection interval (i.e., in these examples,
equal to the connection interval (in the example, the timeslice the timeslice duration is equal to one connection
duration is equal to one CI), the node MS1 disables the master interval).
connections and enables the connection with M1, for one In order to achieve bounded delays, the routing is static
timeslice. This mechanism repeats over time. and configured offline. To improve the fault-tolerance, it is
Fig. 7 shows an example of network topology in which possible to provide multiple paths to be enabled in case of
there are two sub-networks linked by a shared slave device. faults.
In Fig. 7 the sub-networks are coordinated by nodes In order to deploy a mesh network without connection
M1 and M2, respectively. event overlap, the MRT-BLE imposes the following configu-
As the node S3 is a shared slave it has to communicate ration rules:
with two masters that are not synchronized with each other, 1) A node not acting as a master can establish a connection
therefore the connection events of this node may overlap. with up to two masters.

26510 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

TABLE 1. Summary of notation.

FIGURE 9. MRT-BLE Profile.

2) A node (A) acting as a master can establish a connec-


tion with at most another master (B). In this connection,
the node A shall play the slave role.
3) The connection intervals of the different sub-networks
must have the same duration.
According to the BLE specifications [1], a device can act both
as a master and a slave for different connections and can also
establish connections with multiple masters.
To realize the described mechanisms, the solution pro-
posed in this paper is based on the transmissions from the
GATT servers that notify their Characteristic Values. Each
device is both a GATT client and a GATT server and defines
a profile, called the MRT-BLE Profile, shown in Fig. 9.
The MRT-BLE profile is composed of a service that
includes a number of characteristics equal to the number
of connections. Each characteristic is used to communicate
on a specific connection (according to a programmer-defined
static configuration) and consists of a set of properties,
a value, and the client characteristic configuration descrip-
tor (CCCD). In particular, the value field contains the data
to be sent, the CCCD is a bit field where a set bit indi-
cates an enabled action (e.g., notification), while a cleared
bit indicates a disabled action. Properties is a bit field that
determines how the value can be used and how the CCCD can
be accessed (e.g., read, write without response, notify, etc.).
The characteristic of the connection indicates the specific
characteristic that is used to send packets on a specific
connection.
In the following of the paper, when the enabling/disabling
of a connection is mentioned, it means that the GATT client
uses a {request, response} GATT procedure to write the
CCCD of the characteristic of the connection on the server,
so as to enable/disable the notification procedure of the are disabled, so the GATT servers involved in the connection
GATT server. Consequently, a disabled connection indicates cannot notify the value of this characteristic. An enabled
that the notifications of the characteristic of the connection connection will indicate the opposite case.

VOLUME 6, 2018 26511


L. Leonardi et al.: MRT Communications Over BLE IWSN

FIGURE 10. Network timings: an example.

The proposed protocol does not implement a mechanism always active as no slot collisions can occur. The number of
to dynamically configure the network topology, it makes CIs in the two timeslices that a node can use to transmit data
the configuration offline. This aspect will be investigated in packets on a shared link is denoted by Xci and is equal for all
future works. the shared links in the network. In the example Xci is set to 2
and in fact sl21 and sl32 are active for only two CIs (sl21 in
V. TIMING ANALYSIS timeslice 1 and sl32 in timeslice 2).
The analysis here proposed deals with the calculation of the To disable one link and enable the other one, the trans-
worst-case end-to-end delay (hereinafter worst-case response mission of four packets is needed, i.e., two to disable one
time) of periodically transmitted packets belonging to a flow. link (write_request and write_response) and two to enable the
The resulting worst-case end-to-end delay for each flow rep- other one. According to the BLE specifications [1] , request
resents a lower bound for the minimum deadline that allows and response may be scheduled within a single CE. Many
a feasible schedule for each flow. The analysis can be used to implementations, such as the ST BlueNRG-MS devices [33],
assess the feasibility, under a static priority assignment, of a take four connection intervals to complete the entire pro-
flow set comparing the worst-case response time of each flow cedure, as they transmit only one request or response in
with the corresponding relative deadline. Table 1 summarizes each CI. In the analysis such an interval is called Tsw. For
the notation used in the analysis. example, in the ST BlueNRG-MS devices the Tsw of a node
A connection between a master and a slave is defined as to enable/disable the connection of the i-th shared link is
a link. A link is a bidirectional connection denoted by lxy calculated as
(where x is the index of the node acting as a master for the
link and y the index of the slave). In the proposed approach Tsw(i) = 2 × NL(i) × Tci, (1)
for each link the duration of one CE is offline configured so where NL(i) for the i-th shared link is defined as the max-
as to allow the transmission of one packet between the slave imum between the number of shared links of the master
and the master plus one packet between the master and the and the number of shared links of the slave. The NL value
slave. The connection intervals for all links have to be set for no shared links is 0. Equation (1) evaluates two times
with the same duration and allow the communication between NL(i), because the transmission of two packets, i.e., one
all slaves and the master of a sub-network once. A link in write_request and one write_response packets, is required
which at least one of the two connecting nodes is shared to disable/enable one link. Note that, the ST BlueNRG-MS
between two sub-networks is defined as a shared link (slxy ). devices [33] take two connection intervals to transmit one
As discussed in Sect. IV, in the proposed approach, the time request and one response (i.e., only one request or response
is divided into two timeslices. In each timeslice, a node with is transmitted in each CI).
shared links alternates the connection with one sub-network The time interval in which the entire schedule, for the i-th
at a time. Fig. 10 shows an example of the network timings. link, repeats is called Cycle Time (Tc), and it is calculated as
In the example the Node 2 acts as a master for the shared (
link sl21 and as a slave for sl32 . l34 is a link between two NL(i) > 0 ⇒ 2 × Xci × Tci + 2 × Tsw(i)
Tc(i) = (2)
nodes that are connected to only one sub-network, so l34 is NL(i) = 0 ⇒ Tci.

26512 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

In the MRT-BLE protocol, each node can generate mul-


tiple packets belonging to different flows (f ) with different
(or equal) priorities (priof ). If two packets have the same
priority, they are transmitted in First-In First-Out (FIFO)
order. Packets are periodically transmitted with a period Pf .
The routing path (Rf ) for each flow is fixed and configured
offline. To improve fault-tolerance, each node has to maintain
a routing table with a backup path for each flow (this way
the analysis can be repeated for each path). Each flow is
therefore characterized by the tuple (Pf , priof , Rf ), where FIGURE 11. Example of the minimum number ssl (t ) of CI start times
21
f f
Rf = (li , . . . , lh ) is the vector of the links or shared links that dedicated to the transmission of data packets in the link sl21 for the
network in Fig. 10.
a packet of the flow f has to traverse to reach the destination,
while h is the index of the last link. The time RTf taken by
a packet of the f -th flow sent from a node to arrive to the the f -th flow, enqueued strictly before t s , that are waiting to
destination node is calculated as be transmitted. The busy period ends at the earliest time t e
h   at which there are no packets of priority equal to or greater
(f )
X
RTf = Qt (li ) + Ttx , ∀ni  Rf (3) than the f -th flow, enqueued strictly before time t e , that are
i=0 waiting to be transmitted. Hence, all the packets with the
(f ) same or higher priority than the f -th flow that were enqueued
where Qt (li ) is the queuing time that a packet of the f -th
before the end of the busy period are transmitted during the
flow has to wait in the controller at each link to be transmitted
busy period [37].
and Ttx is the maximum time taken by the BLE controller to
In the MRT-BLE protocol the worst case for the resource
transmit a packet. Ttx has a fixed bound that is equal, in the
availability is determined by computing si (t), i.e., the mini-
worst case, to the duration of one connection interval, so in the
mum number of CI start times dedicated to the transmission
worst case response-time analysis we assume that Ttx = Tci.
of data packets in the i-th link which may occur in any
In fact, the analysis here presented assumes that in each CI
interval of length t. As illustrated in Fig. 11, the worst-case
a node can transmit only one packet and the CE is sized so
interval (that is the one containing the minimum number of
as to also accommodate retransmissions. So in one Tci the
start times) begins when the last CI, dedicated to data packet
packet is transmitted and retransmitted as long as the CE for
transmission, has just started. From this instant (please refer
the node is not expired. In the following, a timing analysis for
(f ) to Fig. 11 where the white dots denote the start time of data
calculating the worst case Qt (li ) in each hop is presented.
packets over the time), the time the i-th link has to wait
Our aim as a future work is to deal with a stochastic analysis
before another data packet starts is Tc(i) − (Xci − 1)Tci.
of flows characterized by a known distribution of the arrival
Then Xci data packet transmissions start, spaced at intervals
times, as the one proposed in [34].
of length Tci, and the pattern will repeat with period Tc(i).
In the example in Fig. 10, the worst-case interval for the link
A. RESPONSE-TIME ANALYSIS
(f ) sl21 begins when the second CI has just started. Then the time
To determine the worst case Qt (li ) for each link, the worst the link sl21 has to wait before another data packet starts is
case response-time (WCRT) analysis is made calculating Tc(sl21 ) − (Xci − 1)Tci = 12 Tci − (2 − 1)Tci = 11 Tci.
both the resource availability and the worst case for the The formal equation of si (t) is
resource request. In MRT-BLE the resource availability for
Xci 
 
the i-th link is given by the number of CIs in the two timeslices X t + (j − 1)Tci
>

(Fig. 10) that a node can use to transmit over the link i,

 NL(i) 0 ⇒
Tc(i)

while the resource request is the number of CIs needed to si (t) = j=1  (4)
 t
transmit the packets generated and/or forwarded by a node .

NL(i) = 0 ⇒

over the link i. The analysis here presented, which applies Tci
to fixed priority non-preemptive scheduling, is based on the where, if NL(i) > 0 (i.e., it is a shared link), the start times of
worst case response-time (WCRT) analysis that was pro- Xci connection intervals dedicated to the transmission of data
posed in [35] and extended with the ‘‘busy period’’ approach packets are separated by Tci, start times repeat with period Tc
in [36] and [37]. Consequently, the response times of all the and, in the worst case, the first start time occurs after Tc(i) −
packets of a flow within a busy period have to be examined. (Xci − 1)Tci. If NL(i) = 0 (i.e., the link is not shared) data
The busy period is defined as the maximum interval during packets can be transmitted every CI, so the start times repeat
which any packet of priority lower than the priority of the with period Tci.
f -th flow is unable to start transmission. The busy period As the link transmissions, thanks to the mechanism here
(f )
starts at the time t s in which a packet with a priority higher proposed, do not collide with each other, for the Qt (li )
than or equal to the one of the f -th flow is enqueued and calculation only the interference of the packets generated and
there are no packets with priority higher than or equal to forwarded within the same node has to be analyzed.

VOLUME 6, 2018 26513


L. Leonardi et al.: MRT Communications Over BLE IWSN

(f )
To calculate Qt (li ), the longest time wi (X ) the i-th link
has to wait to see X consecutive start times is calculated as
(
NL(i) > 0 ⇒ (S + 1)Tc(i) − (Xci − 1 − O)Tci
wi (X ) =
NL(i) = 0 ⇒ X × Tci.
(5)
where S is quotient of the Euclidean division of X − 1 by Xci
and O is the remainder, i.e., X − 1 = SXci + O. For instance,
in the case of Figures 10 and 11, the link sl21 has Xci = 2 and
FIGURE 12. The implemented topology.
Tc(sl21 ) = 12 Tci, so for X = 3 we have S = 1 and O = 0.
Therefore, the link sl21 has to wait for wsl21 (3) = 2Tc − (2 −
1)Tci = 23Tci. In fact, looking at the example in Fig. 10, if a packet on the i-th link is lower than or equal to the number of
packet to be transmitted in sl21 arrives when the second CI has start times available for the i-th link [35].
f (f )
just started, it will be transmitted after 11 Tci, i.e., Tc(sl21 ) − Once the Xj value has been found, the worst-case Qt (li )
(Xci − 1)Tci. is calculated as
To apply the busy period approach we first calculate the (f ) f
Qt (li )worst = wi (Xj ). (9)
number of packets of the f -th flow generated in any interval
of length t, i.e., VI. IMPLEMENTATION OF THE MRT-BLE PROTOCOL
 
t ON COTS DEVICES
If (t) = . (6) In order to show the feasibility of the proposed pro-
Pf
tocol on COTS hardware, we implemented it on the
f
Then, we calculate the largest number (Xj ) of start times that X-NUCLEO-IDB05A1 devices produced by STMicroelec-
are needed to transmit the i-th packet, which is given by the tronics. These devices are equipped with communication
f
smallest value of Xj that satisfies the following equation modules that are compliant with the Bluetooth Specifica-
tions v4.1, i.e., the SPBTLE-RF BlueNRG-MS ones.
f f
X X
Xj = 1 + Ik (wi (Xj )) + 1. (7) The testbed is composed of eight devices, as shown
prio(k)>prio(j) prio(k)=prio(j), in Fig. 12.
k6=j
Each device acts as both a GATT client and a GATT
In equation (7), 1 is the start time required to transmit the server. Bidirectional communication consists in transmis-
packet, while the parameter Xj encompasses the following sions initiated by the GATT servers, which update their
sources of interference: exposed attributes and send them through notifications. In the
1) The k-th higher priority packets (i.e., prio(k) > prio(j)) implemented topology, there are three linked sub-networks
that compete with the j-th packet for the transmission and the devices S2, S3 and MS1 are shared nodes. As the mas-
in the i-th link. ters of the linked sub-networks are not synchronized, connec-
2) The packets with the same priority as the j-th packet tion events may overlap at the shared nodes. The mechanism
that compete with it for the transmission in the i-th link described in Section IV starts after the node MS1 has received
(in this case a FIFO policy is adopted). a synchronization packet from node M1.
Equation (7) has not simple solution, as the Xj term appears Any time the shared slaves, i.e., S2 and S3, note (following
both in the Left-hand-side (LHS) and in the Right-hand- a GATT event) that MS1 has modified one of their exposed
side (RHS) of the equation under the ceiling operator. Thus, attributes (the descriptor of one of their characteristics), they
the calculation of Xj is performed by the following iterations will enable or disable the connections with M2. In particular,
 (0) if MS1 has enabled the connections with S2 and S3, both

 Xj
f
=1 of them will disable the connections with M2. Conversely,


 f (v+1) X f (v)
if MS1 has disabled the connections with S2 and S3, both of
Xj =1+ Ik (wi (Xj ))

 them will enable the connections with M2.
prio(k)>prio(j)
X (8) Fig. 13 shows the timing of the masters M1, MS1 and M2 in




 + 1. the topology in Fig. 12. The semi-transparent rectangles rep-


 prio(k)=prio(j), resent the timeslices during which the depicted connections
k6=j
are disabled.
f (v) Fig. 13 shows that the node MS1 in the initial phase
Iteration starts with Xj = 1, with v = 0, as the packet to be
enables only the connection with the master M1. Once
f (v)
transmitted requires one start time. Then Xj is iteratively the sync packet, sent from node M1, is received by the
calculated until the LHS is equal to the RHS, i.e., until the node MS1, the mechanism of enabling/disabling the connec-
interference stops growing. Equation (8) is proved to con- tions starts. Each device implements as many priority queues
verge if the number of start times required to transmit every as the number of established connections managed by the

26514 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

TABLE 2. Testbed parameters.

FIGURE 13. Timing of the masters. up to five master connections and one advertising or scan-
ning interval (they are mutually exclusive in a CI). In each
connection interval, the connected devices exchange only one
packet in their CE. The Tce is sized so as to take into account
the time to transmit one packet and any possible Link Layer
retransmission.
On the final destination (i.e., the actuator S1) a specific
check is implemented to verify that no packet is lost.
The following subsections present the results of the
measurements performed to assess the feasibility of the
MRT-BLE approach on COTS devices and to analyze
FIGURE 14. The considered scenario. the application level end-to-end delay experienced by multi-
hop real-time data exchanges.
MRT-BLE sublayer. Each priority queue contains the out-
bound packets for a specific connection. The insertion into A. PACKET END-TO-END DELAY
a given queue occurs, using a static routing function, when This subsection presents the results of experimental measure-
a packet is generated or when a node receives a packet to ments of the packet end-to-end (e2e) delay as a function of the
forward. A backup path can be provided for each flow. The number of hops from the source to the final destination. Note
priority of packets can be assigned according to a config- that, in the following, the hop count is obtained summing up
urable criterion. In this scenario we dynamically assigned the the number of traversed links and the node S1 is assumed to
priority of packets according to the hop count, i.e., the number be the final destination for all the packets.
of hops that the packet has traversed. This way, we can The relevant network parameters are summarized
favor the packets that have to traverse more links to reach in Table 2. The Tce parameter was set to accommodate the
the destination, thus avoiding to excessively increase their transmission of a packet plus the potential retransmissions,
end-to-end delay. For example, on the node MS1, a packet while Tci is equal to the duration of five connection events
with source S4 (two hops) has a higher priority than a packet plus the scanning interval. As the calculated Tsw(i) for
with source M2 (one hop). When, on a device acting as a enabling/disabling the connection is really high (e.g., the Tsw
GATT server, a GATT event reports that a connection has for the link slMS1S2 in Fig. 14 is 180ms according Eq. (1)), Xci
been enabled, the device is allowed to send one packet for was set to 4 to reduce the network end-to-end delay. In fact,
each enabled connection every connection interval. Before as S2, S3, S4, S5, M2, and MS1 generate one packet with
sending a packet, each device has to check which connection destination S1 every second, the node MS1 should forward
is enabled and then transmits the highest priority packet from six packets to M1 (the only device connected with S1). Con-
the queue of the enabled connection. sequently, an overhead of 180ms for each packet would cause
The realized testbed, shown in Fig. 14, consists of seven a large end-to-end delay increase. Setting Xci equal to 4 in
sensors (M1, MS1, S2, S3, M2, S4 and S5) and one sink (S1) this case significantly reduces the overhead of the proposed
that collects the data from all the sensors. Our implementation mechanism, i.e., 180ms every four packet transmissions.
does not include the application layer of the sink that receives We defined seven flows (one from each node, except the
and processes the received data. sink) generated with a period of 1s and with a 30-byte pay-
The arrows in Fig. 14 show the direction of the data trans- load. The parameters of the flows are shown in Table 3.
mission flows. As it can be seen, the nodes M1 and MS1 are The routing paths determine which packets actually interfere
a potential bottleneck in the realized mesh network. with the packets originated by a given node. The interfence
In the simulated scenario, the sensors generate a new is due to the waiting times in the outbound queues of the
packet every second. Furthermore, the used devices permit intermediate nodes that the packets traverse to reach the final
to set the maximum duration of each connection event (Tce). destination.
For each connection, the duration of the connection interval The assessed metric here adopted is the packet end-to-end
Tci was set to 30ms and the Tce was set to 5ms to allow delay at the application layer, defined as the time difference

VOLUME 6, 2018 26515


L. Leonardi et al.: MRT Communications Over BLE IWSN

TABLE 3. Parameters of the flows.

FIGURE 15. End-to-end delay distribution - single hop.

TABLE 4. WCRT values.

FIGURE 16. End-to-end delay distribution - two hops.

for the assigned Link Layer slot. If both the application queue
and BLE queue are empty, the packet will be delivered to
destination within 30ms (Tci).
The experimental results show that the path of these pack-
ets in the considered scenario (i.e., the one in Fig. 14) and
the priority policy bound to three connection intervals the
between the packet generation time at the source and the waiting time for the Link Layer transmission of the packets
reception time at the receiver, measured at the application originating from M1. Consequently, the end-to-end delay for
layer. The end-to-end delay is measured by a third device, these packets is lower than 120ms (i.e., 4*Tci).
hard-wired to both the source and the destination nodes, as the Fig. 16 shows the end-to-end delay distribution for the
difference between the packet reception time (i.e. when the packets originating from the node MS1 (i.e., two-hop
receiver node sets up a pin) and the packet generation time packets).
(i.e., when the source node sets up a pin). Almost all these packets reach the final destination in
According to the timing analysis in Section V, the worst less than 390ms. Fig. 16 shows that a low percentage of
case response-time (WCRT) values are shown in Table 4. packets (lower than 4%) with source node MS1 reach the final
These values represent the upper bound of the expected destination within 420ms. This delay mainly consists of the
end-to-end delay for each flow. waiting times in the queues due to the interference of higher
Fig. 15 gives the end-to-end delay distribution for the priority packets, i.e., the packets originating from the other
packets generated by node M1 (i.e., single-hop), that shows source nodes (i.e., all of them but M1), that accumulated more
the percentage of packets that experienced the plotted end-to- hops on their way.
end delay values. Fig. 17 shows the end-to-end delay distribution for the
As it is shown in Fig. 15, every packet generated by the packets with source node S3 (i.e., three-hop packets).
node M1 was delivered to the destination (S1) within 120ms. Almost all these packets (i.e., 95% of them) reach the
The measured delay is only due to the waiting time that a final destination within 810ms. A very limited percent-
packet experiences in the queue before transmission. Note age of packets (about 1%) arrived to destination within
that the node M1 can transmit a packet every connection about 1170ms.
interval, as the connection with the node S1 is always enabled. Fig. 18 shows the end-to-end delay distribution for the
The delay experienced by the packet with source M1 is a packets with source node M2 (i.e., four-hop packets).
multiple of Tci (depending on the number of higher priority Almost all of the packets (about 95%) were delivered to
packets enqueued in the priority queue) plus the waiting time the final destination within 1050ms. An end-to-end delay

26516 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

FIGURE 20. Cumulative distribution of the packet end-to-end delay.

FIGURE 17. End-to-end delay distribution - three hops.

than 30ms, as the node S4 is not a forwarding node in the


considered scenario and the node M2 always keeps enabled
the connections with node S4. Consequently, packet trans-
mission occurs within a connection interval since the packet
generation. Similar results were found for the packets gener-
ated by the node S5, that have the same hop count and thus the
same priority (i.e., the highest in the network) as the packets
generated by S4. This is in accordance with the analysis, that
obtained the same worst-case response times for the packets
originated by S4 and S5.
In all the considered cases, the measured end-to-end delays
are always lower than the worst case response-time values
FIGURE 18. End-to-end delay distribution - four hops. shown in Table 4, as the analysis is safe.
Fig. 20 summarizes the cumulative distribution of the
packet end-to-end delay versus the source node and, there-
fore, versus the number of hops between the source and the
final destination.
Fig. 20 shows that the end-to-end delays of the pack-
ets that have the same hop count to the final destination,
for example, the nodes S2 and S3, are centered around a
given range of values. In fact, almost all the packets gen-
erated by the nodes S2 and S3 reach the destination within
about 700 ms. Consequently, the cumulative distributions
grow fast to reach a specific range of end-to-end delay values.
This consideration is especially true for the packets that at
FIGURE 19. End-to-end delay distribution - five hops. most experience a three-hop delay. For example, the cumu-
lative distribution of end-to-end delay for the packets gen-
erated by MS1 grow very fast around 330-360 ms. When
of 1580ms was experienced by a limited percentage of pack- the number of hops from the source to the final destination
ets (lower than than 2%). increases, more factors affect the end-to-end delay, therefore
The end-to-end delay peak values shown in some packets will experience a higher variable delay and
Figures 17 and 18 are due to the longer queuing delays that the the cumulative distributions grow more slowly. For instance,
packets generated by the nodes S3 and M2 experience due to the packets generated by the node S4 experience an end-to-
the interference of higher priority packets. More specifically, end delays distributed between 510 ms and 1410 ms.
the interfering packets for the ones generated by the node S3
are those originating from the nodes S5 and M2, while the VII. CONCLUSIONS
interfering packets for the node M2 are the ones generated by This paper proposes the MRT-BLE, a protocol working on
node S5. top of BLE that provides for bounded delays over IWSN
Fig. 19 shows the end-to-end delay distribution for the with mesh topologies. The paper addressed in detail the
packets with source node S4. These packets experience a five- MRT-BLE protocol and its configuration and implementation
hop delay. on COTS devices. To assess the performance of the proto-
These packets arrived at destination within 1400ms. They col, a worst-case timing analysis is also presented and its
experienced a waiting time in their source node lower outcomes are compared with the packet end-to-end delays

VOLUME 6, 2018 26517


L. Leonardi et al.: MRT Communications Over BLE IWSN

obtained in experiments on a real testbed. To the best of [13] J. Medina-García, T. Sánchez-Rodríguez, J. A. G. Galán, A. Delgado,
our knowledge, in the literature there are no other mecha- F. Gómez-Bravo, and R. Jiménez, ‘‘A wireless sensor system for real-time
monitoring and fault detection of motor arrays,’’ Sensors, vol. 17, no. 3,
nisms supporting real-time communication over BLE mesh p. 469, 2017.
networks. Other approaches addressing mesh topologies over [14] L. Leonardi, G. Patti, F. Battaglia, and L. Lo Bello, ‘‘Simulative assess-
BLE (e.g., Mesh BLE [8]) work in a best-effort way, there- ments of the IEEE 802.15.4 CSMA/CA with priority channel access in
structural health monitoring scenarios,’’ in Proc. IEEE 15th Int. Conf. Ind.
fore, they can be more bandwidth-efficient and may also Informat. (INDIN), Emden, Germany, Jul. 2017, pp. 375–380.
provide better average performance than MRT-BLE, but [15] P. Trelsmo, P. Di Marco, P. Skillermark, R. Chirikov, and J. Östman,
they cannot temporally isolate time-critical flows and can- ‘‘Evaluating IPv6 connectivity for IEEE 802.15.4 and Bluetooth low
energy,’’ in Proc. Wireless Commun. Netw. Conf. Workshops (WCNCW),
not guarantee end-to-end delay bounds to individual flows. San Francisco, CA, USA, Mar. 2017, pp. 1–6.
As a result, these approaches cannot cope with the real- [16] R. Natarajan, P. Zand, and M. Nabi, ‘‘Analysis of coexistence between
time requirements of industrial communications. For this IEEE 802.15. 4, BLE and IEEE 802.11 in the 2.4 GHz ISM band,’’ in
Proc. 42nd Annu. Conf. IEEE Ind. Electron. Soc. (IECON), Firenze, Italy,
reason, no meaningful performance comparison between Oct. 2016, pp. 6025–6032.
MRT-BLE and such approaches can be made for the pur- [17] M. H. Dwijaksara, W. S. Jeon, and D. G. Jeong, ‘‘A channel access scheme
poses of this paper. The MRT-BLE protocol is a connection- for Bluetooth low energy to support delay-sensitive applications,’’ in Proc.
oriented protocol, as the main aim here was on ensuring a 27th Annu. Int. Symp. Pers., Indoor, Mobile Radio Commun. (PIMRC),
Valencia, Spain, Sep. 2016, pp. 1–6.
bounded packet delivery delay over multihop mesh IWSN. [18] K. Cho, G. Park, W. Cho, J. Seo, and K. Han, ‘‘Performance analysis
The protocol therefore foresees that the network topology of device discovery of Bluetooth low energy (BLE) networks,’’ Comput.
is offline configured. This feature limits the applicability of Commun., vol. 81, pp. 72–85, May 2016.
[19] J. Seo, K. Cho, W. Cho, G. Park, and K. Han, ‘‘A discovery scheme based
MRT-BLE to IWSN that are not characterized by the presence on carrier sensing in self-organizing Bluetooth low energy networks,’’
of mobile nodes. Future works will therefore investigate a J. Netw. Comput. Appl., vol. 65, pp. 72–83, Apr. 2016.
dynamic configuration mechanism to allow for both more [20] M. Marinoni, A. Biondi, P. Buonocunto, G. Franchino, D. Cesarini, and
G. Buttazzo, ‘‘Real-time analysis and design of a dual protocol support
flexibility and the free movement of nodes. Another line for Bluetooth LE devices,’’ IEEE Trans. Ind. Informat., vol. 13, no. 1,
of investigation includes a dynamic topology management pp. 80–91, Feb. 2017.
mechanism, as the one proposed in [38], and a stochastic [21] J. Kim, S. Kang, and J. Park, ‘‘Bluetooth-based tree topology network for
wireless industrial applications,’’ in Proc. 15th Int. Conf. Control, Autom.
response-time analysis able to take into account also aperi- System, Busan, South Korea, Oct. 2015, pp. 1305–1308.
odic traffic flows. [22] C. Jung, K. Kim, J. Seo, B. N. Silva, and K. Han, ‘‘Topology configuration
and multihop routing protocol for Bluetooth low energy networks,’’ IEEE
Access, vol. 5, pp. 9587–9598, May 2017.
REFERENCES [23] P. Zenker, S. Krug, M. Binhack, and J. Seitz, ‘‘Evaluation of BLE
[1] Bluetooth Core Specification Version 4.1, Bluetooth SIG, Kirkland, WA, Mesh capabilities: A case study based on CSRMesh,’’ in Proc. 8th Int.
USA, Dec. 2013. Conf. Ubiquitous Future Netw. (ICUFN), Vienna, Austria, Jul. 2016,
[2] M. Siekkinen, M. Hiienkari, J. K. Nurminen, and J. Nieminen, ‘‘How pp. 790–795.
low energy is Bluetooth low energy? Comparative measurements with [24] D. Hortelano, T. Olivares, M. C. Ruiz, C. Garrido-Hidalgo, and V. López,
ZigBee/802.15.4,’’ in Proc. IEEE Wireless Commun. Netw. Conf. Work- ‘‘From sensor networks to Internet of Things. Bluetooth low energy, a
shops (WCNCW), Apr. 2012, pp. 232–237. standard for this evolution,’’ Sensors, vol. 17, no. 2, p. 372, 2017.
[3] E. Toscano and L. L. Bello, ‘‘Comparative assessments of IEEE [25] Qualcomm Bluetooth Low Energy Solutions, CSRmesh and CSR1010
802.15.4/ZigBee and 6LoWPAN for low-power industrial WSNs in real- (Datasheet 87-CE855-1 Rev A), Qualcomm Int., San Diego, CA, USA,
istic scenarios,’’ in Proc. 9th IEEE Int. Workshop Factory Commun. Syst. Sep. 2016.
(WFCS), May 2012, pp. 115–124. [26] S. M. Darroudi and C. Gomez, ‘‘Bluetooth low energy mesh networks:
[4] R. Rondon, M. Gidlund, and K. Landernas, ‘‘Evaluating Bluetooth low A survey,’’ Sensors, vol. 17, no. 7, p. 1467, 2017.
energy suitability for time-critical industrial IoT applications,’’ Int. J. [27] S. Raza, P. Misra, Z. He, and T. Voigt, ‘‘Bluetooth smart: An enabling
Wireless Inf. Netw., vol. 24, no. 3, pp. 278–290, Sep. 2017. technology for the Internet of Things,’’ in Proc. 11th Int. Conf. Wireless
[5] Bluetooth Core Specification Version 4.2, Bluetooth SIG, Kirkland, WA, Mobile Comput., Netw. Commun. (WiMob), Abu Dhabi, UAE, Oct. 2015,
USA, Dec. 2014. pp. 155–162.
[6] Bluetooth Core Specification Version 5.0, Bluetooth SIG, Kirkland, WA, [28] T. Zhang, J. Lu, F. Hu, and Q. Hao, ‘‘Bluetooth low energy for wearable
USA, Dec. 2016. sensor-based healthcare systems,’’ in Proc. IEEE Healthcare Innov. Conf.
[7] G. Patti, L. Leonardi, and L. Lo Bello, ‘‘A Bluetooth Low Energy real-time (HIC), Oct. 2014, pp. 251–254.
protocol for industrial wireless mesh networks,’’ in Proc. 42nd Annu. Conf. [29] G. Pau, M. Collotta, and V. Maniscalco, ‘‘Bluetooth 5 energy management
IEEE Ind. Electron. Soc. (IECON), Firenze, Italy, Oct. 2016. through a Fuzzy-PSO solution for mobile devices of Internet of Things,’’
[8] Mesh Profile Specifications 1.0, Bluetooth SIG, Kirkland, WA, USA, Energies, vol. 10, no. 7, p. 992, 2017.
Jul. 2017. [30] R. Rondón, K. Landernäs, and M. Gidlund, ‘‘An analytical model of the
[9] M. Collotta and G. Pau, ‘‘A solution based on Bluetooth low energy effective delay performance for Bluetooth low energy,’’ in Proc. 27th
for smart home energy management,’’ Energies, vol. 8, no. 10, Annu. Int. Symp. Pers., Indoor, Mobile Radio Commun. (PIMRC), Valencia,
pp. 11916–11938, 2015. Spain, Sep. 2016, pp. 1–6.
[10] M. Collotta and G. Pau, ‘‘A novel energy management approach for smart [31] M. Grover, S. K. Pardeshi, N. Singh, and S. Kumar, ‘‘Bluetooth low energy
homes using Bluetooth low energy,’’ IEEE J. Sel. Areas Commun., vol. 33, for industrial automation,’’ in Proc. 2nd Int. Conf. Electron. Commun. Syst.
no. 12, pp. 2988–2996, Dec. 2015. (ICECS), Coimbatore, India, Feb. 2015, pp. 512–515.
[11] L. Lo Bello, O. Mirabella, and N. Torrisi, ‘‘Modelling and evaluating [32] BlueNRG, BlueNRG-MS Stacks Programming Guidelines (Programming
traceability systems in food manufacturing chains,’’ in Proc. 13th IEEE Manual PM0237), STMicroelectronics, Geneva, Switzerland, Dec. 2016.
Int. Workshops Enabling Technol., Infrastruct. Collaborat. Enterprises, [33] BlueNRG-MS Development Kits (User Manual UM1870), STMicroelec-
Jun. 2004, pp. 173–179. tronics, Geneva, Switzerland, May 2016.
[12] B. B. Sánchez, R. Alcarria, D. Martín, and T. Robles, ‘‘TF4SM: A frame- [34] G. A. Kaczynski, L. Lo Bello, and T. Nolte, ‘‘Deriving exact stochastic
work for developing traceability solutions in small manufacturing compa- response times of periodic tasks in hybrid priority-driven soft real-time sys-
nies,’’ Sensors, vol. 15, no. 11, pp. 29478–29510, 2015. [Online]. Avail- tems,’’ in Proc. IEEE Int. Conf. Emerg. Technol. Factory Autom. (ETFA),
able: http://www.mdpi.com/1424-8220/15/11/29478 Patras, Greece, Sep. 2007, pp. 101–110.

26518 VOLUME 6, 2018


L. Leonardi et al.: MRT Communications Over BLE IWSN

[35] M. Joseph and P. K. Pandya, ‘‘Finding response times in a real-time GAETANO PATTI received the M.S. and Ph.D.
system,’’ Comput. J., vol. 29, no. 5, pp. 390–395, Oct. 1986. degrees from the University of Catania, Italy,
[36] J. Lehoczky, ‘‘Fixed priority scheduling of periodic task sets with arbitrary in 2013 and 2017, respectively. He is currently
deadlines,’’ in Proc. IEEE Real-time Syst. Symp. (RTSS), Lake Buena Vista, a Post-Doctoral Researcher with the Department
FL, USA, Dec. 1990, pp. 201–209. of Electrical, Electronics, and Computer Engineer-
[37] R. I. Davis, A. Burns, R. J. Bril, and J. J. Lukkien, ‘‘Controller area network ing, University of Catania.
(CAN) schedulability analysis: Refuted, revisited and revised,’’ Real-Time He has co-authored over 20 papers published in
Syst., vol. 35, pp. 239–272, Jan. 2007.
the proceedings of international conferences and
[38] E. Toscano and L. L. Bello, ‘‘A topology management protocol with
in important international journals. Since 2012, he
bounded delay for Wireless Sensor Networks,’’ in Proc. IEEE Int. Conf.
Emerg. Technol. Factory Autom. (ETFA), Sep. 2008, pp. 942–951. has been focusing in the field of real-time indus-
trial networks, automotive networks, wireless sensor and actuator networks,
powerline communications and networks for mobile robot applications. He
is a member of the IEEE IES Technical Committee on Factory Automation
(Subcommittee on In-Vehicle Embedded Systems).

LUCIA LO BELLO (M’02–SM’09) received the


M.S. degree in electronic engineering and
the Ph.D. degree in computer engineering from
the University of Catania, Italy, in 1994 and
1998, respectively. During 2000–2001, she was
a Visiting Researcher with the Department of
Computer Engineering, Seoul National University,
South Korea. In 2014, she joined the University of
LUCA LEONARDI received the bachelor’s and Malardalen, Sweden, as a Guest Professor. She is
master’s degrees (summa cum laude) from the Uni- currently a tenured Associate Professor with the
versity of Catania in 2013 and 2016, respectively, Department of Electrical, Electronic and Computer Engineering, University
where he is currently pursuing the Ph.D. degree of Catania. She has authored or co-authored over 150 technical papers
with the Department of Systems, Energy, Com- in the area of industrial networks, automotive communications, real-time
puter and Telecommunications Engineering. Since embedded systems, and wireless sensor networks. She is responsible for
2015, he has been focusing in the field of real-time several international and national projects in the area of real-time embedded
industrial networks, wireless sensor and actuator systems and networks. She was the Chair of the IES Technical Committee
networks, and industrial Internet of Things. on Factory Automation from 2014 to 2015 and from 2016 to 2017.

VOLUME 6, 2018 26519

You might also like