Method, apparatus, and computer program product example embodiments enhance wireless communications device discovery processes. In an example embodiment, a method includes detecting a wireless device discovery message at an apparatus, and in response to detecting the wireless device discovery message, temporarily tuning, by the apparatus, device discovery parameters to increase a rate of detecting wireless device discovery messages.

Patent
   RE47488
Priority
Jan 23 2013
Filed
Sep 08 2016
Issued
Jul 02 2019
Expiry
Jan 23 2033
Assg.orig
Entity
Large
0
45
EXPIRED
1. A method, comprising:
detecting a wireless device discovery message at an apparatus; and
in response to detecting the wireless device discovery message, temporarily tuning, by the apparatus, device discovery parameters to increase a rate of detecting wireless device discovery messages;
wherein the apparatus tunes tuning the device discovery parameters, by the apparatus, to increase the rate of detecting wireless device discovery messages by comprises at least one of reducing an inquiry scan interval, increasing an inquiry scan window duration, and or performing interlaced inquiry scanning.
11. A computer program product comprising computer executable program code recorded on a computer readable, non-transitory storage medium, the computer executable program code comprising:
code for detecting a wireless device discovery message at an apparatus; and
code for, in response to detecting the wireless device discovery message, temporarily tuning, by the apparatus, device discovery parameters to increase a rate of detecting wireless device discovery messages;
wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages by at least one of reducing an inquiry scan interval, increasing an inquiry scan window duration, and performing interlaced inquiry scanning.
6. An apparatus, comprising:
at least one processor;
at least one memory including computer program code;
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to:
detect a wireless device discovery message; and
in response to detecting the wireless device discovery message, temporarily tune device discovery parameters to increase a rate of detecting wireless device discovery messages;
wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages by at least one of reducing an inquiry scan interval, increasing an inquiry scan window duration, and performing interlaced inquiry scanning.
2. The method of claim 1, further comprising:
determining, by the apparatus, that the wireless device discovery message meets a predefined criterion to temporarily tune the device discovery parameters to increase the rate of detecting wireless device discovery messages;
wherein the predefined criterion comprises at least one of a received signal strength indication of the wireless device discovery message exceeding a threshold value, an interval since a previous increase in the rate of detecting a wireless device discovery message is greater than a first threshold interval, an interval since detecting a previous wireless device discovery message is less than a second threshold duration, and a predetermined number of previously detected one or more wireless device discovery messages is less than a threshold number.
0. 3. The method of claim 1, wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages for a predetermined time period after receipt of the wireless device discovery message.
4. The method of claim 1, further comprising:
transmitting, by the apparatus, in response to detecting the wireless device discovery message, one or more wireless response messages usable for a wireless device receiving the one or more wireless response messages, to estimate a distance to the apparatus, the one or more wireless response messages including at least one of a received signal strength indication of the wireless device discovery message and an indication that the apparatus and the wireless device are in close proximity with each other.
5. The method of claim 1, further comprising:
decreasing, by the apparatus, the rate of detecting the wireless device discovery messages in response to at least one of a received signal strength indication of the wireless device discovery message decreases below a threshold value, an interval since a previous increase in the rate of detecting wireless device discovery messages is less than a first threshold interval, an interval since detecting a previous wireless device discovery message is greater than a second threshold interval, and a predetermined number of previously detected wireless device discovery messages is greater than a threshold number.
7. The apparatus of claim 6, further An apparatus, comprising:
at least one processor;
at least one memory including computer program code;
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to:
detect a wireless device discovery message; and
determine that the wireless device discovery message meets a predefined criterion to in response to detecting the wireless device discovery message, temporarily tune the device discovery parameters to increase the rate of detecting wireless device discovery messages;
wherein the predefined criterion comprises at least one of a received signal strength indication of the wireless device discovery message exceeding a threshold value, an interval since a previous increase in the rate of detecting a wireless device discovery message is greater than a first threshold interval, an interval since detecting a previous wireless device discovery message is less than a second threshold duration, and a predetermined number of previously detected one or more wireless device discovery messages is less than a threshold number tuning the device discovery parameters, by the apparatus, to increase the rate of detecting wireless device discovery messages comprises at least one of reducing an inquiry scan interval, increasing an inquiry scan window duration, or performing interlaced inquiry scanning.
8. The apparatus of claim 6, wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages for a predetermined time period after receipt of the wireless device discovery message.
0. 9. The apparatus of claim 6, further comprising:
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to:
transmit, in response to detecting the wireless device discovery message, one or more wireless response messages usable for a wireless device receiving the one or more wireless response messages, to estimate a distance to the apparatus, the one or more wireless response messages including at least one of a received signal strength indication of the wireless device discovery message and an indication that the apparatus and the wireless device are in close proximity with each other.
10. The apparatus of claim 6, further comprising:
the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus at least to:
decrease the rate of detecting the wireless device discovery messages in response to at least one of a received signal strength indication of the wireless device discovery message decreases below a threshold value, an interval since a previous increase in the rate of detecting wireless device discovery messages is less than a first threshold interval, an interval since detecting a previous wireless device discovery message is greater than a second threshold interval, and a predetermined number of previously detected wireless device discovery messages is greater than a threshold number.
12. The computer program product of claim 11, further comprising:
code for determining, by the apparatus, that the wireless device discovery message meets a predefined criterion to temporarily tune the device discovery parameters to increase the rate of detecting wireless device discovery messages;
wherein the predefined criterion comprises at least one of a received signal strength indication of the wireless device discovery message exceeding a threshold value, an interval since a previous increase in the rate of detecting a wireless device discovery message is greater than a first threshold interval, an interval since detecting a previous wireless device discovery message is less than a second threshold duration, and a predetermined number of previously detected one or more wireless device discovery messages is less than a threshold number.
13. The A computer program product of claim 11, wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages for a predetermined time period after receipt of the wireless device discovery message comprising computer executable program code recorded on a computer readable, non-transitory storage medium, the computer executable program code comprising:
code for detecting a wireless device discovery message at an apparatus; and
code for, in response to detecting the wireless device discovery message, temporarily tuning, by the apparatus, device discovery parameters to increase a rate of detecting wireless device discovery messages;
code for tuning the device discovery parameters, by the apparatus, to increase the rate of detecting wireless device discovery messages comprises at least one of reducing an inquiry scan interval, increasing an inquiry scan window duration, or performing interlaced inquiry scanning.
14. The computer program product of claim 11, further comprising:
code for transmitting, by the apparatus, in response to detecting the wireless device discovery message, one or more wireless response messages usable for a wireless device receiving the one or more wireless response messages, to estimate a distance to the apparatus, the one or more wireless response messages including at least one of a received signal strength indication of the wireless device discovery message and an indication that the apparatus and the wireless device are in close proximity with each other.
0. 15. The computer program product of claim 11, further comprising:
code for decreasing, by the apparatus, the rate of detecting the wireless device discovery messages in response to at least one of a received signal strength indication of the wireless device discovery message decreases below a threshold value, an interval since a previous increase in the rate of detecting wireless device discovery messages is less than a first threshold interval, an interval since detecting a previous wireless device discovery message is greater than a second threshold interval, and a predetermined number of previously detected wireless device discovery messages is greater than a threshold number.
0. 16. The computer program product of claim 13, wherein the apparatus tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages for a predetermined time period after receipt of the wireless device discovery message.
0. 17. The computer program product of claim 13, further comprising:
code for transmitting, by the apparatus, in response to detecting the wireless device discovery message, one or more wireless response messages usable for a wireless device receiving the one or more wireless response messages, to estimate a distance to the apparatus, the one or more wireless response messages including at least one of a received signal strength indication of the wireless device discovery message and an indication that the apparatus and the wireless device are in close proximity with each other.
0. 18. The computer program product of claim 13, further comprising:
code for decreasing, by the apparatus, the rate of detecting the wireless device discovery messages in response to at least one of a received signal strength indication of the wireless device discovery message decreases below a threshold value, an interval since a previous increase in the rate of detecting wireless device discovery messages is less than a first threshold interval, an interval since detecting a previous wireless device discovery message is greater than a second threshold interval, and a predetermined number of previously detected wireless device discovery messages is greater than a threshold number.

For example, if Tx Power Level=+4 (dBm) and the RSSI on the inquiry response packet is −60 (dBm) then the total pathloss is +4−(−60)=+64 dB. If a second inquiry response packet were received at −40 dBm with a Tx Power Level data=+15 dBm the resulting pathloss would be +55 dB. An application may use these pathloss values to choose which device it thinks might be closer (the one with the lower pathloss value).

Unfortunately, due to fading and varying antenna, circuit, and chip characteristics, these resulting pathloss values may have some uncertainty. Some of the uncertainty (for example, due to fading) may be able to be alleviated if multiple inquiry response packets are received from the same device.

6. Bluetooth™ Host Controller Interface

The Bluetooth™ radio in a device may include the host controller interface that provides a command interface between the host application in the device and the link layer of the Bluetooth™ radio, also referred to as the controller, to enable access to hardware status and control registers of the Bluetooth™ radio.

The host controller interface (HCI) is described in the Bluetooth™ Core Specification. The Host will receive asynchronous notifications of HCI events from Host Controller Transport Layer. HCI events are used for notifying the Host when something occurs. When the Host discovers that an event has occurred, it will then parse the received event packet to determine which event occurred. The commands and events are sent between the Host and the Controller. These are grouped into logical groups by function.

The HCI provides a command interface between the host application in a device and the Bluetooth™ link layer, provides access to hardware status and control registers of the Bluetooth™ radio, and provides a uniform method of accessing the Bluetooth™ baseband capabilities.

Discovery Phase HCI Commands and Events

The device discovery group of commands and events allow a device to discover other devices in the surrounding area. The host controller interface includes the standard HCI Inquiry Result Event logic and HCI Extended Inquiry Result Event logic that recognizes the receipt of the FHS packet and the following EIR packet, respectively. Some of the HCI commands and events for device discovery are described as follows:

Inquiry Command

The HCI Inquiry command will cause the Bluetooth Controller to enter Inquiry Mode to transmit inquiry packets used to discover other nearby Bluetooth devices.

Inquiry Result Event

HCI Inquiry Result Event:

The inquiry result event indicates that a remote device has responded with an inquiry response (IR), i.e. with an FHS packet, during the current inquiry process. This event will be sent from the Bluetooth™ Controller to the Host as soon as an Inquiry Response from a remote device is received. The event parameters in the HCI inquiry result event include BD_ADDR and Class_of_Device of the remote responding device and Clock_Offset OFFSET(A,B) between the responding device and the inquiring device.

Inquiry Result with RSSI Event

The Inquiry Result with RSSI event indicates that a remote Bluetooth device has responded with an inquiry response (FHS) packet during the current Inquiry process. The event reported to the host includes the BD_ADDR address for the device that responded, the Class of Device for the device, the clock offset between the responding device and the receiving device, and the measured RSSI of the received inquiry response packet in units of dB. This is similar to the inquiry result event, but it includes the RSSI value calculated by the controller.

Extended Inquiry Result Event

HCI Extended Inquiry Result Event:

The extended inquiry result event indicates that another Bluetooth™ device has responded during the current inquiry process with extended inquiry response data. Data received in this event will be sent from the device's Controller to the Host upon reception of an EIR from a remote device. One single extended inquiry response is returned per event. The event reported to the host includes the received signal strength indication (RSSI) measurement and inquiry response data for the device that responded to the latest inquiry. The RSSI parameter is measured during the FHS packet returned by each responding device. If an extended inquiry response packet from the same remote device is correctly received in a later response, another event is generated. The Extended_Inquiry_Response data fields are not interpreted by the controller. The standard HCI Extended Inquiry Result Event logic performs the HCI extended inquiry result event procedure to extract the data from the received extended inquiry response packet and to send this data to the host application. The received EIR data extracted from the packet may be passed unaltered to the host application.

Read Inquiry Response Transmit Power Level Command

This command will read the inquiry response Transmit Power level data, expressed in a field of the EIR packet, indicating the power that was used to transmit the FHS and EIR data packets during the discovery phase.

HCI Write Extended Inquiry Response Command

The Write Extended Inquiry Response command writes the extended inquiry response to be sent to an inquiring device during the extended inquiry response procedure. The write extended inquiry response command will write the data that the device's host wishes to send in the extended inquiry response packet during inquiry response. The FEC_Required command parameter states if forward error correction (FEC) encoding is required. The initial value of the inquiry response data is all zero octets. The controller does not interpret the extended inquiry response data, but passes it on to the baseband medium access control and physical radio for transmission in an EIR packet.

Write Inquiry Transmit Power Level Command

The Write Inquiry Transmit Power Level command is used by the transmitting device to write the transmit power level used to transmit the inquiry data packets.

Connection Phase HCI Commands and Events

Read RSSI Command

After the discovery phase is completed, once a Bluetooth device is connected to another Bluetooth device, the received signal strength indication (RSSI) may be used by a receiving device to monitor the received power level of the data communication packets received over the connection. The RSSI value is calculated by the Bluetooth physical layer, and may be read by the host application through the host controller interface (HCI) Read RSSI command.

The Read RSSI command will read the value of the received signal strength indication (RSSI) for data communication packets received over the connection to another Bluetooth controller. The RSSI value is referenced with respect to a Connection_Handle that identifies the connection and is assigned when the connection is created. The Connection_Handle is used by the Bluetooth controller to determine which set of buffers to use and the logical link over which the data is to be sent.

The RSSI parameter in the Read RSSI command is a signed 8-bit value, and is interpreted as an indication of arriving signal strength at the antenna measured in dBm. This command reads the Received Signal Strength Indication (RSSI) value from the Controller. For a Basic Rate/Enhanced Data Rate (BR/EDR) Controller, a Connection_Handle is used as the Handle command parameter and return parameter. The RSSI parameter returns the difference between the measured Received Signal Strength Indication (RSSI) and the limits of the Golden Receive Power Range for a Connection_Handle to another BR/EDR Controller. The Connection_Handle must be a Connection_Handle for an ACL connection. Any positive RSSI value returned by the Controller indicates how many dB the RSSI is above the upper limit, any negative value indicates how many dB the RSSI is below the lower limit. The value zero indicates that the RSSI is inside the 20 dB-wide Golden Receive Power Range. The accuracy of the dB values will depend on the Bluetooth hardware. The only requirements for the hardware are that the BR/EDR Controller is able to tell whether the RSSI is inside, above or below the Golden Device Power Range. The RSSI measurement compares the received signal power with two threshold levels, which define the Golden Receive Power Range. The lower threshold level corresponds to a received power between −56 dBm and 6 dB above the actual sensitivity of the receiver. The upper threshold level is 20 dB above the lower threshold level to an accuracy of +/−6 dB. The meaning of the RSSI metric is an absolute receiver signal strength value in dBm to ±6 dBm accuracy. If the RSSI cannot be read, the RSSI metric is set to 127. (When the Read_RSSI command has completed, a Command Complete event is generated.)

Read Transmit Power Level Command

The Read Transmit Power Level command will read the values for the Transmit Power Level parameter for the specified Connection_Handle for data communication packets during the connection phase, in a range of −30 to +20 dBm.

C. Touch-to-Select in Bluetooth Technology

The Bluetooth Touch-to-select feature employs Received Signal Strength Indication (RSSI) information calculated from the FHS packet, which is used in determining that an inquiry scanning device is within “touch range”, i.e. proximate or in close proximity of the inquiring device, and when a threshold for that close proximity is met. This may provide an “intent to share” or “touch to connect” feature.

The inquiring device may measure the signal strength (e.g., RSSI) of each response message from an inquiry scanning device, which may be used in ordering the responding devices. In this manner, the inquiry scanning device with the highest measured signal strength is listed first (e.g., wherein the measured signal strength may correlate to the distance between the inquiring device and the responding inquiry scanning device).

An inquiry scanning device receiving inquiry packets from an inquiring device may respond by transmitting an inquiry response FHS packet or an FHS packet followed by an EIR packet. The host in the inquiring device may recognize EIR events triggered by the responses. The reported EIR events may include RSSI measurement values made by the inquiring device on the received FHS packets. From the RSSI values, the host in the inquiring device may detect when an inquiry scanning device is most likely within “touching range”, that is within a distance from the inquiring device that indicates touching-related operations may be executed.

It may also be possible to determine when an inquiry scanning device is moving closer to an inquiring device. The Bluetooth controller in the inquiring device may report the receipt of FHS and/or EIR inquiry responses to its host software stack as an HCI Inquiry Event that may contain the measurement of the RSSI performed on the received response. In instances where EIR responses are received, the Bluetooth controller in the inquiring device may report each received EIR as an HCI Extended Inquiry Result Event. When an inquiry scanning device moves closer to an inquiring device, the Bluetooth controller in the inquiring device may report an RSSI for each inquiry response, thereby enabling the inquiring device to track the changing RSSI levels of the scanning device and thus its relative movement. When the measured RSSI satisfies predetermined response criteria (e.g., including the RSSI being measured to be at or above a predetermined level), the corresponding scanning device may be selected for touch-related operations (e.g., expedited connection establishment).

The Bluetooth controller in an inquiring device reports the receipt of inquiry responses to its host, which also has Touch selection software running. Typical response criteria may include RSSI values measured on the responses, being sensed above certain fixed threshold value, such as −30 dBm. Sensing a response packet having an RSSI of −30 dBm will then cause the Touch selection software in the inquiring device to trigger device selection, while an RSSI of −31 dBm will not. It may also be possible that responding inquiry scanning devices may send Tx power information in EIR packet, since this is an existing feature in the Bluetooth specification v4.0. In instances where Tx power information about the inquiry scanning device is available in the EIR packet, the predetermined response criteria may include an adjustable RSSI threshold value that accounts for variations in the Tx power. For example, the threshold value may be set at 30 dBm below the EIR Tx power, so that if the Tx power level in an FHS packet is +20 dBm then the threshold value that will trigger selection may be the FHS packet being measured at −10 dBm, or dBm below of Tx power level. Secondly, to ensure that devices are maintained in close proximity, the predetermined response criteria may require that more than one EIR must have a sensed RSSI at or above a threshold value. In addition different thresholds may be used for different phases, for example, first the threshold value may be set above −45 dBm to select one or more candidate devices and then a second, more decisive threshold value may be set above −30 dBm.

The detected RSSI may also be a function of: [1] antenna location of the inquiry scanning device sending the signal and [2] antenna location of the inquiring device sensing the signal. The results may be improved if the antennas were brought into close proximity, which may require moving away from obstructions and changing the orientation of one or both devices.

D. Bluetooth Device Discovery Process Enhancement

FIG. 1A is an illustration of an example timing diagram of an example sequence of operations conducted between two mobile wireless devices, according to an example embodiment of the invention. A scanning device 100, shown in FIG. 2A, receives one or more wireless device discovery messages 150 from an inquiring device 102, shown in FIG. 2A. The wireless device discovery messages 150 may be Bluetooth inquiry packets transmitted by the inquiring device 102 in master-to-slave (M-S) slots. Initially. the scanning device 100 scans for wireless device discovery messages with smaller scan windows 22 and larger scan intervals 24. After detecting the first discovery message, the scanning device 100 temporarily tunes its inquiry scanning parameters, for example the inquiry scan interval, the inquiry scan window, or whether to do interlaced/non-interlaced scanning. The scanning device 100, in response to detecting the wireless device discovery message 150, temporarily tunes the device discovery parameters to increase the rate of detecting wireless device discovery messages. The scanning device 100, in response to detecting the wireless device discovery message 150, may tune the device discovery parameters to increase the rate of detecting wireless device discovery messages for a predetermined time period after receipt of the wireless device discovery message 150.

The tuning may be done at the controller or by the host. When tuning with the host, for example, the HCI Write Inquiry Scan Activity command may be used, for example, to control the interval and window sizes. The figure shows that when the scanning device 100 detects one or more device discovery messages 150, scanning device 100 tunes the scanning parameters to increase the scan windows 22′, 22″, 22′″ and reduce the scan intervals 24′, 24″, 24′″. Since the scanning device 100 responds with a response message 158, such as a Bluetooth FHS packet and an optional extended inquiry response packet 160, for each detected device discovery message 150, the tuning of the scanning parameters has the effect of shortening the times 25, 25′, 25″ between successive response messages 158, increasing the rate of transmitting the response messages 158. Each Bluetooth FHS response message 158 is transmitted by the scanning device 100 in the slave-to-master (S-M) slot following the Bluetooth inquiry packet 150 received from inquiring device 102 in the preceding master-to-slave (M-S) slot.

The figure shows that in response to detecting at “D”, the device discovery message 150, the scanning device 100 tunes its scanning parameters to increase scan windows 22 and reduce scan intervals 24. The rate “R” of detecting device discovery messages 150 is increased in response to the scanning device 100 tuning its scanning parameters, resulting in an increased rate of transmitting the response messages 158.

In an example embodiment of the invention, when the scanning device 100 determines that the one or more discovery messages 150 meet a predefined criterion, the scanning device 100 may tune the scanning parameters to shorten the times between successive response messages, thereby increasing the rate of transmitting one or more response messages 158 and 160. The response messages may include information usable for an inquiring device 102 receiving the one or more response messages 158 and 160, to estimate a distance to the scanning device 100, in response to the one or more discovery messages 150 meeting the predefined criterion, in accordance with at least one embodiment of the present invention.

In accordance with an example embodiment of the invention, the predefined criterion may be at least one of a received signal strength indication (RSSI) of the one or more device discovery messages 150 exceeds a threshold value, an interval since a previous increase in the rate of receiving or detecting one or more device discovery messages 150 is greater than a first threshold interval, an interval since receiving or detecting a previous device discovery message 150 is less than a second threshold duration, a predetermined number of previously received or detected one or more device discovery messages 150 is less than a threshold number, and a host control signal based on prescribed conditions or user settings.

In accordance with an example embodiment of the invention, the scanning device 100 increases the rate of receiving or detecting one or more device discovery messages 150 by at least one of reducing an inquiry scan interval, increasing an inquiry scan window, and performing interlaced inquiry scanning

In accordance with an example embodiment of the invention, the information in the one or more response messages 158 and 160, usable for the inquiring device 102 receiving the one or more response messages, to estimate a distance to the scanning device 100, includes at least one of a received signal strength indication (RSSI) of the one or more device discovery messages 158 and 160 and an indication that the scanning device 100 and the inquiring device 102 are in close proximity with each other.

In accordance with an example embodiment of the invention, the scanning device 100 may tune the scanning parameters to reduce the scan windows and increase the scan intervals to thereby decrease the rate of receiving or detecting the one or more device discovery messages 150. This mode of tuning to reduce the rate of receiving, may be in response to at least one of a received signal strength indication (RSSI) of the one or more device discovery messages 150 decreases below a threshold value, an interval since a previous increase in the rate of receiving or detecting one or more device discovery messages 150 is less than a first threshold interval, an interval since receiving or detecting a previous device discovery message 150 is greater than a second threshold interval, a predetermined number of previously received or detected one or more device discovery messages 150 is greater than a threshold number, and a host control signal based on prescribed conditions or user settings. In this mode of tuning to reduce the rate of receiving or detecting the one or more device discovery messages 150, since the scanning device 100 responds with a response message 158 for each detected device discovery message 150, the tuning of the scanning parameters in this mode has the effect of lengthening the times between successive response messages 158, decreasing the rate of transmitting the response messages 158.

FIG. 1B is an illustration of an example timing diagram of the device discovery process, using the Bluetooth communications standard, in accordance with at least one embodiment of the present invention. The following is one example embodiment applied to Bluetooth technology.

In the Bluetooth specification, during the inquiry procedure, the inquiring device or master device 102 transmits inquiry messages 150 with the general or dedicated inquiry access code. An inquiry response packet (FHS) 158 is transmitted from the inquiry scanning device or slave 100 to the master 102 after the slave has received the inquiry message 150. The device discovery is specified so that the discoverable inquiry scanning device 100 is doing inquiry scan and the inquiring device 102 doing device discovery is in the inquiry state. This means that the inquiring device 102 in inquiry state sends inquiry packets (ID packets) 150, as shown in FIG. 2A, and the discoverable inquiry scanning device 100 scans periodically whether it receives and detects any of the transmitted inquiry packets 150 and responds to those with FHS packets 158, as shown in FIG. 2B. In addition, the discoverable inquiry scanning device 100 may send an Extended Inquiry Response (EIR) packet 160 after the FHS packet 158, as shown in FIG. 1B, to deliver more information about the inquiry scanning device 100. The EIR packet 160 may include for example name of the inquiry scanning device 100 or transmission power.

If the inquiry scanning device 100 transmits an extended inquiry response packet 160, it is transmitted 1250 microseconds after the start of the inquiry response FHS packet 158. The extended inquiry response packet 160 is received by the inquiring device 102 at the hop frequency when the inquiry message received by the inquiry scanning device 100 was first in the master-to-slave slot. The extended inquiry response packet is an Asynchronous Connection-oriented Logical transport (ACL) packet with type DM1, DM3, DM5, DH1, DH3 or DH5.

FIG. 2A is an illustration of an example embodiment of a network in a device discovery phase, with a first device, the inquiring device 102, broadcasting one or more wireless device discovery messages 150 to one or more wireless devices, including a second wireless device, the scanning device 100, in accordance with at least one embodiment of the present invention. The figure shows an example embodiment of the network in the device discovery phase 200, with the first device 102 broadcasting one or more wireless device discovery messages 150 to one or more wireless devices, including the second wireless device 100, in accordance with at least one embodiment of the present invention. The following is one example embodiment applied to Bluetooth technology.

In an example embodiment of the invention, the example network includes a first Bluetooth™ inquiring device 102 broadcasting one or more inquiry packets 150 to one or more inquiry scanning devices, including a second Bluetooth™ inquiry scanning device 100, in accordance with at least one embodiment of the present invention. In embodiments of the invention, the inquiry scanning device 100 and the inquiring device 102 (shown in FIG. 2B) include a processor 122 that includes from one to many central processing units (CPUs) 124 and 125, a random access memory (RAM) 126, a read only memory (ROM) 127, and interface circuits 128 to interface with one or more radio transceivers 116, battery or house power sources, keyboard, display 144, etc. The RAM and ROM can be removable memory devices such as smart cards, SIMs, WIMs, semiconductor memories such as RAM, ROM, PROMS, flash memory devices, etc.

The Bluetooth™ inquiry scanning device 100 and the inquiring device 102 (shown in FIG. 2B) include the host controller interface (HCI) 111 that provides a command interface between the host application 110B in the device and the link layer or MAC 114 and the radio 116, also referred to as the controller, to enable access to hardware status and control registers of the Bluetooth™ radio 116. The host controller interface (HCI) is described in the Bluetooth™ Core Specification. The Host application 110B will receive asynchronous notifications of HCI events from HCI 111. HCI events are used for notifying the Host application 110B when something occurs. When the Host application discovers that an event has occurred, it will then parse the received event packet to determine which event occurred. The commands and events are sent between the Host application 110B and the radio 116. The HCI 111 provides a command interface between the host application 110B in a device and the Bluetooth™ link layer or MAC 114, provides access to hardware status and control registers of the radio 116, and provides a uniform method of accessing the Bluetooth™ baseband capabilities.

The processor 122 in the inquiring device 102 (shown in FIG. 2B) outputs data to the Bluetooth™ MAC 114 that packages the data into Bluetooth™ protocol data units (PDU) or packets, such as inquiry packets 150, that are input to the Bluetooth™ PHY radio 116 for normal Bluetooth™ transmission. During normal Bluetooth™ transmission, the RF signal from the radio 116 is directed to the antenna B 170 for transmission.

Inquiry scanning device 100 and inquiring device 102 may be, for example, a miniature device such as a key fob, smart card, jewelry, or the like. Inquiry scanning device 100 and inquiring device 102 may be, for example, a relatively larger cell phone, smart phone, flip-phone, PDA, graphic pad, or even larger devices such as a laptop computer, desktop computer, kitchen appliance, such as a refrigerator, an automobile dashboard, and the like. In embodiments, the relative sizes of devices 100 and 102 may be arbitrary, either one of the devices may be either mobile or fixed-base.

FIG. 2B is an illustration of an example embodiment of the network of FIG. 2A, in the device discovery phase, wherein scanning device 100 receives and detects one or more device discovery messages 150 and determines that the one or more discovery messages 150 meet a predefined criterion. In an example embodiment of the invention, when the scanning device 100 determines that the one or more discovery messages 150 meet a predefined criterion, the scanning device 100 may tune the scanning parameters to shorten the times between successive response messages, thereby increasing the rate of transmitting one or more response messages 158 and 160. In response, the scanning device 100 increases a rate of transmitting one or more response messages 158 and 160 including information usable for the inquiring device 102 receiving the one or more response messages 158 and 160 to estimate a distance to the scanning device 100, in response to the one or more discovery messages 150 meeting the predefined criterion. The inquiring device 102 detects one or more response messages 158 and 160 received at the increased rate from the scanning device 100, which identifies that a touch-to-select event 20 has occurred, in accordance with at least one embodiment of the present invention.

The figure shows the device discovery phase 200, wherein the first device 102 has received from the second wireless device 100 one or more wireless response messages 158 and 160, responding to the discovery messages 150. The first device 102 measures the power level of the wireless response messages 158. The first device 102 selects the second device 100, if the one or more wireless response messages 158 received from the second wireless device 100 has a measured power level greater than a threshold value. The first device 102 may then establish a wireless communication connection 176 (shown in FIG. 2C) with the second device 100, in accordance with at least one embodiment of the present invention. The following is one example embodiment applied to Bluetooth technology.

In an example embodiment of the invention, the second Bluetooth™ device, the inquiry scanning device 100, transmits one or more response messages including a response packet, such as an inquiry response FHS packet 158 and an inquiry response with an extended inquiry response (EIR) packet 160, in response to the inquiry packet 150, in accordance with at least one embodiment of the present invention.

In an example embodiment of the invention, an RSSI value may be measured by the inquiring device 102, for the inquiry response FHS packet 158. The RSSI is measured for the FHS packet, whether or not the EIR packet is present. When there is an EIR packet, it is accompanied by a preceding FHS packet that is measured for its RSSI.

The received signal strength indicator (RSSI) is a measurement of the power present in the inquiry response FHS packet 158 radio signal. Bluetooth receiver circuits 116 include an RSSI detector circuit 115 to measure the strength of an incoming signal and generate an output representing the signal strength. For example, the received RF signal may be amplified and down-converted to an intermediate frequency (IF); then channel selection is performed on the IF signal, and the power of the IF signal in the selected channel is measured as the receiver signal strength indicator (RSSI) value. with a required accuracy +/−6 dBm.

During Bluetooth discovery, before a connection is created, the RSSI is measured for Inquiry Response (FHS) packet when it is received by the inquiring device 102. When the radio 116 receives an Inquiry Response (FHS) packet 158 with EIR bit set to zero, an HCI Inquiry Result with RSSI event is sent by the radio 116 to the host application 110B, which indicates that a remote Bluetooth device 100 has responded during the current Inquiry process. This event will be sent from the radio 116 to the Host application 110B as soon as an Inquiry Response 158 from a remote device 100 is received. The RSSI parameter is measured during the receipt of the FHS packet 158.

When the radio 116 receives an Extended Inquiry Response 160, an HCI Extended Inquiry Result event is sent by the radio 116 to the host application 110B, which indicates that a remote Bluetooth device 100 has responded during the current inquiry process with extended inquiry response data. This event will be sent from the radio 116 to the Host application 110B upon reception of an Extended Inquiry Response 160 from a remote device 100. One single Extended Inquiry Response 160 is returned per event. This event contains RSSI and inquiry response data for the remote device 100 that responded to the latest inquiry 150. The RSSI parameter is measured during the receipt of the FHS packet 158.

The inquiring device may use the RSSI of the response message 158 from an inquiry scanning device 100, in ordering the responding devices. In this manner, the inquiry scanning device with the highest measured signal strength may be listed first. For example, the measured signal strength may correlate with the distance between the inquiring device and the responding inquiry scanning device.

From the RSSI values, the host in the inquiring device may detect when an inquiry scanning device is most likely within “touching range”, that is within a distance from the inquiring device that indicates touching-related operations may be executed.

It may also be possible to determine when an inquiry scanning device 100 is moving closer to an inquiring device 102. The Bluetooth radio 116 in the inquiring device may report the receipt of FHS and/or EIR inquiry responses to the host application as an HCI Inquiry Event that may contain the measurement of the RSSI performed on the received response 158. In instances where EIR responses 160 are received, the Bluetooth radio 116 in the inquiring device 102 may report each received EIR as an HCI Extended Inquiry Result Event. When an inquiry scanning device 100 moves closer to an inquiring device 102, the Bluetooth radio 116 in the inquiring device 102 may report an RSSI for each EIR response 160, thereby enabling the inquiring device 102 to track the changing RSSI levels of the inquiry scanning device 100 and thus its relative movement. When the measured RSSI satisfies predetermined response criterion, such as a threshold value, the corresponding inquiry scanning device 100 may be selected for touch-related operations, such as expedited connection establishment. In the case of an EIR packet that does not follow the FHS packet (EIR bit set to zero): Inquiry Result Event. In case of an EIR packet that does follow the FHS packet: Extended Inquiry Result Event. There is only one event per FHS packet and the type depends on whether the EIR bit is set to zero or one (EIR packet follows the FHS packet). The latter event is typically reported each time an FHS is received with the EIR bit set to one. The former is typically reported only once per inquiry process.

The Bluetooth radio 116 in the inquiring device 102 reports the receipt of inquiry responses 158 to its host application 110B, which also has Touch selection software running. Typical response criteria may include RSSI values measured on the response 158, being sensed above certain fixed threshold value, such as −30 dBm. Sensing a response packet having an RSSI of −30 dBm will then cause the Touch selection software in the host application of inquiring device 102 to trigger device selection, while an RSSI of −31 dBm will not. It may also be possible that responding inquiry scanning devices 100 may send Tx power information in EIR packet 160, since this is an existing feature in the Bluetooth specification v4.0. In instances where Tx power information about the inquiry scanning device 100 is available in the EIR packet 160, the predetermined response criteria may include an adjustable RSSI threshold value that accounts for variations in the Tx power of the inquiry scanning device 100. For example, the threshold value may be set at 30 dBm below the EIR Tx power, so that if the Tx power level of an FHS packet 158 is +20 dBm, then the threshold value that will trigger selection may be the FHS packet 158 being measured at −10 dBm, or 30 dBm below of Tx power level. Secondly, to ensure that devices 100 and 102 are maintained in close proximity, the predetermined response criteria may require that more than one FHS 158 have a sensed RSSI at or above a threshold value. In addition, different thresholds may be used for different phases, for example, first the threshold value may be set above −45 dBm to select one or more candidate devices 100 and then a second, more decisive threshold value may be set above −30 dBm.

The detected RSSI may also be a function of: [1] antenna location of the inquiry scanning device 100 sending the signal and [2] antenna location of the inquiring device 102 sensing the signal. The results may be improved if the antennas were brought into close proximity, which may require moving away from obstructions and changing the orientation of one or both devices.

FIG. 2C is an illustration of an example embodiment of the network of FIG. 2B, wherein the occurrence of the touch-to-select event 20 results in the two devices 100 and 102 establishing a connection, in accordance with at least one embodiment of the present invention. The figure shows an example embodiment of the network of FIG. 2B, in the connection phase 220 after the discovery phase 200 has been completed and the wireless communication has been established. In the Bluetooth communications protocol, a communication connection 176 is formed as a piconet, with the inquiry scanning device 100 becoming the slave device 100 and the inquiring device 102 becoming the master device 102 in the piconet.

FIG. 3A is an illustration of an example flow diagram of an example process in the scanning device 100 carrying out the example operations in the device discovery phase shown in FIG. 1A, in accordance with at least one embodiment of the present invention. The figure shows an example embodiment of the invention, of the example process in the scanning device 100 in accordance with at least one embodiment of the present invention. The steps of the flow diagram 180 represent computer code instructions stored in the RAM and/or ROM memory of the device 100, which when executed by the central processing units (CPU) 124 and/or 125, carry out the functions of the example embodiments of the invention. The steps may be carried out in another order than shown and individual steps may be combined or separated into component steps. The flow diagram has the following steps:

Step 182: detecting a wireless device discovery message at an apparatus; and

Step 184: in response to detecting the wireless device discovery message, temporarily tuning, by the apparatus, device discovery parameters to increase a rate of detecting wireless device discovery messages.

FIG. 3B is an illustration of an example flow diagram of an example implementation of the process in the inquiring device 102, carrying out the example operations in the device discovery phase, in accordance with at least one embodiment of the present invention. The figure shows an example embodiment of the invention, of the example process in the inquiring device 102 in accordance with at least one embodiment of the present invention. The steps of the flow diagram 190 represent computer code instructions stored in the RAM and/or ROM memory of the device 102, which when executed by the central processing units (CPU) 124 and/or 125, carry out the functions of the example embodiments of the invention. The steps may be carried out in another order than shown and individual steps may be combined or separated into component steps. The flow diagram has the following steps:

Step 192: transmitting, by an apparatus, wireless signals comprising one or more device discovery messages;

Step 194: receiving, by the apparatus, one or more response messages from a wireless device, including information usable by the apparatus to estimate a distance to the wireless device, the one or more response messages being received at an increased rate; and

Step 196: estimating, by the apparatus, a distance to the wireless device using the information usable for estimating the distance to the wireless device included in the one or more response messages, the estimation being carried out rapidly based on the increased rate of receipt of the one or more response messages.

FIG. 3C is an illustration of an example message format for device discovery messages 150, using the Bluetooth communications standard, in accordance with at least one embodiment of the present invention. During the inquiry procedure, the inquiring device 102 or master transmits inquiry messages 150 with the general or dedicated inquiry access code. The identity or ID packet consists of the inquiry access code (IAC). It has a fixed length of 68 bits. In order to discover other devices the inquiring device 102 may enter inquiry substate where it may repeatedly transmits the inquiry message (ID packet) at different hop frequencies. The inquiry hop sequence is derived from the Lower Address Part (LAP) of the General Inquiry Access Code (GIAC).

FIG. 3D is an illustration of an example message format for inquiry response messages 158, using the Bluetooth communications standard, in accordance with at least one embodiment of the present invention. An inquiry response packet (FHS) 158 is transmitted from the inquiry scanning device 100 or slave to the master after the slave has received an inquiry message 150. The inquiry response packet 158 contains information necessary for the inquiring device 102 to page the slave and follows 625 microseconds after the receipt of the inquiry message 150. The inquiry response packet 158 is received by the inquiring device 102 at the hop frequency when the inquiry message 150 received by the slave was first in the master-to-slave slot. When the inquiry message 150 is received in the inquiry scan substate, the inquiry scanning device 100 may return an inquiry response (FHS) packet 158 containing the recipient's device address (BD_ADDR) and other parameters. If the recipient has non-zero extended inquiry response data to send, it indicates this by the EIR bit 159, indicating that it will return an extended inquiry response packet 160 after the FHS packet 158. On the first inquiry message received in the inquiry scan substate the slave may enter the inquiry response substate. If the slave has non-zero extended inquiry response data to send it may return an FHS packet, with the extended inquiry response bit set to one, to the master 625 microseconds after the inquiry message was received. It may then return an extended inquiry response packet 1250 microseconds after the start of the FHS packet. If the slave's extended inquiry response data is all zeroes the slave may only return an FHS packet with the extended inquiry response bit 159 set to zero.

FIG. 3E is an illustration of an example message format for extended discovery response messages 160, using the Bluetooth communications standard, in accordance with at least one embodiment of the present invention. An Extended Inquiry Response 160 may be used to provide miscellaneous information during the inquiry response procedure. Data types are defined for such things as local name and supported services, information that otherwise would have to be obtained by establishing a connection. The inquiring device 102 that receives a local name and a list of supported services in an extended inquiry response does not have to connect to do a remote name request and a service discovery protocol (SDP) service search, thereby shortening the time to useful information. If the inquiry scanning device 100 transmits an extended inquiry response packet 160, it is transmitted 1250 microseconds after the start of the inquiry response packet 158. The extended inquiry response packet 160 is received by the inquiring device 102 at the hop frequency when the inquiry message 150 received by the inquiry scanning device 100 was first in the master-to-slave slot.

FIG. 3F is an illustration of an example message format for communication connection messages 175, using the Bluetooth communications standard, in accordance with at least one embodiment of the present invention. The standard frame format for Bluetooth systems is illustrated in the figure, which shows the packet contents of the Bluetooth frame. The function of the access code is to identify the packets exchanged within a piconet, where each piconet has a unique access code. The access code is used to synchronize the slaves in a piconet to its master. The main function of the header of the Bluetooth packet is to determine an individual slave address in the piconet by the Logical Transport-Address (LT ADDR). The last part of the Bluetooth frame is the payload. Bluetooth has several types of packets. Asynchronous Connectionless Communications (ACL) packet payload may be one of two types; medium data rate packets and, high data rate packets.

In existing Bluetooth device discovery schemes for touch-to-select (T2S) use cases, there is only one correctly received response for device identification. The number of responses is limited to mainly cover packet collision and packet corruptions. The time difference between two adjacent packets received in an error free environment may be greater than five seconds for an existing touch-to-select operation. In accordance with an example embodiment of the invention, the Bluetooth controller of the scanning device 100 may be tuned to adjust it's inquiry scanning state so that, at least, it is based on whether or not an inquiry packet 150 is received. In this manner, an inquiring device 102 may more quickly receive an inquiry response because more responses are received.

In accordance with an example embodiment of the invention, the implementation includes detection of the inquiry. This may be, for example, based on the received inquiry (ID) packet 150 or by sending the FHS packet 158 or the EIR packet 160. After detecting the inquiry, the scanning device 100 tunes its inquiry scanning parameters, such as inquiry scan interval, inquiry scan window or whether to do interlaced/non-interlaced scan. The functionality may be implemented into the Bluetooth controller, thus making it most power efficient, or alternately by delivering the inquiry detection occurrence (probably with some conditions) to the host of the scanning device 100 and let the host decide whether to change the inquiry scanning parameters.

In accordance with an example embodiment of the invention, the tuning of the scanning device 100 inquiry scanning parameters may have additional rules, such as:

    • RSSI of the ID packet exceeds the threshold (only near device)
    • Controlled by host (host may have own conditions such as only when backlight on or activate by the user from settings)
    • Inquiry parameters are already good enough
    • When the last tuning was made

In accordance with an example embodiment of the invention, similarly the end of tuning of the scanning device 100 inquiry scanning parameters may have several conditions:

    • No inquiry received during last x number of inquiry intervals
    • Number of sent packets
    • Time from the start of the tuning

In accordance with an example embodiment of the invention, the enhanced inquiry scan operation of the Bluetooth controller in the scanning device 100, may controlled by the host via HCI interface, by defining new command, editing existing commands or using vendor specific commands.

It is common that the standard Bluetooth inquiry scan in the mobile devices uses following default values

Inquiry scan interval=2.56 s

Inquiry scan window=11.25 ms

Inquiry scan type=Standard scan

This means that due to the standard Bluetooth scanning, the scanning device 100 has only roughly 50% chance to receive inquiry packet 150 from inquiring device 102 during the single scan window, due to inquiring device 102 possibly being on a different FHS sequence than the scanning device 100 (the inquiry hopping sequence is divided over two inquiring FHS sequences A and B of 16 frequencies). However, it is very likely (but not 100%) that in error-free environment, the inquiry packet 150 is received during next scan interval. Thus, typically, most of the devices are found within 5.12 s. Then the standard Bluetooth inquiry scanning device 100 will return to the inquiry scan after 0 to 639,375 ms and responds to inquiry packets until the devices go into different FHS sequences. Then the next inquiry packet 150 is most likely found in the following scan, i.e. after 2.56 s from the last trial.

As a consequence, the standard Bluetooth first inquiry response 158 is received, most likely, within 5.12 s, and then likely few inquiry responses are received with interval of roughly 5 m to 645 ms until FHS sequence switch happens. The next response 158 is then received after 2.56 s from last inquiry scan event. Thus, there is typically 2.56 s (+0 to 639,375 ms) pauses in receiving responses. It is not rare that there are pauses that are multiple of 2.56 s such as 5.12 s or sometime even higher.

In an example embodiment of the invention, the Inquiry scan type is changed to interlaced scan after receiving the first inquiry packet and in addition the scan interval may also be decreased for example to 1.28 s. In the error free environment packets after first response are sent roughly with interval of 5 to 645 ms and in case of error the pause typically is at maximum of 1.28 s (+0 to 639,375 ms). Multiples of 1.28 s pauses are present only due to collisions or some other error, not due to protocol constraints like in standard scan.

In an example embodiment of the invention, the first inquiry response 158 is received most likely within 5.12 s, and then likely many inquiry responses 158 are received with interval of roughly 5 m to 645 ms. If there is a collision or some other errors, the next response 158 is then received after 1.28 s from last inquiry scan event. Thus, long pauses in receiving inquiry responses 158 are eliminated and system works much faster in touch-to-select use cases.

FIG. 4 illustrates an example embodiment of the invention, wherein examples of removable storage media 126 are shown, based on magnetic, electronic and/or optical technologies, such as magnetic disks, optical disks, semiconductor memory circuit devices and micro-SD memory cards (SD refers to the Secure Digital standard) for storing data and/or computer program code as an example computer program product, in accordance with at least one embodiment of the present invention.

Using the description provided herein, the embodiments may be implemented as a machine, process, or article of manufacture by using standard programming and/or engineering techniques to produce programming software, firmware, hardware or any combination thereof.

Any resulting program(s), having computer-readable program code, may be embodied on one or more computer-usable media such as resident memory devices, smart cards or other removable memory devices, or transmitting devices, thereby making a computer program product or article of manufacture according to the embodiments. As such, the terms “article of manufacture” and “computer program product” as used herein are intended to encompass a computer program that exists permanently or temporarily on any computer-usable medium.

As indicated above, memory/storage devices include, but are not limited to, disks, optical disks, removable memory devices such as smart cards, SIMs, WIMs, semiconductor memories such as RAM, ROM, PROMS, etc. Transmitting mediums include, but are not limited to, transmissions via wireless communication networks, the Internet, intranets, telephone/modem-based network communication, hardwired/cabled communication network, satellite communication, and other stationary or mobile network systems/communication links.

Although specific example embodiments have been disclosed, a person skilled in the art will understand that changes can be made to the specific example embodiments without departing from the spirit and scope of the invention.

Reunamaki, Jukka, Palin, Arto

Patent Priority Assignee Title
Patent Priority Assignee Title
7775432, Oct 16 2003 Nokia Technologies Oy Terminal, method and computer program product for interacting with a signaling tag
9158395, Apr 02 2009 Samsung Electronics Co., Ltd Method and system for controlling other devices using a remote user interface
20040042413,
20040215816,
20050278646,
20060240777,
20060267794,
20070141985,
20070206660,
20080013502,
20080161026,
20080242220,
20090320098,
20100105409,
20100118736,
20110037610,
20110066850,
20110103428,
20110281519,
20120289159,
20130065584,
20130136033,
20130138786,
20130165044,
20140082185,
20140133584,
20140358685,
20140373100,
20140380159,
20150135087,
20150193198,
20150256954,
20150304209,
20150341876,
20150373083,
20160072573,
EP1187504,
EP1418781,
EP2015274,
KR20110032370,
WO2005091573,
WO2010108235,
WO2012048442,
WO2012127095,
WO2013083868,
///////////////
Executed onAssignorAssigneeConveyanceFrameReelDoc
Sep 08 2016Provenance Asset Group LLC(assignment on the face of the patent)
Sep 12 2017Nokia Technologies OyProvenance Asset Group LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0438770001 pdf
Sep 12 2017NOKIA SOLUTIONS AND NETWORKS BVProvenance Asset Group LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0438770001 pdf
Sep 12 2017ALCATEL LUCENT SASProvenance Asset Group LLCASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0438770001 pdf
Sep 13 2017PROVENANCE ASSET GROUP, LLCCORTLAND CAPITAL MARKET SERVICES, LLCSECURITY INTEREST SEE DOCUMENT FOR DETAILS 0439670001 pdf
Sep 13 2017PROVENANCE ASSET GROUP HOLDINGS, LLCCORTLAND CAPITAL MARKET SERVICES, LLCSECURITY INTEREST SEE DOCUMENT FOR DETAILS 0439670001 pdf
Sep 13 2017Provenance Asset Group LLCNOKIA USA INC SECURITY INTEREST SEE DOCUMENT FOR DETAILS 0438790001 pdf
Sep 13 2017PROVENANCE ASSET GROUP HOLDINGS, LLCNOKIA USA INC SECURITY INTEREST SEE DOCUMENT FOR DETAILS 0438790001 pdf
Dec 20 2018NOKIA USA INC NOKIA US HOLDINGS INC ASSIGNMENT AND ASSUMPTION AGREEMENT0483700682 pdf
Nov 01 2021CORTLAND CAPITAL MARKETS SERVICES LLCPROVENANCE ASSET GROUP HOLDINGS LLCRELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS 0589830104 pdf
Nov 01 2021CORTLAND CAPITAL MARKETS SERVICES LLCProvenance Asset Group LLCRELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS 0589830104 pdf
Nov 29 2021Provenance Asset Group LLCRPX CorporationASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS 0593520001 pdf
Nov 29 2021NOKIA US HOLDINGS INC PROVENANCE ASSET GROUP HOLDINGS LLCRELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS 0583630723 pdf
Nov 29 2021NOKIA US HOLDINGS INC Provenance Asset Group LLCRELEASE BY SECURED PARTY SEE DOCUMENT FOR DETAILS 0583630723 pdf
Jan 07 2022RPX CorporationBARINGS FINANCE LLC, AS COLLATERAL AGENTPATENT SECURITY AGREEMENT0634290001 pdf
Date Maintenance Fee Events
Aug 05 2019M1551: Payment of Maintenance Fee, 4th Year, Large Entity.
Oct 02 2023REM: Maintenance Fee Reminder Mailed.
Mar 18 2024EXP: Patent Expired for Failure to Pay Maintenance Fees.


Date Maintenance Schedule
Jul 02 20224 years fee payment window open
Jan 02 20236 months grace period start (w surcharge)
Jul 02 2023patent expiry (for year 4)
Jul 02 20252 years to revive unintentionally abandoned end. (for year 4)
Jul 02 20268 years fee payment window open
Jan 02 20276 months grace period start (w surcharge)
Jul 02 2027patent expiry (for year 8)
Jul 02 20292 years to revive unintentionally abandoned end. (for year 8)
Jul 02 203012 years fee payment window open
Jan 02 20316 months grace period start (w surcharge)
Jul 02 2031patent expiry (for year 12)
Jul 02 20332 years to revive unintentionally abandoned end. (for year 12)