PROXIMITY BASED CONNECTION FOR BLUETOOTH DEVICES

By receiving and analyzing the signal strength of multiple paired Bluetooth devices and selecting the device with the strongest signal for connection, it solves the problem that traditional Bluetooth connection technology cannot successfully connect to paired devices, and improves the connection success rate and user experience.

JP2025513006AActive Publication Date: 2025-04-22BOSE CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024559515
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-04-06
Filing Date
2023-04-05
Publication Date
2025-04-22
Estimated Expiration
2043-04-05

AI Technical Summary

Technical Problem

Traditional Bluetooth connectivity technology often fails to successfully connect the required device when trying to connect to a paired device.

Method used

By receiving the signal strength (RSSI) of multiple paired Bluetooth devices and selecting the right device to connect based on the difference between the highest RSSI value and the second highest RSSI value. If the difference does not exceed a certain threshold, it is selected based on the Bluetooth connection hierarchy priority.

Benefits of technology

Improves the success rate of Bluetooth devices required to connect, reduces connection time, and improves user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025513006000001
    Figure 2025513006000001
  • Figure 2025513006000002
    Figure 2025513006000002
  • Figure 2025513006000003
    Figure 2025513006000003
Patent Text Reader

Abstract

Various implementations include a method for establishing a Bluetooth (BT) connection between devices. One exemplary method includes: in response to a BT trigger at a first BT device, attempting to determine received signal strength indicators (RSSIs) from a set of additional BT devices paired with the first BT device; if the RSSI from the first additional BT device is the highest RSSI from the set and exceeds the RSSI from a second additional BT device having the second highest RSSI by a threshold value, selecting the first additional BT device for connection with the first BT device; if the difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold value, selecting either the first additional BT device or the second additional BT device for connection based on a BT connection hierarchy.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates generally to device connections and, more particularly, to establishing a Bluetooth connection between previously paired devices. [Background technology]

[0002] Although Bluetooth pairing and connection has significant advantages, one drawback of traditional Bluetooth connection occurs during the attempted connection phase between already paired devices (e.g., a source device and a sink device). Traditional approaches to connecting two devices via Bluetooth include attempting to connect a sink (also called "output", "destination", or "peripheral") device with the most recently connected source (also called "input" or "host") device in a list of already paired devices. However, these approaches often fail to connect the desired device. Summary of the Invention

[0003] All examples and features mentioned below can be combined in any technically possible manner.

[0004] Various implementations include techniques for establishing a Bluetooth (BT) connection between devices. Additional implementations include a BT device configured to establish a BT connection with another device.

[0005] In some particular aspects, the method includes, in response to a BT trigger at a first Bluetooth (BT) device, attempting to determine received signal strength indicators (RSSIs) from a set of additional BT devices paired to the first BT device; selecting the first additional BT device for connection with the first BT device if the RSSI from the first additional BT device is the highest RSSI from the set of additional BT devices and exceeds the RSSI from a second additional BT device having a second highest RSSI by a threshold; and selecting either the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy for the set of additional BT devices paired to the first device if a difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold.

[0006] In an additional specific aspect, the first BT device includes a BT radio; and a controller coupled to the BT radio and configured to control a BT connection by: in response to a Bluetooth (BT) trigger at the first BT device, attempting to determine a received signal strength indicator (RSSI) from a set of additional BT devices paired to the first BT device; selecting the first additional BT device for connection with the first BT device if the RSSI from the first additional BT device is the highest RSSI from the set of additional BT devices and exceeds the RSSI from a second additional BT device having a second highest RSSI by a threshold; and selecting either the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy for the set of additional BT devices paired to the first device if a difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold.

[0007] Implementations may include one or any combination of the following features.

[0008] In one particular implementation, the determined highest RSSI and the determined second highest RSSI include normalized values ​​based on the type of each of the first additional BT device and the second additional BT device.

[0009] In a particular case, the set of additional BT devices paired with the first BT device each have previously been connected to the first BT device using a BT connection and are not currently connected to the first BT device.

[0010] In some aspects, the threshold value takes into account a margin of uncertainty in the RSSI.

[0011] In one particular case, the margin of uncertainty is greatest when the highest and second highest RSSIs indicate a maximum proximity of about 2 feet to about 3 feet to the first BT device.

[0012] In certain aspects, the BT trigger includes a command to connect with a previously paired device and is a separate command from the new device connection command.

[0013] In some implementations, both the BT trigger and the new device connection command are interface commands that are enabled in an interface on the first BT device.

[0014] In one particular case, the BT connection hierarchy for the set of additional BT devices is prioritized based on at least one of the recency of connection with the first BT device, the frequency of connection with the first BT device, known RSSI characteristics of the additional BT devices, whether the additional BT devices are currently outputting audio, whether the additional BT devices were recently powered on, a user-defined priority, the BT profile of the last connection with the first BT device, or a recent sweep of proximity to the first BT device.

[0015] In some aspects, if at least two BT devices in the set of additional BT devices return an RSSI response, the RSSI response from each of the at least two additional BT devices is used as a primary factor for selecting a BT device from the set of additional BT devices, and the BT connection hierarchy is used as a secondary factor in selecting a BT device from the set of additional BT devices.

[0016] In one particular case, in a paired configuration, the first BT device is a sink BT device and the additional BT device is a source BT device.

[0017] In certain aspects, the RSSI from each of the additional BT devices is received within about 2 seconds to about 3 seconds.

[0018] In one particular implementation, a physical separation of about 6 inches to about 1 foot for the first BT device is detectable by the distinction between the highest and second highest RSSI.

[0019] In some cases, in response to receiving a BT trigger while the first BT device is connected to the first additional BT device having the highest RSSI, selecting a second additional BT device having a second highest RSSI for connection.

[0020] In a particular implementation, the BT trigger includes at least one of detecting movement of the first BT device to a new location, detecting a change in time, detecting BT range between the first BT device and at least one of the additional BT devices, providing an input to the first BT device, initiating charging of another device, mechanically actuating the first BT device, receiving an input from one of the additional BT devices, detecting a change in a BT state of the first BT device, detecting a change in a power state of the first BT device, detecting a loss of an existing BT connection with the first BT device, or detecting a loss of an existing Wi-Fi connection with the first BT device.

[0021] In one particular aspect, in a multi-point connection mode, before selecting a first additional BT device or a second additional BT device, the process includes maintaining a BT connection with a currently connected BT device after detecting a BT trigger.

[0022] In certain cases, the method further includes ignoring RSSI from currently connected BT devices either before or after receiving RSSI from a set of additional BT devices paired to the first device.

[0023] In some aspects, in a multi-point connection mode, the BT trigger includes a power-on command, and in response to the power-on command, before selecting the first additional BT device or the second additional BT device, the process includes connecting to both the first additional BT device and the second additional BT device, and disconnecting the connection to one of the first additional BT device or the second additional BT device that is not selected for connection.

[0024] In one particular implementation, the multipoint connection mode is selectable via a user interface command.

[0025] In a particular case, the BT device further includes an electroacoustic transducer coupled to the controller for providing an audio output, and the determined highest RSSI and the determined second highest RSSI include normalized values ​​based on the type of each of the first additional BT device and the second additional BT device.

[0026] Two or more features described in this disclosure, including features described in the Summary of the Invention section, may be combined to form implementations not specifically described herein.

[0027] The details of one or more implementations are set forth in the accompanying drawings and the description below. Other features, objects, and advantages will become apparent from the description and drawings, and from the claims. [Brief description of the drawings]

[0028] [Figure 1] 1 is a block diagram of a system including a Bluetooth-enabled audio device, according to various disclosed implementations. [Diagram 2] 1 is a schematic diagram of paired BT devices according to various implementations. [Diagram 3] 1 is a flow diagram illustrating processes in a method according to various implementations. [Figure 4] 11 is a flow diagram illustrating processes in a method according to various additional implementations.

[0029] It should be noted that the drawings of the various implementations are not necessarily to scale. The drawings are intended to depict only typical aspects of the disclosure and therefore should not be considered as limiting the scope of the implementations. In the drawings, like numbering represents like elements between the drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0030] The present disclosure is based, at least in part, on the realization that selecting a Bluetooth (BT) device for connection can be improved by determining a received signal strength indicator (RSSI) from one or more devices in a paired device list. For example, a connection approach that relies on RSSI can improve the likelihood of connecting a desired BT device compared to a traditional recency-focused (or priority-focused) approach, thereby saving time and improving the user experience.

[0031] In a particular case, in response to a trigger in the first BT device, the technique includes attempting to determine the RSSI of a set of additional paired BT devices (paired with the first device). If the RSSI of the first additional (paired) BT device is the highest RSSI from the set of devices and exceeds the next highest RSSI from the second additional (paired) BT device in the set by a threshold, the first additional BT device is selected for connection with the first BT device. However, if the difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold, a selection is made between the first additional BT device and the second additional BT device based on the BT connection hierarchy for the set of additional BT devices. Because RSSI is a strong indicator of physical proximity and provides a reliable signal, the RSSI-based techniques described herein increase the likelihood of connecting the desired set of (previously) paired BT devices. That is, these techniques rely at least in part on the assumption that users want to connect BT devices within a proximity range and not necessarily based on the recent connection or frequency of connection between the devices.

[0032] Commonly labeled components in the figures are considered to be substantially equivalent components for purposes of illustration, and redundant descriptions of those components are omitted for clarity.

[0033] FIG. 1 shows an example of a system 10 including a set of Bluetooth-enabled devices (or simply Bluetooth devices, or BT devices) according to various implementations. As referred to herein, a Bluetooth-enabled device includes a Bluetooth radio or other Bluetooth-specific communication system that allows connection via the Bluetooth protocol. The system 10 includes a first BT device 20 and an additional (or second) BT device 30. In this example, the system 10 also includes a further additional (or third) BT device 40. In the example illustrated in FIG. 1, the first BT device 20 is a BT sink device (otherwise referred to as an "output device", "destination device", or "peripheral device"), and the additional BT devices 30, 40 are BT source devices (otherwise referred to as an "input device", or "host device"). Exemplary Bluetooth-enabled source devices (e.g., additional devices 30, 40) include, but are not limited to, smartphones, tablet computers, personal computers, laptop computers, notebook computers, netbook computers, walkie-talkies, audio systems (e.g., portable and / or fixed), Internet Protocol (IP) telephones, communications systems, entertainment systems, headsets, smart speakers, exercise and / or fitness equipment, portable media players, audio storage and / or playback systems, smart watches or other smart wearable devices, etc. Exemplary Bluetooth-enabled sink devices (e.g., first BT device 20) include, but are not limited to, headphones, headsets, audio speakers (e.g., portable and / or fixed, with or without "smart" device capabilities), entertainment systems, communications systems, smartphones, vehicle audio systems, exercise and / or fitness equipment, out-loud (or open-air) audio devices, wearable private audio devices, etc.Additional BT devices may include portable game players, portable media players, audio gateways, BT gateway devices (for bridging BT connections between other BT-enabled devices), audio / video (A / V) receivers as part of a home entertainment or home theater system, etc. A Bluetooth-enabled device as described herein may change its role from a source to a sink, or from a sink to a source, depending on the particular application.

[0034] The Bluetooth-enabled first device 20 may include a controller 50 and a communication (comm.) unit 60 coupled to the controller 50. The communication unit 60 includes a Bluetooth module 70 (e.g., including a Bluetooth radio) that enables communication with other devices via a Bluetooth protocol. In a particular exemplary implementation, the BT device 20 may also include one or more microphones 80 (e.g., a single microphone or a microphone array) and an electroacoustic transducer 90 for providing audio output. The BT device 20 may also include additional electronics 100, such as a power manager and / or a power source (e.g., a battery or a power connector), memory, sensors (e.g., an IMU, an accelerometer / gyroscope / magnetometer, an optical sensor, a voice activity detection system), and the like. In some cases, the memory may include a flash memory and / or a non-volatile random access memory (NVRAM). In certain cases, the memory stores microcode and various reference data for programs for processing and controlling the controller 50, data generated during execution of any of the various programs implemented by the controller 50, various updateable data for the Bluetooth connection process, and / or storage such as paired device data, connection data, device contact information, etc. Certain of the above components shown in FIG.

[0035] In certain cases, the controller 50 may include one or more microcontrollers or processors having a digital signal processor (DSP). In some cases, the controller 50 is referred to as a control circuit. The controller 50 may be implemented as a chipset of chips including separate and multiple analog and digital processors. The controller 50 may provide coordination of other components of the BT device 20, such as controlling a user interface (not shown) and applications run by the BT device 20. In various implementations, the controller 50 includes a BT connection control module (or multiple modules) that may include software and / or hardware for implementing the BT connection control process described herein. For example, the controller 50 may include a BT connection control module in the form of a software stack having instructions for controlling functions in a BT device connection (e.g., between the BT device 20 and additional BT devices 30, 40, etc.) according to any implementation described herein. As described herein, the controller 50 is configured to control functions in an RSSI-based connection approach according to various implementations.

[0036] The communication unit 60 may include a BT module 70 configured to use a wireless communication protocol such as Bluetooth, along with additional network interfaces such as those using one or more additional wireless communication protocols such as IEEE 802.11, Bluetooth Low Energy, or other local area network (LAN) or personal area network (PAN) protocols such as WiFi. In a particular implementation, the communication unit 60 is particularly suitable for communicating with other communication units 60 in the BT device 30, 40 via Bluetooth. In a further particular implementation, the communication unit 60 is configured to communicate with the BT devices described herein using broadcast audio via a BLE or similar connection (e.g., including a proxy connection).

[0037] As referred to herein, the controller 50 controls the general operation of the Bluetooth enabled device 20. For example, the controller 50 implements processes and controls for audio and data communication. In addition to the general operation, the controller 50 initiates Bluetooth functions implemented in the Bluetooth module 70 upon detecting certain triggers (or events) as described herein. The controller 50 initiates operations (e.g., connections) between the BT device 20 and additional BT devices 30, 40 when certain conditions are met.

[0038] The Bluetooth module 70 enables wireless connection using Radio Frequency (RF) communication between the BT device 20 and additional BT devices 30, 40, etc. The Bluetooth module 70 exchanges radio signals including data input / output through an antenna (not shown). For example, in a transmit mode, the Bluetooth module 70 processes data by channel coding and spreading, converts the processed data into a radio frequency (RF) signal, and transmits the RF signal. In a receive mode, the Bluetooth module 70 converts the received RF signal into a baseband signal, processes the baseband signal by despreading and channel decoding, and recovers the processed signal into data. In addition, the Bluetooth module 70 can ensure secure communication between devices and protect data using encryption.

[0039] The additional BT devices 30, 40, etc. may include controllers 50a, 60b and communication units 60a, 60b having BT modules 70a, 70b, enabling BT communication between the BT device 20 and the additional BT devices 30, 40. The additional BT devices 30, 40 may include one or more of the components described with respect to the BT device 20, each of which is illustrated in phantom lines as an option in certain implementations. The notations "a" and "b" indicate that the components in the BT devices 30, 40 are physically separate from the similarly labeled components in the BT device 20, but may take a similar form and / or function to their labeled counterparts in the BT device 20. Additional descriptions of these similarly labeled components are omitted for the sake of brevity. Furthermore, as mentioned herein, the additional BT devices 30, 40 may differ from the BT device 20 in terms of form factor, intended use, and / or capabilities, but are configured to communicate with the BT device 20 via Bluetooth in any case.

[0040] Generally, the Bluetooth modules 70, 70a, 70b include a Bluetooth radio and additional circuitry. More specifically, the Bluetooth module 70 of the BT device 20 and the Bluetooth modules 70a, b of the BT devices 30, 40, etc. include both a Bluetooth radio and a Bluetooth LE (BLE) radio. In various implementations, the presence of the BLE radio in the Bluetooth module 70 is optional. That is, as mentioned herein, various implementations utilize only the (classical) Bluetooth radio for connectivity functions. In implementations that include a BLE radio, the Bluetooth radio and the BLE radio are typically on the same integrated circuit (IC) and share a single antenna, while in other implementations the Bluetooth radio and the BLE radio are implemented as two separate ICs that share a single antenna or as two separate ICs with two separate antennas. The Bluetooth specification, i.e. Bluetooth 5.2: Low Energy, provides the BT device 20 with 40 channels spaced at 2 MHz intervals. The 40 channels are labeled 0 through 39 and include 3 advertising channels and 37 data channels. Channels labeled 37, 38, and 39 are designated in the Bluetooth specification as advertising channels, while the remaining channels 0 through 36 are designated in the Bluetooth specification as data channels.

[0041] As mentioned herein, various implementations are particularly suited to making device connection decisions between previously paired BT devices. To that end, the approaches described according to these implementations relate to connecting additional BT devices 30, 40, etc. with a first BT device 20, where the additional BT devices have pairings with the BT device 20. FIG. 2 shows a paired BT device list 110 associated with the BT device 20. In some cases, the paired device list 110 is stored in one or more portions of memory in the BT device 20 or is otherwise accessible to the controller 50 when maintaining, updating, or accessing the paired device list 110. In some cases, the paired device list 100 is arranged in terms of top-down priority, while in other cases, the priorities of the devices on the list 100 are arranged in any other priority scheme. As shown in this example, the paired device list 100 includes the (additional) BT device 30 and the (additional) BT device 40, along with space for further additional BT devices X, Y, Z, and further additional BT devices. In a particular example, the BT device 20 is configured to maintain a paired device list 110 of several or more paired devices, which may include four, five, six, seven, eight or more paired devices. In a particular case, the paired device list 110 is made available to a user via an interface (e.g., a visual interface such as an audio interface, a display, etc.) for, for example, pairing the additional devices with the BT device 20. The pairing of the devices on the paired device list 110 with the BT device 20 can be performed according to any conventional technique, for example, any conventional Bluetooth, BLE, or other Bluetooth-related pairing technique. A particular exemplary technique for Bluetooth-related pairing is described in U.S. Patent No. 9,066,327 (issued June 23, 2015), which is incorporated by reference in its entirety.Additionally, techniques for selecting and / or prioritizing connections between paired devices are described in U.S. Patent Application Publication No. 17 / 314,270 (filed May 7, 2021), which is incorporated by reference in its entirety.

[0042] In one particular example, the paired device list 110 is prioritized to control connections between BT device 20 and additional paired BT devices, e.g., BT device 30, BT device 40, etc. In a particular example, the paired device list 110 is arranged in terms of top-down priority, such that in the example of FIG. 2, BT device 30 is given priority over BT device 40, which in turn has priority over BT device X, which in turn has priority over BT device Y, etc. In some examples, the paired device list 110 is prioritized based on at least one of the following: recentness of connection with the first BT device, frequency of connection with the BT device, a user-defined priority, the BT profile of the last connection with the first BT device (e.g., an audio connection profile having a higher priority than other connection profiles), whether the additional BT device is currently outputting audio, whether the additional BT device was recently powered on, the BT profile of the last connection with the first BT device 20, or a recent sweep of proximity to the first BT device 20 (e.g., using RSSI or any other proximity-based indicator such as light and / or acoustic sensors).

[0043] 1 and 2, according to various implementations, the controller 50 in the BT device 20 is configured to enable a proximity-based connection with BT devices on the paired device list 110, such as BT device 30, BT device 40, BT device X, etc. FIG. 3 is a flow diagram illustrating a process in controlling a proximity-based connection between the BT device 20 and devices on the paired device list 110. It is understood that the flow diagram of FIG. 3 illustrates an example configuration in which a first BT device 20 attempts to connect to up to two separate BT devices, such as an additional BT device 30 and a further additional BT device 40. It is understood that the illustrated method can be applied to a small or larger group of BT devices on the paired device list 110, as described herein. In various implementations, the process indicated by the dashed lines is optional. With reference to FIG. 3, the process can include the following.

[0044] Process P1: In response to detecting a trigger in a first BT device (e.g., device 20), attempt to determine received signal strength indicators (RSSIs) of a set of additional BT devices paired with the first BT device 20 (e.g., devices from the paired BT device list 110 of FIG. 2). In some cases, the trigger includes at least one of detecting BT range between the first BT device 20 and an additional BT device (e.g., BT device 30), providing an input to the first BT device 20, initiating charging of another device (e.g., additional BT devices 30, 40, etc.), mechanically actuating the first BT device 20, receiving an input from an additional BT device (e.g., BT device 30), providing an input to the first BT device 20, detecting a change in the BT state of the first BT device 20 (e.g., BT enabled / disabled), a change in the power state of the first BT device 20 (e.g., powered on, powered off, standby), detecting a change in time, detecting a loss of an existing BT connection with the first BT device (e.g., including a subsequent attempt to connect to the nearest BT device and / or a device on the list 110), or detecting a loss of an existing Wi-Fi connection with the first BT device (e.g., including a subsequent attempt to connect to the nearest BT device and / or a device on the list 110).

[0045] It is understood that attempting to determine the received signal strength indicator (RSSI) of a set of additional BT devices does not necessarily cause those BT devices to lose their active connection with another device (e.g., a further BT device). That is, if one of the additional BT devices (e.g., on the list 110) has an active connection with a BT device, process P1 does not necessarily cause the additional BT device to drop its active connection until a connection with the BT device 20 is established, or at least an attempt is made to establish a BT connection with the BT device 20 (process P7, FIG. 3).

[0046] In a particular implementation, the BT trigger includes a command to connect with a previously paired device (e.g., on the device list 110), which is a separate command from the new device connection command. In a particular case, this connection command is initiated without a user interface command, such as automatically detecting BT range between the devices or initiating charging of the BT device. In an additional implementation, the command to connect with a previously paired BT device (e.g., the BT trigger) and the new device connection command are both interface commands enabled in an interface on the BT device 20. In a particular example, the connection command is a "quick connect" or "simple connect" command that includes an abbreviated interface command related to the new device connection command. For example, the connection command for a previously paired device may include a single push command on a button or interface, compared to a new device connection command that includes a press and hold command (e.g., for a few seconds). In a particular implementation, the command to connect with a previously paired device puts the controller 50 into a connection mode that is separate from the command to connect with a new device. That is, the controller 50 is configured to detect a trigger indicating a desire to connect with a previously paired device and to initiate an operational mode using a particular process described herein.

[0047] In one particular example, the BT radio in the BT device 20 detects the presence of an additional BT device within BT range, and this detection acts as a trigger in the first BT device 20. In a further example, the input in the first BT device 20 includes a button press (e.g., actuation of a power button, a BT connect button, or other volume control button, or similar interface command in the first BT device 20), a command from a connected application (application, App), such as a power command, a connect command, a playback control command, and / or a power on command in the first BT device 20 or the additional BT device 30, 40, etc. In a particular example, mechanically activating the first BT device 20 may include opening a case (e.g., a headphone case, an earphone case, an audio glasses case, etc.) that houses the first BT device 20, and / or unpacking, opening, or otherwise mechanically operating the first BT device 20 (e.g., opening a set of headphones or audio glasses to prepare the device for wearing, moving an arm or mounting structure on a wearable audio device, positioning a speaker to place on a surface, stepping on or otherwise stepping on exercise equipment, opening a vehicle door, triggering a start in a vehicle, etc.). In a particular case, receiving an input from an additional BT device (e.g., the BT device 30) may include receiving BLE data indicating that the additional BT device (e.g., the BT device 30) has moved within range of the first BT device 20, or that BT has been recently turned on in the additional BT device (e.g., the BT device 30), or that the additional BT device (e.g., the BT device 30) has entered pairing mode, etc. For example, sensors in the additional electronic device 100 (FIG. 1), such as motion sensors, optical sensors, proximity sensors, etc., can be configured to detect mechanical actuation. In certain cases, the form factor of the first BT device 20 dictates the available input and / or mechanical actuation mechanisms.

[0048] In certain examples, the BT trigger can include initiating charging of a BT device (e.g., the first BT device 20) and / or using the BT device (e.g., the first BT device 20) to charge an additional BT device (e.g., the BT device 30). In some example configurations, the first BT device can initiate wireless charging of another BT device when placed in close proximity and / or physical contact with each other. For example, a BT device such as the BT device 30 can wirelessly charge another BT device such as the BT device 20 using an on-board battery(s) in the BT device 30 via inductive charging, such as with a Qi wireless charger or similar wireless charger. In additional examples, the BT devices 20, 30 can charge each other in a wired charging configuration, for example, via a USB connector or other wired power connector. In various implementations, one of the BT devices charges the other BT device using on-board battery power. In some examples, the initiation of a charging connection acts as a BT trigger as described herein. In a specific non-limiting case, a first BT device (e.g., audio device 20 such as a BT speaker) can be configured to detect another BT device (e.g., audio device 30 such as a smartphone) that is positioned to charge via the BT speaker. Detection for charging purposes can include proximity-based charging detection, such as a Qi wireless charging connection of the smartphone with the BT speaker. Detection for charging purposes can also include a hardwired connection (e.g., a USB connection) and / or docking of the smartphone into a charging slot in the BT speaker. Detecting this charging connection can cause the BT speaker (BT device 20) to automatically perform the process described herein (e.g., with reference to Figures 3 and 4) to search for the BT device with the highest RSSI, which in this example is the BT device 30.In an optional additional implementation, initiating a charging connection between the first BT device 20 and the additional BT device 30 triggers the first BT device 20 and / or the additional BT device 30 to automatically perform additional actions in response to establishing the BT connection. Such additional actions are further described herein.

[0049] In various implementations, the additional BT devices are on the paired device list 110, i.e., each additional BT device has an established pairing with the first BT device 20 and has previously connected with the first BT device 20. In the example illustrated in FIG. 1 and FIG. 2, the controller 50 attempts to determine the RSSI of at least two BT devices 30, 40 because they are in close proximity to the first BT device 20. It should be understood that the process P1 can be applied to any number of BT devices within the RSSI range, and therefore the controller 50 can be configured to attempt to determine the RSSI of three, four, or more paired BT devices (e.g., BT device X, BT device Y, BT device Z on the list 110). In these cases, the BT device 20 can simultaneously or sequentially transmit signals to two or more BT devices on the list 110 in an attempt to determine the RSSI from those BT devices.

[0050] In various implementations, using the example of FIG. 1, the controller 50 in the BT device 20 initiates a signal via the BT module 70 to transmit data packets to the BT module 70a in the BT device 30 and the BT module 70b in the BT device 40, and receives a return signal from each BT module 70a,b indicating the power at which the data packets are received (e.g., as a percentage of the power of the transmitted data packets). Both the transmitted and returned signals are transmitted over a channel designated as a data channel in the Bluetooth specification or "classic" Bluetooth (as opposed to the BLE specification). In some cases, the controller 50 is configured to attempt to determine multiple RSSIs from the BT devices 30, 40, for example in succession, to determine an average RSSI, a median RSSI, or other mathematically significant indicator of the RSSI over a period of time. In certain cases, the average RSSI or several RSSI attempts over a period of time are used for the purpose of the connection technique according to the implementation. As mentioned herein, the transmission power, environmental factors, and other parameters may affect the measured RSSI value. Although RSSI may be insufficient to calculate the location of additional BT devices (e.g., BT device 30) relative to the first BT device 20, RSSI may be used to calculate the relative proximity of multiple additional BT devices (e.g., BT device 30, BT device 40, BT device X, BT device Y, etc.) relative to the first BT device 20. That is, the RSSI value can be used to determine whether the BT device 30 is closer to the first BT device 20 or farther from the first BT device 20 compared to the BT device 40 and / or further additional BT devices X, Y, Z, etc. (e.g., on the list 110). In a particular implementation, a physical separation of about 6 inches (about 15 centimeters) to about 1 foot (about 30 centimeters) relative to the first BT device 20 is detectable by the distinction between the highest RSSI value and the second highest RSSI value.For example, if the BT device 30 is approximately 10 centimeters from the first BT device 20 and the BT device 40 is approximately 35 centimeters from the first BT device 20, the RSSI received from the devices 30, 40 indicates the physical separation between these devices 30, 40.

[0051] In various implementations, the RSSI from each of the additional BT devices (e.g., BT device 30, BT device 40, BT device X, BT device Y, etc.) is received within a few seconds. In certain cases, the RSSI from each of the additional BT devices is received within about 2 seconds to about 3 seconds. In additional certain cases, the RSSI from each of the additional BT devices is received within less than 2 seconds, e.g., within 1 second to 2 seconds, and in some cases, within less than 1 second.

[0052] Continuing to refer to FIG. 3, in an optional process performed after attempting to determine the RSSI of the BT devices (e.g., BT device 30, BT device 40, etc.) on the paired device list 110, in decision D2, the controller 50 determines whether the RSSI of the first BT device (additional device 1 (AD1), e.g., BT device 30) is the highest RSSI among the group of devices from which the RSSI is received. In certain cases, only one, two, three, etc. devices on the list 110 are within range to provide an RSSI response. As mentioned herein, the example of FIG. 3 is described with reference to two BT devices (e.g., AD1 and AD2, e.g., the first BT device 30 and the second BT device 40, respectively). In additional cases, only one device on the list 110 is within range to provide an RSSI response.

[0053] In a particular case, the determined highest RSSI (e.g., AD1) and the determined second highest RSSI (e.g., AD2) include normalized values ​​based on the respective types of BT devices, e.g., the type of BT device 30 and / or the type of BT device 40. For example, the RSSI values ​​from one or more of the additional BT devices (e.g., BT devices 30, 40) may be adjusted or otherwise normalized to provide comparable values ​​indicative of the distance between the additional BT device and the first BT device 20. In a particular case, the RSSI values ​​of the separate additional BT devices are normalized based on known characteristics (e.g., RSSI characteristics) of one or more of those devices, e.g., the strength of the BT transmitter in one or more of the first BT device 30, the second BT device 40, etc. In a particular example, the first BT device 30 includes a laptop or tablet computing device having a BT transmitter with a first (relatively high) strength, and the second BT device 40 includes a smartphone or smartwatch having a BT transmitter with a second (relatively low) strength. In this exemplary scenario, in normalizing the RSSI values ​​received from the first and second BT devices 30, 40, the controller 50 decreases the RSSI value from the first BT device 30 and / or increases the RSSI value from the second BT device 40 to take into account the known distinction in the BT transmitters. Additional examples of known RSSI characteristics of BT devices can include, for example, whether the BT device has a chipset that provides a larger RSSI, or whether the device is currently outputting audio, and / or whether the device was recently powered on. Additional factors that affect the RSSI can include whether other active BT radios are in the vicinity, device usage (e.g., higher power usage v. lower power usage), environmental factors such as temperature and / or humidity, obstructions, antenna type, orientation, environmental reflection and absorption of signals, exterior material of the product, etc. Normalizing the RSSI values ​​can be based on one or more of the above RSSI characteristics.

[0054] In an additional optional process, if decision D2 is "yes" (the RSSI of AD1 is the highest value received), in decision D3 the controller 50 determines whether the RSSI of the first BT device 30 exceeds the RSSI of the second BT device 40 by a threshold value. In a particular case, the threshold value indicates a physical separation (relative to the BT device 20) between the first BT device 30 and the second BT device 40. That is, as referred to herein, a physical separation between the devices of at least about 15 cm to about 30 cm can be reliably detected by RSSI discrimination. In a particular case, the threshold value takes into account a margin of uncertainty in the RSSI value. This margin of uncertainty can be influenced by discrimination in device RSSI characteristics (e.g., BT transmitter strength and / or class of device). In a particular example, the margin of uncertainty increases as the physical distance between the BT devices 30, 40 and the BT device 20 decreases (i.e., the devices get closer to each other). For example, the margin of uncertainty may be greatest when the highest and next highest RSSIs (from BT devices 30, 40, X, Y, etc.) indicate a proximity of up to about 2 feet (or about 60 cm) to about 3 feet (or about 90 cm) to the BT device 20. The threshold may include a value or range of values ​​that may at least partially account for the margin of uncertainty in the RSSI values ​​from the BT devices. In certain cases, the threshold may be set to a percentage or range of percentages (of transmitted signal strength), a fixed value or range of values ​​(e.g., in any units or power level (dBm)), or a variable value or range of values ​​(e.g., different based on known signal strength conditions of the additional BT devices 30, 40 and / or known conditions for the environment). In one specific, non-limiting example, the threshold value is equal to about 0.5 to about 3.5 decibel-milliwatts (dBm), in one specific, non-limiting example, about 1 dBm to about 3 dBm, and in one further specific, non-limiting example, about 2 dBm.In a particular example, the controller 50 is configured to use a hysteresis factor to wait for a fluctuating RSSI value from a given device (eg, BT device 30, BT device 40) to stabilize before terminating decision D3.

[0055] If decision D3 is 'Yes', then in process P4, the controller 50 is configured to select a first additional device (eg, the BT device 30) as the BT connection.

[0056] Returning to decision D2, in another optional process, if the RSSI of AD1 is not the highest RSSI received (N for decision D2), in process P5 the controller 50 selects a second BT device (e.g., AD2, such as the second BT device 40) or an additional BT device from the list with the highest RSSI. After selecting the BT device with the highest RSSI, the process returns to decision D3 as described herein to compare the devices with the highest and next highest RSSI, respectively.

[0057] If the decision D3 is "no" (N), i.e., the additional device with the highest RSSI does not have an RSSI value that exceeds the RSSI of the next highest RSSI device by a threshold, in an optional process P6, the controller 50 is configured to select between the highest RSSI device (e.g., BT device 30) and the next highest RSSI device (e.g., BT device 40) based on a BT connection hierarchy. In a particular case, the hierarchy of the BT connections is defined by a list 110 (FIG. 2), whereby higher priority connections are listed at the top of the list and lower priority connections are listed at the bottom of the list. In additional cases, one or more of the criteria for sorting the list 110 can be used to determine the hierarchy of the BT connections, for example, the recency of the connection with the BT device 20, the frequency of the connection with the BT device 20, whether the additional BT device is currently outputting audio, etc.

[0058] In process P7, after selecting an additional BT device for connection, the controller 50 attempts to establish a BT connection between the first BT device 20 and the selected additional device, e.g., BT device 30, BT device 40, or another BT device from the list 110.

[0059] Although various processes are illustrated in FIG. 3, it is understood that certain of these processes can be optionally deployed to connect two BT devices. For example, processes P1, P4, and P7 can be performed consecutively without any intervening decisions (e.g., decisions D2, D3) and optional processes associated with such decisions (e.g., processes P5, P6). In this exemplary scenario, the process includes: (e.g., in response to detecting a trigger in the BT device 20), attempting to determine received signal strength indicators (RSSIs) of a set of additional BT devices paired with the first BT device 20; selecting an additional BT device (e.g., the BT device 40) with the highest RSSI for connection; and attempting to establish a BT connection between the BT device 20 and the BT device 40.

[0060] In various implementations, the approach described with respect to FIG. 3 is configured to provide an efficient and effective means of connecting desired additional BT devices (e.g., BT device 30, BT device 40, etc.) with the first BT device 20 based primarily on physical proximity (e.g., as indicated by RSSI). That is, if at least two BT devices on the list 110 return RSSI responses (to process P1), the RSSI responses from those BT devices are used as a primary factor for selecting additional BT devices for connection with the first BT device 20, and the BT connection hierarchy (e.g., on the list 110) is used as a secondary factor in selecting additional BT devices for connection with the first BT device 20. In certain cases, the process described according to various implementations can enable the selection of additional BT devices with the highest RSSI within a few seconds.

[0061] In one particular additional implementation, the controller 50 in the BT device or multiple BT devices is configured to automatically perform optional actions after detecting a BT connection between the BT devices (e.g., a BT connection between BT device 20 and BT device 30). For example, establishing a BT connection between the BT device 20 and the BT device 30 may automatically (i.e., without further user intervention, such as a user interface command or other user-initiated trigger), initiate at least one of the following: a) an application (e.g., a media control application such as the Bose Hear audio control application provided by Bose Corporation, Framingham, MA, a power control / monitoring application, a fitness application, etc.) launching on the first BT device 20 if the first BT device 20 is capable of launching software applications (e.g., having smart device capabilities); b) a playlist, podcast, audio track, etc. to begin playing; c) personalization settings to be applied (e.g., noise cancellation settings, equalization settings, hear-through settings, etc.); d) a predefined volume level to be set on either or both of the BT devices 20, 30; e) changing the sound output configuration on either or both of the BT devices 20, 30; and / or f) changing transmission / reception parameters between the BT devices 20, 30, e.g., to reduce latency, based on device type, transmitted content and / or proximity.

[0062] In some examples described above, the additional BT device 30 may be a wearable audio device and may adjust and / or apply personalization settings when it detects a connection with a source BT device 20 having known characteristics and / or location. For example, if the BT device 30 is a headphone, audio glasses, or other wearable audio device and detects a connection with a BT (source) device 20 known to be in a user's office, home, gym, etc., the BT device 30 may apply certain personalization settings based on the known location of the BT device 20. For example, detecting a connection with a BT device 20 that is a work computing device may cause the BT device 30 to apply noise cancellation settings (e.g., medium to high noise cancellation) and equalization settings that enhance the playback of work-related music or other content (e.g., classical music playback). In certain examples, sound output configurations may be adjusted in the BT device 20 and / or the BT device 30 in response to detecting a connection between the BT devices 20, 30. In one example, the BT device 20 is a speaker such as a sound bar, and the BT device 30 is a set of headphones (or other wearable audio devices), and upon detecting a connection between the BT devices 20, 30 (e.g., via a SimpleSync™ connection provided by Bose Corporation, or a similar connection), the output configuration can be adjusted to mute or reduce the volume of the output on one of the BT devices while audio playback is occurring on the other BT device. In one example, the BT device 20 is a speaker, and the BT device 30 is a wearable audio device (e.g., headphones), and after detecting a connection between the BT devices 20, 30, the controller 50 in the BT device 20 mutes its own audio output. In yet another case, the process of automatic option selection performed by the controller 50 in one or both of the BT devices 20, 30 includes changing the transmission / reception parameters between the BT devices 20, 30 based on device type, transmitted content, and / or proximity, for example to adjust latency.For example, transmission / reception parameters between the BT devices 20, 30 may be adjusted based on the type of content being transmitted (e.g., to reduce latency for playback of video content or to extend range for playback of audio content). In some cases, transmission / reception parameters between the BT devices 20, 30 may be adjusted periodically and / or continuously based on updated RSSI values ​​of the BT devices 20, 30.

[0063] As mentioned herein, the process described with reference to FIG. 3 may include attempting to establish a BT connection with a BT device that is paired with the first BT device 20 and each has previously been connected to the first BT device 20 using a BT connection and is not currently connected to the first BT device 20. In an additional implementation, as illustrated in FIG. 4, certain processes are configured to be performed while the first BT device 20 is connected to an additional BT device (e.g., the BT device 30) from the list 110. Certain of these processes are described in terms of an operating mode of the controller 50, which in some examples is shown as a multipoint connection mode. In a specific example, the process P1 may include a sub-process for handling a scenario in which the first BT device 20 is already connected to an additional BT device when detecting a trigger. The sub-processes are separated into a first path (I) and a second path (II), each having the same initial process P1A of determining that a first additional device (e.g., the BT device 30) is already connected to the first BT device 20. In path (I), process P1B includes querying additional devices (e.g., within the RSSI range) on the list 110, excluding the first additional device (e.g., the BT device 30). In these cases, the controller 50 attempts to determine the RSSI from other BT devices on the list 110, excluding the first additional device (e.g., the BT device 30). In process P1C, the controller 50 selects the additional device (e.g., the BT device 40) with the highest RSSI from the responses received from the additional devices on the list 110. In contrast, in path (II), the controller 50 queries additional devices (e.g., within the RSSI range) on the list 110, including the already connected first additional device (e.g., the BT device 30), in process P1B'. In this path (II), in process P1C', the controller 50 selects the highest RSSI from the responses received from the additional devices on the list 110, and ignores the received RSSI from the connected first additional device (e.g., the BT device 30).In the above description of the sub-process at P1, the RSSI from the currently connected BT device is ignored either before or after receiving RSSI from an additional device on the list 110. In these cases, the controller 50 infers that the trigger is not an attempt to connect a device that is already connected and powered on.

[0064] In certain implementations, the above process in path (I) or (II) can also be performed for recently connected or recently connected additional devices, such as BT devices that connect to the BT device 20 within minutes (e.g., within seconds in certain cases) of the trigger. In certain non-limiting examples, the list 110 is updated based at least in part on the recency of the connection, within just a few minutes or seconds. In these cases, the recently connected additional device is treated as if it was already connected, and the controller 50 infers that the trigger is intended to initiate a connection with a separate additional device from the list 110.

[0065] In various additional implementations including the multi-point connection mode, the controller 50 is configured to maintain the BT connection with the currently connected BT device (e.g., the BT device 30) after detecting a trigger to connect with another BT device. That is, referring to Figures 3 and 4, the controller 50 can be configured to maintain the current BT connection with the device (e.g., the BT device 30) for any period between the detection of the trigger and the attempt to establish a BT connection between the first BT device 20 and the additional device selected from the list 110 (process P7). In a particular case, the BT connection with the currently connected BT device is maintained until the desired additional device is selected for connection, for example in process P4 or process P6.

[0066] Returning to FIG. 3, in another specific example of multi-point connection mode, the controller 50 is configured to simultaneously initiate a connection with two separate BT devices. In this example, the trigger includes a power-on command at the BT device 20 (e.g., when the BT device 20 is powered off or in a sleep state). In response to the power-on command and before selecting an additional BT device for connection (e.g., in process P7), the controller 50 is configured to connect with two separate BT devices having the highest and next highest RSSI responses, for example, following process P1. In these cases, the controller 50 connects with both BT devices (e.g., BT device 30 and BT device 40), and after one of the BT devices is selected for connection (e.g., in process P4 or process P6), the controller 50 disconnects the other BT device. In one example, the controller 50 receives a BT trigger including a power-on command at the BT device 20. In response to the power-on command, the controller 50 attempts to determine RSSI from a set of additional BT devices and receives RSSI responses from the BT device 30 and the BT device 40. The controller 50 then initiates a BT connection with both the BT device 30 and the BT device 40. In this example, the process P6 from decision D2 is performed (as described herein) to select a likely intended connection between the BT device 30 and the BT device 40. For example, the BT device 40 is selected for connection via either the process P4 or the process P6. In this case, once the BT device 40 is selected for connection, the controller 50 disconnects the BT connection with the BT device 30.

[0067] In various implementations, the multi-point connection mode is selectable via a user interface command, such as any of the user interface commands described herein. In a particular example, the multi-point connection mode is selectable via a user interface at the first BT device 20 and / or via a software application (or app) running on a connected device (e.g., a smart device) to control BT functionality at the first BT device 20.

[0068] The list 110 of BT devices described herein (FIG. 2) may be filtered periodically or in response to a trigger (e.g., selecting a lower priority BT device on the list or adding or subtracting a BT device from the list 110). In certain examples, filtering includes removing or reprioritizing duplicate BT devices, BT devices that cannot output audio, devices currently connected to the first BT device 20, devices most recently connected to the first BT device 20, devices that do not respond to connection attempts, or secondary devices in a paired or grouped device system. For example, filtering may include removing a second earphone in a wireless pair (e.g., when both are discoverable by BT), or a second or additional speaker in a stereo pair or stereo group (e.g., when separate speakers are discoverable by BT). In some of these specific cases, only a single representative BT device is considered for priority in the list 110. In addition, duplicate BT devices may be removed from the list 110 or placed in a low priority slot on the list 110. In yet further implementations, BT devices that are unable to output audio may be removed or otherwise deprioritized from list 110. In some cases, list 110 is periodically filtered to remove, for example, non-responsive devices, duplicate devices such as two instances of the same device as in the earbud example, or secondary devices in a paired or grouped device system such as a worker speaker in a master-worker group. In various implementations, periodically filtering list 110 increases the speed of future connection attempts by reducing the chances of attempting to connect with a device that is unlikely to be the desired device connection.

[0069] The controller 50 is configured to control the connection between the BT devices according to an RSSI-based approach, but these features can be disabled or otherwise bypassed on the first BT device 20 and / or any additional BT devices capable of implementing the processes described herein. For example, in some cases, the controller 50 is configured to attempt to establish a BT connection between the first BT device 20 and an additional BT device (e.g., the highest priority BT device 30) in response to a user command without determining the RSSI of the additional BT device. That is, in response to a user command, the controller 50 can be configured to apply a conventional approach to connect the BT device 20 to the highest priority BT device on the list 110, which in various cases is the most recently connected additional BT device or the most frequently connected additional BT device. The user command can take any form described herein, for example, a voice command, a tactile interface command such as a button press, a gesture-based command such as a head nod or shake, an interface command made through a connected application (App) in the BT device 20 or on another connected device such as a smartphone or tablet, etc. In yet further implementations, the controller 50 can be configured to apply any other conventional connection technique in response to a user command, thereby selecting or deselecting the RSSI-based technique described herein as part of the operation mode of the BT device.

[0070] In any case, the techniques described according to various implementations have the technical effect of enhancing Bluetooth-based connections between already paired devices. For example, the techniques disclosed according to various implementations can improve the accuracy of intended device connections as well as reduce latency in connections when compared to conventional techniques. Because conventional Bluetooth-based connection techniques rely on unreliable and / or inconsistent signals received via Bluetooth, these techniques often involve repeated attempts to connect devices, each of which has its own associated latency. Furthermore, because the range of Bluetooth signals is greater than the range of RSSI, a greater number of BT devices at greater separation distances are considered in conventional connection techniques. In contrast, the disclosed RSSI-based techniques can narrow the group of paired BT devices that can be connected based on the received RSSI, which necessarily indicates proximity. These techniques can avoid false positive connections and delays that frustrate users.

[0071] Still further, the use of RSSI as a primary factor in selecting from the paired device list prioritizes proximity (or inferred proximity) in BT connection decisions, increasing the likelihood of a desirable connection. These techniques can be particularly useful in improving the user experience when a single previously paired BT device is within RSSI range of a sink device, and / or in scenarios where multiple different previously paired BT devices are within range of each other (e.g., multiple different sink devices are within BT range of a source device). These RSSI-based techniques can also enable rapid processing of connection options for multiple devices, e.g., effectively selecting between devices when multiple RSSI responses indicate close proximity.

[0072] Consider an exemplary scenario in which a user wants to connect a smartphone (as a source device) to a speaker or wearable audio device (as a sink device) in the living room. The user's home also has a tablet computer in an upstairs bedroom and a laptop in an office separate from the living room. The tablet was most recently connected to the speaker (or wearable audio device). In a conventional approach, the user can initiate a trigger, such as powering on the speaker or wearable audio device while the smartphone is powered on. In some cases, the user may trigger a Bluetooth connection button or other interface command, and in other cases, the device is configured to automatically attempt to connect. In either case, in response to the trigger, the conventional approach attempts to connect the speaker to the most recently connected device within Bluetooth range, in this case the tablet in the upstairs bedroom. In one particular case, the conventional approach attempts to connect the speaker to the tablet multiple times until it finds a stable connection, which can take up to several seconds per connection attempt. Even if the speaker is successfully connected with the tablet, a user attempting to connect a smartphone in the same room as the speaker is frustrated because the intended device connection has been bypassed based on Bluetooth range and recency of the connection. The user may have to enter or otherwise engage with menus (e.g., visual menus or audio interfaces) for one or more of the BT devices to select the intended connection between the speaker and the smartphone.

[0073] In contrast, the approach according to various implementations attempts to determine the RSSI of paired BT devices on the device list before attempting to make a BT connection. Because RSSI is a strong indicator of device proximity, not all devices within Bluetooth range qualify for connection using the disclosed approach. In the above example, the smartphone may not receive RSSI from the tablet computer on the upper floor, or may receive a very weak RSSI from the tablet computer. In addition, the speaker or wearable audio device (as a sink) will receive a clear difference between the RSSI response from the smartphone in the same room compared to the laptop in a separate office. Therefore, even if the tablet computer and / or laptop are higher on the priority list than the smartphone the user wants to connect to, the clear distinction in the RSSI response (e.g., exceeding a threshold) makes the smartphone the clear choice for BT connection. These approaches can efficiently and automatically reach an intended connection between a smartphone and a speaker in the same room as each other, providing a more intuitive approach than conventional recency-based (or priority-based) rules. This is one of many exemplary advantages of the disclosed approach when considered in light of conventional systems and methods.

[0074] The above description provides embodiments that are compatible with BLUETOOTH SPECIFICATION Version 5.2 [Vol 0], December 31, 2019, as well as any previous versions, e.g., version 4.x and 5.x devices. In addition, the connection techniques described herein may be used for Bluetooth LE Audio, such as to help establish a unicast connection. Furthermore, it should be understood that this approach is equally applicable to other wireless protocols (e.g., non-Bluetooth, future versions of Bluetooth, etc.) in which a communication channel is selectively established between pairs of stations. Furthermore, while certain embodiments are described above as not requiring manual intervention to initiate pairing, in some embodiments, manual intervention may be required to complete pairing (e.g., an "Are you sure?" message presented to the user of the source / host device), e.g., to provide an additional security aspect to the approach.

[0075] In some implementations, the host-based elements of the approach are implemented within a software module (e.g., an “app”) that is downloaded and installed on the source / host (e.g., a “smartphone”) to provide pairing capabilities according to the approaches described above.

[0076] Although the above describes a particular order of operations performed by certain implementations of the invention, it should be understood that such orders are exemplary, as alternative embodiments may perform operations in different orders, combine certain operations, overlap certain operations, etc. Reference to a given embodiment herein indicates that the described embodiment may include a particular feature, structure, or characteristic, but all embodiments may not necessarily include the particular feature, structure, or characteristic.

[0077] The functionality described herein or portions thereof, and various modifications thereof (hereinafter "the Functionality") may be implemented at least in part via a computer program product (e.g., a computer program tangibly embodied in an information carrier, such as one or more non-transitory machine-readable media, for execution by or to control the operation of one or more data processing devices (e.g., a programmable processor, a computer, multiple computers, and / or programmable logic components, etc.).

[0078] The computer program may be written in any form of programming language, including compiled or interpreted languages, and it may be arranged in any form, including as a stand-alone program or as a module, component, subroutine or other unit suitable for use in a computing environment. The computer program may be arranged to be executed on one computer or on multiple computers at one site, or may be distributed across multiple sites and interconnected by a network.

[0079] The operations associated with implementing all or part of the functionality may be performed by one or more programmable processors executing one or more computer programs to perform the functions of the calibration process. All or part of the functionality may be implemented as special purpose logic circuitry, such as FPGAs and / or ASICs (Application Specific Integrated Circuits). Processors suitable for executing computer programs include, by way of example, both general purpose and special purpose microprocessors, as well as any one or more processors of any type of digital computer. Typically, a processor will receive instructions and data from a read-only memory, or a random access memory, or both. The components of a computer include a processor for executing instructions and one or more memory devices for storing instructions and data.

[0080] In various implementations, unless otherwise noted, electronic components described as "coupled" may be linked via conventional wired and / or wireless means such that the electronic components can communicate data with one another. Additionally, subcomponents within a given component may be considered to be linked via conventional paths, although not necessarily illustrated.

[0081] Although multiple implementations have been described, it is understood that additional modifications can be made without departing from the scope of the inventive concepts described herein, and therefore, other embodiments are within the scope of the following claims.

Claims

1. 1. A method comprising: In response to a BT trigger at a first Bluetooth (BT) device, attempting to determine received signal strength indicators (RSSIs) from a set of additional BT devices paired with the first BT device; selecting a first additional BT device for connection with the first BT device if the RSSI from the first additional BT device is the highest RSSI from the set of additional BT devices and exceeds an RSSI from a second additional BT device having a second highest RSSI by a threshold value; and if a difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold, selecting either the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy for the set of the additional BT devices paired with the first device.

2. The method of claim 1 , wherein the determined highest RSSI and the determined second highest RSSI comprise normalized values ​​based on a type of each of the first additional BT device and the second additional BT device.

3. The method of claim 1 , wherein the set of additional BT devices paired with the first BT device have each previously been connected to the first BT device using a BT connection and are not currently connected to the first BT device.

4. The method of claim 1 , wherein the threshold value takes into account a margin of uncertainty in the RSSI.

5. The method of claim 4, wherein the margin of uncertainty is greatest when the highest RSSI and the next highest RSSI indicate a maximum proximity of about 2 feet to about 3 feet to the first BT device.

6. The method of claim 1 , wherein the BT trigger includes a command to connect with a previously paired device and is a separate command from a new device connection command.

7. The method of claim 6 , wherein the BT trigger and the new device connection command are both interface commands that are enabled in an interface on the first BT device.

8. 2. The method of claim 1, wherein the BT connection hierarchy for the set of additional BT devices is prioritized based on at least one of the following: recentness of connection with the first BT device, frequency of connection with the first BT device, known RSSI characteristics of the additional BT devices, whether the additional BT devices are currently outputting audio, whether the additional BT devices were recently powered on, a user-defined priority, a BT profile of the last connection with the first BT device, or a recent sweep of proximity to the first BT device.

9. The method of claim 1, wherein if at least two BT devices in the set of additional BT devices return an RSSI response, the RSSI response from each of the at least two additional BT devices is used as a primary factor for selecting the BT device from the set of additional BT devices, and the BT connection hierarchy is used as a secondary factor in selecting the BT device from the set of additional BT devices.

10. The method of claim 1 , wherein in a paired configuration, the first BT device is a sink BT device and the additional BT device is a source BT device.

11. The method of claim 1 , wherein the RSSI from each of the additional BT devices is received within about 2 seconds to about 3 seconds.

12. 2. The method of claim 1, wherein a physical separation of about 6 inches to about 1 foot for the first BT device is detectable by differentiation between the highest RSSI and the second highest RSSI.

13. 2. The method of claim 1, wherein in response to receiving the BT trigger while the first BT device is connected to the first additional BT device having the highest RSSI, the first BT device selects the second additional BT device having the second highest RSSI for connection.

14. The method of claim 1, wherein the BT trigger includes at least one of detecting movement of the first BT device to a new location, detecting a change in time, detecting a BT range between the first BT device and at least one of the additional BT devices, providing an input to the first BT device, initiating charging of another device, mechanically actuating the first BT device, receiving an input from one of the additional BT devices, detecting a change in the BT state of the first BT device, detecting a change in the power state of the first BT device, detecting a loss of an existing BT connection with the first BT device, or detecting a loss of an existing Wi-Fi connection with the first BT device.

15. In multipoint connection mode, The method of claim 1 , further comprising: maintaining a BT connection with a currently connected BT device after detecting the BT trigger before selecting the first additional BT device or the second additional BT device.

16. The method of claim 15, further comprising ignoring RSSI from the currently connected BT device either before or after receiving RSSI from the set of additional BT devices paired to the first device.

17. In multipoint connection mode, the BT trigger includes a power-on command; in response to the power-on command and prior to selecting the first additional BT device or the second additional BT device, connecting with both the first additional BT device and the second additional BT device; The method of claim 1 , further comprising disconnecting a connection with one of the first additional BT device or the second additional BT device that is not selected for connection.

18. The method of claim 17 , wherein the multipoint connection mode is selectable via a user interface command.

19. a first Bluetooth (BT) device, Bluetooth radio, coupled to the BT radio; In response to a Bluetooth (BT) trigger at the first BT device, attempting to determine received signal strength indicators (RSSIs) from a set of additional BT devices paired with the first BT device; selecting a first additional BT device for connection with the first BT device if the RSSI from the first additional BT device is the highest RSSI from the set of additional BT devices and exceeds an RSSI from a second additional BT device having a second highest RSSI by a threshold value; a controller configured to control a BT connection by: selecting either the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy for a set of the additional BT devices paired with the first device if a difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed the threshold.

20. an electroacoustic transducer coupled to the controller for providing an audio output; 20. The BT device of claim 19, wherein the determined highest RSSI and the determined second highest RSSI comprise normalized values ​​based on a type of each of the first additional BT device and the second additional BT device.

21. The BT device of claim 19, wherein each of the set of additional BT devices paired with the first BT device has previously been connected to the first BT device using a BT connection and is not currently connected to the first BT device.

22. The BT device of claim 19, wherein the threshold value takes into account a margin of uncertainty in the RSSI.

23. 20. The BT device of claim 19, wherein the BT trigger includes a command to connect with a previously paired device, and is a separate command from a new device connection command.

24. In multipoint connection mode, The BT device of claim 19, further comprising: a BT connection maintaining unit that is connected to a currently connected BT device after detecting the BT trigger before selecting the first additional BT device or the second additional BT device.

25. The BT device of claim 19, wherein in a paired configuration, the first BT device is a sink BT device, the set of additional BT devices are source BT devices, and the RSSI from each of the set of additional BT devices is received within about 2 seconds to about 3 seconds.

Citation Information

Patent Citations

  • Method and equipment for determining position of wireless communication equipment

    CN110972058A

  • Data processing method and device, electronic equipment and storage medium

    CN113316222A

  • Method for blockchain based remittance and collection using keyword search and system using the same

    KR102123183B1

  • Bluetooth earphone connecting method, electronic device and storage medium

    US20200107127A1