SYSTEMS, METHODS, AND APPARATUSES FOR MANAGING CONFIGURABLE MONITORING DEVICES

- Checkpoint Systems, Inc.

Provided are embodiments of configurable monitoring devices, methods, systems, computer readable storage media and other means for locating devices. In some examples, the devices are attached to a retail or other type of article. The devices can be dynamically configurable and communicate wirelessly with other network entities.

Skip to: Description  ·  Claims  · Patent History  ·  Patent History
Description
CROSS REFERENCE TO RELATED APPLICATIONS

This patent application claims priority from U.S. Provisional Patent Application No. 61/244,320, filed Sep. 21, 2009, entitled “A Configurable Monitoring Device;” U.S. Provisional Patent Application No. 61/246,393, filed Sep. 28, 2009, entitled “Systems, Methods and Apparatuses for Managing Configurable Monitoring Devices;” U.S. Provisional Patent Application No. 61/246,388, filed Sep. 28, 2009, entitled “A Configurable Monitoring Device;” U.S. Provisional Patent Application No. 61/248,223, filed Oct. 2, 2009, entitled “Employment of a Configurable Monitoring Device as an Inventory Management Tool;” U.S. Provisional Patent Application No. 61/248,228, filed Oct. 2, 2009, entitled “Employment of a Configurable Monitoring Device as a Marketing Tool;” U.S. Provisional Patent Application No. 61/248,242, filed Oct. 2, 2009, entitled “Configurable Monitoring Device Having Bridge Functionality;” U.S. Provisional Patent Application No. 61/248,233, filed Oct. 2, 2009, entitled “Employment of a Configurable Monitoring Device as a Personal Identifier for Facilitating Transactions;” U.S. Provisional Patent Application No. 61/248,239, filed Oct. 2, 2009, entitled “Employment of a Configurable Monitoring Device as a Security Tool;” U.S. Provisional Patent Application No. 61/248,269, filed Oct. 2, 2009, entitled “Key for Commissioning, Decommissioning and Unlocking Configurable Monitoring Devices;” and U.S. Provisional Patent Application No. 61/248,196, filed Oct. 2, 2009, entitled “Systems, Methods and Apparatuses for Locating Configurable Monitoring Devices,” which are each hereby incorporated herein by reference in its entirety.

TECHNOLOGICAL FIELD

Embodiments of the present invention relate generally to network and network management technology and, more particularly, relate to the management of networks that include dynamically configurable monitoring devices for use in connection with monitoring, tracking, and locating activities associated with one or more articles such as retail products.

BACKGROUND

Conventional retail security systems, such as electronic article surveillance (EAS) systems, operate effectively to prevent shoplifting and the like. However, conventional systems are often limited to the narrow scope of providing security functionality. For example, an EAS gate located at an exit of a retail business establishment may be configured to alarm when an article with an EAS tag passes through the gate. Other than performing this important alarming functionality, many conventional systems provide nothing more to the users of the systems, such as store owners, store managers, and the like. Additionally, when store owners are considering the purchase and installation of a conventional security system in a retail establishment, the limited functionality offered by the systems can detrimentally affect the cost-benefit analysis of installing and maintaining the system.

Additionally, identifying the location of products within a retail store has often relied on product placement. In other words, approaches to finding products are often based on placing similar types of products near each other in the store, thereby allowing the products' relative placement to assist both customers and store personnel in finding a desired product. Another approach has been to use large signs above the aisles of products, which identify which types of products should be in each aisle. However, using a sign and/or simply organizing a store with areas for similar products has proven insufficient under many circumstances. As a result, customers and store personnel are demanding more accuracy with respect to locating products within retail and other environments.

BRIEF SUMMARY OF EXEMPLARY EMBODIMENTS

Some example embodiments of the present invention are therefore provided that support security system functionality, as well as, additional functionalities that would be beneficial to store owners, store managers, and customers. For example, some example embodiments support inventory and marketing functionality, as well as, advanced security functionality.

According to some example embodiments, a system is provided for managing and locating configurable monitoring devices and/or the products they are attached to. A configurable monitoring device may be a microprocessor-based wireless communication device that can assume configurable roles or modes of operation within the system. A mode of operation may be implemented based on configuration information stored on the configurable monitoring device. The configuration information may be pre-loaded on the configurable monitoring device, or configurable monitoring devices may receive the configuration information via a wireless connection from a remote device.

The system, referred to as a monitoring system, may include any number of configurable monitoring devices configured to operate, for example, as a network, such as a mesh network, hybrid mesh network, star network, hybrid star network, or the like. The network may include a gateway node that supports a monitoring terminal (sometimes referred to herein as a coordinator). The gateway node may operate as an interface between the configurable monitoring device network and the monitoring terminal, for example, via an external network. The monitoring terminal may be configured to interact with the configurable monitoring devices and the configurable monitoring device network to implement a variety of functionalities.

Within the network, one or more of the monitoring devices can include a processor, which can be configured to receive an indication of a triggering event. In response to receiving the indication of the triggering event the processor can be configured to cause the monitoring device to transition into a triggered role. The triggered role being one of a tag role or a node role, among others. In some embodiments, the tag role includes configuring the processor to determine location information relating to the monitoring device. In other embodiments, the tag role can include, instead of or in addition to locally determining location information, configuring the processor to repeat, or relay, any received data to a network entity, which can then help determine the location of the monitoring device. The location information can be relatively complex or simple (e.g., an identifier number of one or more other nodes the monitoring device “hears”).

The monitoring device's node role can include configuring the processor to transmit a ping signal. A ping signal can comprise a relatively small amount of data (e.g., only the node identifier information) or a relatively larger amount data (such as at least the amount and type of data common to “beacon” signals used in wireless communications, some of which may be 802.11.4 compliant). The node role can also comprise configuring the processor to forward a tag communication to a network entity.

Among other things, the monitoring device can be configured to receive data that includes instructions to transition the monitoring device. The instructions can be included in the indication of the triggering event and/or be sent by a network entity.

In some embodiments, the monitoring device's processor can be further configured to receive a second indication of a second triggering event and, in response, transition from the triggered role to a second triggered role. For example, the monitoring device can transition from a tag role, to a node role, back to a tag role. In some embodiments, the indication of the triggering event can be a wireless signal that is broadcast wirelessly and received by one or more monitoring devices' antennas. Despite a plurality of monitoring devices receiving the indication, the indication of the triggering event can include a monitoring device identifier or other information that causes only one of the monitoring devices to execute its transition into the triggered role. As another example, a directional antenna (which may allow only one monitoring device or a subset of the monitoring devices to receive the indication), any other means, and/or a combination thereof can be used to target one or more monitoring devices for transitioning.

The indication of the triggering event can be, for example, an output of a sensor. The sensor can be integrated inside the housing of the monitoring device, making the sensor an internal component of the monitoring device. Some examples of internal components include a motion detector (e.g., jiggle switch, accelerometer, etc.), a tamper detection component (which can be separate from or part of a mounting device used to affix the monitoring device to an article), or any other internal component that could be integrated into the monitoring device, some additional examples of which are discussed herein.

The sensor can be configured to detect the triggering event and output the indication of the triggering event. For example, the triggering event could be movement and, in response to the sensor determining that the monitoring device is moving, the sensor can output the indication to the monitoring device's processor (and/or any other component or device).

In some embodiments, the sensor can be external to the monitoring device, such as, e.g., in an external device. The sensor can produce an output that is then relayed wirelessly or by any other means to the monitoring device. For example, the external device can be another device functioning as a node device. Other examples of external devices that can send the monitoring device the indication of a triggering event include, e.g., an RFID device (such as those that are handheld or mounted in a counter or other piece of furniture), a network entity, an EAS gate, or any other device that can be configured to emit and/or generate an indication of a triggering event and/or an alarm event.

The monitoring device can also include an audio device configured to emit audio signals. In some embodiments, the audio device may only be operable when the monitoring device is in the tag role. The monitoring device's processor can be further configured to receive an alarm indication of an alarm event while in the tag role and send a signal to the audio device, causing the audio device to emit the audio signal. An alarm event can be similar to or a type of triggering event and an alarm indication can be similar to or a type of an indication of the triggering event. For example, the alarm event can be an event, such as determining someone is trying to steal the article to which the monitoring device is attached (based on, e.g., suspicious movement profile). The alarm indication, for example, can be any type of indication, including a wireless or other type of signal that corresponds with an alarm event and/or can convey, to the monitoring device and/or network entity, that an alarm event occurred. For example, the monitoring device's processor and/or the network entity can receive the alarm indication from an external security device, such as an EAS gate and/or internal component that is configured to generate an output in response to being in communication proximity with an EAS gate. As another example, a node can be placed near a store's exit and the monitoring device can be configured to interpret hearing that node's ping signal as an alarm indication (with the alarm event being that monitoring device being too close to the store's exit).

In some embodiments, the external security device can be a second monitoring device. The external security device can be in communication proximity to the monitoring device and the external security device and/or the monitoring device can be affixed to a retail product. In such embodiments, the external security device can be located at a store's exit and be used to detect an alarm event.

As used herein, “communication proximity” refers to the distance in which direct communications can exist wirelessly between two devices. This distance can be dependent on a number of variables includes power output, frequency, signal reception factors (including physical and electrical interference variables), and/or any other variable. For example, if a monitoring device is in communication proximity of a node device, the monitoring device can “hear” the node device's ping signal(s) (e.g., receive the ping signal and determine the node identifier).

In some embodiments, the monitoring device can comprise a battery and/or various other components. For example, the monitoring device can comprise a mounting device configured to affix the monitoring device to a retail article. The monitoring device can also comprise memory configured to store attribute information (e.g., bar code data, color data, price data, etc.) associated with the retail article. As another example, the monitoring device can include a display configured to display human-readable information and/or a light emitting component (which can be used to indicate battery power, an error message, communication functionality, etc.).

In some embodiments, the monitoring device can be configured for position tracking of an article (such as a retail item, book, computer, casino chip, money, personal identification card, passport, etc.). The monitoring device's processor can be configured to receive a ping signal from a ping node; determine location information relating to the monitoring device based at least in part on receiving the ping signal; and report the location information to a network entity. The network entity can comprise one or more additional apparatuses, including a server and network management and/or monitoring system.

In some embodiments, the monitoring device and/or network entity can determine a location zone of the monitoring device in response to the monitoring device receiving a ping signal from the ping node or other device functioning as a ping node (both of which are sometimes referred to herein as a “node device” or “node”). The monitoring device's processor can then retrieve (e.g., request and receive), from local or remote memory, a zone-based functionality profile that corresponds with the location zone. When the functionality profile is downloaded from remote memory (such as, e.g., the memory of a network entity), the processor can be configured to store the functionality profile in the monitoring device's internal memory.

The functionality profile can be zone-based and correspond with one or more zones that represent an area of a physical space, such as a retail store or warehouse. The zones can also be relative to the position of one or more other devices, such as a node device, door, etc.

The monitoring device can comprise an audible alarm that is activated by the processor in response to the zone-based functionality profile including an event signal activation instruction, such as an alarm activation instruction and/or any other instructions (such as, e.g., an unlocking instruction for the monitoring device's attachment mechanism, etc.). In some embodiments, an alarm may also be initiated at the network entity in response to determining an alarm event has occurred.

The monitoring device's processor can be further configured to, in response to receiving the ping signal from the ping node, determine a location zone. Determining a location zone can include, for example, determining the ping node's identifier which is broadcast as or encoded within the ping signal. In some embodiments, the network entity can be configured to determine the applicable zone-based functionality profile for the monitoring device, in response to the monitoring device repeating the ping signal(s) the monitoring device received. The monitoring device's processor can then retrieve, from the network entity, the zone-based functionality profile that corresponds with the monitoring device's location zone.

The monitoring device and the ping node can establish and execute a uni-directional communication protocol. The uni-directional communication protocol can allow, for example, the ping node to wirelessly broadcast data (as, e.g., a ping signal), which the monitoring device can receive. As mentioned elsewhere herein, the data can include, e.g., the ping node's identifier and/or other information. While the monitoring device may or may not broadcast a response to the ping node, the ping node can be configured to only send data to the monitoring device (e.g., lack the components necessary to receive data from the monitoring device). In some embodiments, the ping node can receive data from a network entity, even though the ping node lacks the ability to receive data from a monitoring device. In some embodiments, the monitoring device may be configured to respond to (e.g., confirm receipt for) all ping node signals it receives. In other embodiments, the uni-directional communication protocol lacks the monitoring device transmitting data intended for the ping node.

The monitoring device can also establish and execute a bi-directional communication protocol with the ping node and/or the network entity. The bi-directional communication protocol can allow for two way communications, including sending and receiving of signals between each device participating in the communication protocol.

The monitoring device can be further configured to receive a second ping signal from a second ping node. The second ping signal can be used by the monitoring device and/or network entity to determine second location information (such as identifying information of the second ping node) relating to the monitoring device. The uni-directional, bi-direction or any other communication protocol can be established between the monitoring device and the second ping node. The communication protocol between the monitoring device and the second ping node can be related to or independent from the communication protocol used between the monitoring device and the first ping node.

A location zone can be determined by the monitoring device and/or the network entity based on the first location information and the second location information. The first and second location information can respectively comprise the first ping node's and the second ping node's identification data. The network entity and/or the monitoring device, knowing where those ping nodes are physically located, can then derive the approximate position of the monitoring device. In such embodiments, a more accurate location can be derived from, e.g., more ping node information. The location (relative to the ping node and/or absolute in a given space) can be used to access memory (remote or local to the monitoring device) and retrieve a zone-based functionality profile that can include instructions and other executable commands for the monitoring device and/or other device(s). For example, the monitoring device can comprise an audible alarm that is activated by the processor in response to receiving a type of event signal activation instruction (e.g., an alarm activation instruction) included in the zone-based functionality profile. As another example, the monitoring device can comprise a mounting device that is unlocked in response to the zone-based functionality profile including an unlock instruction, wherein the mounting device is configured to affix the monitoring device to a retail article. The monitoring device can also include an antenna that the processor uses to transmit and/or receive data associated with the location zone to the network entity, ping node device, and/or any other external device.

The monitoring device's processor can be further configured to engage an internal timer; and subsequently receive an indication of a trigger event, wherein the indication results from the timer expiring. In some embodiments, rather than engage a timer within the processor, any other type of time keeping component can be implemented, including a clock, etc. In response to receiving the indication of the trigger event, the monitoring device can enter a wake mode and subsequent to reporting the location information to the network entity, reset the timer and enter a sleep mode. In some embodiments, a timer can be started in response to receiving a triggering event. A triggering event can cause the creation of a corresponding event signal, which can, among other things, cause the initiation of a timer.

In some embodiments, the monitoring device and/or network entity can send a first signal for instructing the one or more ping nodes to power down to a minimum threshold and incrementally power up simultaneously or near simultaneously. The monitoring device can then monitor (e.g., listen) for subsequent ping signals from the ping nodes. Subsequent to determining that both the first ping node and the second ping node have powered down, the monitoring device can be configured to receive a location signal from either of the ping nodes. In response to receiving the location signal, the monitoring device can determine locally or utilize a network entity to determine its location and/or relate that location information to an article to which the monitoring device is coupled to. The location information, for example, can be associated with a first location corresponding with the location of a first ping node if the location signal was generated by the first ping node. Or, as another example, the location information can be associated with a second location corresponding with the location of the second ping node if the location signal was generated by the second ping node. After using one or more ping nodes to determine location information, the monitoring device can be configured to report the location information to a network entity.

In other embodiments, the monitoring device and/or network entity can then send a first signal for instructing the one or more ping nodes to power up to a maximum threshold and then simultaneously or near simultaneously incrementally power down. The monitoring device can then monitor (e.g., listen) for subsequent ping signals from the ping nodes. Subsequent to determining that both the first ping node and the second ping node have powered up, the monitoring device can be configured to receive location signals. Subsequent to determining that both the first ping node and the second ping node have powered up, determining whether a final ping signal is received from the first ping node or the second ping node. In response to receiving the final ping signal, determining the location information relating to the article, wherein the location information is associated with a first location of the first ping node if the final ping signal was generated by the first ping node or the location information is associated with a second location of the second ping node if the final ping signal was generated by the second ping node. In other words, the monitoring device can determine its location based upon the last ping node it hears.

Some example embodiments of the present invention are therefore provided that support locating a tag that may be affixed to a product within, for example, a retail environment. In accordance with various example embodiments, the monitoring system may be implemented that is configured to support the locating of tags. The monitoring system may be comprised of a plurality of ping, gateway and/or other nodes that provide ping and/or other types of signals that are detected by a tag. A tag that is able to receive a signal from a ping and other nodes can be defined as having a positional relationship with the node(s). As mentioned above and detailed below, where the signal strength is sufficiently strong, a tag may be configured to determine a closest ping node to the tag based on the ability to receive a signal from a ping node.

In situations where a tag receives signals from a plurality of ping nodes (e.g., due to range overlap or signal reflections), a locating procedure may be undertaken to identify the ping node closest to the tag or within communication range with a tag. To implement the locating procedure, the ping nodes may be configured to, upon request, adjust the pings' respective signal powers to a common level (e.g., a minimum level or a maximum level) and incrementally modify the power of the signal to determine when a targeted tag begins receiving or communicating, or fails to receive or communicate, the signals being provided by the ping nodes. Based on which ping signal was first received or last lost, the tag may be configured to determine which ping node is closest to the tag. The tag may then be associated with the ping node such that the tag is indicated as being located near the ping node within the environment.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING(S)

Having thus described the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

FIG. 1a is a schematic block diagram of a monitoring system including a number of configurable monitoring devices according to example embodiments;

FIG. 1b is another schematic block diagram of a monitoring system including a number of configurable monitoring devices according to an example embodiment of the present invention;

FIG. 1c is another rendering of a monitoring system including a number of configurable monitoring devices according to example embodiments;

FIG. 1d illustrates a flow chart of an example tag according to example embodiments;

FIG. 2 illustrates a block diagram of a monitoring terminal according to example embodiments;

FIG. 3 illustrates a diagram of various configurable monitoring devices implemented in an example retail environment according to example embodiments;

FIG. 4 illustrates an example configurable monitoring device with specialized hardware for performing some of the functionality within the role of a key according to example embodiments;

FIG. 5a is an illustration of an example retail environment having ping nodes and tags located within the environment according to example embodiments;

FIG. 5b illustrates a tag information window for displaying attribute information for a tag according to example embodiments;

FIG. 6 is an illustration of a signaling and communications period for a ping node according to example embodiments;

FIG. 7 is an illustration of a situation where a tag is within range of more than one ping node according to example embodiments;

FIG. 8 is an illustration of a example procedure where the signal powers of the ping nodes have been dropped to a minimum level and incrementally increased to perform locating according to example embodiments;

FIG. 9 is a flowchart of an example method for determining the location of a tag from the perspective of a monitoring terminal or a tag according to example embodiments;

FIG. 10 is a flowchart of an example method for determining the location of a tag from the perspective of a ping node according to example embodiments;

FIG. 11 illustrates an example of a flow diagram illustrating an example method for managing configurable monitoring devices according to example embodiments;

FIG. 12 illustrates an example user interface window implemented by a monitoring terminal and depicting a representation of a monitoring system according to example embodiments;

FIG. 13 illustrates an example user interface window implemented by a monitoring terminal and depicting a representation of a monitoring system in accordance with some embodiments;

FIG. 14 illustrates an example of a flow diagram illustrating an example method for managing configurable monitoring devices according to example embodiments;

FIG. 15 illustrates an example tag information window for displaying attribute information associated with a tag or node according to example embodiments;

FIG. 16 illustrates a hub information window for displaying attribute information for a node according to example embodiments; and

FIG. 17 illustrates a tag battery level window for displaying the battery level for a tag according to example embodiments.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the invention are shown. Indeed, various embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like reference numerals refer to like elements throughout.

As defined herein a “computer-readable storage medium,” which refers to a physical storage medium (e.g., volatile or non-volatile memory device), can be differentiated from a “computer-readable transmission medium,” which refers to an electromagnetic signal. Additionally, as used herein, the term “circuitry” refers to not only hardware-only circuit implementations including analog and/or digital circuitry, but at least also to combinations of circuits with corresponding software and/or instructions stored on a computer-readable storage medium.

As indicated above, example embodiments of the present invention may be configured to support various security, inventory, marketing, and other functionalities in, for example, a retail sales environment or other given space. To do so, configurable monitoring devices may be installed within the retail sales environment. A description of some example embodiments of configurable monitoring devices, and the monitoring systems that may support configurable monitoring devices, is provided in U.S. Provisional Patent Application 61/244,320 filed Sep. 21, 2009, entitled “A Configurable Monitoring Device”, the content of which is hereby incorporated by reference in its entirety. The configurable monitoring devices may be wireless communication devices that can be dynamically configured to assume one or transition among roles within the operation of a monitoring system. To facilitate the ability to dynamically change roles, the configurable monitoring devices may include a processor, memory, communications interface (e.g., radio transmitter/receiver, Radio Frequency ID (RFID) module, or the like). Based on a role that a configurable monitoring device is expected to assume or transition to, the configurable monitoring device may also include more specialized hardware components such as, an alarm, a sensor, a display, and the like.

As indicated above, the configurable monitoring devices may assume a variety of roles within the monitoring system. For example, a configurable monitoring device may be configured as a security tag that is attached to an article via a mounting device. The security tag may be configured to alarm or transmit an alarm message, if the security tag determines that an alarm condition has been met. In another example, a configurable monitoring device may be configured to operate as a node within a monitoring system. As a node, the configurable monitoring device may support communications and message routing within the communications network defined by the system. In this regard, the node may be configured to determine routing paths within the network for the efficient delivery of messages. According to another example, a configurable monitoring device may be configured to operate as a gateway between the monitoring system and an external network such as a wired local area network (LAN) or the Internet. Further, a configurable monitoring device may be configured to operate as a security key for locking and unlocking a mounting device associated with a security tag. In this regard, the security key may be configured to activate or deactivate electronic security features of a security tag. For purposes of explanation, a configurable monitoring device configured to operate in node mode will be referred to as a “node”, a configurable monitoring device configured to operate in tag mode will be referred to as a “tag”, a configurable monitoring device configured to operate in gateway mode will be referred to as a “gateway”, and a configurable monitoring device configured to operate in key mode will be referred to as a “key”. U.S. Provisional Patent Application No. 61/248,269, filed Oct. 2, 2009, entitled “Key for Commissioning, Decommissioning and Unlocking Configurable Monitoring Devices,” discusses examples of key devices and was incorporated above by reference in its entirety.

The description of the roles of the configurable monitoring devices described above, and further described below is not an exhaustive list of the roles that may implemented by the configurable monitoring devices. Additionally, while the various roles may be described separately, it is contemplated that the roles are not necessarily mutually exclusive (though they could be) and that a single configurable monitoring device may or may not be configured to simultaneously assume more than one of the roles.

FIG. 1a illustrates an example monitoring system 60 that includes a number of configurable monitoring devices in various roles. Tags 68 (e.g., tags 68a-68i) may be configurable monitoring devices affixed to a product for the purpose of supporting security, inventory, marketing, as well as other functionalities. Nodes 66 (e.g., nodes 66a-66c) may be configured to support network level activities such as communications routing, tag locating, and the like.

Gateway node 64 may be configured as a gateway node to provide a network interface between the monitoring system 60 and the external network 30. A monitoring terminal 62 may be in communication with the gateway node 64, for example, via the external network 30 or via a direct connection to the gateway node 64, to facilitate management of the configurable monitoring devices by the monitoring terminal 62 and to further facilitate the aggregation and analysis of data received from the configurable monitoring devices. A gateway node may interface with a cellular network to gain access to other networks, such as the Internet. In some example embodiments, a gateway node may support USB and Ethernet connectivity for connection to USB or Ethernet networks.

The gateway node 64 may also include or be associated with a network coordinator. The network coordinator may be configured to oversee and manage various network operations. For example, the network coordinator may implement the forming of the network, allocate network addresses to entities of the network, and maintain a binding table for the network.

Although the communications network of the monitoring system may be any type of network (e.g., mesh network, hybrid mesh network, star network, hybrid star network, any other type of network, or combination thereof), in some example embodiments, the network may be configured to perform aspects similar to a mesh network. In some cases, the monitoring system 60 may be made up of a plurality of communication devices (e.g., such as a plurality of configurable monitoring devices) in communication with each other via device-to-device communication to form, for example, a mesh network. However, in other situations, the network may include a plurality of devices that transmit signals to and receive signals from a base site or access point, which could be, for example a base site or access point of a data network, such as a local area network (LAN), a metropolitan area network (MAN), and/or a wide area network (WAN), such as the Internet.

FIG. 1b depicts another example network configuration in accordance with some example embodiments, where the nodes 66 are connected in a star or cluster fashion to the gateway node. FIG. 1c provides another illustration of an example monitoring system with a communications network. With respect to the network entities of FIG. 1c, the PAN coordinator (gateway with network management functionality), the powered routers (communications nodes), the gate alarm (gate node), the pings (pings nodes), the tags, and the manager's key may each include a configurable monitoring device configured for a particular role.

Other devices such as processing elements or devices (e.g., personal computers, server computers, displays, point of sale (POS) terminals and/or the like) may be coupled to a configurable monitoring device to access the monitoring system 60. By directly or indirectly connecting the configurable monitoring devices to various network devices and/or to other configurable monitoring devices via the monitoring system 60, the configurable monitoring devices may be enabled to receive configuration modifications dynamically and perform various functions or tasks in connection with network devices or other configurable monitoring devices based on the current configuration of the configurable monitoring devices.

The configurable monitoring devices, and the monitoring system 60 generally, may utilize any wireless communication technique for communicating information between the devices or to the monitoring terminal 62. For example, the configurable monitoring devices may be configured to support communications protocols built on the IEEE 802.15.4 standard, such as Zigbee or a proprietary wireless protocol. According to some example embodiments, the communications within the monitoring system 60 may be performed based on a Route Under MAC (Media Access Control) (RUM) protocol or a modified RUM protocol. Regardless of the protocol, communications within the monitoring system may be associated with a network identifier, such as a personal area network (PAN) identifier. In some example embodiments, configurable monitoring devices might not be permitted to communicate within the monitoring system without having a matching network identifier. In some example embodiments, the monitoring system may regularly or irregularly change the network identifier and transition to a new network identifier for security purposes.

Additionally, to support network communications within the monitoring system, a system-wide synchronized clock may be implemented. Synchronization of the clock may be maintained via a clock signal. Configurable monitoring devices may include real time clock circuitry to support the synchronized clock and to regulate the use of precise communications windows.

The configurable monitoring devices may also support RFID communications, such as communications based on Generation II Ultra High Frequency (UHF) RFID standards. In example embodiments where a configurable monitoring device includes a radio (e.g., an IEEE 802.15.4 radio) and an RFID module, the configurable monitoring device may be configured to operate as an interface that allows RFID devices to access the monitoring system 60. For example, an RFID reader or other RFID device, that does not include a configurable monitoring device, may communicate with a configurable monitoring device, such as a tag, and the configurable monitoring device may relay such communications to entities connected to the monitoring system. In the same manner, the tag may relay communications originating on the monitoring system to an RFID device that has interfaced with a tag. As such, the configurable monitoring devices may operate as gateway to the monitoring system for RFID communications.

The monitoring system 60 may be configured to operate as a mesh network, hybrid mesh network, star network, hybrid star network, cluster tree network, any other type of network, or any combination thereof. In this regard, the monitoring system 60 may support message hopping and network self-healing. With respect to message hopping, the nodes 66 may be configured to receive communications from nearby or assigned tags 68. The nodes 66 may be configured to determine a system architecture and/or efficient pathways for communicating messages to the various entities within the network. In this regard, the nodes 66 may be configured to generate and maintain routing tables to facilitate the efficient communication of information within the network.

For example, in accordance with implemented marketing functionality, tag 68h may be configured to communicate that the product that tag 68h is affixed to has been moved or is being moved from its display location. Tag 68h may be configured to communicate this information to tags 68g and 68d, because the products affixed to tags 68g and 68d are related products that a customer may be interested in purchasing, given tag 68h's determination that the customer may have decided to purchase the product affixed to tag 68h. Accordingly, tag 68h may generate and transmit a message addressed to tags 68g and 68d. The message may be received by node 66c, and node 66c may be configured to determine how to route the message, given current network traffic, such that the message is efficiently received by tags 68g and 68d. For example, using generated routing tables, node 66c may determine that the message can first be transmitted directly to tag 68g, since tag 68g is connected to or in direct communication with the node 66c. To transmit the message to tag 68d, node 66c may determine that the message should be forwarded to node 66b. Node 66b may perform a similar analysis and determine that the message can be forward to tag 68d, directly from node 66b. Tag 68h may also be configured to transmit the message to the monitoring terminal 62. Node 66c may route the message accordingly, such that the gateway 64 may forward the message to the monitoring terminal 62.

As indicated above, the nodes 66 may be configured to perform communications routing within the monitoring system 60. In this regard, nodes 66 may operate to extend the range of the monitoring system. However, according to some example embodiments, all configurable monitoring devices within the monitoring system 60 may be configured to perform routing functionality. As such, configurable monitoring devices configured to operate both as tags and as nodes may communicate directly with each other, if within range, without having to route the communications through another node.

Further, since the monitoring system 60 may be configured to support self-healing. In this regard, in the event that a node 66 should fail and no longer be able to communicate, messages may be automatically routed via a path that does not involve the failed node. For example, in a given scenario, a tag may be connected (via, e.g., a wireless connection) to more than one node. In the event that one of the nodes fails, the tag may simply cause messages to be routed through another node to which the tag is connected. According to some example embodiments, such as in the event that another available node is not present, a tag may be triggered, directed, or otherwise configured to implement node functionality (e.g., stored in the memory of the tag and implemented by a processor of the tag). The tag may therefore become a node to support communications of other tags.

According to some example embodiments, configurable monitoring devices that are installed and configured with the intention that the devices be primarily utilized as nodes may be powered through a building's wired power system or be mains powered (in contrast to being only battery powered). Since nodes may be involved in the frequent transmission of communications, power utilization of a node may be relatively high. As such, since configurable monitoring devices configured to operate primarily as tags would likely be battery powered for mobility purposes, an example embodiment that implements node functionality within a tag may be a temporary solution to maintain network continuity while the failed node is repaired.

Additionally, the monitoring system 60 may be configured to compensate for interference and multi-path conditions that can arise in enclosed environments, such as retail stores, individually or collectively (such as, e.g., retail mall). To do so, the monitoring system 60 may be configured, for example by the monitoring terminal 62, to modify the signal power of select nodes and tags to minimize interference. Other examples signal power instructions and adjustments are discussed below. According to some example embodiments, directional antennas may also be used by configurable monitoring devices to minimize interference.

According to various example embodiments, the monitoring system 60 may be configured to interface with any number of other types of networks and/or systems. For example, the monitoring system 60 may interface with EAS systems, RFID systems, closed circuit television systems, inventory systems, security systems, sales systems, shipping systems, point of sale terminals, advertising systems, marketing compliance systems, ordering systems, restocking systems, virtual deactivation systems, Lojack® systems, and the like.

While the monitoring system 60 may be configured to operate in a distributed fashion, the monitoring terminal 62 may be configured to coordinate operations of the monitoring system 60, as well as, retrieve, aggregate, and analyze data provided by the configurable monitoring devices of the system.

Based on the foregoing, and in accordance with some example embodiments, the nodes may be configured to provide a wireless signal that may be received by tags that are within range. According to some example embodiments, the range of a node or the power level, used to generate the wireless signal provided by the node, may be set based on the size of the area that the node is responsible for. For example, if the node is associated with a small floor display, the signal power may be relatively low. On the other hand, if a node is responsible for a large shelf unit, the signal power may be set to a higher level to ensure coverage of the entire shelf unit.

Tags may be configured to receive a signal that is provided by a node and respond to the node indicating that the tag is now associated with the node, for example, because the tag is located on the floor display associated with the node. A tag may be configured to periodically or pseudo-randomly power up (e.g., based on a wake-up timer or other trigger event), listen for a node signal (e.g., a ping node can be configured to broadcast a ping signal), perform a time synchronization based on the node's signal, and transmit a message to a network entity indicating which node the tag has received a signal from (based on, e.g., determining a node identifier embedded in the node's signal). Subsequently, a tag may perform a second clock synchronization with the node or other network entity and then power down into a sleep mode for another period of time or until another triggering event.

From the signal sent by the node, the tag may receive and determine a unique identifier and/or other data associated with the node. The tag may store the identifier and/or other data in its local storage device(s). As such, the tag would know to which node the tag has been associated.

The tag and the node can establish and execute a uni-directional communication protocol. The uni-direction communication protocol can allow, for example, the ping node to wirelessly broadcast data (as, e.g., a ping signal), which the tag can receive. As mentioned above, the data can include, e.g., the ping node's identifier and/or other data. While the tag may or may not broadcast a response to the ping node, the ping node can be configured to only send data to the tag (e.g., lack the components or functionality necessary to receive or respond to data from the tag). In some embodiments, the ping node can receive data from a network entity (via, e.g., BlueTooth or WiFi), even though the ping node lacks the ability to receive data from a tag or other monitoring device (via, e.g., another wireless protocol). In some embodiments, the tag may be configured to respond to (e.g., confirm receipt for) all ping node signals it receives, even if the node may not act on the tag's response. In other embodiments, the uni-directional communication protocol lacks the tag transmitting data intended for the ping node.

The tag can also establish and execute a bi-directional communication protocol with the ping node and/or any other the network entity. The bi-directional communication protocol can allow for two way communications, including sending and receiving of signals between each device participating in the communication protocol. As such, the node may receive communication signals from the tag including a unique identifier of the tag, and the node may therefore know to which tag(s) the node is associated. The node may also be configured to report the node/tag associations back to a monitoring terminal, monitoring system coordinator, and/or other network entity. Via these and other types of defined tag/node relationships, various functionalities, as mentioned above and otherwise herein, may be implemented.

Additionally, as further described herein, a tag may include a jiggle switch and/or other motion detection component, the actuation of which may indicate that a tag is being moved. Upon detecting actuation of the jiggle switch, the tag may determine a trigger event has occurred and, in response, may move from a sleep state into an awake state. Upon entering the awake state, the tag may perform one or more clock synchronizations with a node and determine the identifier of the node to which the tag is currently connected. In some embodiments, the tag may also transmit a message indicating the identifier of the node to which the tag is currently connected (possibly a new node since movement may have occurred). In the event that a tag does not detect a node, the tag may generate location information, representing the fact that the tag is out of range of any node, and access its functionality profile (which may be saved on the tag and/or on a network entity). In some embodiments, the functionality profile can include an alarm instruction, which causes the tag to alarm, should the tag determine it is out of range of any node. A tag that has detected a node may engage a movement wait timer to facilitate determining whether further movement of the tag is occurring. In the event that further movement is detected during the movement wait time, the tag may attempt to detect a node and again perform a time synchronization. If the movement wait time expires, the tag may determine a time until a next wake up into the awake state and an associated wake-up timer may be reset. Upon beginning the wake-up timer the tag may transfer into a sleep state. FIG. 1d illustrates a flow chart of the operation of an example tag consistent with that described above.

FIG. 2 illustrates basic block diagram of a monitoring terminal 62 according to an exemplary embodiment. As shown in FIG. 2, the monitoring terminal 62 may include various components that support both the basic operation of the monitoring terminal 62 and the relatively more sophisticated operation of the monitoring terminal 62 as a coordinator of a monitoring system. Some examples of these components are shown in FIG. 2. However, it should be appreciated that some example embodiments may include either more or less than the example components illustrated in FIG. 2. Thus, the example embodiment of FIG. 2 is provided by way of example and not by way of limitation.

Reference will now be made to FIG. 2 to describe an example structure and functional operation of the monitoring terminal 62 according to an exemplary embodiment. In this regard, as shown in FIG. 2, the monitoring terminal 62 may include a processor 250 and a communication interface 252. In some example embodiments, the monitoring terminal 62 may include a user interface 258. The processor 250 may in turn communicate with, control or embody (e.g., via operation in accordance with corresponding instructions) a monitoring system manager 256.

In an exemplary embodiment, the processor 250 may be configured to, for example, execute stored instructions (in a, e.g., functionality profile) and/or operate in accordance with programmed instructions to control the operation of the monitoring terminal 62. The processor 250 may be embodied in a number of different ways. For example, the processor 250 may be embodied as one or more of various processing means or devices such as a coprocessor, a microprocessor, a controller, a digital signal processor (DSP), a processing element with or without an accompanying DSP, or various other processing devices including integrated circuits such as, for example, an ASIC (application specific integrated circuit), an FPGA (field programmable gate array), a microcontroller unit (MCU), a hardware accelerator, a special-purpose computer chip, or the like. In an exemplary embodiment, the processor 250 may be configured to execute instructions stored in a memory device (e.g., memory device 254 of FIG. 2) or otherwise accessible to the processor 250. The instructions may be permanent (e.g., firmware) or modifiable (e.g., software) instructions and be organized in any manner (such as one or more functionality profiles). Alternatively or additionally, the processor 250 may be configured to execute hard coded functionality. As such, whether configured by hardware or software methods, or by a combination thereof, the processor 250 may represent an entity (e.g., physically embodied in circuitry) capable of performing operations according to embodiments of the present invention while configured accordingly. Thus, for example, when the processor 250 is embodied as an ASIC, FPGA or the like, the processor 250 may be specifically configured hardware for conducting the operations described herein. Alternatively, as another example, when the processor 250 is embodied as an executor of software or firmware instructions, the instructions may specifically configure the processor 250 to perform the algorithms and/or operations described herein when the instructions are executed. The processor 250 may include, among other things, a clock, an arithmetic logic unit (ALU) and logic gates configured to support operation of the processor 250.

The memory device 254 may include, for example, one or more volatile and/or non-volatile memories. In other words, for example, the memory device 254 may be an electronic storage device (e.g., a computer-readable storage medium) comprising gates (e.g., logic gates) configured to store data (e.g., bits) that may be retrievable by a machine (e.g., a computing device including a processor such as processor 250). The memory device 254 may be configured to store information, data, applications, instructions or the like for enabling the monitoring terminal 62 to carry out various functions in accordance with exemplary embodiments of the present invention. For example, the memory device 254 could be configured to buffer input data for processing by the processor 250. Additionally or alternatively, the memory device 254 could be configured to store instructions for execution by the processor 250.

The user interface 258 may be in communication with the processor 250 to receive user input via the user interface 258 and/or to present output to a user as, for example, audible, visual, mechanical or other output indications. The user interface 258 may include, for example, a keyboard, a mouse, a joystick, a display (e.g., a touch screen display), a microphone, a speaker, or other input/output mechanisms. Further, the processor 250 may comprise, or be in communication with, user interface circuitry configured to control at least some functions of one or more elements of the user interface. The processor 250 and/or user interface circuitry may be configured to control one or more functions of one or more elements of the user interface through computer program instructions (e.g., software and/or firmware) stored on a memory accessible to the processor 250 (e.g., volatile memory, non-volatile memory, and/or the like). In some example embodiments, the user interface circuitry is configured to facilitate user control of at least some functions of the monitoring terminal 62 through the use of a display configured to respond to user inputs. The processor 250 may also comprise, or be in communication with, display circuitry configured to display at least a portion of a user interface, the display and the display circuitry configured to facilitate user control of at least some functions of the monitoring terminal 258.

The communication interface 252 may be any means such as a device or circuitry embodied in either hardware, software, or a combination of hardware and software that is configured to receive and/or transmit data from/to a network and/or any other device or module in communication with the monitoring terminal 62. According to some example embodiments where the monitoring terminal 62 is directly connected to the monitoring system, the communications interface 252 may include an appropriately configured configurable monitoring device. Further, the communication interface 252 may include, for example, an antenna (or multiple antennas) and supporting hardware and/or software for enabling communications with a wireless communication network 30 or other devices (e.g., other configurable monitoring devices). In some environments, the communication interface 252 may alternatively or additionally support wired communication. As such, for example, the communication interface 252 may include a communication modem and/or other hardware/software for supporting communication via cable, digital subscriber line (DSL), universal serial bus (USB) or other mechanisms.

In an exemplary embodiment, the communication interface 252 may support communication via one or more different communication protocols or methods. In some embodiments, the communication interface 252 may be configured to support relatively low power, low data rate communication. As such, for example, a low power and short range communication radio (e.g., radio transmitter/receiver) may be included in the communication interface 252. In some examples, the radio transmitter/receiver may include a transmitter and corresponding receiver configured to support radio frequency (RF) communication in accordance with an IEEE (Institute of Electrical and Electronics Engineers) communication standard such as IEEE 802.15. As such, for example, some embodiments may employ Bluetooth, Wibree, ultra-wideband (UWB), WirelessHART, MiWi or other communication standards employing relatively short range wireless communication in a network such as a wireless personal area network (WPAN). In some cases, IEEE 802.15.4 based communication techniques such as ZigBee or other low power, short range communication protocols such as a proprietary technique based on IEEE 802.15.4 may be employed.

In an exemplary embodiment, the communication interface 252 may additionally or alternatively be configured to support communication via radio frequency identification (RFID) or other short range communication techniques. Accordingly, the monitoring terminal 62 may be configured to interface configurable monitoring devices, in addition to conventional RFID tags and modules. In another embodiment, the monitoring terminal 62 may be configured to interface a barcode scanner, or other data entry devices.

As mentioned above, monitoring terminal 62 may be directly connected to the monitoring system via a configurable monitoring device configured as a gateway, or the monitoring terminal 62 may be connected to the monitoring system 60 via a gateway and an external network 30. The network 30 to which the communication interface 252 may connect may be a local network (e.g., a WPAN) that may in some cases further connect to or otherwise communicate with a remote network on either a periodic or continuous basis. The network 30 may include a collection of various different nodes, devices or functions that may be in communication with each other via corresponding wired and/or wireless interfaces.

As indicated above, the processor 250 of the monitoring terminal 62 may be embodied as, include or otherwise control the monitoring system manager 256. The monitoring system manager 256 may be any means such as a device or circuitry operating in accordance with firmware/software or otherwise embodied in hardware or a combination of hardware and firmware/software (e.g., processor 250 operating under software control, the processor 250 embodied as an ASIC or FPGA specifically configured to perform the operations described herein, or a combination thereof) thereby configuring the device or circuitry to perform the corresponding functions of the monitoring system manager 256, as described herein. Thus, in examples in which software is employed, a device or circuitry (e.g., the processor 250 in one example) executing the software forms the structure associated with such means.

The monitoring system manager 256 of the monitoring terminal may be configured to coordinate, manage, and configure the operation of configurable monitoring devices. In this regard, the monitoring system manager 256 may be configured to perform a number of activities with regard to a monitoring system as further described below and otherwise herein. While the monitoring system manager 256 may be configured to perform all of the functionality described with respect to the monitoring system manager 256 herein, it is also contemplated that the monitoring system manager 256 could be configured to perform any sub-set of the described functionality.

According to some example embodiments, the monitoring system manager 256 may be configured to define, assign, and manage the role configuration of the configurable monitoring devices. To do so, the monitoring system manager 256 may generate configuration information that indicates the role or mode of operation for a target configurable monitoring device and transmits the configuration information to the configurable monitoring device for storage on the device. Configurable monitoring devices may each be assigned a unique identifier that may be used for communication message addressing. As such, configuration information may be generated by the monitoring system manager 256 and addressed to a target configurable monitoring device to configure the configurable monitoring device for a particular role.

The configuration information may include role policy information that indicates the functionality that the configurable monitoring device should perform within the device's assigned role, and attribute information, such as associated product attributes. Attribute information may be data that a configurable monitoring device may utilize within the role to perform functionality. For example, if a product that the configurable monitoring device is attached to is clothing, the attribute information may include a clothing classification (e.g., shirt, pants, tie, dress, etc.), a color or colors indicator, a size indicator, a price indicator, a lot indicator, and/or the like. Based on the attribute information, the functionality performed by a configurable monitoring device may be determined. For example, configurable monitoring devices configured with the same role policy information, may trigger different types of alarm responses based on the price of the product. According to some example embodiments, attribute information may be stored in a central location, rather than at the configurable monitoring device, and the configurable monitoring devices may access this information remotely via the network of the monitoring system as needed.

According to some example embodiments, the configuration information may include executable code that is, possibly decompressed, and stored on the configurable monitoring device for subsequent execution by the configurable monitoring device. However, in some example embodiments, a configurable monitoring device may be manufactured with executable code in the form of configuration information stored within the memory of the device. Alternatively, a hardware device, such as a memory device or preconfigured processing device with pre-stored configuration information may be inserted into and/or electrically connected to the configurable monitoring device to provide configuration information and assign a role to the configurable monitoring device. The pre-stored configuration information may be directed to a number of possible roles that the configurable monitoring device could be configured to perform. In this regard, to configure the configurable monitoring device, the monitoring system manager 256 may provide a message including a data indicator of which role the configurable monitoring device is to perform. The configurable monitoring device may receive the indicator and begin performing (e.g., transition into) the role described by the indicator by executing the appropriate portion of the pre-stored configuration information.

Once a configurable monitoring device is assigned a role via the configuration information, the device may begin operating within its respective role. Roles or configurations may be simple or complex based on, for example, the processing capabilities and the memory storage available to a configurable monitoring device. In this regard, a configurable monitoring device may be configured to perform minimal data processing, and a monitoring terminal may be configured to perform incrementally more processing of data. Alternatively, some configurable monitoring devices may include relatively higher processing power and larger memory storage to support increased data processing at the configurable monitoring device, rather than at the monitoring terminal.

For example, in embodiments where a configurable monitoring device includes minimal storage memory, attribute information describing the article to which a configurable monitoring device is attached may be stored at the monitoring terminal. When a inquiry device (e.g., price scanner, inventory scanner) requests the attribute information from the tag, the tag may communicate the request to the monitoring terminal, and the monitoring terminal may provide the attribute information to the inquiry device, either though the monitoring device or through a connection external to the monitoring device.

Alternatively, in embodiments where the configurable monitoring device includes a relatively large storage memory, attribute information describing the article to which a configurable monitoring device is affixed may be stored, e.g., local to the tag, within the storage memory of the tag. When an inquiry device (e.g., price scanner, inventory scanner) requests the attribute information from the tag, the tag may directly communicate, or initiate the communication of, the attribute information from the tag to the inquiry device.

The following describes some of the roles that may be implemented by the configurable monitoring devices and the interactions that may involve the monitoring terminal 62 and the monitoring system manager 256 while the configurable monitoring devices are operating within their roles. As described above, and generally herein, a configurable monitoring device may include a processor and a memory. The processor may be configured to support network communications. According to various example embodiments, the processor may be configured, for example, via instructions stored on the memory (e.g., instructions derived from configuration information), to support communications in accordance with a role defined by configuration information. Further, the processor of the configurable monitoring device may include input/output (I/O) ports (or pins). Via configuration information, the I/O ports may be configured to interface with any number of external devices such as, electronic security devices, merchandising displays, tags on equipment, employee identification cards, alarms, speakers, microphones, lights (e.g., light emitting diodes (LEDs)), buttons, keypads, monitors, displays (e.g., for changeable pricing labels), sensors (e.g., accelerometers, movement sensors, light sensors, temperature sensors), cameras, security gates, store audio systems, customer counters, lighting switches, employee communicators (e.g., headsets, handheld radios), door strike mats, jewelry case mats, Lojack® devices, global positioning system (GPS) devices, and the like. As such, the I/O ports may be configured to support one or more roles that the configurable monitoring device may be configured to perform.

Via the I/O ports of the processor, various functionalities may be triggered, based on the role and the configuration information of the configurable monitoring device. Following from the discussion above, triggering may be initiated either at the configurable monitoring device level or at the monitoring terminal level. For example, the I/O ports of a configurable monitoring device's processor may interface with a display for a price tag, when the configurable monitoring device is configured as a tag. Within the tag's configured role, for example, the price depicted on the display may be set to reduce at a given time. In some example embodiments, the time may monitored by the processor of the tag and when the given time is reached, the processor may direct the I/O ports and the connected display to depict a reduced price. Alternatively, an example that includes triggering at the monitoring terminal level may include the time being monitored by the monitoring terminal, and the monitoring terminal may communicate a message including a reduced price, or an indication to reduce the price, to the tag at the given time to trigger the tag to reduce the price accordingly. Further, the I/O ports may interface with a camera, and the configurable monitoring device may be configured to control the movement of the camera, detect events, and capture still camera pictures for forwarding to store personnel or the authorities, and the like.

While the roles described herein may be considered from the perspective of an implementation in a retail sales environment, the scope of the invention should not be limited to such implementations. For ease of understanding, FIG. 3, which illustrates an example of a given space, namely retail environment 100, is referred to in order to describe some of the roles that may be implemented by the configurable monitoring devices within an exemplary monitoring system.

FIG. 3 illustrates a diagram of various configurable monitoring devices configured to define a monitoring system. In this regard, FIG. 3 depicts an exemplary retail environment 100 including a stock room 110 where excess inventory is maintained, an office space 120 from which monitoring activity may be coordinated or otherwise viewed (e.g., via a monitoring terminal 62), fitting rooms 130 in which articles of clothing may be tried on by potential buyers, a retail floor 140 on which various products may be displayed or otherwise made available for buyers to purchase and restrooms 150. FIG. 3 also depicts a point of sale (POS) terminal 160 at which payment may be made for products and a door 170 through which customers may enter and exit the retail floor 140.

Within a retail environment application, various different products may each be provided with a corresponding configurable monitoring device operating as a tag. Furthermore, several other configurable monitoring devices may be provided at various locations throughout the retail environment to operate, for example, as nodes. In this regard, the location of a node within the retail environment may be known (e.g., coordinates of the nodes may be known) to, for example, the monitoring terminal 62 and the monitoring system manager 256 to facilitate implementation of a real-time location system (RTLS) for the tags via the nodes. Several configurable monitoring devices operating in a tag mode are illustrated in FIG. 3 as circles with the letter “T” therein. Some other configurable monitoring devices may be configured during commissioning to operate in a node mode. Examples of configurable monitoring devices operating in node mode are shown in FIG. 3 as circles with the letter “N” therein. An example of a configurable monitoring device operating in a gateway mode is shown in FIG. 3 as a circle with the letter “G” therein. The circles with the letter “C” may be configurable monitoring devices configured to operate with customer counting devices (e.g., strike pads, and the like). The circles with the letter “D” may be configurable monitoring devices configured to operate with door opening monitoring devices configured to determine and report a number of times customers open, for example a freezer door in grocery frozen food section. The circle with the letter “P” may be configurable monitoring devices configured to operate with a camera to capture digital photographs when an event, such as the alarming of a tag has occurred. The configurable monitoring device interfacing with the camera may be configured to control the movement of the camera and forward video or pictures. Still others (or a single configurable monitoring device) may be configured to operate as gates or in a hub or gateway mode. While configurable monitoring devices may be configured as tags, nodes, gateways, etc., each of these roles may be further refined, for example via configuration information, to specialize the functionality of a configurable monitoring device within a particular role (such as, e.g., a ping node within the broader node role).

Various techniques may be utilized to associate and dissociate a configurable monitoring device. For example, a specific network identifier (e.g., PAN ID) may be provided to the configurable monitoring device at manufacturing. Further, low transmission power association and dissociation may be implemented using close proximity signaling. Further, hardware, switches (e.g., DIP (dual in-line package) switches), jumpers, MAC address filtering, button actuated association/dissociation, separate communications link associating/dissociating, or a barcode scanners may be used for associated or dissociated.

A configurable monitoring device configured to operate as a tag may perform functionalities supporting security functions, inventory functions, marketing functions, combinations thereof, and the like. In this regard, subsequent to configuring a configurable monitoring device as a tag, a commissioning or binding procedure may be performed. Prior to commissioning, a configurable monitoring device may be configured as a tag, but the device may not yet be associated with, or attached to, a product. Upon associating the tag with a product, the tag may be commissioned. The monitoring terminal 62 and the monitoring system manager 256 may manage the commissioning and decommissioning of tags via wireless communications with the tags. For example, the procedure for commissioning and decommissioning a tag may include RFID scanning the tag, a barcode scanning the tag, and/or hardware (e.g., specialized microchip) attachment or connection.

To commission a tag, the monitoring system manager 256 may provide a signal to the tag indicating that the tag is now active with respect to its configured role. In this regard, alarming, inventory, and marketing functionality may be downloaded and/or activated. For example, a functionality profile, including various electronic instructions, may be downloaded and/or activated. While commissioned, the tag may continue to receive instructions or other information useful for making determinations as to the functionality to be employed and the corresponding role/mode of operation to assume.

Decommissioning of the tag may include powering down the tag, clearing or resetting data (e.g., product-specific and/or functional data), and/or directing the tag to enter an idle or non-transmitting mode in order to conserve battery power until the tag is re-commissioned. The tag may be decommissioned by instructions and/or signals received from the monitoring terminal 62 and the monitoring system manager 256.

Decommissioning may occur at a point of sale, such as POS 160. A node associated with the point of sale (POS node) may be configured, via configuration information, to perform decommissioning functionality. In this regard, the POS node may be configured to decommission the tag when the product is entered into a sales transaction. The monitoring system manager 256 may be configured to interface with a sales database or sale system to monitor transactions. Upon detecting a transaction, data about the product involved in the transaction may be acquired, and, based on the acquired data, a decommission signal may be transmitted to the affected tag. According to some example embodiments, direct access to a sales database or sales system may not be available due to concerns regarding the confidentiality of sales and customer information. In these situations, example embodiments of the present invention may implement a barcode scanning wedge as an interface to the transaction activities without accessing the sales database or sales system.

According to some example embodiments, a battery check may be performed by a tag during decommissioning. In this regard, the configurable monitoring device may include the hardware and software (e.g., processor configured by instructions) to provide for monitoring the battery charge level. If the battery charge level for a tag has fallen below a given threshold, the tag may alarm or otherwise indicate to the store personnel that the tag should be removed from service for recharging or battery replacement. Tags that have battery levels above the given threshold may be decommissioned and identified as being available for re-commissioning. According to some example embodiments, a tag having a battery level that has fallen below a given threshold may be prevented from being re-commissioned until the battery charge level is sufficiently improved. This would also desirably limit the need for a store clerk to retrieve low battery tags from the field or store environment.

The barcode scanning wedge may be installed in-line between a barcode scanner and a point of sale checkout terminal for receiving data acquired by the barcode scanner. The wedge may be configured to intercept some or all data acquired by the barcode scanner and to provide the data to a monitoring system, for example, via a POS node, without otherwise interrupting the flow of data to the point of sale terminal.

The wedge may be configured to facilitate the commissioning or decommissioning of a communications tag that is part of a monitoring system. For example, when a cashier scans a barcode of a product during a purchase transaction, data confirming the transaction may be uploaded to the monitoring system and the monitoring system manager 256 via the wedge. Confidential consumer and sales information may not be uploaded to the retail security network in some embodiments. In response to receiving a sales confirmation, the monitoring system manager 256 may be configured to transmit a decommission signal to an associated tag attached to the purchased product to cause the tag to be decommissioned. Decommissioning may be associated with removal of the tag from the product and/or removal or modification of a record or information (e.g., inventory information) for the tag stored by the monitoring system manager 256, for example, in the memory device 254.

A configurable monitoring device may also be configured as a manager's key to be implemented within the monitoring system. FIG. 4a depicts an example block diagram of a key, such as manager's key. The key of FIG. 4a is depicted as using the Zigbee protocol, but any protocol may be used. In some applications, a mounting device that mechanically attaches the configurable monitoring device to a product may be unlockable by the implementation of a key. According to some exemplary embodiments, a tag having a mounting device may take the form of a pin tag (for protecting a clothing), a keeper or plastic enclosure (for protecting compact disks, software, cologne, and the like), a Spider Wrap™ or wire wrap device (for protecting larger boxed products), or the like. One such mounting device may be configured to attach to the shaft of a golf club or similar article such as the device disclosed in U.S. Pat. No. 7,266,979 herein incorporated by reference in its entirety. Other such mounting devices may be configured to attach to a bottle neck or a bottle cap such as the devices disclosed in U.S. Pat. Nos. 7,259,674 and 7,007,523, both herein incorporated by reference in their entirety. Still other mounting devices may be configured to attach through a product such as an article of clothing or a blister pack such as the hard-tag disclosed in U.S. Pat. No. 6,920,769 incorporated herein by reference in its entirety. Each of the aforementioned patents being commonly owned by the assignee of the present application.

As mentioned above, Alpha Security Products' Spider Wrap™, which is disclosed in U.S. Pat. No. 7,162,899 and herein incorporated by reference in its entirety, may also be configured to operate as a mounting device. Further, a cable lock, such as the Alpha Security Products' Cablelok™ device disclosed in U.S. Pat. No. 7,249,401 or a keeper, such as that disclosed in U.S. Pat. No. 6,832,498 may be a mounting device. Each of the aforementioned patents being commonly owned by the assignee of the present application and herein incorporated by reference in their entirety.

The key may be embodied in many different ways. In this regard, in some situations, the key may be a specially formed device that mates mechanically with some portion of the mounting device in order to disable a locking mechanism of the mounting device. As an alternative, the key may be a magnetic device configured to interface with a locking mechanism of the mounting device to enable the mounting device to be unlocked to permit removal of the mounting device from the corresponding product to which the mounting device is affixed or otherwise attached. As yet another alternative, the key may actually include an electrical component for exchanging signals or information with the tag associated with the mounting device to enable unlocking of the mounting device. As such, for example, the key could be an embodiment of a configurable monitoring device that is provided with specific configuration information defining functionality for the configurable monitoring device to function as the key for unlocking the mounting devices of tags. In such implementations, the key (or the configuration information associated with the key) may include a software component or code that is unique to a particular individual (e.g., a specific manager or assistant manager).

The key may also report unlocking activities and/or other information regarding other devices encountered or activities undertaken to monitoring system manager 256, so that activity of the key (or persons possessing the key) may be monitored, logged, and/or tracked. The examples discussed below, in connection with locating a tag or network component, could be applied to the managers key as well. Additionally, authenticity of the code may be defined or verified so that, for example, if a particular manager's key is lost or a manager leaves, the corresponding code for the manager's key may be invalidated so that further unlocking operations with the manager's key may not be possible. With respect to the security of the key itself, the key may be configured to alarm and/or destroy necessary aspects of the key's functionality if the key is, for example, improperly removed from the retail environment. For example, the key may clear the memory of the key, rendering the key useless.

Utilization of the key for unlocking security devices may be limited by rules stored on the key or at a monitoring terminal. For example, rules for using the key may be defined with respect to the location of the key (e.g., inside/outside the store, inside/outside a department zone), the employee using the key (e.g., as indicated by a passcode or detection of a user's RFID tag), a time of day, a day of the week, a work schedule. Use of the key in violation of the rules may cause the key to alarm.

In addition to, or as an alternative to unlocking mounting devices, the key may be useful for setting an alarm or turning an alarm on or off. In this regard, to utilize the key, a button on the key may be actuated which indicates that the key is preparing to or is performing a locking or unlocking function. An indication that the button has been pressed may be commutated to the tag that is to be interacted with or the monitoring terminal. Further, in consideration of the locating functionality described below, the key may be located and tracked, and zones of use (e.g., the key cannot be used in the stock room 110) and other rules may be defined and enforced with respect to the key.

According to some example embodiments, a configurable monitoring device configured as a tag, whether commissioned or decommissioned, may provide a status signal (or heartbeat signal) to the monitoring system. The status signal may be a short transmission of a unique identifier associated with the tag. The status signal may also provide other types of indications, such as whether the battery is or is not yet drained and/or whether the tag is otherwise properly functioning. The status signal may also be used for real time locationing system (“RTLS”) purposes, some examples of which are further described below. The status signal may be received by the monitoring system manager 256. The monitoring system manager 256 and/or the tag may maintain a log of the most recent receipt of a status signal from a tag and/or node. Other types of logs, some of which are discussed below, can also be maintained for and/or by one or more of the configurable monitoring devices. If the tag fails to provide a status signal that is received by the monitoring manager and/or any other network entity within a threshold period of time, an alarm or error indication may be generated.

According to some example embodiments, nodes of the monitoring system may be configured to provide ping signals. The tags may be configured to receive a ping signal and communicate information in response to receipt of a ping signal. For example, battery status, alarm status, received signal strength, and the like may be provided in response to a ping signal.

As alluded to above, within the role of a tag various functionalities may be implemented, such as advanced security functionalities. For example, complex alarming conditions may be defined for a tag based on data received from sensors on the tag, location information, movement information, and the like. For example, tags may be configured to operate as or with EAS tags, such that when the tag passes through an EAS gate, the EAS gate may detect the tag (or a connected EAS tag), and possibly sound an alarm. According to some example embodiments, the monitoring terminal 62 may have received a communication regarding the alarm condition.

With regard to operation within EAS systems, configurable monitoring devices may be configured to operate as tags to be detected, or as gate nodes for detecting tags. In this regard, via configuration information provided to a configurable monitoring device, the configurable monitoring device may assume the role of a gate node, such as gate nodes 180 located at the doorway 170. The gate nodes may be configured to detect passing EAS tags, such as a conventional EAS tag or a configurable monitoring device configured to operate as an EAS tag, and sound an alarm (e.g., an alarm included on the tag, an alarm included with the gate node, a storewide alarm). A gate node may directly sound a local alarm, or the gate node may communicate with the monitoring system manager 256 to sound an alarm.

It is noteworthy that, due to the dynamic reconfiguration ability of configurable monitoring devices, any configurable monitoring device may be configured to operate as a gate node. As such, EAS gates may be implemented dynamically at many locations within a retail environment. For example, configurable monitoring devices that have been configured to operate as tags and are affixed to a product on a shelf within the retail environment may also be re-configured to operate as a gate node for the aisle where the products are located.

In addition to performing EAS functionality, a monitoring system may be configured to perform additional advanced security functionality. Some advanced security features, as well as a number of other inventory, marketing, and other features may rely upon implementation of an RTLS within a monitoring system. To implement RTLS solutions, configurable monitoring devices may be configured as locating nodes.

According to some example embodiments, the ping signals generated by the nodes may be used for locating a tag. In this regard, a tag may be configured to report to, for example, the monitoring terminal that the tag is currently within the range of a ping signal provided by a particular node. The nodes may be configured to randomly, based on an algorithm, modify the ping signal strength. When the signal strength is modified, some tags that were in range may no longer be in range, or some tags that were previously in range may now be within range of the ping signal. As tags come in and out of range, due to the changing signal strength, the signal strength at the time may be used to determine the distance that a tag is from a particular node. In some cases, if the distance is determined with respect to multiple nodes, a physical location of the tag can be determined.

According to some example embodiments, standard operating power settings (describing standard fluctuations in power discussed below) may be utilized in a standard locating mode. However, in an active locate mode, when the location of a specific article is desired, an active locate power setting may be utilized.

Additionally, or alternatively, a locating node may be configured to use multilateration, hyperbolic positioning, time difference of arrival (TDOA), trilateration, triangulation, received signal strength indication (RSSI), global positioning systems (GPS), any other locating mechanisms, or combination thereof to support identifying the location of a tag within a retail environment. According to some example embodiments, a locating node may operate in isolation to detect the presence, and possibly the strength of a signal to determine when a tag is nearby. Locating nodes may take signal measurements and forward the information to, for example, the monitoring system manager 256 to analyze the signal and determine a location. According to some example embodiments, locating nodes may be placed at strategic locations within the retail environment to support accurate locating of tags.

Due to interference that can occur in enclosed environments, such as retail stores, a signal power optimization procedure may be performed by the monitoring system, for example, directed by the monitoring terminal, to minimize interference and determine optimum signal strength for ping signals. In this regard, the signal strength of the various nodes may be modified to determine settings where minimal interference and node signal overlap occurs.

FIG. 5a illustrates an example retail environment 500, where a monitoring system has been installed and implemented, such as the monitoring system described in U.S. Provisional Patent Application 61/244,320, filed Sep. 21, 2009, the content of which was incorporated by reference in its entirety above, and U.S. Provisional Patent Application No. 61/246,393, filed Sep. 28, 2009, the content of which was also incorporated by reference in its entirety above. The monitoring system may include tags, ping nodes, communication routing nodes, and a network coordinator and gateway node. The tags and nodes of the monitoring system may be configurable monitoring devices, such as those described in U.S. Provisional Patent Application 61/244,320 filed Sep. 21, 2009, the content of which is hereby incorporated by reference in its entirety, and U.S. Provisional Patent Application No. 61/246,388, filed Sep. 28, 2009, the content of which is also incorporated by reference in its entirety.

The monitoring system may also include a monitoring terminal (not depicted in FIG. 5a) that provides a user interface to the monitoring system and provides control over the operations of the monitoring system. The monitoring terminal may be connected directly to the monitoring system as a peer, or the monitoring terminal may be connected to the monitoring system via another network, such as the Internet. In some example embodiments, the monitoring terminal may include a server that is configured to control the monitoring system on-site, where the monitoring system is installed. A user may interface with the monitoring system by establishing a connection between a remote device (e.g., a personal computer) and the server. The server may be configured to perform predefined operations, and log information received from the tags and nodes. The server may be connected to a gateway or coordinator node, and the server may communicate with tags and nodes via the gateway or coordinator node.

As depicted in FIG. 5a, the retail environment 500 houses a number of ping nodes (e.g., ping nodes 510, 520, 530, 540, 550, 560, and 570) and tags (e.g., tags 590 and 591). The ping nodes may be configured to provide ping signals at regular (or irregular) intervals. The ping signals may include information regarding the ping node that has transmitted the signal. In this regard, a ping signal may provide a unique identifier of the ping node that is providing the signal. According to some example embodiments, the ping signal may also include timing or time code information. In some embodiments, the ping signal is considered location information. For example, when a tag's location can be determined based upon it's position relative to one or more stationary ping nodes, the corresponding ping signals, which have a unique identifier that identifies the broadcasting ping node, can be considered to include location information. The tag may log the location and other information it extracts from the ping signal and/or report (i.e., send, upload, etc.) some or all of the information to a network entity, such as monitoring system manager 256. After saving and/or reporting the information, the tag can engage its timer and enter a sleep mode (as discussed above), and enter a sleep mode to conserve power while waiting for another triggering event (such as detection of movement or the timer expiring).

In some embodiments, the ping nodes are also configured to receive signals and communications from other entities connected to the monitoring system such as tags, fixed nodes, or the monitoring terminal. In particular, the ping nodes may listen, possibly periodically, to the fixed nodes. As a result, communications with the ping nodes may occur directly between a tag and a ping node, or tags and ping nodes may communicate via the fixed nodes. In this regard, a fixed node may be a node that support network communications and may be stationary relative to a given space, which may or may not be moving. For example, the given space could be the cabin of an elevator, airplane or cruise ship. The location of the fixed nodes may be known, and as such, the fixed nodes may be used as reference locations for identifying the locations of the ping nodes or tags as described in further detail below.

FIG. 5b depicts another representation of the retail environment 100 which includes fixed nodes 515, 525, and 535. As described above, the fixed nodes may be a node that support network communications and may be stationary. In some example embodiments, the fixed nodes may be mains powered. The fixed nodes may be configured to support communications between tags and the monitoring system, or nodes and the monitoring system. The fixed nodes may also be configured to support locationing within a monitoring system with respect to the ping nodes.

In this regard, the fixed nodes 515, 525, and 535 may be configured to listen for ping signals or other communications from the ping nodes and determine the position of the ping nodes. While ping node may be relatively stationary, according to some example embodiments, ping nodes may be positioned on movable shelving or displays. As such, when ping nodes are moved or when new ping nodes are introduced to the environment, the monitoring system may need to determine the location of the ping nodes. With the assistance of the fixed nodes, the locations of the ping nodes may be determined using various techniques including but not limited to received signal strength indication (RSSI) techniques, angle of arrival techniques, time of arrival and time difference of arrival techniques, and the like. Since the locations of the fixed nodes are known, the locations of the fixed nodes may be used as reference points for determining the locations of the fixed nodes.

A signaling and communications period 600 for a ping node, depicted in FIG. 6, may include a first portion 610 dedicated to transmitting repeated ping signals 620, and a second portion 630 dedicated to support network communications. A ping node may be configured to repeat the signaling and communications period 600 indefinitely, or until an instruction is received by the ping node that causes the ping node to change its operation.

Tags, such as tags 590 and 591, may be configured to determine and store the identifier of the closest ping node. The tags may also be configured to report the identity of the closest ping node to the monitoring terminal. According to some example embodiments, a tag may enter a “seek closest ping node” state (i.e., seek_closest state), where the tag is configured to identify the ping node that is closest to the tag. When a tag receives only one ping signal, the tag may determine that the ping node providing the only received ping signal is the closest ping node. However, when a tag receives sufficiently strong ping signals from more than one ping node, a locating procedure according to various example embodiments of the present invention may be triggered.

In accordance with various example embodiments, ping nodes may be placed within the given space, such as a retail environment, in a manner that provides sufficient ping signal coverage to the environment. In this regard, a ping signal may have an associated signal strength, and the strength of the signal may determine the range of the ping signal. The strength of a ping signal may fade as the distance between the ping node and the measurement point is increased. The range of a ping node may be defined by a distance from the ping node where the signal strength is at a range threshold. Signals below the range threshold may still be received by tags, but the tags may be configured to ignore signals having signal strengths below the range threshold. The range threshold may define a circle (or sphere) with the ping node at the center of the circle.

Since locating a tag may involve determining which ping node the tag should be associated with, according to some example embodiments, it may be beneficial to minimize the range overlap between ping nodes. In this regard, the ping nodes may be set to have as large of a range as possible, while also minimizing overlap. However, in some example embodiments, ping nodes may be associated with a given space comprising or consisting of at least a portion of a particular display shelving unit or rack. The ping node may be configured to define a range that merely encompasses the display, shelving unit, or rack, so as not to associate tags with the ping node that are not placed on the display, shelving node, or rack. As such, pings nodes may be configured to ensure coverage of some or all areas of the sales floor, or configured for a specific purpose to provide coverage of, for example, a particular display.

According to some example embodiments, a ping node signal strength optimization procedure may be undertaken by the monitoring system, possibly controlled by the monitoring terminal. In this regard, the signal strengths of the various ping nodes may be modified to determine optimal settings considering factors such as coverage, desired range for a particular ping, interference, range overlap, reflections, and the like. Based on criteria such as these, an optimal settings for the ping normal operating signal power levels may be determined.

FIG. 5a shows the retail environment 500 with the placement of a number of ping nodes and their associated ranges. Ping node 510 has been set to provide a ping signal strength such that the range threshold is for ping node 510 is reached at a range 511. Ping node 520, having a range 521 may be a ping node that covers a larger area of the retail environment, such as a departmental area (e.g., the shoe department). Ping nodes 570 and 580, having respective ranges 571 and 581, may also provide coverage to respective departmental areas. Ping nodes 530, 540, 550, and 560, and smaller respective ranges 531, 541, 551, and 561, may provide coverage to small floor display, where it may be important to be able to determine precisely which floor display a particular tagged product is located on.

In some embodiments, it is noteworthy that, as depicted in FIG. 5a, to provide coverage to all or substantially all of the retail environment, the coverage areas of the ping nodes may overlap. In these overlapping regions, a tag may receive a sufficiently strong ping signal from more than one ping node. As such, a locating procedure may be employed (when necessary) to determine which ping node is closer to the tag.

In addition to the issues that can arise as a result of overlapping ping node coverage, ping signal reflections may also create issues. In this regard, since many retail environments are enclosed areas, signal reflections within the environments may create situations where ping signals are received by nodes as reflected signals. As a result, a tag may not be located within an overlap area as defined by the range of the ping nodes, but the tag may still receive signals from multiple ping nodes due to reflections. Further, the receipt of reflected signals may occur dynamically, and not in a predicable pattern. For example, in a retail embodiment, the movement of customers, store personnel, and other objects can cause dynamically changing signal reflection issues. Non-uniform architecture of the shopping floor may also contribute to reflection issues. According to various example embodiments, some locating procedures provided herein overcome the issues that arise from ping range overlap, as well as, the issues that can arise from signal reflections.

With reference to FIG. 5a, tag 590 is located within range of ping node 570. In an example scenario, tag 590 receives a ping signal from only the ping node 570. As such, when the tag 590 enters the seek_closest mode, the tag may detect and receive the ping signal associated with ping node 570 and associate the location of tag 590 with ping node 570. The tag 590 may be configured to store the identifier of ping node 570, as provided in the ping signal, and report the association of the tag 590 with the ping node 570 to the monitoring terminal via the monitoring system.

In another example scenario, tag 591 is located in an overlap region between ping node 510 and ping node 580. Tag 591 receives ping signals, having sufficient signal strength, from both ping node 510 and 580. Since tag 591 has received ping signals from more than one ping node, a locating procedure may be undertaken to determine which ping node is closer to the tag.

FIG. 7 illustrates the ping nodes 510 and 580, and the tag 591 in isolation from the rest of the retail environment 500 of FIG. 5a, for illustration purposes. In accordance with various example embodiments, the tag 591, having transitioned into a seek_closest state may report to the monitoring terminal that the tag 591 is currently receiving ping signals from more than one ping node. The tag 591 may be configured to report the identities of the ping nodes to the monitoring terminal. In response, the monitoring terminal may generate a signal power modification instruction, and transmit the signal power modification instruction to the identified ping nodes 510 and 580. According to some example embodiments, rather than the monitoring terminal generating and transmitting the signal power modification instruction, the affected tag 591 may be configured to generate the signal power modification instruction and transmit the signal power modification instruction to the identified ping nodes 510 and 580.

In response to receiving the signal power modification instruction, the ping nodes 510 and 580 may be configured to reduce the power output, used to generate of their respective ping signals, to a minimum threshold level. The minimum threshold level need not be the absolute minimum value, but can be a relative value that is preprogrammed into at least two nodes configured to implement this type of locationing. For example, the minimum threshold level could be 20 mW, 10 W, and/or any other given value.

Referring now to FIG. 8, ping node 510 may reduce the power output, thereby reducing the ping signal to range 511a. Similarly, ping node 580 may also reduce its power output to the same value as ping node 510, and its ping signal will have the same range as ping node 510, as shown by range 581a. It is noteworthy that ping nodes 510 and 580 initially (i.e., before the nodes received the signal power modification instructions) transmitted ping signals at different signal strengths resulting in different starting ranges, possibly for coverage reasons. However, according to various example embodiments, the ping nodes, in response to receiving the signal power modification instruction, are configured to modify their respective signal strengths to an equal or substantially equal power level, or so their ranges are equal or substantially equal.

Upon reducing the signal strength based on a minimum threshold power level, the ping nodes may be configured to begin a process of incrementally increasing the signal strength of the ping signals. The ping nodes may be configured to perform periodic step increases in the signal strength, thereby causing a period step increase in signal range. For example, the power level can increase such that the corresponding signal range increase some distance (e.g., 2 inches, 2 feet, or any other acceptable distance) every set amount of time (e.g., 0.2 seconds, 2 seconds, 20 seconds, or any other acceptable amount of time). The ping nodes may include clocks that are synchronized with each other and/or the broader monitoring system, and the ping nodes may use the synchronized clocks to trigger the incremental changes to the signal strength at regular intervals. Having lost the ping signals from the ping nodes 510 and 580, due to the reduction of signal strength, the tag 591 may be configured to detect or listen for the first ping signal that is received after the signal power modification instruction is issued, or after the tag 591 reports the reception of multiple ping signals to the monitoring terminal.

Referring to FIG. 8, after a first interval, the ping nodes 510 and 580 may increase their respective ping signal strength by an equal or substantially equal amount. In this regard, the ping nodes 510 and 580 may be configured to increase the signal strength to achieve the ranges 511b and 581b, respectively. After a second interval, the ping nodes 510 and 580 may again increase their respective ping signal strength by an equal or substantially equal amount. The ping nodes 510 and 580 may be configured to increase the signal strength to achieve the ranges 511c and 581c, respectively.

At range 511c, the tag 591 may receive the ping signal from ping node 510, but not from ping node 580. As a result, the tag 591 may be configured to determine that the tag 591 is closer to ping node 510. The tag may store the identifier of ping node 510, and report the tag's association to ping node 510 to the monitoring terminal and/or other network entity.

Upon determining that the tag 591 is closer to ping node 510, the process of incrementing the power may cease. For example, in some embodiments, the power incrementing may cease in response to an end power modification instruction issued by the tag 591, the monitoring terminal and/or other network entity, and received by the ping nodes 510 and 580. The ping nodes 510 and 580 may be configured to return to their respective original or normal operating ranges 511 and 581, respectively.

As an alternative to decreasing the signal strength to an equal level, followed by subsequent increases in signal strength, a similar example procedure may be undertaken where the signal strength is first increased to a maximum threshold level. Subsequent to increasing the ping signal strength to the maximum level, the signal strength of the involved ping nodes may be reduced periodically by incremental amounts until the node receives a signal from only one ping node. The last ping node that the tag receives a signal from may be identified as the closest ping node to the tag.

As another alternative, according to some example embodiments, rather than initially reducing the ping signal strength to a minimum threshold level or raising the ping signal strength to a maximum threshold level, the ping nodes involved in the locate procedure may reduce/raise the signal strength to the current lowest/highest signal strength of the ping nodes involved in the locate procedure. Based on whether the tag receives a signal from a single ping after modifying the signal strengths in this manner, the tag may be configured to determine whether the further procedure of incrementally increasing/decreasing the signal strength of the ping nodes is required. In this manner, according to various example embodiments, the procedure for locating the closest ping node may be expedited.

According to various example embodiments, in addition to determining which pings nodes that a tag is receiving ping signal from, a tag may be configured to measure the signal strength of the ping signals. In some example embodiments, information about signal strength and distances may be acquire from the data included in a communication in consideration of the modulation that was used to transmit the data, and analysis of the data may reveal information about signal strength and distance information. According to various example embodiments, the tag may consider the signal strength of ping signals that the tag is receiving when determining which ping node is closer. For example, signal strengths may fluctuate for a number of reasons (e.g., movement of customers or products within a retail environment). As such, the tag may be configured to determine the closest ping node by monitoring the signal strengths over a period of time to, for example, determine an absolute maximum signal strength or determine an average signal strength, and identify the closest ping node based on these values. Further, according to some example embodiments, received signal strength indication (RSSI) techniques may be used to assist in identifying a closest ping node.

Additionally, in some embodiments an averaging scheme may be utilized in an attempt to normalize or remove incorrect closest ping node determinations. In this regard, a tag may keep a running log and average of signal strength values detected from a particular ping node or a closest ping node. And if signals or communications are received that are determined to be outside of a threshold range from the running average, those deviations in signal strength may be disregarded as being a result of a reflection or other unexplained occurrence. If a given number of signals or communications (e.g., 10) are received that are outside the threshold, a change in the placement of ping nodes may have occurred, and the generation of a new running average may be triggered. Changes in this regard, may be the result of movement of the tag, movement of the ping nodes, or the introduction or removal of a ping node to or from the environment. For example, the log and running average can include the last 10, 100, 1000, or any other suitable number of signals or communication values. In some embodiments, the number of suitable signal or communication values can be time dependent (e.g., a running average can be made from each signal or communication received over the past hour, 10 hours, day, two days, week, or any other suitable period of time).

FIG. 9 illustrates an example method of the present invention that may be implemented by a tag or a monitoring terminal. The example method begins at 900, where an indication that a tag is receiving ping signals from multiple ping nodes may be received. A tag may receive this indication internal to, for example, the processor of the tag, or the monitoring terminal may receive this indication. At 910, the identification of each of the ping nodes that the tag is receiving ping signals from may be determined. Further, at 920, a signal power modification instruction may be generated. The signal power modification instruction may be addressed to the ping nodes identified at 910.

At 930, the signal power modification instruction may be transmitted to each of the identified ping nodes. The identified ping nodes may subsequently perform the operations of a power modification procedure at 940, for example, as indicated in FIG. 10. Upon determining the closest ping node, an indication of the identified ping node that is closest to the tag may be received at 950. The tag may then be associated with the closest node for location purposes.

FIG. 10 illustrates an example method of the present invention that may be implemented by a ping node. The example method begins at 1000, where a signal power modification instruction may be received. At 1010, the signal strength may be lowered to a minimum threshold level (or raised to a maximum threshold level). At 1020, the signal strength of the ping signal may be periodically increased (or decreased) by an incremental amount. Subsequent to performing one or more signal strength modifications, the ping node may return the signal strength to a normal operating level at 1030.

FIGS. 11 and 12 illustrate the modification of normal operating levels for ping nodes. It is noteworthy that the ping nodes in FIGS. 11 and 12 are stationary, but the normal operating levels of the ping nodes have changed. In this regard, a monitoring system, via a tag, fixed node, or other ping nodes. As described above, the monitoring system may perform an optimization procedure to determine the normal operating levels of the ping nodes. In this regard, the normal operating levels may be optimized based on identified signal reflection issues, area coverage, and the like. According to some example embodiments, the normal operating levels of the various ping nodes may be modified to achieve particular goals with respect to, for example, locating a particular tag or group of tags. By dynamically changing the normal operating levels of the ping nodes, different gradients of coverage density may be generated within a given space or portion thereof.

FIG. 11 depicts a number of ping nodes on the left side of the space that may be associated with aisles of a department store, which are positioned in a uniform manner with associated ping nodes on the shelving or the like. The right side of the environment may be representative of a non-uniform floor space where a number of displays are located close together. Tags located in the right side may be more likely to interact with multiple ping nodes configured as shown in FIG. 11.

In response to, for example a detected theft event, an inventory sweep, regular modification of normal operating levels, or the like, the normal operating levels of the ping nodes may be modified resulting in a different gradient of coverage density within the environment. For example, as shown in FIG. 12, the normal operating levels of the ping nodes can be modified from those depicted in FIG. 11. In this regard, the coverage is increased on the right side of the space, resulting in increased overlap in some ping node coverage. On the other hand, the left side of the environment, coverage has been decreased such that there is little or no interaction between the respective ping signals. As a result, the right portion of the space, which included substantial overlap in coverage in FIG. 11, now has little or no overlap in coverage.

To implement the modifications to the normal operating levels of the ping nodes, a triggering event may occur. A triggering event may be, as described above, a detected theft event, an inventory sweep, regular modification of normal operating levels, or the like. In response to the triggering event, the ping nodes may be communicated a normal operating level modification message. In response to receiving the message, the ping nodes may adjust the normal operating level accordingly.

FIGS. 9 and 10 illustrate flowcharts of example systems, methods, and/or computer program products according to example embodiments of the invention. It will be understood that each operation of the flowcharts, and/or combinations of operations in the flowcharts, can be implemented by various means. Means for implementing the operations of the flowcharts, combinations of the operations in the flowchart, or other functionality of example embodiments of the present invention described herein may include hardware, and/or a computer program product including a computer-readable storage medium (as opposed to a computer-readable transmission medium which describes a propagating signal) having one or more computer program code instructions, program instructions, or executable computer-readable program code instructions stored therein. In this regard, program code instructions may be stored on a memory device of an example apparatus (e.g., a tag, a monitoring terminal, a ping node, etc.) and executed by a processor of the apparatus. As will be appreciated, any such program code instructions may be loaded onto a computer or other programmable apparatus from a computer-readable storage medium to produce a particular machine, such that the particular machine becomes a means for implementing the functions specified in the flowcharts' operations. These program code instructions may also be stored in a computer-readable storage medium that can direct a computer, a processor, or other programmable apparatus to function in a particular manner to thereby generate a particular machine or particular article of manufacture. The instructions stored in the computer-readable storage medium may produce an article of manufacture, where the article of manufacture becomes a means for implementing the functions specified in the flowcharts' operation(s). The program code instructions may be retrieved from a computer-readable storage medium and loaded into a computer, processor, or other programmable apparatus to configure the computer, processor, or other programmable apparatus to execute operations to be performed on or by the computer, processor, or other programmable apparatus. Retrieval, loading, and execution of the program code instructions may be performed sequentially such that one instruction is retrieved, loaded, and executed at a time. In some example embodiments, retrieval, loading and/or execution may be performed in parallel such that multiple instructions are retrieved, loaded, and/or executed together or simultaneously. Execution of the program code instructions may produce a computer-implemented process such that the instructions executed by the computer, processor, or other programmable apparatus provide operations for implementing the functions specified in the flowcharts' operations.

Accordingly, the execution of instructions associated with the operations of the flowcharts by a processor, or storage of instructions associated with the blocks or operations of the flowcharts in a computer-readable storage medium, support combinations of operations for performing the specified functions. It will also be understood that one or more operations of the flowcharts, and combinations of blocks or operations in the flowcharts, may be implemented by special purpose hardware-based computer systems and/or processors which perform the specified functions (e.g., field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), or combinations of special purpose hardware and program code instructions.

To support real-time locating of tags (and the products to which the tag is affixed), tags may be configured to provide locating signals (e.g., status signals) that may be received, for example, by configurable monitoring devices configured as locating nodes. Indications of the locating signals may be provided to the monitoring system manager 256 for analysis to determine the location of the tags within the retail environment. Upon determining the location of a tag, the monitoring system manager 256 may be configured to output the location of the tag on a map displayed via the user interface 258 as shown for example in FIG. 13.

Returning to the discussion of FIG. 3, in addition to simply outputting the location of the tag to the user interface 258, the monitoring system manager 256 may be configured to consider the location information of a tag with respect to defined rules, alarm conditions, and alarm responses. In this regard, zones of interest within a retail environment may be defined, and when the monitoring system manager 256 determines that a tag has entered a zone of interest security functionality, such as an alarm response, may be implemented. For example, store personnel may wish to define an alarm condition when products enter the restroom area 150 of FIG. 3. As such, a zone of interest may be defined for the restroom area 150. Accordingly, when the monitoring system manager 256 determines that a tag has entered the restroom area, an alarm signal or message may be generated, and an alarm response may be implemented sounding an alarm. The alarm signal or message may be sent to the tag, and an alarm on the tag may be activated. Additionally or alternatively, a notification may be provided to store personnel, via for example, a mobile communications terminal and/or a remote alarm may be activated. Further, zones of interest may be defined with respect a variety of areas within the retail environment (e.g., the stock room, point of sale, fitting room, etc.). Additionally, zone-based functionality profiles can be used by the tags. Like the more generic functionality profiles discussed above, zone-based functionality profiles can be stored and accessed locally within the tag and/or at a network entity, such as monitoring system manager 256. The zone-based functionality profile can include instructions and other commands that are specific to a particular location zone of the given space.

For example, a location zone of interest may also be associated with additional parameters, such as a time interval or duration, which may be included in the tag's zone-based functionality profile for the location zone. A customer, for example, may be permitted to bring an article with a tag into the fitting room 130, but only for a threshold duration of time. Store personnel may, for example, wish to set a thirty minute duration for the fitting room. Accordingly, the monitoring system manager 256 may be configured to define a duration of time, such as thirty minutes, for a zone of interest. The monitoring system manager 256 may be configured to implement a timer based on the threshold duration. The timer may continue to run while the tag is located within the zone of interest and, when the time reaches the threshold, an event signal can be generated. The event signal, for example, may include an alarm instruction and be based on the zone-based functionality profile. The alarm instruction can be executed, causing an alarm signal or alarm message (e.g., an automatically generated e-mail to a user device, etc.) to be generated and transmitted by and/or to the monitoring system manager 256 and/or tag. In some embodiments, the event signal can include other types of instructions and/or other data may not include or initiate an alarm signal. For example, the event signal can comprise data that indicates the tag's, includes tag location information, causes the tag's or other device's light(s) to illuminate, cause another network device (such as a closed circuit video camera) to flag data as relevant, and/or any other type of data that can cause any other type of desired response. For example, the event signal can cause the monitoring system manager 256 to determine that the tag has moved out of the zone of interest (such as a fitting room) and, in response, the monitoring system manager 256 and/or the tag may be configured to reset the timer. In this manner, the monitoring system can implement a delay before alarming; thereby giving the customer time to try on an article of clothing before determining that a suspicious event may have occurred or be occurring.

Locating a tag may also allow for tracking the movement of a tag and the associated product through the store. Tracking the movement of the product may provide inventory, security, and marketing functionality. With respect to security functionality, it has been determined that many experienced shoplifters move about a store in a particular manner. Based on the location information determined for a tag, the movement of a product may be tracked by the monitoring system manager 256 and a movement profile may be generated and compared to suspicious activity movement profiles. If a match is identified, a notification may be provided to a manager, security guard, or the like via a mobile communications terminal to investigate the situation. Further, according to some example embodiments, the monitoring system manager 256 may have configured other tags, or may signal (e.g., send alarm instructions to) other tags on nearby devices to alarm when a match is identified to, for example, assist in locating the shoplifter. Adjacent tags could then provide an alarming pattern that “follows” a would-be shoplifter around or through the retail environment.

Additionally, the monitoring system manager 256 and/or other network entity may be configured to interface, via a network connection or the like, with customer information terminals 195 to support security functionality. Customer information terminals 195 may be computing devices including a display and audio output capabilities (e.g., speaker, speaker driver, etc.). A customer information terminal may be located at strategic security locations such as exits and entrances. The monitoring system manager 256 may be configured to interface with the customer information terminals 195, via for example a network connection, to provide output to customers and would-be shoplifters. For example, a customer information terminal and a movable video camera may be located at the exit of a retail environment. The moveable video camera may be controlled by the monitoring system manager 256. When the monitoring system manager 256 determines that a tag has moved into a zone of interest defined near the exit, the movable camera may move to capture the image of the individual carrying the tag (and the associated product). The video captured by the camera may be displayed on the customer information terminal to indicate to the shoplifter that they are being recorded and thereby have a deterrent effect. In addition, in some embodiments, the store's background music system may be quieted or muted and/or other noise overcoming strategies may be implemented, in response to the monitoring system 256 determining that a tag has moved into a zone of interest and/or entered an alarm state.

In a similar application involving customer information terminals, tags entering a store may be considered. For example, if the monitoring system manager 256 determines that a tag has entered the store through the front entrance, the monitoring system manager 256 may be configured to cause the customer information terminal to either visually and/or audibly direct the customer to the customer service desk for product returns.

In addition to configurable monitoring devices being configured as EAS gate nodes, configurable monitoring devices may also be configured to operate as gate nodes via the locating functionality described above or based on a determination that a tag is within range of a gate node's ping signal. In some example embodiments, a gate node may detect the proximity of a tag by receiving communications from the tag in response to a ping signal provided by the gate node. To avoid situations where a gate node detects the proximity of a tag that is properly within the retail environment, and is not located so close to the exit so as to indicate that the attached article is being stolen, guard nodes may be implemented. The guard nodes may be located near an exit and may be configured to prevent tags within the store from improperly associating themselves to the gate nodes and causing erroneous alarming.

A gate node may be connected to mains power, and may include a battery to support operation when mains power is lost. The gate node may transmit regular ping signals, which include the gate node's unique identifier, and listen for responses from tags that are within range. If a tag detects that the strongest ping signal that the tag is receiving is from a gate node, the tag may transmit a message including the tag's unique identifier to the gate node and the tag may enter a first alarm mode. In this regard, a tag may maintain a list of identifiers for gate nodes to determine when a signal is being detected from a gate node.

In the first alarm mode, the tag may be configured to emit an audible chirp every second (or other predetermined time period), providing a deterrent indication to an individual holding the article to which the tag is affixed. While in the first alarm mode, the tag may continue to listen for ping signals from other nodes, and if a ping signal from a non-gate node becomes the strongest ping signal detected by the tag, the tag may transfer from the first alarm mode to a normal mode (e.g., since the tag has apparently moved away from the gate node and the exit). However, if the strongest received ping signal continues to be the signal from the gate node, and the received signal strength passes a predefined gate node signal strength threshold, the tag may transfer into a second alarm mode. In the second alarm mode, the tag may be configured to alarm continuously. Again, the tag may continue to listen for ping signals from other nodes, and if a ping signal from a non-gate node becomes the strongest ping signal detected by the tag, the tag may transfer from the second alarm mode to the first alarm mode or a normal mode (e.g., since the tag has apparently moved away from the gate node and the exit).

As mentioned above, tag tracking may also provide marketing benefits. Movement of tags associated with particular products may logged by the monitoring system manager 256 over a period time, and the monitoring system manager 256 may be configured identify customer trends by aggregating the data. Using the trends, product layout within a store may be modified to increase sales. The customer trends may reveal purchasing patterns, customer traffic patterns, in-store dead-spots, and the like, which may not have otherwise been identified. Further, information regarding the effects of moving product display racks and associated products within the store may be determined based on the movement of customers and the sales of the associated products.

With respect to additional marketing functionality, since the location of a product can be determined, the monitoring system and the monitoring system manager 256 may be configured to make suggestions to customers for purchasing other products. For example, movement of a tag associated with a dress shirt may be detected, and the movement may be tracked to a sales area for neck ties. The monitoring system manager 256 may be configured to consult a database to suggest a neck tie that matches the shirt, based on attribute information associated with the tag affixed to and associated with the shirt. To implement the suggestion procedure, the monitoring system manager 256 may interface with a customer information terminal 195 located near the neck tie retail area.

Example marketing compliance applications and functionality may also be implemented by the monitoring system. In this regard, some retail stores may have requirements for how the store should be set (i.e., where particular products should be located within the store). A floor plan or set design may be followed for setting the store. To ensure that a store complies with a given set design, the location of tags may be queried. Tags associated with particular products may be checked against a stored, electronic set design to ensure that the products are located in the correct locations within the store. For example, the location of the winter sweaters within the store may be queried, to determine if the winter sweaters have been located on a table at the entrance of the store in accordance with a set design. The results of the query may be compared to the set design to determine whether the store complies in this regard.

Another example marketing application may be automatic price modification. In this regard, a tag may be configured to change the price of a product (or suggest the change of a price for the product) based on various factors. A tag may be configured to implement a timer and determine, for example, a “time on the sales floor” value. If the time on the sales floor value reaches a threshold level, the price for the article that the tag is associated with may be modified. To support this functionality, according to some example embodiments, when the tag is commissioned or is placed on the sales floor, a time and date threshold for the article may be defined. For example, a thirty day threshold may be set. When thirty days has passed, as determined by the tag or the monitoring terminal, the tag may be configured to, or the monitoring terminal may direct the tag to, modify or suggest modification of the price of the article. Additionally, or alternatively, the tag may alarm when the threshold is reached indicating to sales personnel that the tag should be moved to the clearance rack. The price may also be modified based on the sales of related products. For example, if sales of a particular product have been increasing, the price could be raised.

Another example marketing application may involve a tag being associated with, or assigned to, a specific customer (customer tag). In this regard, the customer tag may be permanently assigned to a customer (e.g., the customer leaves the retail store with the tag), or the tag may be temporarily assigned to a customer upon visiting the retail store (e.g., the customer returns the tag upon leaving the store). The tag and/or the monitoring system may be configured to store profile information about the customer in association with the tag. In this regard, the customer's profile information may be stored on the tag or at the monitoring terminal. In some example embodiments, the tag may be configured to wirelessly interface with a cell phone to retrieve profile information. The profile information may include the customer's name, age, gender, home address, phone numbers, credit card numbers, credit information, purchasing preferences, and the like.

The profile information may also include information indicative of a customer loyalty level. In this regard, based on the customer loyalty level, various loyalty program features may or may not be available to the customer. For example, tags associated with a customer having a particular customer loyalty level may be configured to allow a customer to use the self check out lane at a retail store, open a display case without the assistance of store personnel, open a security device that protects a product, purchase a product using pre-stored credit card information, de-commission security tags associated with a purchased product, and the like.

The customer tag may also be configured to provide for tracking and positioning the customer in the store. Further, the customer tag may be configured to receive, for example via the monitoring system, a product list (e.g., a grocery list), and the customer tag may assist the customer in locating the products on the list. The product list may be provided to the monitoring system via, for example, the monitoring system's internet connection. In this regards, the product list may have been created remotely from, e.g., the user's home computer running a web application, cellular phone, and/or any other remote device. For example, the monitoring system can provide real-time inventory data associated with a particular store and the remote device can enable the user to reserve one or more particular products for pick-up and/or purchase at the store.

According to various example embodiments, a tag, such as a tag configured for security functionality, marketing functionality, inventory functionality, or as a key (e.g., a manager's key) may be configured to provide for assisting an individual with locating another tag and the associated product. In this regard, a locator tag, in the possession of an individual attempting to locate a target tag, may be configured to provide a user with an indication of the where the target tag is located or how far the target tag is away from the locator tag. The locating tag and/or the target tag may be configured to provide audible and/or visual feedback to the user to indicate the location of the target tag. For example, the locating tag and/or the target tag may be configured to output audible beeps or clicks (similar to the sound of a Geiger counter), the frequency of which may increase as the locating tag moves closer to the target tag. The output may be based on locating that is performed via the ping nodes described above, or via signal strength detection directly between the locating tag and the target tag.

As mentioned above, tag location assistance functionality, such as the Geiger counter-type functionality described above may be implemented in a number of applications. In another example, a locator tag, such as a tag configured as a manager's key, may be used to locate tags that have reached a threshold battery charge level. A tag with a low battery level, where the tag includes battery monitoring circuitry (e.g., via a processor) may be configured to alarm to indicate the low battery condition. Additionally, a tag with low battery level may be configured to provide a wireless signal indicating the low battery condition. The wireless signal may be detected by the locator tag and the locator tag may be configured to provide an indication of the location of the low battery level to a user of the locator tag. According to some example embodiments, tags near a low battery level tag may be configured to relay the low battery level indication via a wireless signal to neighboring tags, and the neighboring tags may report the low battery power condition to provide for locating the low battery level tag, even after the low battery level tag can no longer communicate.

With respect to inventory applications, the monitoring system manager 256 may be configured to track inventory generally, as well as track the location of inventory via tags. The monitoring system manager 256 may be configured to track inventory by monitoring and logging status signals provided by the tags, in addition to commissioning and decommissioning activities.

The monitoring system manager 256 may also assist in locating particular inventory to, for example, assist in a sale. The monitoring system manager 256 may be configured to receive requests for a particular product (e.g., brown slacks, waist size 32, in-seam length 30) and communicate with tags that meet the criteria of the request to cause the tags to alarm. An alarm in this regard, may be a subtle, soft audio alarm that would assist a sales person and a customer in locating the desired product.

Another example inventory application may involve the monitoring system's interaction with totes. A tote may be a shipping container, such as a plastic shipping container, that can hold smaller, and often higher value, products, such as pharmaceuticals, makeup, batteries, film, jewelry, and the like. Totes may be loaded at a warehouse, or another store, and shipped to a destination store. A tote may include a mechanical locking mechanism that requires, for example, a magnetic key or mechanical interaction with a key, to open the tote and access the products inside the tote. In some example embodiments, a tote may also include a configurable monitoring device configured as a tote tag.

A tote tag may be used for locating the tote, similar to the manners described above. A tote tag may also be configured to detect the presence of tags, and associated products within the tote. In this manner, a tote tag may operate similar to a node, with respect to the tags stored within the tote. In some embodiments, the tote tag may maintain an inventory of the products within the tote by virtue of communication with each respective tagged product in the tote and the extraction and/or storage of product related information associated with each respective tag. As the tote moves from the warehouse to a destination store, the inventory information may be verified at both locations to ensure that the contents of the tote have not been tampered with or stolen.

The tote tag may also interface with a key, such as a manager's key. In this regard, the key may be enabled to deactivate security functionality of the tote tag, such as alarming. The tote tag may be configured to alarm if an attempt is made to open the tote without the key or with an unapproved key. The tote tag may also alarm if communication is lost with the tag of one or more of the tagged products within the tote. A key may be configured to interface with the tote tag, either directly or through the monitoring system, to deactivate, or activate, the tote tag's alarming functionality. The monitoring system, or the tote tag may be configured to manage access to the contents of the tote by, for example, maintaining a list identifying the particular keys or the types of keys (e.g., high level manager's key) that have been enabled to open the tote. In the event that an unapproved key is used, or is attempted to be used, for opening a tote, the tote tag may alarm.

Based on the forgoing, FIG. 14 illustrates an example method for managing configurable monitoring devices in accordance with various example embodiments of the present invention that may be implemented by the monitoring system manager 256. At 1400, configuration information for a configurable monitoring device may be generated that defines a role for the target configurable monitoring device. Specific parameters such as rules, alarming conditions, alarming responses, attribute information, and the like may be defined and included in the configuration information. At 1410, the configuration information may be provided to a target configurable monitoring device via, for example, a wireless network connection. The target configurable monitoring device may receive and store the configuration information and subsequently operate within the role defined by the configuration information. If the configuration information defines the role of a node or a gateway, role-based communications may be received from, and transmitted to, the node or gateway during the operation of the configurable monitoring device as a node or gateway.

If the configuration information defines the role of a tag, a commission signal may subsequently be provided to commission the tag at 1430. Subsequently, role-based communications may be received from, and transmitted to, the tag at 1440 during the operation of the configurable monitoring device as a tag. The tag may later be provided a decommission signal to decommission the tag 1450. Once decommissioned, the tag may await re-commissioning at 1430 by providing another commission signal.

FIGS. 13 and 15-17 illustrate example windows for displaying aspects of a user interface that may be implemented on a monitoring terminal. FIG. 13 illustrates an example window 1300 displaying a rendered representation of a monitoring system. The tag map 1310 illustrates an example sales floor for a retail environment. The tag map 1310 includes location-based representations of nodes (referred to as “hubs”) that are positioned at various locations throughout the sales floor. The nodes are uniquely identified by a label (e.g., “Hub 14”) followed by an associated tag count in parentheses, indicating the number of nearby tags (or tags within range of the signals (e.g., ping signals) being provided by the nodes. When the monitoring terminal determines, based on communications from the tags or the nodes, that a tag has moved, such that the tag is disassociated with a first node and newly associated with a second node, the tag count may be decremented at first node and incremented at the second node. The tag map 1310 also depicts POS nodes (e.g., “Pos2”, “Pos 3”, etc.). Near the entry area a gate node, “Gate1”, is depicted which is configured to protect the entry/exit area. The tag map 1310 also includes a gateway node, “Root0” configured to interface with an external network, to which the monitoring terminal may be connected.

The example window 1300 also includes a tag tree 1320. The tag tree 1320 includes a listing of the nodes that are members of the monitoring system. A node that has tags within range, such as Hub16, may be expanded to display entries for each tag that is currently within range of, or otherwise associated with the node. As tags move form node to node, the tag tree 1320 may be updated to show the current associations between the tags and the nodes. The tag tree 1320 also includes a status legend 1321 for describing the status of the tags or nodes. In this regard, the monitoring terminal may be configured to highlight, for example, an alarming tag red, an unresponsive tag purple, and a low battery tag yellow, or some other color/highlighting scheme may be employed.

The example window 1300 also includes an event log 1330. The information depicted in the event log may be linked to the currently selected item in the tag tree 1320. As such, event information for the selected tag may be displayed. A time stamp may be associated with each event. Example events may include tag movement between node events, alarm events, failed communications events, tamper events, low battery events, etc.

FIG. 15 illustrates an example tag information window 1500 for attribute information associated with a tag or node. The example tag information window 1500 depicts attribute information for a tag. An image 1510 of an article to which the associated tag is affixed may be provided in the example tag information window 1500. Further, additional attribute information may be provided in the tabular area 1520, such as the tag address, the current battery level, the currently associated hub, a description of the affixed article, a stock-keeping unit (SKU) value, the time/date of the last report from the tag, the time/date of the last transition between nodes for the tag, the time/date of the last commission of the tag, the time/date of the last decommission of the tag, and the like.

FIG. 16 illustrates an example hub information window 1600. The hub information window 1600 may include a tabular area 1610 that includes information about the hub (or node). Example hub attribute information may include the hub address, the hub label or description, the battery level for the hub, the current number of associated tags, the date/time that the hub last reported, for example, to the monitoring terminal, and the like.

FIG. 17 illustrates an example battery level window 1700 for a tag. The battery level window may include a graphical representation of the past and current battery level on a line graph. The graph may be provided with respect to voltage on the y-axis, and time on the x-axis. A threshold battery level 1730 may also be included on the graph, which may indicate the battery level that would place the tag in a low battery status.

Many of applications and functionality described herein utilize wireless communications between the monitoring terminal 62 and the configurable monitoring devices. In addition to, or in lieu of, communicating with individual tags via this air interface, the communications interface 252 of the monitoring terminal 62 may communicate with a separate bridge device to forward and receive information and data to and from configurable monitoring devices. The bridge device may operate unilaterally or in conjunction with the monitoring terminal 62 to manage configurable monitoring devices. The bridge device, which may be a hand-held scanner-type device, can be configured to operate in one of two communication modes to interface with tags affixed to retail products for security, inventory, and other purposes. In a first communication mode, the bridge device is configured to communicate with tags that are configured for RFID type communications. For example, the tags and the bridge device may be configured to communicate in accordance with the Generation II Ultra High Frequency (UHF) RFID standards. In a second communication mode, the bridge device is configured to communicate with tags using a protocol built on the IEEE 802.15.4 standard, such as ZigBee or a proprietary protocol built on IEEE 802.15.4. To support the dual modes of communication, the bridge device may include a transmitter/receiver and an antenna configured to support IEEE 802.15.4, as well as, a modulator/demodulator, and possibly a separate antenna, to support RFID communications. According to some example embodiments, the bridge device may include a configurable monitoring device configured to operate a bridge device. Via seamless transition between the two communications modes, a single, possibly hand-held, bridge device can operate as a tag reader, and may be used to communicate with disparate types of tags. Communications with the tags may be performed for a variety of reasons, such as for counting inventory, price checking, tag firmware upgrades, tag encoding, and the like.

The flexible nature of the configurable monitoring device and the monitoring system of embodiments of the present invention may enable dynamic configuration of configurable monitoring devices within a network to introduce robust capabilities for providing services and functionality and, for providing updates to existing capabilities with updated configuration information. Embodiments of the present invention may be implemented by various means, such as hardware, firmware, processor, circuitry and/or other device associated with execution of software including one or more computer program instructions. For example, one or more of the procedures or activities described above may be embodied by computer program instructions. In this regard, the computer program instructions which embody the procedures or activities described above may be stored by a memory device of an apparatus employing an embodiment of the present invention and executed by a processor in the apparatus. As will be appreciated, any such computer program instructions may be loaded onto a computer or other programmable apparatus (e.g., hardware) to produce a machine, such that the resulting computer or other programmable apparatus embody means for implementing the functions specified in the corresponding procedure or activity. These computer program instructions may also be stored in a computer-readable storage memory (as opposed to a computer-readable transmission medium such as a carrier wave or electromagnetic signal) that may direct a computer or other programmable apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture the execution of which implements the function specified in the corresponding procedure or activity. The computer program instructions may also be loaded onto a computer or other programmable apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the corresponding procedure or activity described above.

Also, the terms “substantially,” “about,” “approximately” or the like as used herein are intended to reflect variances in a value or relationship that may be due to various factors such as the effects of environmental conditions, common error tolerances, or the like. It should further be understood that although some values or other relationships may be expressed herein without a modifier, these values or other relationships may also be exact or may include a degree of variation due to various factors such as the effects of environmental conditions, common error tolerances, or the like.

Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these inventions pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the inventions are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of this disclosure. Moreover, although the foregoing descriptions and the associated drawings describe exemplary embodiments in the context of certain exemplary combinations of elements and/or functions, it should be appreciated that different combinations of elements and/or functions may be provided by alternative embodiments without departing from the scope of this disclosure. In this regard, for example, different combinations of elements and/or functions than those explicitly described above are also contemplated as may be set forth in some of this disclosure. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims

1-41. (canceled)

42. A system for tracking articles comprising:

a first ping node configured to: transmit a first ping signal having a first ping signal strength; receive a first signal power modification instruction; and in response to receiving the first signal power modification instruction, transmit a location signal having a location signal strength that is different than the first ping signal strength;
a second ping node configured to transmit a second ping signal having a second ping signal strength; and
a monitoring device configured for attachment to an article, the monitoring device comprising a processor, the processor configured to: receive the first ping signal from the first ping node; receive the second ping signal from the second ping node; receive the location signal from the first ping node; and determine location information relating to the monitoring device based at least in part on the location signal.

43. (canceled)

44. The system of 42, wherein the processor is further configured to:

send the first signal power modification instruction for instructing the first ping node to lower the first ping signal strength to a minimum threshold and transmit the location signal one or more times starting at the minimum threshold and increasing incrementally to the location signal strength; and
send a second signal power modification instruction for instructing the second ping node to lower the second ping signal strength to the minimum threshold and transmit a second location signal one or more times starting at the minimum threshold and increasing incrementally.

45. The system of claim 42, wherein the processor is further configured to:

send the first signal power modification instruction for instructing the first ping node raise the first ping signal strength to a maximum threshold and transmit the location signal one or more times starting at the maximum threshold and decreasing incrementally; and
send a second signal power modification instruction for instructing the second ping node to increase the second ping signal strength to the maximum threshold and transmit a second location signal one or more times starting at the maximum threshold and decreasing incrementally.

46. The system of claim 42, wherein:

the first ping node is configured to transmit the first ping signal at a first range, wherein the first range includes a first retail shelving unit; and
the second ping node is configured to transmit the second ping signal at a second range, wherein the second range includes a second retail shelving unit.

47. The system of claim 46, wherein the first range and the second range are configured to be consistent with a coordinated, multi-ping node gradient of coverage density.

48. A method for tracking articles using a monitoring device affixed to an article comprising:

receiving, from a first ping node, a first ping signal having a first ping signal strength;
receiving, from a second ping node, a second ping signal having a second ping signal strength; and
receiving, from the first ping node, a location signal having a location signal strength that is different than the first ping signal strength; and
determining location information relating to the article based at least in part on the location signal.

49. (canceled)

50. The method of claim 48 further comprising:

sending a first signal power modification instruction for instructing the first ping node to lower the first ping signal strength to a minimum threshold and transmit the location signal one or more times starting at the minimum threshold and increasing incrementally to the location signal strength;
sending a second signal power modification instruction for instructing the second ping node to lower the second ping signal strength to the minimum threshold and transmit a second location signal one or more times starting at the minimum threshold and increasing incrementally.

51. The method of claim 48 further comprising:

sending a first signal power modification instruction for instructing the first ping node to increase the first ping signal strength to a maximum threshold and transmit the location signal one or more times starting at the maximum threshold and decreasing incrementally to the location signal strength;
sending a second signal power modification instruction for instructing the second ping node to increase the second ping signal strength to a maximum threshold and transmit a second location signal one or more times starting at the maximum threshold and decreasing incrementally.

52. The method of claim 48 further comprising:

transmitting, from the first ping node, the first ping signal within a first range, wherein the first range includes a first retail shelving unit; and
transmitting, from the second ping node, the second ping signal within a second range, wherein the second range includes a second retail shelving unit.

53. The method of claim 52, further comprising the first ping node and the second ping node receiving configuration information that causes the first range and the second range to be consistent with a coordinated, multi-ping node gradient of coverage density.

54. A computer program product for position tracking of an article, the computer program product comprising:

a computer-readable storage medium having computer readable program code embodied in said medium, said computer-readable program code to: receive, from a first ping node, a first ping signal having a first ping signal strength; receive, from a second ping node, a second ping signal having a second ping signal strength; receive, from the first ping node, a location signal having a location signal strength that is different than the first ping signal strength; attach, using an attachment mechanism, to an article; and determine location information relating to the article based at least in part on the location signal.

55. The a computer-readable storage medium of claim 54 further comprising computer-readable program code to:

send a first signal power modification instruction for instructing the first ping node to lower the first ping signal strength to a minimum threshold and transmit the location signal one or more times starting at the minimum threshold and increasing incrementally to the location signal strength;
send a second signal power modification instruction for instructing the second ping node to lower the second ping signal strength to the minimum threshold and transmit a second location signal one or more times starting at the minimum threshold and increasing incrementally.

56. The a computer-readable storage medium of claim 54 further comprising computer-readable program code to:

send a first signal power modification instruction for instructing the first ping node to increase the first ping signal strength to a maximum threshold and transmit the location signal one or more times starting at the maximum threshold and decreasing incrementally to the location signal strength;
send a second signal power modification instruction for instructing the second ping node to increase the second ping signal strength to a maximum threshold and transmit a second location signal one or more times starting at the maximum threshold and decreasing incrementally.

57. The system of claim 42, further comprising a network entity that is configured to transmit the first signal power modification instruction.

58. The system of claim 57, wherein the network entity is configured to transmit the first signal power modification instruction in response to the network entity determining a triggering event has occurred.

59. The system of claim 57, wherein the network entity is further configured to transmit a second signal power modification instruction.

60. The system of claim 59, wherein the network entity is configured to transmit the second signal power modification instruction in response to the network entity determining a triggering event has occurred.

61. The system of claim 59, wherein the first signal power modification instruction is the same as the second signal power modification instruction.

62. The system of claim 57, wherein the network entity is configured to determine efficient pathways for communicating messages from the monitoring device to various entities within a network.

63. The method of claim 48 further comprising transmitting a first signal power modification instruction from a network entity, wherein the first signal power modification causes the first ping node to transmit the location signal.

64. The method of claim 63, wherein transmitting the first signal power modification instruction occurs in response to the network entity determining a triggering event has occurred.

65. The method of claim 63 further comprising transmitting a second signal power modification instruction from the network entity.

66. The method of claim 65, wherein transmitting the second signal power modification instruction occurs in response to the network entity determining a triggering event has occurred.

67. The method of claim 65, wherein transmitting the first signal power modification instruction and transmitting the second signal power modification instruction includes transmitting a single instruction that is received by both the first ping node and the second ping node.

Patent History
Publication number: 20110068906
Type: Application
Filed: Dec 11, 2009
Publication Date: Mar 24, 2011
Applicant: Checkpoint Systems, Inc. (Thorofare, NJ)
Inventors: Gary Mark Shafer (Charlotte, NC), Michael Mercier (Charlotte, NC)
Application Number: 12/636,564
Classifications
Current U.S. Class: Interrogation Signal Detail (340/10.3)
International Classification: G06K 7/01 (20060101);