GB2621142A - Wireless communication - Google Patents

Wireless communication Download PDF

Info

Publication number
GB2621142A
GB2621142A GB2211244.5A GB202211244A GB2621142A GB 2621142 A GB2621142 A GB 2621142A GB 202211244 A GB202211244 A GB 202211244A GB 2621142 A GB2621142 A GB 2621142A
Authority
GB
United Kingdom
Prior art keywords
priority
mobile device
message
connection request
gateway
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
GB2211244.5A
Other versions
GB202211244D0 (en
Inventor
Chitty Jose
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cambridge Animal Tech Ltd
Original Assignee
Cambridge Animal Tech Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Cambridge Animal Tech Ltd filed Critical Cambridge Animal Tech Ltd
Priority to GB2211244.5A priority Critical patent/GB2621142A/en
Publication of GB202211244D0 publication Critical patent/GB202211244D0/en
Publication of GB2621142A publication Critical patent/GB2621142A/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/38Services specially adapted for particular environments, situations or purposes for collecting sensor information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/90Services for handling of emergency or hazardous situations, e.g. earthquake and tsunami warning systems [ETWS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Operating a mobile device, or tag (3) and a hub device, or gateway (2) in a wireless communications network (1), comprising: the tag receiving a message (15; Fig. 3) from the gateway which includes information (16) identifying an access priority, determining a current device priority of the tag itself based on a predetermined set of rules (10; Fig. 2) relating to an operation state of the mobile device, determining whether to initiate connection to the gateway in dependence upon the access priority and the current device priority, upon a positive determination, transmitting a connection request to the gateway, and upon receiving acceptance of the connection request, transmitting data to the gateway. The network may be a low-power radio communications network, and the communications protocol may be LoRa, Bluetooth Low Energy, ZigBee or according to an IEEE 802 standard. The tags may monitor health or condition of an animal or person.

Description

Wireless communication
Field
The present invention relates to wireless communication.
Background
Low-power radio communication networks can be used in a variety of different fields, such as healthcare, wearables and access control. Providing a viable way to monitor multiple independent devices for long periods of time without requiring human f() intervention.
Traditionally, devices can establish a connection using a central peripheral approach. A peripheral (which typically tends to be a small device, such as wearable) can advertise itself and wait for connection. A central (which normally would be a smartphone, tablet or other computing device benefiting from greater computing and power resources than the peripheral) scans or listens for advertisements and initiates connection by transmitting a connection request to the advertising peripheral.
Although this approach works well with a handful of peripherals, it is not well suited to situations in which there are hundreds or even thousands of peripherals. Such a situation can be encountered when peripherals take the form of mobile, battery-powered, data-capturing tags and the central is a gateway used to download data from the tags. Tags can consume excessive amounts of power due to the period required for the tags to advertise in a potentially congested environment. The likelihood of large numbers of devices advertising simultaneously limits the capacity that one gateway can handle due to the lack of arbitration and an ability to handle collisions.
Another typical form for a high number of peripheral devices to communicate, is using a regular transmission for each peripheral device and a central gateway just listening to all devices and messages transmitted. This presents two problems, first as before the more devices on the network the greater the congestion and chances of collisions and second, there is no warranty that an important message is received by the gateway as the transmitting peripheral device does not know if the message was received successfully. Some protocols re transmit important messages to increase the probability of reception but this is detrimental to battery life.
Summary
According to a first aspect of the present invention there is provided a method of operating a mobile device in a wireless communications network. The method comprises receiving a message from a hub device, the message including information identifying an access priority, determining a current device priority of the mobile device based on a predetermined set of rules relating to an operation state of the mobile device, determining whether to initiate connection to the hub device in dependence upon the access priority and the current device priority, upon a positive determination, transmitting a connection request to the hub device, and, upon receiving acceptance of io the connection request from the hub device, transmitting data to the hub device.
This can help reduce power consumption of the mobile device, help to avoid data loss while a mobile device is out of range of a hub device 2 and/or help to maximise the number of mobile devices that one hub device can serve.
The method may comprise generating a delay time, and waiting the delay time before transmitting the connection request. The delay time may be calculated in dependence upon amount of free storage available and/or battery level. The delay time may be randomly generated.
The message may be a broadcast message. The broadcast message may be an advertising message.
The method may comprise, upon a negative determination of whether to initiate connection, determining a call time and waiting until the call time before again determining whether to initiate connection. The call time may be a period of time, for example, M minutes, where M is between 1 and 6o. The message may include a set of call times, each call time corresponding to a respective access priority. The call time for at least two priorities may be different.
The method may further comprise determining whether a software update is required, and, upon a positive determination, downloading update software from the hub. The message may include a software version to be used when determining whether a software update is required. -3 -
The method may further comprise encrypting the data using a key before transmitting the data to the hub device. The message may include a key for encrypting data before transmitting the data to the hub device.
The operating state may include an amount of storage available, an amount of remaining battery energy available and/or a received signal strength indicator. The operating state may include an emergency state.
According to a second aspect of the present invention there is provided a computer /0 program comprising instructions for performing the method of the first aspect.
According to a third aspect of the present invention there is provided a computer program product comprising a computer-readable medium (which may be non-transitory) storing a computer program comprising instructions for performing the /5 method of the first aspect.
According to a fourth aspect of the present invention there is provided a method of operating a hub device in a wireless communications network. The method comprises transmitting a message which includes information identifying an access priority, in response to receiving a connection request from a mobile device identifying a device priority, determining whether the access priority and the device priority match, upon a positive determination, signalling, to the mobile device, acceptance of the connection request, receiving data from the mobile device, and processing and/or storing the data.
Processing the data may comprise forwarding the data to a remote location. Processing the data may comprise determining whether a predetermined condition is present and, if so, signalling the presence of the predetermined condition.
The method may further comprise, upon a negative determination of whether the access priority and the device priority match, signalling to the mobile device refusal of the connection request.
The method may further comprise in response to receiving the connection request, determining whether credentials in the connection request are valid before determining 35 whether the access priority and the device priority match. -4 -
The method may further comprise determining whether software in the mobile device needs updating, and upon a positive determination, transmitting update a software update to the mobile device.
The message may be a first message, the access priority may be a first access priority, and the mobile device may be a first mobile device, the method may comprise transmitting a second message specifying a second, lower access priority, in response to receiving a connection request from a second mobile device identifying a second device priority, determining whether the second access priority and the second device priority jo match, upon a positive determination, signalling to the second mobile device acceptance of the connection request, receiving data from the second mobile device, and processing and/or storing the data.
The access priority and device priority may each take the form of an positive integer. The access priority and device priority may be selected from a range between iand 10. The access priority and device priority may be selected from a range between land 12,000. The access priority and device priority may take the form of a floating point number.
The predetermined set of rules may include one or more Boolean operators. The rules may include at least one AND operator and/or at least one OR operator.
The mobile device may update the predetermined set of rules.
The mobile device may determine the current device priority in dependence on messages and/or information received from other tags, and/or other information about the network. The other information about the network may include the number of tags in the network and/or an indicator of the number of tags in the network, such a a number between iand 5.
According to a fifth aspect of the present invention there is provided a computer program comprising instructions for performing the method of the fourth aspect.
According to a sixth aspect of the present invention there is provided a computer 35 program product comprising a computer-readable medium (which may be non- -5 -transitory) storing a computer program comprising instructions for performing the method of the first fourth.
According to a seventh aspect of the present invention there is provided a method of operating a system, the method comprising operating a mobile device according to the method of the first aspect, and operating at least one hub device according to the method of fourth aspect.
According to an eighth aspect of the present invention there is provided a mobile device jo for use in a wireless communications network. The mobile device comprises a controller, and a wireless communications network interface. The device is configured, responsive to receiving a message from a hub device, the message including information identifying an access priority, to determine a current device priority of the mobile device based on a predetermined set of rules relating to an operation state of the /5 mobile device, to determine whether to initiate connection to the hub device in dependence upon the access priority and the current device priority, upon a positive determination, to transmit a connection request to the hub device, and, in response to receiving acceptance of the connection request from the hub device, to transmit data to the hub device.
According to a ninth aspect of the present invention there is provided a gateway for use in a wireless communications network. The gateway comprises a controller, and a wireless communications network interface. The device is configured to transmit a message which includes information identifying an access priority, in response to receiving a connection request from a mobile device identifying a device priority, to determine whether the access priority and the device priority match, upon a positive determination, to signal, to the mobile device, acceptance of the connection request, in response to receiving data from the mobile device, to process and/or storing the data.
According to a tenth aspect of the present invention the is provided a system comprising a plurality of the tags of the eighth aspect, and the gateway of the ninth aspect.
The wireless communication network may be a short-range wireless communication 35 network. The wireless communication network may be a Bluetooth Low Energy (BLE) network. The wireless communication network may be a ZigBee network. The wireless -6 -communication network may be an IEEE 802 network. The wireless communication network may be a medium-or long-range wireless communication network. The wireless communication network may be a LoRaWAN network. -7 -
Brief Description of the Drawings
Certain embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figure 1 is a schematic block diagram of a wireless communication network which includes at least one gateway and a large number of tags; Figure 2 illustrates priority levels of a tag; Figure 3 schematically shows an advertising package; Figure 4 illustrates communication between a gateway and three tags; Figure 5 illustrates a situation in which more than one tag attempts to connect to a jo gateway simultaneously; Figure 6 illustrates use of time offsets to avoid a situation in which more than one tag attempts to connect to a gateway simultaneously; Figure 7 is a schematic block diagram of a gateway; Figure 8 is a schematic block diagram of a tag; Figure 9 is process flow diagram of a method of operating the gateway shown in Figure 7; and Figure to is process flow diagram of a method of operating the tag shown in Figure 8.
Detailed Description of Certain Embodiments
System overview Referring to Figure 1, a system 1 is shown in which at least one gateway 2 (herein also referred to as at least one "hub device") can communicate wirelessly with a potentially large number (i.e., up to 10,000 or more) of mobile, battery-powered, data-capturing tags 3 (herein also referred to as "mobile devices") via communication links 4, such as short-range communication links 4. in this example, the at least one gateway 2 and tags 3 are configured to communicate using Bluetooth Low Energy (BLE) links 4. Gateway 2 and tags 3 may communicate via other wireless communication links, such as ZigBee, IEEE 802, or LoRaWAN.
The tags 3 can be used to monitor the condition of an asset or item (not shown) which may be a product, a package, a container, a vehicle or an article of clothing, and which is mobile (or "moveable"). For example, the tag 3 can be used to monitor the state of product, such as a refrigerated box, and detect whether the temperature in the box has risen above a threshold temperature. The tags 3 can monitor the health or the condition of a person or an animal (such as a cow) and/or environmental conditions. The tag 3, for instance, can be used to monitor the health and movement of a person -8 - (such an elderly person) and detect, for example, whether they have fallen (using an accelerometer). The tag 3, for instance, can measure the temperature or movement of the animal and/or the ambient temperature.
The tags 3 can come in and come out of range of the gateway 2 at different times since the asset or item is mobile. For example, tags 3 may be attached to boxes which can move within a warehouse. Alternatively, tags 3 may be attached to cattle or other livestock which are free to move. When tags 3 are in range, a gateway 2 can download (or "harvest") data from the tags 3, and transmit the data to a system controller 5. The /0 gateway 2 can be used to transmit data and/or software to the tags 3.
Herein, data transmission is used which can help reduce power consumption of the tags 3, help to avoid data loss while a tag 3 is out of range of a gateway 2 and/or help to maximise the number of tags 3 that one gateway 2 can serve. The methods herein /5 described may be implemented in a radio protocol APT.
Communication can be prioritised and serialised so as to place tags effectively in a queue according to a priority level, and to help reduce collisions from multiple tags transmitting simultaneously.
Centrals and peripherals An approach is used herein in which each gateway 2 (i.e., each hub device) operates a peripheral and the tags 3 (i.e., mobile devices) function as centrals, rather than the other way round (i.e., the gateway 2 serving as the central and the tags 3 being peripherals). This approach frees the tags 3 from needing to transmit advertisements and thus help to reduce power consumption. instead, the gateway 2 transmits advertisements.
The approach does not require the gateway calling each tag in turn by uniquely addressing each tag, which would require every tag in range to listen and decode a request before determining that the request was not intended for it, and so result in the tag needing to powered on for longer and to use power unnecessarily for decoding.
The approach also involves tags self-identifying their priority level, and responding to advertisements according to their self-identified priority level. -9 -
Prioritisation Priority can be based on several parameters including (i) emergency condition (e.g., animal heath), (ii) energy available in the battery ("battery level"), (iii) storage capacity available, and (iv) distance of the tag from a gateway.
For example, a tag which determines a potentially sick animal might be assigned a high priority and so urgently notify the administrator. Similarly, a tag which is running low on battery power might be given a high priority so as to enable data to be downloaded and the controller to be alerted to the low battery status. A tag which is running out of io available storage might also have a high priority so as to allow its data to be downloaded and thus free-up storage, or to signal to an administrator how much storage time is available. Finally, signal strength can be used to determine the distance of the tag from the gateway. If the tag is far away, data loss and power consumption is likely to increase, and so the tag might be assigned a high priority.
Referring to Figure 2, a table 10 illustrating an exemplary set of priority levels ii based on a set of parameters 12 is shown.
A tag 3 is able to determine its own priority level according to locally-measured values or state of the parameters 12. The priority levels 11 are preferably configurable in a tag 3, for example, via configuration data 13 (Figure 7) or firmware upgrade.
In this example, there are eight priority levels ii. There may be fewer or more levels it The tag 2 determines that it has the highest priority level, priority 1, if the storage remaining fans below 30 minutes, there is an emergency condition (for example, temperature too high or a health alert), the tag has low battery or signal strength RSSI is less than a first threshold value. The tag 2 determines that it has one of the next three highest priority levels, priority 2, priority 3 and priority 4 if the storage remaining falls below 2 hours, four hours and six hours, respectively, the tag has low battery or signal strength RSSI is less than a second threshold value (which is higher than the first). The tag 2 determines that it has one of the four lowest priority levels, priority, priority_6, priority_7 and priority_8, if the storage remaining falls below 10 hours, 12 hours, 14 hours and 18 hours respectively, the tag has low battery or signal strength RSSI is less than a third threshold value (which is higher than the first).
-10 -Referring to Figure 3, an advertisement 15 which is transmitted by the gateway 2 is shown. In this case, the advertisement 15 takes the form of an advertisement indication, ADV IND, in BLE. Other advertising messages, e.g., broadcast messages, in other communication protocols can be used. The advertisement 15 maybe included in a beacon payload in a beacon packet, such as, for example, in ZigBee. The advertisement 15 includes a current priority level 16 and defines the priority 16 of tags that should respond. The advertisement 15 can include other priority-related information. For example, the advertisement 1,5 may include times 17 (or "next calls") at which advertisements 15 for priority levels will be transmitted, thus allowing devices jo to sleep in the interim and save power. Tags 3, therefore, can receive and decode an advertisement 15 and, dependent on its own priority level, the tag 3 can decide whether to attempt to connect or sleep. The advertisement 15 may include other data such as a firmware version 18 and/or a public key 19.
An advertisement can be short, for instance between 4-and ro-bytes long, but is can be shorter or even longer. A short advertisement allows tags to wake up and listen to an advertising packet to quickly determine when its next available slot would be, thus reducing power consumed. This mechanism allows the system controllers to specify which priorities it wishes to scan at a given time and change them dynamically.
Referring to Figure 4, interaction between a gateway 2 and three tags 3,, 32, 33 is shown. In this case, first and second tags 3,, 32 have the highest priority level, priority 1, and a third tag 32, 33 has the next highest priority level, priority 2.
In an undirected connectable mode, the gateway 2 transits a first advertisement 15 signalling priority 1 in the current priority field 16. Thus, any tag 3" 3, which is priority 1 can attempt to connect and the first (i.e., quickest) tag 3, to connect can then exchange data with the gateway 2.
If a second tag 32 tries to connect whilst the first tag 3, is connected, the gateway 2 automatically rejects the second tag 32.
Because the gateway 2 established a priority_r connection during the last advertising period, the next advertising period is kept as priority_r. In this case, the second tag 32 (which is also priority 1) can connect. For large amounts of data, the next advertisement 15 can be delayed, thus reducing advertisements and cutting the number of other tags 3 attempting connections (which would otherwise lead to interference).
If there is no reply to a priority_i advertisement 15, then the gateway 3 can switch to the sending advertisements with the next lower priority, in this case, priority 2. This process continues until there are no replies to a priority_2 advertisement, at which point the gateway 3 can switch to the sending advertisements with the next lower priority, in this case, priority 3, and so on.
jo As explained earlier, a priority may take the form of an positive integer in a range of, for example, ito 10. In this case, more than one tag 3 and potentially many tags (e.g., >100 or >i,000) may share the same priority. The priority may, however, take the form of a positive integer in a wide range of, for example, ito 12,000. In this case, a tag may not share priority or only a few tags 3 (<5) may share the same priority. The priority may take other forms, such as, a floating point number (e.g., 1. 234).
The set of rules may include one or more Boolean operators, such as OR, AND, XOR etc. For example, the set of rules may include a determining whether any of at least two parameters meet respective predetermined threshold or requirement, e.g., (A OR B) or (A OR B OR C), or (A OR B OR CORD) for the device to be at a given priority level. A may be, for instance, storage time < 30 mins, B may be emergency condition, C may be battery low and D may be RSSS < x. The set of rules may include a determining whether at least two parameters meet respective predetermined threshold or requirement, e.g., (A AND B) or (A AND B AND C) etc. for the device to be at a given priority level). The set of rules may include a mix of operators, e.g., (A OR B OR (C AND D).
As explained earlier, the table or algorithm used by a tag to determine its priority level, including which parameters should be used, can be updated.
A tag may influence the priority of other tags 3. For instance, when a tag listens for advertisements from the gateway, it may also listen to any other tags that advertise or respond in that window. The tag may react to the message. Thus, a tag could gather information from other tags.
-12 -The tag may use other information about the network transmitted by the gateway, such as the number of devices in the network as a number, or an indication of the size of the network, for instance, as a classification range ito 5.
Serialisation Referring to Figure 5, if prioritisation is used alone, then a situation can arise in which multiple devices might attempt to connect simultaneously, resulting in collisions and potentially preventing any device from connecting. Figure 5 is a simplified view which illustrates tags 31, 32, 33 sending colliding connection requests.
Referring to Figure 6, to help avoid this, connection attempts can be staggered to try and avoid all devices attempting to connect simultaneously.
Each tag 31, 32, 33 wishing to connect calculates a delay time (or "offset"). The delay t5 time may be based on the current storage time remaining and/or battery level. Thus, devices with the lowest battery level and lowest remaining storage would respond first. Other approaches, for example, randomly selecting a delay time or sequentially drawing a time from a circular list of N different times, such as t,, t2, t3, t4,... ts, where u>t,, t3>t2 etc., each device having a different starting point. Delaying connections can help reduce collisions.
Firmware Update Typically, firmware updates are performed when a controller is connected to lower-priority devices and the controller has more available time. When the controller has connected to a tag, it can obtain the status of the device as a part of its initial negotiation including its firmware revision. The controller can then take a decision on whether to perform a firmware update.
The approach herein allows firmware update to be performed by a second gateway 2 30 which could scan for low-priority devices and update the firmware.
Gateway API The application programming interface (API) to the gateway 3 is intended to he a simple protocol between tags 3 and system controller 5, thus removing the need to 35 change the gateway code in order to scale the system with the minimal amount of -13 -changes to the gateway 2. The gateway-to-controller interface can take the form of a wired connection, such as UART.
Each gateway 2 may be able to connect and communicate with multiple tags simultaneously.
Multiple gateways Referring to Figure 1, multiple gateways 2 can be connected to the system controller 5. The system controller 5 can then instruct a given gateway 2 to advertise with a different jo or the same priority call, but with the same next priority call setup, such that the tags can maintain their sleep patterns. To the tag, it will appear as if there is only one controller advertising and so it will not know the difference.
Additional bandwidth power savings The data can be compressed before transmission as some of the data (such as temperature) may be repetitive and so is suited to being compressed. An embedded version (with a small footprint and small RAM requirement) of a dictionary-based compression can, therefore, be used at both ends of the transmission.
Security Traditionally, remote peripheral devices need to advertise so that a gateway or collector can connect to them and collect information from them. With the device being silent, they cannot be scanned and identified by scanning for radio signals. The device only responds once a signal with the correct credentials is received.
This means that if an eavesdropper scans to see how many devices there are in an area, no respond will be received. It would also mean, for example, that unless the correct corresponding keys are transmitted, the eavesdropper would not be able to find out how many tags and, thus, cattle there are in a field.
Thus, a key is generated and exchanged with a device at commissioning. In operation the device is completely silent. An intermittent listening window is activated in operation in the peripheral device. The gateway/collection device transmits an open message that contains the encrypted key at regular intervals. Once the peripheral device listens to the message it can decrypt the key and once the key is confirmed the peripheral device starts the connection with the gateway collector.
-14 -One of the advantages is that based on the key, the peripheral can decide whether to start a connection or execute a command transmitted.
Network updates The gateway collector messages can include public commands to the peripherals. One of the commands can include an update to a certain version. If the receiving tag has an operating version different from the commanded version, the peripheral switches operating mode to update mode and advertises a key so that an updater may connect to io the tag and transfer the new firmware.
The gateway/ collector can then detect the tag advertising in update mode, then connects to the tag and transmits the updated code as well as any updates in operating parameters. Updating code is described hereinafter in relation to Figures 9 and 10.
Gateway Referring to Figure 7, the gateway 2 is shown in more detail.
The gateway 2 comprises a controller 20, for example in the form of a microcontroller, which includes a processor 21 and memory 22. The gateway 2 also comprises a wireless communications network interface 23, for example, in the form of a Bluetooth Low Energy network interface, ZigBee interface, IEEE 802 interface, or LoRaWAN interface, a network interface 24 for communication with system controller 5, non-volatile memory or storage 25 and a power source 26. The power source 26 may include a battery and/or may include a mains power source or photovoltaic for charging the battery.
The non-volatile memory or storage 25 stores information 27 about advertisement priorities and time allocations, and additional information 28, 29, for tags including 30 firmware version 28 and cryptographic keys 29. Tav
Referring to Figure 8, the tag 3 is shown in more detail.
The tag 3 comprises a controller 30, for example in the form of a microcontroller, which includes a processor 31 and memory 32. The tag 3 also comprises a wireless -15 -communications network interface 33, for example in the form of a Bluetooth Low Energy network interface, ZigBee interface, IEEE 802 interface, or LoRaWAN interface, sensors 34, non-volatile memory or storage 35 and a power source 36, for instance in the form of a battery.
The non-volatile memory or storage 35 stores firmware 37 and recorded data 38.
Operation Referring to Figures 7 and 9, operation of the gateway 2 will now be described.
After operations start, the gateway controller 20 looks up the priority of the next advertisement from non-volatile memory or storage (step 89.1), builds an advertisement 15 comprising one or more packets (step S9.2) and sends the advertisement to the wireless interface 23 for transmission (step 89.3). The controller zo then waits for connection requests received via the wireless interface 23 (step 89.4).
If a connection request is received, the controller 20 checks whether the credentials of the connection request are valid (step S9.5).
If no connection request is received, then the controller checks if the priority time limit is reached (step 89.6). If the time limit is reached, then the controller zo prepares to send another advertisement with a lower priority, starting with looking up the priority of the next advertisement from non-volatile memory or storage (step 89.1). Once the controller zo has reached the lowest priority, it starts again with an advertisement with the highest priority. If the time limit is not reached, then the controller 20 simply sends another advertisement and again listens for replies (steps 89.3 & 89.4). The time allocated to a priority need not be the same for priorities. For example, a longer period of time may be allocated to the top priority, and less time allocated to the next, lower priority.
If a connection request is received and the credentials are valid, the controller 20 checks whether the priority of the request matches the current priority and/or whether the request is an emergency message (step 89.8).
If a connection request has the correct priority or the request is an emergency message, then the controller 20 signals acceptance to the tag (step 89.9), receives the data and -16 -either stores or processes the data (step S9.1o). The controller 20 also checks whether the firmware of the tag is out-of-date and thus needs updating (step S9.11) and, if so, sends a firmware update to the tag (step S9.12). The controller 20 checks if the priority time limit is reached (step S9.6). If the time limit is reached, then the controller 20 prepares to send another advertisement with a lower priority (step S9.1).
If the time limit has not been reached, the controller 20 sends another advertisement with the same priority and listens for replies (steps S9.3 & S9.4).
If a connection request is received and the credentials are invalid, or the request does Lc) not have the proper priority or is not identified as being an emergency message, the controller 20 signals to the tag that the request is refused (step S9.13). The controller zo logs the request (step S9.14) and checks if the priority time limit is reached (step S9.6), taking appropriate action as hereinbefore described.
/5 Referring to Figures 8 and 10, operation of the tag 3 will now be described.
After operations start, the tag 3 performs its usual function, i.e., logging measurements and determining whether any anomalies are identified or, expressed differently, that an emergency condition has been identified (step Sm.)). The tag controller 30 periodically checks whether an emergency condition has been detected (step Sio.2). If no emergency has been detected, the tag controller 30 checks whether it needs to transmit data (step Sio.3).
If an emergency condition is detected or there is need to transmit data, the tag controller 30 calculates its priority level (step Sio.4) and starts to listen for advertisements at a fast interval, for example, every x, seconds for a period of y, seconds (step Sio.5). For example, x, may be loo ms and y, may be 10 ms.
If no emergency condition is detected or there is no need to transmit data, the tag controller 30 starts to listen for advertisements at a slow interval, for example, every x2 seconds (where x, > x,) for a period of y, (where 2 > y,) (step Sio.6). For example, x2 may be 300 s (5 minutes) andy2 may be ioo ms. If no action is needed, the controller 30 continues with normal operation (step Sio.1). If, however, the tag controller 30 determines that action is needed, then it calculates its priority level (step Sio.4) and starts to listen for advertisements at a short interval (step Sio.5).
-17 -If an advertisement 15 is received, then the tag controller 30 checks the priority in the advertisement to see if it matches its self-determined priority (step Sto.9). If the priorities do not match, then the controller 30 calculates a sleep time based on the next call value contained in the advertisement (step Sto.to) and then waits (step Stoat). If an emergency is detected, the controller 30 may exit the wait state early (not shown in Figure toA for clarity) and recalculates priority number (step Sto.4). After waiting, the tag controller 30 re-calculates its priority level (step Sto.4) and repeats the process of listing for advertisements at the high rate of frequency (step Sto.5).
io If the priority specified in the advertisement 15 and the self-determined priority match, the controller 30 calculates a request delay time (step Sto.12) and after waiting for the request delay time transmits the request (step Sto.13).
The controller 30 determines whether its connection request was successful (step Sto.14). If the connection request was accepted, then it checks the credentials of the gateway (step Sums). If the credentials are invalid, then it closes the connection (step Sto.16) and listens for advertisements at the high rate of frequency (step Sto.5). If, however, the credentials are valid, then it transmits data to the gateway (step Star).
Once these data have been transmitted, the controller 30 clear emergency tags (step Sto.18). It then determines whether it needs an update (step Sto.19) and, if so, signals the gateway to send a firmware update, receives the firmware update and performs the update (step Sto.2o). The controller 30 then terminates the connection and returns to normal operation (step Sto.1).
Modifications It will be appreciated that various modifications may be made to the embodiments hereinbefore described. Such modifications may involve equivalent and other features which are already known in the design, manufacture and use of short-range communication systems and component parts thereof and which may be used instead of or in addition to features already described herein. Features of one embodiment may be replaced or supplemented by features of another embodiment.
The tags need not be used in animal welfare, but can be used in other application in which mobile or moveable items can be tagged. For example, an item can be a product or package, a vehicle, or an article of clothing. The environment(s) in which the item can found (and which gateways can be placed) can be, or include, a factory, a warehouse, a distribution centre, another part of a distribution network (such as a transport hub), a shop or other retail environment.
The hub device may be mobile. For example, the hub device maybe carried by a vehicle such as a ground-based air-based drone, or truck, and can therefore be used as a mobile data collection unit. In some cases, the hub device is fixed, for example, affixed to a wall or other structure in, for instance, a building.
io Although claims have been formulated in this application to particular combinations of features, it should be understood that the scope of the disclosure of the present invention also includes any novel features or any novel combination of features disclosed herein either explicitly or implicitly or any generalization thereof, whether or not it relates to the same invention as presently claimed in any claim and whether or not it mitigates any or all of the same technical problems as does the present invention. The applicants hereby give notice that new claims maybe formulated to such features and/or combinations of such features during the prosecution of the present application or of any further application derived therefrom.

Claims (25)

  1. -19 -Claims 1. A method of operating a mobile device in a wireless communications network, the method comprising: * receiving a message from a hub device, the message including information identifying an access priority; * determining a current device priority of the mobile device based on a predetermined set of rules relating to an operation state of the mobile device; * determining whether to initiate connection to the hub device in dependence io upon the access priority and the current device priority; * upon a positive determination, transmitting a connection request to the hub device; and * upon receiving acceptance of the connection request from the hub device, transmitting data to the hub device.
  2. 2. The method of claim 1, further comprising: * generating a delay time; and * waiting the delay time before transmitting the connection request.
  3. 3. The method of claim 2, wherein the delay time is calculated in dependence upon amount of free storage available and/or battery level.
  4. 4. The method of claim 2, wherein the delay time is randomly generated.
  5. 5. The method of any one of claims ito 4, wherein the message is a broadcast message.
  6. 6. The method of claim 5, wherein the broadcast message is an advertising message.
  7. 7. The method of any one of claims 1 to 6, wherein: * upon a negative determination, determining a call time and waiting until the call time before again determining whether to initiate connection.
  8. 8. The method of any one of claims ito 7, wherein the message includes a set of call times, each call time corresponding to a respective access priority.
  9. -20 - 9. The method of any one of claims ito 8, further comprising: * determining whether a software update is required; and * upon a positive determination, downloading update software from the hub.
  10. 10. The method of any one of claims 1 to 9, wherein the message includes a software version to be used when determining whether a software update is required.
  11. The method of any one of claims ito in, further comprising: * encrypting the data using a key before transmitting the data to the hub device.
  12. 12. The method of any one of claims ito IA, wherein the message includes a key for encrypting data before transmitting the data to the hub device.
  13. 13. The method of any one of claims i to 12, wherein the operating state includes an /5 amount of storage available, an amount of remaining battery energy available and/or a received signal strength indicator.
  14. 14. The method of any one of claims ito 13, wherein the operating state includes an emergency state.
  15. 15. A computer program comprising instructions for performing the method of any one of claims ito 14.
  16. 16. A method of operating a hub device in a wireless communications network, the method comprising: * transmitting a message which includes information identifying an access priority; * in response to receiving a connection request from a mobile device identifying a device priority, determining whether the access priority and the device priority match; * upon a positive determination, signalling, to the mobile device, acceptance of the connection request; * receiving data from the mobile device; and * processing and/or storing the data.
  17. 17. The method of claim 16, further comprising: -21 - * upon a negative determination, signalling to the mobile device refusal of the connection request.
  18. 18. The method of claim 16 or 17, further comprising: * in response to receiving the connection request, determining whether credentials in the connection request are valid before determining whether the access priority and the device priority match.
  19. 19. The method of any one of claims 16 to 18, further comprising: * determining whether software in the mobile device needs updating; and * upon a positive determination, transmitting update a software update to the mobile device.zo.
  20. The method of any one of claims 16 to 19, wherein the message is a first message, /5 the access priority is a first access priority, and the mobile device is a first mobile device, the method comprising: * transmitting a second message specifying a second, lower access priority; * in response to receiving a connection request from a second mobile device identifying a second device priority, determining whether the second access priority and the second device priority match; * upon a positive determination, signalling to the second mobile device acceptance of the connection request; * receiving data from the second mobile device; and * processing and/or storing the data.
  21. 21. A computer program comprising instructions for performing the method of any one of claims 16 to zo.
  22. 22. A method of operating a system comprising: * operating a mobile device according to the method of any one of claims 1 to 14; and * operating at least one hub device according to the method of any one of claims 16 to 20.
  23. 23. A mobile device for use in a wireless communications network, the mobile device comprising: -22 - * a controller; and * a wireless communications network interface; wherein the device is configured: - in response to receiving a message from a hub device, the message including 5 information identifying an access priority, to determine a current device priority of the mobile device based on a predetermined set of rules relating to an operation state of the mobile device; - to determine whether to initiate connection to the hub device in dependence upon the access priority and the current device priority; /0 * upon a positive determination, to transmit a connection request to the hub device; and * in response to receiving acceptance of the connection request from the hub device, to transmit data to the hub device.
  24. 24. A gateway for use in a wireless communications network, the gateway comprising: * a controller; and * a wireless communications network interface; wherein the device is configured: -to transmit a message which includes information identifying an access priority; - in response to receiving a connection request from a mobile device identifying a device priority, to determine whether the access priority and the device priority match; * upon a positive determination, to signal, to the mobile device, acceptance of the connection request; * in response to receiving data from the mobile device, to process and/or storing the data.
  25. 25. A system comprising: a plurality of the tags of claim 23; and * the gateway of claim 24.
GB2211244.5A 2022-08-02 2022-08-02 Wireless communication Pending GB2621142A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
GB2211244.5A GB2621142A (en) 2022-08-02 2022-08-02 Wireless communication

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB2211244.5A GB2621142A (en) 2022-08-02 2022-08-02 Wireless communication

Publications (2)

Publication Number Publication Date
GB202211244D0 GB202211244D0 (en) 2022-09-14
GB2621142A true GB2621142A (en) 2024-02-07

Family

ID=84540711

Family Applications (1)

Application Number Title Priority Date Filing Date
GB2211244.5A Pending GB2621142A (en) 2022-08-02 2022-08-02 Wireless communication

Country Status (1)

Country Link
GB (1) GB2621142A (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2486963A (en) * 2010-12-29 2012-07-04 Gen Electric A wireless communication node adjusts a differentiated services control parameter setting based on a priority level assigned to received data
GB2577310A (en) * 2018-09-21 2020-03-25 Wirepas Oy A discovery method for wireless communication systems
US20220022419A1 (en) * 2020-07-21 2022-01-27 Garrity Power Services Llc Cattle tracking system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2486963A (en) * 2010-12-29 2012-07-04 Gen Electric A wireless communication node adjusts a differentiated services control parameter setting based on a priority level assigned to received data
GB2577310A (en) * 2018-09-21 2020-03-25 Wirepas Oy A discovery method for wireless communication systems
US20220022419A1 (en) * 2020-07-21 2022-01-27 Garrity Power Services Llc Cattle tracking system

Also Published As

Publication number Publication date
GB202211244D0 (en) 2022-09-14

Similar Documents

Publication Publication Date Title
US11751135B2 (en) Method and system for wirelessly transmitting data
EP2724569B1 (en) Wireless sensor network
US20180276422A1 (en) Proximity-based localization of wireless tags based on wireless gateway association information
US8224282B2 (en) Method and device to manage power of wireless multi-sensor devices
CN108695997B (en) Power transmission apparatus, control method therefor, and storage medium
CN103650567B (en) Method for configuration node
EP3506719B1 (en) Systems and methods for efficient utilization of wireless bandwidth
US20170251428A1 (en) Methods and Nodes for M2M Communication
US20100253520A1 (en) Device, method and system for forwarding data from rfid devices
KR102238811B1 (en) Method for battery saving of iot device and server for the same
GB2621142A (en) Wireless communication
CN110647048B (en) Alarm execution operation method and device based on intelligent home operation system
US20080064407A1 (en) Congestion arbitration for a wireless network
CN112166633B (en) Communication device, host and method therein for handling paging and data exchange in a wireless communication system
CN103576664A (en) Automation component for transmitting value change information in intelligent household system and method
JP6690465B2 (en) Wireless communication system and transmission timing distribution method for wireless device
US20230328586A1 (en) Managing message sizes in a mesh network
JP2023149945A (en) Wireless communication system and wireless communication method in wireless communication system
CN117560639A (en) Communication method and device
AU2019261761A1 (en) A system and method for sending and receiving wireless signals
KR20090097052A (en) Sensor network and method for composition thereof