Patent Publication Number: US-2023164532-A1

Title: Event clustering for ble-mesh devices

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. Pat. Application No. 15/450,551, filed Mar. 6, 2017, which claims the benefit of U.S. Provisional Application No. 62/367,516, filed Jul. 27, 2016, which applications are hereby incorporated herein by reference. 
    
    
     FIELD 
     Disclosed embodiments relate generally to wireless communications, more specifically to Bluetooth Low Energy (BLE) automation mesh network (BLE-Mesh) communications. 
     BACKGROUND 
     BLE-Mesh is a wireless personal area network (WPAN) technology that uses a flooding-based protocol that with retransmission extends the range of BLE devices by including the ability to send messages to and amongst groups of devices. The devices in the BLE-Mesh network can support both BLE and BLE-mesh, but not necessarily both. A rebroadcasting mesh network works by flooding all messages to all nodes in the network through broadcasts. 
     The nodes in the mesh network all share a set of indexed data slots. Each time a device receives a broadcast message from another device in the mesh, the device repeats the message (rebroadcasts it), enabling its neighboring devices to ‘hear’ the new message. The neighboring devices rebroadcast this message to their neighbors, and the process is repeated until all devices in the mesh have received the same message. Flooding thus enables wireless devices to talk to each other without being within a direct radio range, as devices between them help by relaying the messages. 
     In a typical WPAN there are edge device(s) which are battery powered, relay devices that are always on as they are always in the listening mode, and functional end device(s), such as lights. Most BLE devices are battery powered so that power efficiency is generally an important consideration. 
     Smartphones and other some ‘legacy devices’ such as tablets and laptops support BLE, but do not currently support mesh formatted messaging. To enable such legacy devices to communicate with mesh devices, BLE connectivity needs to be enabled for mesh devices, creating the need for dual-mode BLE devices that provide both Mesh operations and BLE operations. However, adding this BLE-connectivity to mesh devices will significantly raise their power consumption, being a particular problem for battery-powered devices. 
     SUMMARY 
     This Summary is provided to introduce a brief selection of disclosed concepts in a simplified form that are further described below in the Detailed Description including the drawings provided. This Summary is not intended to limit the claimed subject matter’s scope. 
     Disclosed embodiments recognize dual-mode BLE devices that provide both mesh operation and BLE operation, particularly those being battery powered, can benefit from a reduction in their power consumption. Disclosed embodiments include techniques to cluster BLE events in time with mesh events for dual-mode BLE devices which reduce the number of wakeups that results in reducing the number of transitions from active to sleep and sleep to active, thus lowering the device’s power consumption. 
     Disclosed embodiments include methods of BLE-Mesh communications that include providing a dual-mode BLE-Mesh device including dual-mode RF driver, dual-mode manager, a BLE stack, and a mesh stack for mesh operations in a BLE-mesh network having a BLE relay device and a functional end BLE device. The dual-mode BLE-mesh device has a periodic set of time indexed data slots common throughout the BLE-mesh network which provides a BLE event timeline for BLE connection events. The dual-mode BLE device implements an event clustering algorithm that delays or advances mesh events with respect to a timing the BLE connection events for clustering together their respective occurrences into continuous BLE/Mesh events to reduce a duty cycle by reducing a number of transitions from active mode to sleep mode and from sleep mode to active mode. The dual-mode BLE-Mesh device communicates in the BLE-mesh network using the continuous BLE/Mesh events with at least one mesh device. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       Reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, wherein: 
         FIG.  1    is a flowchart for an example method of BLE-Mesh communications, according to an example embodiment. 
         FIG.  2    shows an example timeline showing a BLE event timeline, friend (FR) low-power mesh edge Node (LPN) events timeline, and disclosed clustering of mesh events with BLE connection events to reduce the number of wakeups and sleeps. 
         FIG.  3    shows an example timeline for a low power relay node including a BLE event timeline, relay events timeline, and disclosed clustering of mesh relay events with the BLE connection events shown to reduce the number of wakeups and sleeps. 
         FIG.  4 A  is a block diagram schematic of an example disclosed dual-mode BLE-Mesh device that can implement disclosed event clustering for BLE-Mesh communications, according to an example embodiment. 
         FIG.  4 B  is a functional layer depiction of the dual-mode BLE-Mesh device shown in  FIG.  4 A  including a dual-mode manager. 
     
    
    
     DETAILED DESCRIPTION 
     Example embodiments are described with reference to the drawings, wherein like reference numerals are used to designate similar or equivalent elements. Illustrated ordering of acts or events should not be considered as limiting, as some acts or events may occur in different order and/or concurrently with other acts or events. Furthermore, some illustrated acts or events may not be required to implement a methodology in accordance with this disclosure. 
     Also, the terms “coupled to” or “couples with” (and the like) as used herein without further qualification are intended to describe either an indirect or direct electrical connection. Thus, if a first device “couples” to a second device, that connection can be through a direct electrical connection where there are only parasitics in the pathway, or through an indirect electrical connection via intervening items including other devices and connections. For indirect coupling, the intervening item generally does not modify the information of a signal but may adjust its current level, voltage level, and/or power level. 
       FIG.  1    is a flowchart for an example method  100  of event clustering for BLE-Mesh communications, according to an example embodiment. BLE is used as the physical transport of the mesh network, referred herein as a BLE-mesh network, such as using the Bluetooth 4.1 specification. The BLE-mesh network environment includes a plurality of spaced apart dual-mode BLE-Mesh devices. A cluster of dual-mode BLE-enabled devices which are identifiable to one another may participate as routing nodes to provide range extension for any two participating BLE-mesh devices that would otherwise be out of the BLE transmission range from each other. The BLE-mesh network can be a secure network. 
     Step  101  comprises providing a dual-mode BLE-Mesh device including a BLE stack for BLE operations and a mesh stack for mesh operations in a BLE-mesh network having a least one BLE relay device and a functional end BLE device. The dual-mode BLE-Mesh device includes a dual-mode RF driver and a dual-mode manager. The dual-mode BLE-Mesh device has a periodic set of time indexed data slots that is common throughout the BLE-mesh network which provides a BLE event timeline for a plurality of BLE connection events. BLE connection events typically involve a periodic receive (Rx) and transmit (Tx) between a pair of dual-mode BLE-Mesh devices that occurs every connection interval time period. Other connection events can also occur defined in the BLE Special Interest Group (SIG) specification. 
     Step  102  comprises the dual-mode BLE device implementing an event clustering algorithm that delays or advances a timing of mesh events with respect to a timing of instances of the BLE connection events for clustering together their respective occurrences into continuous BLE/Mesh events. (See  FIG.  2    and  FIG.  3    described below for event clustering examples). The continuous BLE/Mesh events reduce a duty cycle of the device by reducing a number of transitions from active mode to sleep mode and from sleep mode to active mode. As known in the art duty cycle is the ratio of time in which the signal is active (in percentage). The formula is (duty cycle = (time signal is active/total period of signal) x 100%). For example, if a BLE device sends data for 1 ms then sleeps for 999 ms, then the (duty cycle= (1/1000)*100) = 0.1%. 
     Mesh events include FR LPN pinging (transmitting) and FR LPN receiving each involving mesh packets. Step  103  comprises the dual-mode BLE-Mesh device communicating in the BLE-mesh network using the continuous BLE/Mesh events with at least one mesh device. 
       FIG.  2    shows an example timeline  200  for a low-power FR edge node including a BLE event timeline  205  including periodic BLE events  205   a   1 ,  205   a   2  and  205   a   3 , a FR LPN events timeline  210  including FR LPN receives  210   a   1 ,  210   a   2 , and  210   a   3 , and FR LPN pings  210   b   1 ,  210   b   2  and  210   b   3 , and disclosed positions of the respective pings and receives after clustering shown as ‘with clustering’  215  to provide continuous BLE/Mesh events that reduce the number of wakeups and sleeps. As per the spec, a “friendship” is established between a FR relay device and an LPN. An edge device sends a ping with a FRND bit set, TTL=0, wakes up after FR Receive Delay (FRD), and is in scan state for FR Receive Window (FRW) duration. RF access for this ping and scan for FRW will be dedicated. 
     It can be seen in the leftmost clustering example ping  210   b   1  is time shifted now shown as  210   b   1 ′ to cluster with the BLE event  205   a   1 , in the center clustering example the receive  210   a   2  and pong  210   b   2  are both modified in time now shown as  210   a   2 ′ and  210   b   2 ′ to cluster before and after the BLE event  205   a   2  respectively, and in the rightmost clustering the receive  210   a   3  and ping  210   b   3  are both modified in time now shown as  210   a   3 ′ and  210   b   3 ′ to cluster after the BLE event  205   a   3 . 
       FIG.  3    shows an example timeline  300  for a low power relay node including a BLE event timeline  305  including periodic BLE events  305   a   1  ,  305   a   2 , and  305   a   3 , a FR low-power mesh edge Node (LPN) events timeline  310  including Mesh receives  310   a   1 ,  310   a   2 , and Mesh transmits  310   b   1 ,  310   b   2 , and  310   b   3 , and disclosed clustering shown as ‘with clustering’  315 . Disclosed clustering  315  has the Mesh transmits time shifted now shown a  310   b   1 ′,  310   b   2 ′, and  310   b   3 ′ clustering with the BLE events  305   a   1 ,  305   a   2 , and  305   a   3  to reduce the number of wakeups and sleeps. Since this Example shows only Tx events postponed it is applicable to current mesh routing nodes as well. The Mesh Tx events should generally be postponed only up within a threshold duration (the time between BLE connection events) to keep the impact of the timing change low. 
       FIG.  4 A  shows a system block diagram representation for an example dual-mode BLE-Mesh device  400  that generally conforms to the BLE communications standard. The dual-mode BLE-Mesh device  400  may be any device that can engage in BLE communications. Such devices may be, may include, or may be a part of, mobile phones such as smartphone, tablets, computers, personal digital assistants, and household items with communication capabilities such as door knobs, window blinds, and motion sensors. The dual-mode BLE-Mesh device  400  communicates in a BLE-mesh network along with as plurality of other BLE devices to a network (e.g., the Internet) that is coupled to a central authority database that is generally stored on a server. 
     The dual-mode BLE-Mesh device  400  comprises a controller  420  including a processor  425 , a memory  422  including software  422   a  for a disclosed event clustering for BLE-Mesh communications algorithm, and a transceiver  424  including a dual-mode RF driver  424   a  that is coupled to an antenna  428 . The controller  420  implements a BLE stack for BLE operations and a mesh stack for mesh operations. The transceiver  424  is also shown including hardware comprising digital logic  424   b  that can be used as an alternative to software  422   a  for implementing a disclosed event clustering for BLE-Mesh communications algorithm. As known in the art the transceiver  424  includes a transmitter and a receiver. The transmitter generally comprises a media access control (MAC) module, an encoder, a modulator, an Inverse Fast Fourier Transform (IFFT) unit, a digital to analog conversion (DAC)/filter module, and an RF/antenna module. The receiver generally comprises an RF/antenna unit, an analog to digital conversion (ADC)/filter unit, a FFT unit, a demodulator, a decoder, and a MAC module. 
     The memory  422  is more generally configured to store information including data, instructions, or both. The memory  422  may be any storage medium accessible by the controller  420 , such as a read only memory (ROM), a random access memory (RAM), a register, cache memory, or magnetic media device such as internal hard disks and removable disks. A phase lock loop (PLL)  432  is also provided for purposes including mixing and frequency synthesis. 
     The dual-mode BLE-Mesh device  400  is also shown including hardware comprising digital logic  434  that can also be for implementing a disclosed event clustering for BLE-Mesh communications algorithm. However, as noted above the event clustering for BLE-Mesh communications algorithm may also be implemented by software. 
     The controller  420  is coupled to the memory  422  and to the transceiver  424 . In some implementations, the transceiver  424  comprises baseband units (not shown) and analog units (not shown) to transmit and receive RF signals. The baseband unit may comprise hardware to perform baseband signal processing including digital signal processing, coding and decoding, modulation, and demodulation. The analog unit may comprise hardware to perform ADC, DAC, filtering, gain adjusting, up-conversion, and down-conversion. The analog unit may receive RF signals from an access point and down-convert the received RF signals to baseband signals to be processed by the baseband unit, or receive baseband signals from the baseband unit and up-convert the received baseband signals to RF wireless signals for uplink transmission. The analog unit comprises a mixer to up-convert the baseband signals and down-convert the RF signals with a carrier signal oscillated at the radio frequencies of the BLE-mesh network. The radio frequencies may be 2.4 GHz to 2.483-GHz frequency band for BLE communications, and a lower frequency such as about 1.0 to 1.5 GHz per the BLE standard (generally not sub-1 GHz for mesh communications), or other specifications depending on future radio access technology. 
       FIG.  4 B  is a functional layer depiction of the dual-mode BLE-Mesh device  400  shown in  FIG.  4 A  now shown as  400 ′ that includes an application layer including BLE applications, mesh application, models  440 , and a dual-mode manager  445 . All blocks above the dual-mode RF driver  424   a  are generally software (SW) running on the processor  425  shown in  FIG.  4 A  in memory  422  (typically stored in flash RAM or ROM). Dual-mode BLE-Mesh device  400 ′ implements simultaneous operation of the BLE and Mesh software (SW) stacks using the dual-mode RF driver  424   a . There is an RF instance 1  445   a  for Mesh operations and an RF instance 2  445   b  for BLE operations. 
     The dual-mode manager  445  handles RF access priorities based on the stack states, with generally three priority levels being dedicated, high, and normal. The Mesh adaptation layer  450  formats for BLE or Mesh accordingly and signals appropriate for the particular application. The dual-mode RF driver  424   a  includes driver Application Programming Interface (API) software and the radio itself in hardware. There is also a flooding module  452 , Mesh bearer layer  454  and Mesh security  456  all for mesh communications. 
     Dual-mode BLE-Mesh device  400 ′ also includes BLE stack  460 , Generic Access Profile (GAP)  464  which controls connections and advertising in Bluetooth, and Generic Attribute Profile (GATT)  466  which uses ATT to describe how data is exchanged from two connected devices for BLE. Dual-mode BLE-Mesh device  400 ′ also includes a BLE routing block  465 . The BLE routing block  465  is different from the flooding-based mesh. If routing is present, then each node maintains neighbor tables and messages that are sent via deterministic paths to reach a specific destination. In a flooding-based mesh, messages are broadcast to all devices across the network over multiple hops. 
     Dual-mode BLE-Mesh device  400 ′ is also shown having a real-time operating system (RTOS)  470 . RTOS  470  scales from a low-footprint, real-time preemptive multi-tasking kernel to a complete RTOS with additional middleware components including a power manager, TCP/IP and USB stacks, an embedded file system and device drivers. 
     Benefits of disclosed event clustering include reducing the overall power consumption of nodes and the maintaining of interoperability. Disclosed event clustering can be detected using a packet sniffer to detect transmission time-points with respect to BLE and mesh events. One can also use a power analyzer to determine the node activity for a disclosed dual-mode BLE-Mesh device. 
     EXAMPLES 
     Disclosed embodiments are further illustrated by the following specific Examples, which should not be construed as limiting the scope or content of this Disclosure in any way. 
     For a disclosed dual-mode BLE-Mesh device having a 1 second connection interval using disclosed clustering of mesh events and BLE connection events a power savings of 30% resulted. This result is for FR LPN devices only. For relay devices, with either power line or very long scans the power savings will be significantly less. For a 100 ms scan interval for mesh device operation, the power savings for a relay device would be about 0.7%. 
     Those skilled in the art to which this disclosure relates will appreciate that many other embodiments and variations of embodiments are possible within the scope of the claimed invention, and further additions, deletions, substitutions and modifications may be made to the described embodiments without departing from the scope of this disclosure.