A method includes tracking one or more echoes of an original message sent from a battery-powered device in a wireless communication network. The battery-powered device includes a lighting control device or a phenomenon sensor. The method further includes adjusting a likelihood of designating a repeater for the battery-powered device based on the battery-powered device receiving an adjustment echo of the one or more echoes or one or more line-powered devices receiving the original message directly from the battery-powered device. The method further includes determining whether or not to designate a repeater for the battery-powered device based on the battery-powered device receiving a determination echo of the one or more echoes of the original message, or the one or more line-powered devices receiving the original message directly from the battery-powered device.
Legal claims defining the scope of protection, as filed with the USPTO.
(a) tracking one or more echoes of an original message sent from a battery-powered device in a wireless communication network, wherein the battery-powered device includes a lighting control device or a phenomenon sensor; (b) adjusting a likelihood of designating a repeater for the battery-powered device based on the battery-powered device receiving an adjustment echo of the one or more echoes or one or more line-powered devices receiving the original message directly from the battery-powered device; (c) determining whether or not to designate a repeater for the battery-powered device based on the battery-powered device receiving a determination echo of the one or more echoes of the original message, or the one or more line-powered devices receiving the original message directly from the battery-powered device; and (d) decreasing the likelihood of a respective line-powered device being designated the repeater for the battery-powered device in response to the respective line-powered device receiving a retransmitted message from a different line-powered device originally sent from the battery-powered device. . A method, comprising steps of:
claim 1 implementing steps (a) through (d) at a first line-powered device and a second line-powered device; and breaking a tie, at a coordinator device, for determining between the first line-powered device and the second line-powered device which to designate the repeater for the battery-powered device in response to the first line-powered device determining to designate the first line-powered device as the repeater and the second line-powered device determining to designate the second line-powered device as the repeater. . The method of, further comprising:
claim 2 . The method of, wherein the coordinator device is a group monitor.
claim 1 implementing steps (a) through (d) for each of a plurality of battery-powered devices. . The method of, further comprising:
claim 1 tracking a respective one or more echoes of messages sent from a respective battery-powered device for a plurality of battery-powered devices in the wireless communication network. . The method of, wherein step (a) includes:
claim 1 step (b) includes adjusting a respective likelihood of designating the respective line-powered device of the one or more line-powered devices being designated the repeater for the battery-powered device in response to the respective line-powered device receiving at least one respective message directly from the battery-powered device which identifies a respective group monitor of the lighting control group to which the respective line-powered device and the battery-powered device both belong. . The method of, wherein:
claim 1 storing a network address of the different line-powered device designated the repeater for the retransmitted message of the battery-powered device. . The method of, further comprising:
(a) tracking one or more echoes of an original message sent from a battery-powered device in a wireless communication network, wherein the battery-powered device includes a lighting control device or a phenomenon sensor; (b) adjusting a likelihood of designating a repeater for the battery-powered device based on the battery-powered device receiving an adjustment echo of the one or more echoes or one or more line-powered devices receiving the original message directly from the battery-powered device; (c) determining whether or not to designate a repeater for the battery-powered device based on the battery-powered device receiving a determination echo of the one or more echoes of the original message, or the one or more line-powered devices receiving the original message directly from the battery-powered device; (d) tracking, at the battery-powered device, group monitor repeated messages originally sent from the battery-powered device and repeated in the wireless communication network by a group monitor or a different repeater not determined by the battery-powered device; and (e) increasing the likelihood of a respective line-powered device being designated the repeater for the battery-powered device in response to receiving a retransmitted message from the group monitor or the different repeater. . A method, comprising steps of:
claim 8 comparing the tracked one or more echoes of the original message and the tracked group monitor repeated messages against a repeater creation threshold to determine whether or not to designate the respective line-powered device as the repeater for the battery-powered device. . The method of, wherein step (c) further comprises:
(a) tracking a respective echo success count of messages sent from each of a plurality of battery-powered devices in a wireless communication network, wherein the battery-powered devices include a light switch or an occupancy, audio, or daylight sensor; (b) adjusting the respective echo success count to increase a likelihood of a line-powered device being designated a repeater for a respective battery-powered device of the plurality of battery-powered devices in response to the line-powered device receiving at least one message directly from the respective battery-powered device which identifies a group monitor identifier of a lighting control group to which the line-powered device and the respective battery-powered device both belong; (c) adjusting the respective echo success count to decrease the likelihood of the line-powered device being designated the repeater for the respective battery-powered device in response to the line-powered device receiving a retransmitted message from another line-powered device originally sent from the respective battery-powered device; and (d) comparing the respective echo success count against a repeater creation threshold to determine whether or not to designate the line-powered device as a repeater for the respective battery-powered device. . A method, comprising steps of:
claim 10 implementing steps (a) through (d) at a first line-powered device and a second-line powered device; and breaking a tie, at a coordinator device, for a role of the repeater for the respective battery-powered device between the first line-powered device and the second line-powered device in response to the first line-powered device determining to designate the first line-powered device as the repeater and the second line-powered device determining to designate the second line-powered device as the repeater. . The method of, further comprising:
claim 10 step (b) includes: adjusting the respective echo success count to increase a respective likelihood of the line-powered device being designated the repeater for the respective battery-powered device in response to the line-powered device receiving at least one respective message directly from the respective battery-powered device which identifies a respective group monitor identifier of the lighting control group to which the line-powered device and the respective battery-powered device both belong. . The method of, wherein:
claim 10 storing a network address of the other line-powered device that is the repeater for the retransmitted message of the respective battery-powered device. . The method of, further comprising:
claim 10 implementing steps (a) through (d) at the respective battery-powered device. . The method of, further comprising:
claim 10 (e) adjusting a group monitor echo success count to increase the likelihood of the line-powered device being designated the repeater for the respective battery-powered device in response to receiving the retransmitted message from a group monitor or a different repeater not created by the respective battery-powered device. . The method of, further comprising:
claim 10 comparing both the respective echo success count and a group monitor echo success count against the repeater creation threshold to determine whether or not to designate the line-powered device as the repeater for the respective battery-powered device. . The method of, wherein step (c) further comprises:
track one or more echoes of an original message sent from the battery-powered device in a wireless communication network; adjust a likelihood of designating a repeater for the battery-powered device based on the battery-powered device receiving an adjustment echo of the one or more echoes or one or more line-powered devices receiving the original message directly from the battery-powered device; determine whether or not to designate a repeater for the battery-powered device based on the battery-powered device receiving a determination echo of the one or more echoes of the original message, or the one or more line-powered devices receiving the original message directly from the battery-powered device; and decrease the likelihood of a respective line-powered device being designated the repeater for the battery-powered device in response to the respective line-powered device receiving a retransmitted message from a different line-powered device originally sent from the battery-powered device. . A battery-powered device, comprising a lighting control device or a phenomenon sensor, wherein the battery-powered device is configured to:
track one or more echoes of an original message sent from a battery-powered device in a wireless communication network, wherein the battery-powered device includes a lighting control device or a phenomenon sensor; adjust a likelihood of designating a repeater for the battery-powered device based on the battery-powered device receiving an adjustment echo of the one or more echoes or the one or more line-powered devices receiving the original message directly from the battery-powered device; determine whether or not to designate a repeater for the battery-powered device based on the battery-powered device receiving a determination echo of the one or more echoes of the original message, or the one or more line-powered devices receiving the original message directly from the battery-powered device; and decrease the likelihood of a respective line-powered device being designated the repeater for the battery-powered device in response to the respective line-powered device receiving a retransmitted message from a different line-powered device originally sent from the battery-powered device. . A line-powered device of one or more line-powered devices, wherein the line-powered device is configured to:
Complete technical specification and implementation details from the patent document.
This application claims priority to U.S. Provisional Patent Application No. 63/463,189, filed on May 1, 2023, titled “Repeater Creation for Battery Powered and Low Power Devices,” the entire disclosure of which is incorporated by reference herein.
Lighting networks controlled by digital signals transmit a range of signals between a variety of network nodes or lighting system elements (LSEs). The lighting networks can be configured as flood mesh networks, where every network node which receives a given message, re-broadcasts that message in an attempt to ensure that any intended recipients ultimately receive the message.
However, in large distributed flood mesh networks, a strategy of indiscriminately forwarding all messages can lead to broadcast storms, where high numbers of network packets are transmitted and re-transmitted in a short period of time. A distributed flood mesh network with no preventative strategies to avoid broadcast storms can experience messages being rapidly re-broadcast indefinitely, ultimately stifling all effective communication and essentially bringing the communication within the network offline.
Some flood mesh networks solve this problem by directing only certain network nodes to re-broadcast messages. Those certain network nodes, often called repeaters, can include a list or map of network nodes which directly or indirectly depend upon a given repeater to receive messages sent throughout the network.
However, battery-powered and low-power devices create issues for lighting networks, repeaters, and the repeater designation process. Battery-powered devices are often control devices, allowing an operator of the control device to dictate behavior of the luminaires among the LSEs. The control devices can also be networked sensors, which allow an operator to indirectly dictate luminaire behavior. In some circumstances, it is more energy and cost-effective for these control devices to be battery-powered. The power consumption is relatively low compared to the luminaires, making line-powered control devices relatively expensive for the benefit provided. Additionally, in environments where the luminaires are being upgraded from a non-networked or an outdated networked setting, the luminaires often can be installed where the prior luminaires once were, utilizing the previously-installed power output. The control devices, however, may not replace existing control devices or light switches, and therefore installing new power output to the new control devices can become cost-prohibitive.
If these battery-powered and low-power devices are located nearby the network gateway, or a group monitor responsible for a related group of luminaires, then direct communication between the battery-powered and low-power devices and the network gateway or group monitor is possible. However, in many circumstances, the battery-powered and low-power devices are mounted near the edge of the area lit by a group of luminaires, and consequently may be far from pertinent networked devices. Additionally, to preserve energy, the battery-powered and low-power devices often broadcast at a lower power level, with a consequently smaller broadcast radius, further reducing their ability to directly communicate with pertinent networked devices. These battery-powered and low-power devices, if treated like line-powered network devices, will often receive sub-standard or insufficient network communication capability.
An improved networking protocol implementing message repeating strategies and topologies directed to facilitating battery-powered and low-power device messaging within a flood mesh-based lighting system is needed to overcome these and other limitations in the art.
Techniques are described herein relating to a repeater designation programming protocol of the lighting system elements of a lighting system. The repeater designation programming protocol described herein can identify repeater network nodes to facilitate battery-powered and low-power devices communications within a flood mesh lighting system network in order to efficiently route network control messages throughout the lighting system network.
170 170 4 25 4 146 156 5 4 4 170 170 4 170 4 5 4 4 170 170 170 4 170 4 In a first example, a method includes tracking one or more echoesC-D of an original messageA sent from a battery-powered deviceA in a wireless communication network. The battery-powered deviceA includes a lighting control deviceor a phenomenon sensor. The method further includes adjusting a likelihood of designating a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving an adjustment echoC of the one or more echoesC-D or one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA. The method further includes determining whether or not to designate a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving a determination echoC of the one or more echoesC-D of the original messageA, or the one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA.
160 4 25 4 160 4 5 4 4 4 170 4 172 8 4 4 160 4 5 4 4 170 4 4 160 161 4 5 4 In a second example, a method includes tracking a respective echo success countA of messages sent from each of a plurality of battery-powered devicesA-B in a wireless communication network. The battery-powered devicesA-B include a light switch or an occupancy, audio, or daylight sensor. The method further includes adjusting the respective echo success countA to increase a likelihood of a line-powered deviceF being designated a repeaterA for a respective battery-powered deviceA of the plurality of battery-powered devicesA-B in response to the line-powered deviceF receiving at least one messageA directly from the respective battery-powered deviceA which identifies a group monitor identifierof a lighting control groupA to which the line-powered deviceF and the respective battery-powered deviceA both belong. The method further includes adjusting the respective echo success countA to decrease the likelihood of the line-powered deviceF being designated the repeaterA for the respective battery-powered deviceA in response to the line-powered deviceF receiving a retransmitted messageB from another line-powered deviceG originally sent from the respective battery-powered deviceA. The method further includes comparing the respective echo success countA against a repeater creation thresholdto determine whether or not to designate the line-powered deviceF as a repeaterA for the respective battery-powered deviceA.
4 146 156 4 170 170 4 25 4 5 4 4 170 170 4 170 4 4 5 4 4 170 170 170 4 170 4 In a third example, a battery-powered deviceA includes a lighting control deviceor a phenomenon sensor. The battery-powered deviceA is configured to track one or more echoesC-D of an original messageA sent from the battery-powered deviceA in a wireless communication network. The battery-powered deviceA is further configured to adjust a likelihood of designating a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving an adjustment echoC-D of the one or more echoesC-D or one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA. The battery-powered deviceA is further configured to determine whether or not to designate a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving a determination echoC-D of the one or more echoesC-D of the original messageA, or the one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA.
4 4 170 170 4 25 4 146 156 4 5 4 4 170 170 4 170 4 4 5 4 4 170 170 170 4 170 4 In a fourth example, a line-powered deviceF of one or more line-powered devicesC-H is configured to track one or more echoesC-D of an original messageA sent from a battery-powered deviceA in a wireless communication network. The battery-powered deviceA includes a lighting control deviceor a phenomenon sensor. The line-powered deviceF is further configured to adjust a likelihood of designating a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving an adjustment echoC-D of the one or more echoesC-D or the one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA. The line-powered deviceF is further configured to determine whether or not to designate a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving a determination echoC-D of the one or more echoesC-D of the original messageA, or the one or more line-powered devicesF receiving the original messageA directly from the battery-powered deviceA.
4 A-H Lighting System Elements 4 A-B Battery-Powered Device 4 C-H Line-Powered Device 4 D,H Coordinator Device (e.g., Group Monitor) 5 A-C Repeater 8 A-B Lighting Control Group 9 Network Controller (e.g., Gateway) 20 Lighting System (e.g., RF Communication System) 21 Physical Space (e.g., On-Premises) 25 Wireless Communication Network 55 WAN 130 Memory 131 Processor 132 Network Communication Interface 133 Driver Circuit 134 Illumination Light Source 135 Repeater Designation Programming 136 A-H Repeater Designation Instance 146 Switches or Touch Screen Display 155 Drive/Sense Circuitry 156 Detectors e.g., Phenomenon Sensor 160 A-B Echo Success Count 161 Repeater Creation Threshold 162 C-G Network Address 163 A-B Group Monitor Echo Success Count 170 A Message 170 B Retransmitted Message 171 Message Contents 172 Group Monitor Identifier 190 Line Power Source 191 Battery Power Source 200 Repeater Designation Programming Protocol 304 A-D Lighting System Elements (LSEs) 304 A Battery-Powered Device (BPD) 304 B-C Line-Powered Device (LPD) 304 D Coordinator Device (e.g., Group Monitor (GM)) 314 A BPD Broadcast Radius 314 B-C LPD Broadcast Radius 314 D GM Broadcast Radius 305 Repeater 320 Lighting System 400 Method
In the following detailed description, numerous specific details are set forth by way of examples in order to provide a thorough understanding of the relevant teachings. However, it should be apparent to those skilled in the art that the present teachings may be practiced without such details. In other instances, well known methods, procedures, components, and/or circuitry have been described at a relatively high-level, without detail, in order to avoid unnecessarily obscuring aspects of the present teachings.
The term “luminaire,” as used herein, is intended to encompass essentially any type of device that processes energy to generate or supply artificial light, for example, for general illumination of a space intended for use of occupancy or observation, typically by a living organism that can take advantage of or be affected in some desired manner by the light emitted from the device. However, a luminaire may provide light for use by automated equipment, such as sensors/monitors, robots, etc. that may occupy or observe the illuminated space, instead of or in addition to light provided for an organism. However, it is also possible that one or more luminaires in or on a particular premises have other lighting purposes, such as signage for an entrance or to indicate an exit. In most examples, the luminaire(s) illuminate a space or area of a premises to a level useful for a human in or passing through the space, e.g., of sufficient intensity for general illumination of a room or corridor in a building or of an outdoor space such as a street, sidewalk, parking lot or performance venue. The actual source of illumination light in or supplying the light for a luminaire may be any type of artificial light emitting device, several examples of which are included in the discussions below.
The term “lighting system,” as used herein, is intended to encompass essentially any type of system that either includes a number of such luminaires coupled together for data communication and/or luminaire(s) coupled together for data communication with one or more control devices, such as wall switches, control panels, remote controls, central lighting or building control systems, servers.
Terms such as “artificial lighting” or “illumination lighting” as used herein, are intended to encompass essentially any type of lighting that a device produces light by processing of electrical power to generate the light. A luminaire for an artificial lighting or illumination lighting application, for example, may take the form of a lamp, light fixture, or other luminaire arrangement that incorporates a suitable light source, where the lighting device component or source(s) by itself contains no intelligence or communication capability. The illumination light output of an artificial illumination type luminaire, for example, may have an intensity and/or other characteristic(s) that satisfy an industry acceptable performance standard for a general lighting application.
The term “coupled” as used herein refers to any logical, optical, physical, or electrical connection, link or the like by which signals or light produced or supplied by one system element are imparted to another coupled element. Unless described otherwise, coupled elements or devices are not necessarily directly connected to one another and may be separated by intermediate components, elements or communication media that may modify, manipulate, or carry the light or signals.
Reference now is made in detail to the examples illustrated in the accompanying drawings and discussed below.
1 FIG.A 1 FIG.B 1 FIG.A 20 9 4 8 25 4 4 20 20 170 9 4 20 170 8 8 170 9 55 depicts a lighting systemwith a gatewayand a plurality (e.g., seven) lighting system elementsA-D,F-H organized into lighting control groupsA-B connected via a wireless communication network.depicts the lighting system of, organized into categories of lighting system elementsA-H and showing detailed hardware and software elements of the lighting system elementsA-H. Lighting systemcan be a type of radio frequency (RF) communication system. The lighting systemcan implement a flood mesh network designed to route network control messagesA for the gatewayor network-wide messages over a subset of lighting system elementsA-H in the flood mesh in order to distribute such messages while avoiding unduly repetitious broadcasts. Lighting systemis further designed to route messagesA for communicating within particular lighting control groupsA-B within the respective lighting control groupA to which a given messageA relates. The gatewaycan be coupled to a wide area network (WAN).
8 4 8 4 8 4 4 8 8 21 A control groupA is a functional grouping of lighting system elementsA,C,D,F. In some examples, a control groupA-B will include controlled devices, i.e., luminairesF-G or a plug load controller, which provides lighting or electricity respectively. A control groupA-B can also include controlling devices, i.e., lighting control devicesA,C and phenomenon sensorB, which provide instructions to associated controlled devices regarding how to provide lighting or electricity, or how to operate generally. Often, a control groupA can constitute a lighting group, such as the ceiling lights in a given room, to be controlled in a collective manner. In other examples, however, the control groupA may be grouped based on usage principles, e.g., all lights in all stairwells of the physical space, or all plug load controllers in a high flood-risk area.
4 20 21 4 4 4 4 9 4 4 21 21 21 21 4 4 4 4 4 8 25 Lighting system elementsA-H of the lighting systemare located in a physical space, such as a building. In the example, lighting system elementsF-G are luminaires; lighting system elementsA,C are lighting control devices; lighting system elementB is an occupancy, daylight, or audio sensor, referred to generally as a phenomenon sensor; lighting system elementsD,H are coordinator devices e.g., group monitors. The gatewaycan also function as a coordinator deviceE. LuminairesF-G illuminate the physical spaceor premisesto a level useful for a human in or passing through the physical space, e.g. general illumination of the physical space, such as a warehouse, room, or a corridor in a building; or of an outdoor space such as a street, sidewalk, parking lot or performance venue. Lighting control devicesA,C can be wall switches or touch screen devices to turn on/off or dim luminairesF-G. Phenomenon sensorB can enable controls for on/off, occupancy, and dimming of the luminairesF-G. Coordinator devicesD,E,H, also called group monitors, are responsible for the management and coordination of control groupsA-B, as well as some or all of the wireless communication network.
4 20 4 4 20 4 4 1 FIG.A Though only a single phenomenon sensorB is depicted in, the lighting systemcan include any number of phenomenon sensors, in a multiplicity of formats or structures, such as occupancy, daylight, or audio sensors. Likewise, though multiple luminairesF-G and lighting control devicesA,C are depicted, the lighting systemcan include any number of luminairesF-G or lighting control devicesA,C, in a multiplicity of formats or structures.
1 FIGS.A-B 4 134 21 133 134 134 4 133 134 Referring to, as shown, luminairesF-G include an illumination light sourceto emit illumination lighting for the physical space; and an optional driver circuitcoupled to the illumination light sourceto control operation of the illumination light source. In some examples, the luminairesF-G may include a ballast instead of the driver circuitdepending on the type of illumination light source(e.g., for a fluorescent or incandescent light bulb).
4 4 4 4 132 25 4 130 131 132 130 4 135 200 4 136 160 163 130 4 160 163 136 160 163 136 160 163 20 136 2 FIG. LuminairesF-G, as well as lighting control devicesA,C and phenomenon sensorB (the lighting system elementsA-H) further include a network communication interfaceconfigured for wireless or wired communication, for example, over the network. The lighting system elementsA-H further include a memory; and a processorcoupled to the network communication interfaceand the memory. The lighting system elementsA-H further include repeater designation programming, designed to implement the repeater designation programming protocol(see). Each lighting system elementA-H can also instantiate a repeater designation instanceA-H, which includes a number of memory objects-in the respective memoryof the respective lighting system elementA-H. The values stored within the memory objects-in a respective repeater designation instanceA may differ from the values stored within the memory objects-in a different repeater designation instanceB. However, some memory objects-may be set at a lighting systemlevel, resulting in identical values throughout the repeater designation instancesA-H.
136 136 4 136 170 4 5 170 4 136 170 4 171 170 4 170 171 170 170 170 4 170 4 170 170 170 5 4 136 170 170 170 5 4 4 4 5 The repeater designation instancesA-H include an echo success countA-H for as many as each lighting system elementA-H capable of being designated a repeater. The echo success countA-H tracks the number of echoesB-C sent from a given battery-powered deviceA. In particular, a particular repeaterA or potential repeater receiving a direct messageA from the given battery-powered deviceA will cause the echo success countA to increment. An echoC-D is a message broadcasted by a lighting system elementA-H which contains the same message contentas a messageA previously sent by another lighting system elementA-H. The echoC-D may contain additional information beyond the message contentfrom the messageA. The messageA may be a broadcast messageA, which is broadcast to surrounding lighting system elementsA-H, or a direct messageA, which is a message sent directly to a particular lighting system elementA-H. A direct messageA is not an echoC-D, or a retransmitted messageB which has been previously repeated or rebroadcast by another repeaterB or group monitorD. The echo success countA-H is decremented when an echoB-C of the direct messageA is received. The echoB-C is being sent by another repeaterB, and therefore some other lighting system elementB-H is repeating on behalf of the battery-powered deviceA, resulting in less need for the lighting system elementC to designate as a repeaterA.
5 160 161 160 20 4 4 160 161 4 160 161 4 4 4 5 4 4 4 4 8 4 4 5 4 To determine whether to designate as a repeaterA, the echo success countA is compared to a repeater creation threshold. Once an echo success countA exceeds the repeater creation threshold, the lighting systemhas determined that at least the battery-powered deviceA needs a repeater. However, if one lighting system elementC has an echo success countA beyond the repeater creation threshold, then it is likely that other lighting system elementsF,G also have an echo success countA beyond the repeater creation threshold. In such circumstances, there are several possible options for resolution. First, the group monitorD related to the battery-powered deviceA can perform a tie-breaking action and select a line powered deviceC,F,H to act as a repeaterA for the battery-powered deviceA. The group monitorD can implement any known selection algorithm, but in one example the group monitorD can prefer line-powered devicesC,F within the control groupA for which the group monitorD is responsible, and can prefer line-powered devicesC already designated as a repeaterA, rather than designate additional repeaters. Too many repeaters unduly increase network traffic and can cause broadcast storms, so minimizing the number of repeaters is often desirable. However, some redundancy, such as having two repeaters for each battery-powered deviceA, can be desirable to improve redundancy and overall connection stability.
4 5 5 160 130 4 161 4 5 4 5 170 170 170 170 170 4 5 4 4 4 170 4 170 4 A second method for determining whether a given line-powered deviceC should fully designate as a repeaterA is as follows. First, the repeaterA determines whether it is a repeater, either provisionally or fully. The provisional repeater state is entered when any echo success countA-H within the memoryof the line-powered deviceC exceeds the repeater creation threshold. The full repeater state is entered when the line-powered deviceC remains a repeaterA after a full round of this second method of determination. If the line-powered deviceC is provisionally a repeaterA, the messageA to be echoed as the retransmitted messageB is assigned a relatively long delay, and sent after the expiration of that delay. However, if before sending the retransmitted messageB, another echoC-D of the original messageA is received, the line-powered deviceC ascertains that some other repeaterB is repeating on behalf of the battery-powered deviceA, then the line-powered deviceC can return to an undesignated repeater state. If the line-powered deviceC is able to send the retransmitted messageB before any other lighting system elementA-H sends the retransmitted messageB, then the line powered deviceC leaves the provisional repeater state and becomes a full repeater.
170 5 170 170 170 170 5 1780 5 170 170 5 170 Once a full repeater, upon receiving an original messageA, the repeaterA waits a relatively short delay, which is a delay shorter than any relatively long delay, and sends the retransmitted messageB after the relatively short delay. However, if before sending the retransmitted messageB, another echoC-D of the original messageA is received, then the repeaterA simply does not send the retransmitted messageB. Some other repeaterB has propagated the original messageA as an echoC-D, and the repeaterA does not need to unnecessarily increase network traffic to repeat the original messageA a second time.
5 5 170 5 25 4 5 4 5 5 5 5 5 170 170 170 5 170 In some implementations, further logic exists to change a repeaterA into a non-repeater state. For example, if the repeaterA does not receive any original messagesA for an extended period of time; if the repeaterA power cycles or disconnects from the wireless communication network; or, if the group monitorD directs the repeaterA to stop repeating. The latter logic is useful in a scenario where the battery-powered deviceA can broadcast to both repeaterA and repeaterB, but repeaterA cannot reach repeaterB or vice versa. Both repeatersA-B would be retransmitting the original messageA as a retransmitted messageB, but would not see the echoC-D from the repeaterA with the shorter delay, thereby sending the retransmitted messageB twice.
160 162 4 162 5 5 170 5 4 4 9 163 5 4 4 9 163 170 4 160 4 170 170 5 170 5 171 170 4 To facilitate the tracking of echo success countsA-H, the network addressA-H of lighting system elementsA-H can be tracked. In particular, tracking the network addressC,G of the repeatersA-B can allow other repeatersA-B to determine whether a retransmitted messageB is being transmitted by a repeaterA-B, or a group monitorD,H, or another coordinator deviceE like the gateway. Along with these, a group monitor echo success countA-E can track other repeatersA-B or group monitorD,H, or another coordinator deviceE like the gateway. The group monitor echo success countA-E tracks how often a retransmitted messageB is received by a given lighting system elementA-H, and is compared to the echo success countA-H for a given originator battery-powered deviceA. If a retransmitted messageB is received, but the original messageA is not received, that fact can indicate that the repeaterA sending the retransmitted messageB itself requires a repeaterB to allow the message contentsof the original messageA to reach the intended target lighting system elementA-H.
170 4 170 4 5 4 170 5 170 5 171 170 170 171 8 20 170 170 170 170 170 The original messageA is the message broadcast originally sent by the battery-powered deviceA. The original messageA may be unicast if the battery-powered deviceA has knowledge that the intended recipient is either in direct range, or a designated repeaterA is within direct range. However, if the battery-powered deviceA is unsure of both of these scenarios, then the original messageA can be multicast, and either the intended recipient can multicast an acknowledgement, indicating no repeaterA-B is required for this original messageA, or one or more repeatersA-B can send the message contentsof the original messageA in a retransmitted messageB. The message contentsinclude the information for receipt by the intended recipient, and may include instructions, or logistical or analytical data as examples, for the operation of the control groupA-B or the lighting system. EchoesC-D are multicast retransmitted messagesB. The retransmitted messagesB can be unicast if the original messageA was unicast, and a responsive unicast acknowledgement message is sent to the original messageA sender.
1 FIG.B 4 130 131 4 131 155 156 132 130 4 135 136 As shown in, a phenomenon sensorB can include an on-board micro-control unit (MCU) that includes a memory(volatile and non-volatile) and a central processing unit (CPU). The phenomenon sensorB has the processorcoupled to drive/sense circuitryoperable to control detectorsand a network communication interface. The memoryof the phenomenon sensorB stores the repeater designation programmingand a repeater designation instanceB.
4 4 4 155 146 146 146 4 146 130 4 135 136 The circuitry, hardware, and software of the lighting control devicesA,C shown are similar to the occupancy, daylight, or audio, sensorB (e.g. phenomenon sensor). Lighting control devicesA,C can be a wall switch where the drive/sense circuitryresponds to switches. Switchescan be an on/off switch, dimmer switch, or set scene. Switchescan be a single shared button switch for on/off, dimming, or set scene functions. A button station can include various button settings that can have the lighting control settings adjusted, for example, four buttons can be arranged with two longitudinal buttons (north-south) and two lateral buttons (east-west). Alternatively, lighting control devicesA,C can be a touchscreen device in which lighting control setting adjustments are inputted via a user interface application (not shown) through manipulation or gestures on a touch screen display. As shown, the memoryof the lighting control devicesA,C stores the repeater designation programmingand a repeater designation instanceA,C.
4 191 130 132 146 155 156 4 191 146 4 190 130 133 146 155 156 134 190 191 The battery-powered devicesA-B include a battery power sourceto provide energy to the components-,,,of the battery-powered devicesA-B. The battery power sourcecan also be understood to include any power source which generates relatively low power, or intermittent power, such as power generated by kinetic movement of a switchor solar power. The-line powered devicesC-H include a line power sourceto provide energy to the components-,,,, which can be understood to include any power source that is designed to provide consistent electrical power, for example electricity provided by an interconnected electrical grid. Any of the roles (e.g., control device, luminaire, group monitor, gateway, phenomenon sensor) can be implemented within a line-powered device or a battery-powered device. The only distinction is the hardware included to perform a role task (e.g. an illumination light sourceto implement a luminaire) and the power source (e.g., line power sourcesvs battery power source).
2 FIG. 200 20 9 4 200 20 5 4 4 20 200 135 4 is a repeater designation programming protocolfor the lighting systemthat is implemented by the gatewayand lighting system elementsA-H. The repeater designation programming protocolenables the lighting networkto designate repeatersA-B from the line-powered devicesC-H to enable the battery-powered devicesA-B to reach the remainder of the lighting system. Any part of the repeater designation programming protocol, and therefore the repeater designation programmingcan be implemented in any lighting system elementA-H, unless otherwise indicated.
2 FIG. 208 210 212 204 200 208 212 216 220 200 4 218 In the example of, blocks,, andcan execute simultaneously and independently from one another. Some blocks are optional to the flow, though skipping certain blocks can prevent other blocks from being reached. Skipping blockprevents the protocolfrom reaching blocks,, or, as they rely upon tracking group monitor repeated messages. Blockcan be reached if the protocolis simultaneously traversed by or on behalf of two or more line-powered devicesC-H up to block.
200 135 4 135 130 131 4 4 202 220 The repeater designation programming protocolis implemented in the repeater designation programmingof the lighting system elementsA-H. Execution of the repeater designation programmingstored in a memoryby a processorof a given lighting system elementA causes the given lighting system elementA to implement blocks-described below.
202 200 170 170 4 25 4 146 156 Beginning in block, the repeater designation programming protocolincludes tracking one or more echoesC-D of an original messageA sent from a battery-powered deviceA in a wireless communication network. The battery-powered deviceA includes a lighting control deviceor a phenomenon sensor.
204 200 4 4 4 170 4 25 4 5 4 Next, in block, the repeater designation programming protocolincludes optionally tracking, at the battery-powered deviceA or another deviceB-H, group monitorD,H repeated messagesC-D originally sent from the battery-powered deviceA and repeated in the wireless communication networkby a group monitorD,H or a different repeaterB not determined by the battery-powered deviceA.
206 200 5 4 4 170 170 4 170 4 In block, the repeater designation programming protocolincludes adjusting a likelihood of designating a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving an adjustment echoB-C of the one or more echoesB-C or one or more line-powered devicesC receiving the original messageA directly from the battery-powered deviceA.
5 4 208 200 4 5 4 4 170 4 4 There are at least three possible sub-steps to adjust the likelihood of designating a repeaterA for the battery-powered deviceA. In block, the repeater designation programming protocolincludes decreasing the likelihood of a respective line-powered deviceC being designated the repeaterA for the battery-powered deviceA in response to the respective line-powered deviceC receiving a retransmitted messageB from a different line-powered deviceG originally sent from the battery-powered deviceA.
210 200 4 5 4 4 170 4 172 4 8 4 4 In block, the repeater designation programming protocolincludes adjusting the likelihood of a respective line-powered deviceC being designated the repeaterA for the battery-powered deviceA in response to the respective line-powered deviceC receiving at least one respective messageA directly from the battery-powered deviceA which identifies (e.g., contains a group monitor identifier) of a respective group monitorD of the lighting control groupA to which the respective line-powered deviceC and the battery-powered deviceA both belong.
212 200 4 5 4 170 4 5 In block, the repeater designation programming protocolincludes increasing the likelihood of a respective line-powered deviceC being designated the repeaterA for the battery-powered deviceA in response to receiving a retransmitted messageB from the group monitorD or a different repeaterB.
214 200 162 4 5 170 4 Next, in block, the repeater designation programming protocolcan include storing a network addressG of the different line-powered deviceG designated the repeaterB for the retransmitted messageB of the battery-powered deviceA.
216 200 170 170 163 161 4 4 In block, the repeater designation programming protocolcan include comparing the tracked one or more echoesB-C of the original messageA and the tracked group monitor repeated messages, tracked as a group monitor echo success countA against a repeater creation thresholdto determine whether or not to designate the respective line-powered deviceC as the repeater for the battery-powered deviceA, if the group monitor repeated messages are tracked.
218 200 5 4 4 170 170 170 4 170 4 Continuing in block, the repeater designation programming protocolincludes determining whether or not to designate a repeaterA for the battery-powered deviceA based on the battery-powered deviceA receiving a determination echoB-C of the one or more echoesB-C of the original messageA, or the one or more line-powered devicesC receiving the original messageA directly from the battery-powered deviceA.
220 200 4 4 4 5 4 4 4 5 4 4 5 Next, in block, the repeater designation programming protocolcan include breaking a tie, at a coordinator deviceD, for determining between the first line-powered deviceC and the second line-powered deviceG which to designate the repeaterA-B for the battery-powered deviceA in response to the first line-powered deviceC determining to designate the first line-powered deviceC as the repeaterA and the second line-powered deviceG determining to designate the second line-powered deviceG as the repeaterB.
3 FIGS.A-B 304 304 304 304 304 314 314 170 304 314 304 314 304 304 314 304 314 314 304 304 304 304 are depictions of the network topology as a battery-powered device (BPD)A seeks to connect to a group monitor (GM)D via a line-powered device (LPD)B-C. The primary goal in this example is to connect all of the BPDsA to the GMD, in some examples in as few hops as possible. The broadcast radiiA-D depict how far a given lighting system element (LSE)A-D is able to send a messageA-D. Any LSEA-D within a given radiiA-D can receive a unicast messages sent by the associated LSEA-D of a given radiiA-D to that recipient LSEA-D, and every LSEA-D within that given radiiA-D receives a multicast message sent by the associated LSEA-D of a given radiiA-D. Given the smaller radiusA of the BPDA, it is possible for the BPDA to be able to receive messages from a sender, such as GMD, but not be able to effectively acknowledge or reply to those messages from GMD.
3 FIG.A 3 FIG.B 304 314 304 304 170 304 314 304 304 304 304 304 204 170 304 304 314 304 304 304 5 304 320 200 304 170 304 170 304 170 304 170 304 170 304 170 304 304 304 170 170 170 304 170 304 170 304 304 304 304 5 304 304 304 304 170 170 304 304 304 305 In, GMD has a GM broadcast radiusD encompassing the LPDsB-C. LPDsB-C can receive messagesA-D from GMD. Likewise, the LPD broadcast radiiB-C encompass the other LPDsB-C, as well as GMD and the BPDA. GMD, LPDsB-C, and BPDA can receive messagesA-D from LPDsB-C. BPDA has a smaller BPD broadcast radiusA, which encompasses LPDsB-C, but not GMD. Therefore, BPDA will require a repeaterA-B to communicate with GMD. The lighting systemexecutes the repeater designation protocol. The BPDA determines it is not receiving an acknowledgement message or retransmitted messageB from the GMD in response to sending a unicast original messageA. Therefore, the BPDA retransmits the original messageA as a multicast message. The LPDsB-C both receive the multicast original messageA, and determine that the GMD does not send an acknowledging multicast retransmitted messageB, indicating the GMD did not receive the original messageA. Therefore, both LPDsB-C start a random long delay timer. The random long delay timer expires for LPDB first, and so LPDB echoesC-D the original messageA as a retransmitted messageB. The GMD acknowledges the retransmitted messageB with a multicast acknowledgement. LPDC receives the retransmitted messageB from LPDB and awaits the acknowledgement from GMD. If GMD does not acknowledge, LPDC would need to be a repeaterA for both BPDA and LPDB. However, GMD does acknowledge, and so LPDC does not echoC-D the original messageA from BPDA, as LPDB has already done so successfully. As shown in, LPDB is then set as a repeater.
170 304 304 305 304 170 304 304 170 304 170 304 170 304 304 170 304 304 170 304 305 Within this example, the future messagesA from BPDA will either be unicast toward LPDB, which is set as a repeater, for forwarding to GMD, or will be multicast. If messagesA are multicast, LPDB will have a random short delay, while LPDC will have a random long delay for sending a retransmitted messagedB. As the random short delay is always shorter than the random long delay, LPDB will send the retransmitted messageB as a multicast message first if working properly, causing LPDC to receive the retransmitted messageB, as well as the multicast acknowledgement from GMD, causing LPDC to not send the retransmitted messageB. However, if LPDB has network connectivity issues and cannot receive or transmit, LPDC will wait the random long delay, and then send the retransmitted messageB to the GMD, and will ultimately be set as the repeater.
4 FIG. 4 FIG. 400 200 305 320 135 405 410 415 420 425 430 400 4 305 4 4 4 4 4 25 4 4 4 8 is a flowchart of a methodthat can be implemented as another repeater designation programming protocolfor designating at least one repeaterin the lighting system. In, the repeater designation programmingcan implement a subset or all of the steps,,,,, andof the method. Most battery-powered devicesA-B can eventually obtain a repeaterusing this algorithm because only one instance of a failure of the first attempt of a battery-powered deviceA to reach the group monitorD may be needed. When a battery-powered deviceA is pressed, the battery-powered deviceA can attempt to message the group monitorD with a unicast message. The only device in the wireless communication networkthat will receive this message, if any, is the group monitorD. If that message fails, the battery-powered deviceA will make subsequent attempts using broadcast messages, which can be seen by any line-powered devicesC-H in the lighting control group.
405 400 4 4 170 4 Beginning in step, the methodincludes receiving, at a line-powered deviceC of a plurality of line-powered devicesC-H, at least one packet of a battery powered messagesent from a battery-powered deviceA.
410 400 171 170 4 415 400 4 4 171 170 Continuing to step, the methodfurther includes placing contentsof the battery powered messagein a queue at the line-powered deviceC. Proceeding to step, the methodfurther includes checking after a time delay, at the line-powered deviceC, if another line-powered deviceD-H repeated the contentsof the battery powered message. The time delay can be based on a received signal strength (e.g., RSSI) of the at least one packet. Packets received at a higher signal strength can have a shorter time delay than packets received at a lower signal strength.
4 8 4 4 305 4 162 4 162 4 4 4 Any line-powered deviceC-H in the groupwhere a group monitor connected flag==True && AllowedRepeater==True, can repeat the broadcast packet it sees from the battery-powered deviceA. This re-transmission can be delayed based on the RSSI of the packet, unless the line-powered deviceC-H actually is the repeater, for example, the repeater flag is set to true, i.e. Repeater [rPOD]==True. In that case, the line-powered deviceC-H will repeat with a delay based on its network address. In addition to repeating the packet, the line-powered deviceC-H will embed the received signal strength (e.g., RSSI) and its network addressinto the payload. The group monitorD uses this information to choose one of the line-powered devicesC-H to become a repeater for that battery-powered deviceA.
420 400 4 171 170 4 170 162 4 425 400 4 4 305 4 4 4 Moving now to step, the methodfurther includes responsive to no other line-powered deviceD-H repeating the contentsof the battery powered messagewithin the time delay, repeating, from the line-powered deviceC the battery powered messageincluding the received signal strength of the at least one packet and an addressC of the line powered deviceC embedded in a payload. Finishing now in step, the methodfurther includes designating, at a group monitorD, the line-powered deviceC as a repeaterfor the battery-powered deviceA based on a comparison of the received signal strength of the line-powered deviceC being higher than received signal strengths of other line-powered devicesD-H.
4 4 305 305 4 4 4 4 305 4 4 4 4 4 When the group monitorD receives multiple repeats, the group monitorD can send out a message setting the best repeater. This allows for a change of a repeaterand accounts for the possibility that some line-powered devicesC, E-H miss the response from the group monitorD. If a line-powered deviceC-H misses the message letting the line-powered deviceC-H know it is not the chosen repeater, the line-powered deviceC-H will repeat the next message from the battery-powered deviceA. The chosen line-powered deviceC-H will also repeat the message from the battery-powered deviceA and the group monitorD will decide again which is chosen.
430 400 4 305 4 4 4 Proceeding to step, the methodcan optionally include responsive to designating the line-powered deviceC as the repeaterfor the battery-powered deviceA, enabling a respective repeater flag for the line-powered deviceC and disabling the respective repeater flag for the other line-powered devicesD-H.
4 305 4 4 4 4 4 4 4 4 4 4 4 4 4 Once the group monitorD has chosen a repeaterfor a specific battery-powered deviceA, the other line-powered devicesD-H will cease repeating the messages of the battery-powered deviceA by setting a repeater flag, such as the flag AllowedRepeater=False. As long as AllowedRepeater==False, a line-powered deviceC-H will not repeat the message of the battery-powered deviceA. This state can change, however, if the line-powered deviceC-H notices that the received signal strength (e.g., RSSI) of the packets from the battery-powered deviceA have changed significantly. For example, if the battery-powered deviceA is moving, each time a message is received from the battery-powered deviceA, the line powered devicesC-H can compare the RSSI to the previous RSSI (lastRSSI[rPOD]) measured for the battery-powered deviceA. If this number ever increases by a significant amount, e.g. 14 dB or more, then the line-powered deviceC-H resets its AllowedRepeater to True and it will repeat the packet, implying that the battery-powered deviceA has moved positions.
200 9 4 Any of the functionality of the repeater designation programming protocoldescribed herein for the gateway, lighting system elementsA-H, etc. can be embodied in one more applications or firmware as described previously. According to some embodiments, “function,” “functions,” “application,” “applications,” “instruction,” “instructions,” or “programming” are program(s) that execute functions defined in the programs. Various programming languages can be employed to create one or more of the applications, structured in a variety of manners, such as object-oriented programming languages (e.g., Objective-C, Java, or C++) or procedural programming languages (e.g., C or assembly language). In a specific example, a third-party application (e.g., an application developed using the ANDROID™ or IOS™ software development kit (SDK) by an entity other than the vendor of the particular platform) may be mobile software running on a mobile operating system such as IOS™, ANDROID™, WINDOWS® Phone, or another mobile operating system. In this example, the third-party application can invoke API calls provided by the operating system to facilitate functionality described herein.
9 4 131 131 In the examples above, the gateway, lighting system elementsA-H, etc. each include a processor. As used herein, a processor, is a hardware circuit having elements structured and arranged to perform one or more processing functions, typically various data processing functions. Although discrete logic components could be used, the examples utilize components forming a programmable central processing unit (CPU). A processorfor example includes or is part of one or more integrated circuit (IC) chips incorporating the electronic elements to perform the functions of the CPU. The processors for example, may be based on any known or available microprocessor architecture, such as a Reduced Instruction Set Computing (RISC) using an ARM architecture. Of course, other processor circuitry may be used to form the CPU or processor hardware in. The illustrated examples of the processors can include one microprocessor or a multi-processor architecture. The processors can include one or more of any known general purpose processor or integrated circuit such as a central processing unit (CPU), microprocessor, field programmable gate array (FPGA), application specific integrated circuit (ASIC), digital signal processor (DSP), or other suitable programmable processing or computing device or circuit as desired that is specially programmed to perform operations for achieving the results of the examples described herein.
131 9 4 131 130 The applicable processorexecutes programming or instructions to configure the gateway, lighting system elementsA-H, etc. to perform various operations. For example, such operations may include various general operations (e.g., a clock function, recording and logging operational status and/or failure information) as well as various system-specific operations (e.g., daylighting and/or energy management) functions. Although a processormay be configured by use of hardwired logic, typical processors in lighting devices or in light responsive devices are general processing circuits configured by execution of programming, e.g., instructions and any associated setting data from the memoriesshown or from other included storage media and/or received from remote storage media.
9 4 130 131 In the examples above, the gateway, lighting system elementsA-H, etc. each include a memory. The memorymay include a flash memory (non-volatile or persistent storage), a read-only memory (ROM), and a random access memory (RAM) (volatile storage). The RAM serves as short term storage for instructions and data being handled by the processorse.g., as a working data processing memory. The flash memory typically provides longer term storage.
Of course, other storage devices or configurations may be added to or substituted for those in the example. Such other storage devices may be implemented using any type of storage medium having computer or processor readable instructions or programming stored therein and may include, for example, any or all of the tangible memory of the computers, processors or the like, or associated modules.
Hence, a machine-readable medium or a computer-readable medium may take many forms of tangible storage medium. Non-volatile storage media include, for example, optical or magnetic disks, such as any of the storage devices in any computer(s) or the like, such as may be used to implement the client device, media gateway, transcoder, etc. shown in the drawings. Volatile storage media include dynamic memory, such as main memory of such a computer platform. Tangible transmission media include coaxial cables; copper wire and fiber optics, including the wires that comprise a bus within a computer system. Carrier-wave transmission media may take the form of electric or electromagnetic signals, or acoustic or light waves such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media therefore include for example: a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any other optical medium, punch cards paper tape, any other physical storage medium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave transporting data or instructions, cables or links transporting such a carrier wave, or any other medium from which a computer may read programming code and/or data. Many of these forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to a processor for execution.
9 4 132 25 25 9 4 25 In the examples above, the gateway, lighting system elementsA-H, etc. each include a network communication interfacefor wired or wireless communication over one or more networks. The networksinterconnect the links to/from the network communication interfaces of the devices, so as to provide data communications amongst the gateway, and/or lighting system elementsA-H. Networksmay support data communication by equipment at the premises via wired (e.g. cable or fiber) media or via wireless (e.g. WiFi, Bluetooth, ZigBee, LiFi, IrDA, etc.) or combinations of wired and wireless technology.
Unless otherwise stated, any and all measurements, values, ratings, positions, magnitudes, sizes, angles, and other specifications that are set forth in this specification, including in the claims that follow, are approximate, not exact. Such amounts are intended to have a reasonable range that is consistent with the functions to which they relate and with what is customary in the art to which they pertain. For example, unless expressly stated otherwise, a parameter value or the like may vary by as much as ±5% or as much as ±10% from the stated amount.
The scope of protection is limited solely by the claims that now follow. That scope is intended and should be interpreted to be as broad as is consistent with the ordinary meaning of the language that is used in the claims when interpreted in light of this specification and the prosecution history that follows and to encompass all structural and functional equivalents. Notwithstanding, none of the claims are intended to embrace subject matter that fails to satisfy the requirement of Sections 101, 102, or 103 of the Patent Act, nor should they be interpreted in such a way. Any unintended embracement of such subject matter is hereby disclaimed.
It will be understood that the terms and expressions used herein have the ordinary meaning as is accorded to such terms and expressions with respect to their corresponding respective areas of inquiry and study except where specific meanings have otherwise been set forth herein. Relational terms such as first and second and the like may be used solely to distinguish one entity or action from another without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms “comprises,” “comprising,” “includes,” “including,” “has,” “having,” “containing,” “contain”, “contains,” “with,” “formed of,” or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises or includes a list of elements or steps does not include only those elements or steps but may include other elements or steps not expressly listed or inherent to such process, method, article, or apparatus. An element preceded by “a” or “an” does not, without further constraints, preclude the existence of additional identical elements in the process, method, article, or apparatus that comprises the element. Unless otherwise stated, the articles “a” or “an” preceding an element mean one or more of the elements.
In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in various examples for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed examples require more features than are expressly recited in each claim. Rather, as the following claims reflect, the subject matter to be protected lies in less than all features of any single disclosed example. Thus, the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separately claimed subject matter.
While the foregoing has described what are considered to be the best mode and/or other examples, it is understood that various modifications may be made therein and that the subject matter disclosed herein may be implemented in various forms and examples, and that they may be applied in numerous applications, only some of which have been described herein. It is intended by the following claims to claim any and all modifications and variations that fall within the true scope of the present concepts.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
April 11, 2024
July 21, 2026
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.