Proximity-based connection for Bluetooth devices

Selecting the connected device by detecting the received signal strength indication (RSSI) of the Bluetooth device solves the problems of connection delay and poor user experience in traditional methods, and achieves more efficient Bluetooth device connection.

CN119213796APending Publication Date: 2024-12-27BOSE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380041115.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-04-06
Filing Date
2023-04-05
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

Traditional Bluetooth connection methods often fail to succeed when trying to connect between paired devices, especially because they ignore the received signal strength indicator (RSSI) depending on the recent connection or connection frequency, resulting in poor connection delays and user experience.

Method used

By detecting the received signal strength indication (RSSI) with the paired device, the device with the strongest signal is selected for connection and selecting based on the connection hierarchy when the signal difference does not exceed the threshold to improve the connection success rate.

Benefits of technology

Improves the accuracy and speed of device connections, reduces connection latency, and enhances the user experience, especially when the device is approaching, the right connection options can be quickly selected.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure HDA0005138852950000011
    Figure HDA0005138852950000011
  • Figure HDA0005138852950000021
    Figure HDA0005138852950000021
  • Figure HDA0005138852950000031
    Figure HDA0005138852950000031
Patent Text Reader

Abstract

Various implementations include a method for establishing a Bluetooth (BT) connection between devices. An example method includes, in response to a BT trigger at a first BT device, attempting to determine a received signal strength indication (RSSI) from a set of additional BT devices paired with the first BT device; if the RSSI from a 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 certain threshold, selecting the first additional BT device for connection with the first BT device; and 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, selecting 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 generally relates to device connections. More specifically, the present disclosure relates to establishing a Bluetooth connection between previously paired devices. Background Art

[0002] Although Bluetooth pairing and connection have significant benefits, one drawback of traditional Bluetooth connections occurs during the attempted connection phase between paired devices (e.g., a source device and a sink device). Conventional methods for connecting two devices via Bluetooth include attempting to connect a sink (also known as an "output," "target," or "peripheral") device to the most recently connected source (also known as an "input" or "host") device in the paired device list. However, these methods 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 way.

[0004] Various implementations include methods 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 specific aspects, a method includes: in response to a BT trigger at a first Bluetooth (BT) device, attempting to determine a received signal strength indication (RSSI) from a group 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 group of additional BT devices and exceeds the RSSI from a second additional BT device with the second highest RSSI by a certain threshold, selecting the first additional BT device for connection with the first BT device; 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 the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy of the group of additional BT devices paired with the first device.

[0006] In another specific aspect, a 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 BT trigger at the first Bluetooth (BT) device, attempting to determine a received signal strength indication (RSSI) from a group 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 group of additional BT devices and exceeds the RSSI from a second additional BT device with the second highest RSSI by a certain threshold, selecting the first additional BT device for connection with the first BT device, 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 the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy of the group of additional BT devices paired with the first device.

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

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

[0009] In certain cases, each of the additional BT devices in the set of additional BT devices paired with the first BT device was previously connected to the first BT device via a BT connection and is not currently connected to the first BT device.

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

[0011] In some cases, the margin of uncertainty is greatest when the highest RSSI and the second highest RSSI indicate a proximity of up to about 2 feet to about 3 feet relative 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 different command than a new device connection command.

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

[0014] In some cases, the BT connection hierarchy of the set of additional BT devices is prioritized based on at least one of: recency of connection to the first BT device, frequency of connection to the first BT device, known RSSI characteristics of the additional BT devices, whether the additional BT device is currently outputting audio, whether the additional BT device was recently powered on, a user-defined priority, a BT profile of a last connection to the first BT device, or a most recent scan in proximity to the first BT device.

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

[0016] In some cases, 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 additional BT device is received within about 2 seconds to about 3 seconds.

[0018] In some implementations, a physical separation of about six inches to about one foot relative to the first BT device can be detected by the difference between the highest RSSI and the second highest RSSI.

[0019] In some cases, 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 second additional BT device having the next highest RSSI is selected for connection.

[0020] In a specific implementation, the BT trigger includes at least one of the following: detecting that the first BT device moves to a new location, detecting a change in time of day, detecting a BT range between the first BT device and at least one of the additional BT devices, providing input at the first BT device, initiating charging of another device, mechanically actuating the first BT device, receiving 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.

[0021] In certain aspects, in the multi-point connection mode, before selecting the first additional BT device or the 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 the RSSI from the currently connected BT device before or after receiving the RSSI from the set of additional BT devices paired with the first device.

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

[0024] In some implementations, the multipoint connection mode can be selected via a user interface command.

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

[0026] Two or more features described in this disclosure, including those described in this Summary, can be combined to form implementations not specifically described herein.

[0027] The details of one or more implementations are discussed in the accompanying drawings and the description that follows. Other features, objects, and advantages will be apparent in the description, drawings, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 is a block diagram of a system including a Bluetooth enabled audio device according to various disclosed implementations.

[0029] Figure 2 is a schematic diagram of a paired BT device list according to various specific implementations.

[0030] Figure 3 is a flow chart illustrating procedures in a method according to various implementations.

[0031] Figure 4 is a flow chart illustrating procedures in a method according to various additional implementations.

[0032] It should be noted that the drawings of various embodiments are not necessarily drawn to scale. The drawings are intended only to illustrate typical aspects of the present disclosure and therefore should not be considered to limit the scope of the embodiments. In the drawings, similar numbers represent similar elements between the drawings. DETAILED DESCRIPTION

[0033] The present disclosure is based at least in part on the recognition that the selection of a Bluetooth (BT) device for connection can be enhanced by determining a received signal strength indication (RSSI) from one or more devices in a paired device list. For example, compared to conventional approaches focusing on proximity (or focusing on priority), an RSSI-based connection approach can increase the likelihood of connecting to a desired BT device, thereby saving time and enhancing the user experience.

[0034] In certain cases, in response to a trigger at a first BT device, a method includes attempting to determine the RSSI of a group 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 group of devices and exceeds the second highest RSSI from the second additional (paired) BT device in the group of devices by a certain 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 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 of the group of additional BT devices. Because RSSI is a strong indicator of physical proximity and provides a reliable signal, the RSSI-based methods described herein increase the likelihood of connecting a desired group of (previously) paired BT devices. That is, these methods rely at least in part on the assumption that the user wishes to connect to BT devices within a proximity range, and not necessarily based on the most recent connection or connection frequency between the devices.

[0035] For purposes of explanation, components generally labeled in the drawings are considered to be substantially equivalent components, and redundant discussion of those components is omitted for the sake of clarity.

[0036] Figure 1 An example of a system 10 including a set of Bluetooth-enabled devices (or simply Bluetooth devices or BT devices) according to various implementations is shown. As noted herein, a Bluetooth-enabled device includes a Bluetooth radio or other Bluetooth-specific communication system that enables connectivity 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 another additional (or third) BT device 40. Figure 1In the example shown, the first BT device 20 is a BT sink device (or "output device", "target device" or "peripheral device"), and the additional BT devices 30, 40 are BT source devices (or "input devices" or "host devices"). Example 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, radios, audio systems (e.g., portable and / or fixed), Internet Protocol (IP) phones, communication systems, entertainment systems, headphones, smart speakers, a piece of sports and / or fitness equipment, portable media players, audio storage and / or playback systems, smart watches or other smart wearable devices, and the like. Example Bluetooth-enabled sink devices (e.g., the first BT device 20) include, but are not limited to, headphones, headphones, audio speakers (e.g., portable and / or fixed, with or without "smart" device functionality), entertainment systems, communication systems, smartphones, vehicle audio systems, a piece of sports and / or fitness equipment, sound reinforcement (or outdoor) audio equipment, wearable personal audio devices, and the like. Additional BT devices may include portable game consoles, 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 source to sink or vice versa, depending on the particular application.

[0037] The first device 20 supporting Bluetooth 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) so that communication with other devices can be performed via the Bluetooth protocol. In certain example implementations, the BT device 20 may also include one or more microphones (mic) 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 electronic devices 100, such as a power manager and / or power supply (e.g., a battery or a power connector), a memory, a sensor (e.g., an IMU, an accelerometer / gyroscope / magnetometer, an optical sensor, a voice activity detection system), etc. In some cases, the memory may include flash memory and / or non-volatile random access memory (NVRAM). In certain cases, the memory stores: microcode for processing and controlling programs of the controller 50 and various reference data; data generated during execution of any of the various programs executed by the controller 50; the Bluetooth connection process; and / or various updateable data for safekeeping, such as pairing device data, connection data, device contact information, etc. Figure 1Some of the components shown above are optional and are shown in phantom lines.

[0038] In some 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, which includes multiple independent analog processors and digital processors. The controller 50 may provide coordination of other components of, for example, the BT device 20, such as control of a user interface (not shown) and an application program run by the BT device 20. In various specific implementations, the controller 50 includes one or more BT connection control modules, which may include software and / or hardware for performing 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 a BT device 20 and an additional BT device 30, 40, etc.) according to any specific implementation described herein. As described herein, the controller 50 is configured to control functions in a RSSI-based connection method according to various specific implementations.

[0039] The communication unit 60 may include a BT module 70 configured to employ a wireless communication protocol such as Bluetooth, and additional network interfaces such as those employing 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 adapted to communicate with other communication units 60 in the BT devices 30, 40 via Bluetooth. In another particular implementation, the communication unit 60 is configured to communicate with the BT devices described herein using broadcast audio over a BLE or similar connection (e.g., including a proxy connection).

[0040] As indicated herein, the controller 50 controls the general operation of the Bluetooth-enabled device 20. For example, the processor 50 performs processing and control of audio and data communications. In addition to general operations, the controller 50 activates Bluetooth functions implemented in the Bluetooth module 70 upon detecting certain triggers (or events) described herein. If certain conditions are met, the controller 50 activates operations (e.g., connections) between the BT device 20 and the additional BT devices 30, 40.

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

[0042] The additional BT devices 30, 40, etc. may include a controller 50a, 60b and a communication unit 60a, 60b having a BT module 70a, 70b, so that BT communication can be performed between the BT device 20 and the additional BT devices 30, 40. The additional BT devices 30, 40 may include one or more components described with respect to the BT device 20, and in some specific implementations, each component is shown in dashed lines as optional. The symbols "a" and "b" indicate that the components in the BT devices 30, 40 are physically separated from the similarly marked components in the BT device 20, but can take a form and / or function similar to their marked corresponding components in the BT device 20. For the sake of brevity, additional description of these similarly marked components is omitted. In addition, as noted herein, the additional BT devices 30, 40 may differ from the BT device 20 in form factor, intended use and / or functionality, but in any case are configured to communicate with the BT device 20 via Bluetooth.

[0043] In general, Bluetooth modules 70, 70a, 70b include Bluetooth radio and additional circuits. More specifically, the Bluetooth modules 70 of BT device 20 and the Bluetooth modules 70a, 70b of BT devices 30, 40, etc. include both Bluetooth radio and Bluetooth LE (BLE) radio. In various specific implementations, the presence of BLE radio in Bluetooth module 70 is optional. That is, as noted herein, various specific implementations only use (classic) Bluetooth radio for connection functions. In a specific implementation including BLE radio, Bluetooth radio and BLE radio are usually on the same integrated circuit (IC) and share a single antenna, while in other specific implementations, Bluetooth radio and BLE radio are implemented as two separate ICs sharing a single antenna or as two separate ICs with two separate antennas. The Bluetooth specification, i.e. Bluetooth 5.2 (low power consumption), provides 40 channels with a spacing of 2MHz to BT device 20. Forty channels are marked as 0 to 39, including 3 broadcast channels and 37 data channels. Channels labeled 37, 38, and 39 are designated as advertising channels in the Bluetooth specification, while the remaining channels 0-36 are designated as data channels in the Bluetooth specification.

[0044] As noted herein, various implementations are particularly suited for making device connection decisions between previously paired BT devices. Thus, the methods described according to these implementations involve connecting additional BT devices 30, 40, etc. to the first BT device 20, wherein the additional BT devices are paired with the BT device 20. Figure 2A paired BT device list (paired device list) 110 associated with the BT device 20 is shown. In some cases, the paired device list 110 is stored in one or more portions of a memory at the BT device 20, or is otherwise accessible by the controller 50 when maintaining, updating, or otherwise accessing the paired device list 110. In some cases, the paired device list 100 is arranged in a top-down priority, but in other cases, the priority of the devices on the list 100 is arranged in accordance with any other priority scheme. As shown in this example, the paired device list 100 includes (additional) BT devices 30 and (additional) BT devices 40, as well as additional additional BT devices X, Y, Z, and space for more additional BT devices. In some examples, 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 certain cases, the paired device list 110 is provided to a user through an interface (e.g., an audio interface, a visual interface such as a display, etc.), for example, for pairing additional devices with the BT device 20. Pairing of devices on the paired device list 110 with the BT device 20 can be performed according to any conventional method (e.g., any conventional Bluetooth, BLE, or other Bluetooth-related pairing method). Certain example methods for Bluetooth-related pairing are described in U.S. Patent No. 9,066,327 (published on June 23, 2015), the entire contents of which are incorporated by reference. In addition, methods for selecting connections between paired devices and / or prioritizing connections between paired devices are described in U.S. Patent Application No. 17 / 314,270 (filed on May 7, 2021), the entire contents of which are incorporated by reference.

[0045] In some examples, the paired device list 110 is prioritized to control the connection between the BT device 20 and the paired additional BT devices (e.g., the BT device 30, the BT device 40, etc.). In a specific example, the paired device list 110 is arranged in a top-down priority order such that Figure 2In the example of , 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, and so on. In some examples, the paired device list 110 is prioritized based on at least one of the following: recency of connection with the first BT device, frequency of connection with the BT device, 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 scan for proximity to the first BT device 20 (e.g., using RSSI or any other proximity-based indicator such as an optical and / or acoustic sensor).

[0046] refer to Figure 1 and Figure 2 According to various implementations, the controller 50 in the BT device 20 is configured to implement proximity-based connection with BT devices on the paired device list 110 (eg, the BT device 30 , the BT device 40 , the BT device X, etc.). Figure 3 1 is a flowchart showing a process of controlling a proximity-based connection between the BT device 20 and a device on the paired device list 110. It should be understood that Figure 3 The flowchart in FIG. 1 shows an example configuration in which a first BT device 20 attempts to connect to up to two different BT devices (e.g., an additional BT device 30 and another additional BT device 40). It should be understood that the illustrated method may be applicable to a group of several or more BT devices on a paired device list 110 as described herein. In various specific implementations, the process indicated by the dashed line is optional. Go to Figure 3 The process may include:

[0047] Process P1: In response to detecting a trigger at a first BT device (eg, device 20), attempting to determine a set of additional BT devices (eg, from Figure 2In some cases, the trigger includes at least one of: detecting a BT range between the first BT device 20 and an additional BT device (e.g., BT device 30), providing input at the first BT device 20, initiating charging of another device (e.g., additional BT device 30, 40, etc.), mechanically actuating the first BT device 20, receiving input from an additional BT device (e.g., BT device 30), providing input at the first BT device 20, a change in BT state of the first BT device 20 (BT enabled / disabled), a change in power state of the first BT device 20 (e.g., powered on, powered off, standby), detecting a change in time of day, detecting a loss of an existing BT connection with the first BT device 20 (e.g., including subsequent attempts to connect to the closest 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 subsequent attempts to connect to the closest BT device and / or a device on the list 110).

[0048] It should be understood that attempting to determine the received signal strength indication (RSSI) of a group of additional BT devices need not cause those BT devices to lose their active connection with another device (e.g., another BT device). That is, if one of the additional BT devices (e.g., on the list 110) has an active connection with the BT device, then process P1 will not necessarily cause the additional BT device to disconnect the active connection until a connection is established with the BT device 20, or at least until an attempt is made to establish a BT connection with the BT device 20 (process P7, Figure 3 ).

[0049] In a specific implementation, the BT trigger includes a command to connect to a previously paired device (e.g., on the device list 110), which is a command different from the new device connection command. In some cases, the connection command is initiated without a user interface command, for example, such as automatically detecting the BT range between devices or starting charging of the BT device. In another specific implementation, the command to connect to the previously paired BT device (e.g., BT trigger) and the new device connection command are both interface commands enabled at an interface on the BT device 20. In a specific example, the connection command is a "quick connection" or "simple connection" command, which includes a simplified interface command relative to the new device connection command. For example, compared to a new device connection command that includes a long press command (e.g., hold for a few seconds), the connection command for the previously paired device may include a single press command at a button or interface. In a specific implementation, the command to connect to the previously paired device puts the controller 50 in a connection mode different from the command to connect to the new device. That is, the controller 50 is configured to detect a trigger indicating a desire to connect to a previously paired device and initiate an operating mode with a specific process described herein.

[0050] In some examples, the BT radio at the BT device 20 detects the presence of an additional BT device within BT range, which acts as a trigger at the first BT device 20. In other examples, the input at the first BT device 20 includes: pressing a button (e.g., actuation of a power button, a BT connect button, or other volume adjustment button, or similar interface command at the first BT device 20); a command from a connected application (App), such as a power command, a connect command, a playback adjustment command; and / or a power-on command at the first BT device 20 or the additional BT device 30, 40, etc. In a specific example, mechanically actuating the first BT device 20 may include: opening a case (e.g., a headphone case, an earbud case, an audio glasses case, etc.) housing the first BT device 20; and / or removing, opening, or otherwise mechanically manipulating the first BT device 20 (e.g., opening a set of headphones or audio glasses to prepare to wear the device, moving an arm or mounting structure on a wearable audio device, positioning a speaker to rest on a surface, stepping on or otherwise mounting a piece of sports equipment, opening a vehicle door, triggering a vehicle start, etc.). In some cases, receiving input from the additional BT device (e.g., BT device 30) includes receiving BLE data indicating that the additional BT device (e.g., BT device 30) has moved within range of the first BT device 20, or indicating that BT was recently turned on at the additional BT device (e.g., BT device 30), or indicating that the additional BT device (e.g., BT device 30) has entered pairing mode, etc. The additional electronic device 100 ( Figure 1) may be configured to detect mechanical actuation, such as a motion sensor, an optical sensor, a proximity sensor, etc. In some cases, the form factor of the first BT device 20 will determine the available input and / or mechanical actuation mechanisms.

[0051] In a specific example, the BT trigger may include initiating charging of a BT device (e.g., a first BT device 20) and / or using a BT device (e.g., a first BT device 20) to charge an additional BT device (e.g., a BT device 30). In some example configurations, the first BT device may initiate wireless charging of another BT device when placed within proximity of each other and / or in physical contact with each other. For example, a BT device such as a BT device 30 may wirelessly charge an additional BT device such as a BT device 20 using one or more onboard batteries at the BT device 30, for example, via inductive charging such as using a Qi wireless charger or a similar wireless charger. In another example, the BT devices 20 and 30 may charge each other in a wired charging configuration, for example, via a USB connector or other wired power connector. In various specific implementations, one of the BT devices charges another BT device using an onboard battery power supply. In some examples, the initiation of a charging connection serves as a BT trigger as described herein. In a specific non-limiting case, a first BT device (e.g., an audio device 20, such as a BT speaker) may be configured to detect another BT device (e.g., an audio device 30, such as a smart phone) positioned to be charged via a BT speaker. Detection for charging purposes may include proximity-based charging detection, such as a Qi wireless charging connection of a smartphone to a BT speaker. Detection for charging purposes may also include a hardwired connection (e.g., a USB connection) and / or docking of a smartphone in a charging slot at a BT speaker. Detection of the charging connection may cause the BT speaker (BT device 20) to automatically perform the processes described herein (e.g., reference to FIG. 1 ). Figure 3 and Figure 4 ) to find the BT device with the highest RSSI, in this example, the BT device 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 an additional operation in response to the establishment of the BT connection. Such additional operations are further described herein.

[0052] In various implementations, the additional BT devices are on the paired device list 110 , that is, each of the additional BT devices has established a pairing with the first BT device 20 and has previously connected with the first BT device 20 . Figure 1 and Figure 2In the example shown, the controller 50 attempts to determine the RSSI of at least two BT devices 30, 40 due to their proximity to the first BT device 20. It should be understood that process P1 can be applied to any number of BT devices within the RSSI range, and thus, 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 send signals to two or more BT devices on the list 110 simultaneously or sequentially to attempt to determine the RSSI from these BT devices.

[0053] In various implementations, using Figure 1 In the example of, the controller 50 at the BT device 20 initiates a signal via the BT module 70 to send data packets to the BT module 70a at the BT device 30 and the BT module 70b at the BT device 40, and receives a return signal from each BT module 70a, 70b indicating the power of receiving these data packets (e.g., as a percentage of the power of the transmitted data packets). In the Bluetooth specification or "classic" Bluetooth (compared to the BLE specification), both the transmission signal and the return signal are sent through a channel designated as a data channel. In some cases, the controller 50 is configured to attempt to (e.g., continuously) determine multiple RSSIs from the BT devices 30, 40 in order to determine the average RSSI, median RSSI, or other mathematically important indicators of RSSI over a period of time. In some cases, the average RSSI or multiple RSSI attempts over a period of time are used for the purpose of the connection method according to the specific implementation. As described herein, transmission power, environmental factors, and other parameters may affect the measured RSSI value. Although RSSI may not be sufficient to calculate the location of an additional BT device (e.g., BT device 30) relative to the first BT device 20, RSSI can 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.) to the first BT device 20. That is, RSSI values ​​can be used to determine whether BT device 30 is closer to or farther away from the first BT device 20 than BT device 40 and / or additional additional BT devices X, Y, Z, etc. (e.g., on list 110). In a particular implementation, a physical separation of about six inches (about 15 centimeters) to about one foot (about 30 centimeters) relative to the first BT device 20 can be detected by the difference between the highest RSSI value and the second highest RSSI value. For example, if BT device 30 is about 10 centimeters away from the first BT device 20 and BT device 40 is about 35 centimeters away from the first BT device 20, the RSSI received from the devices 30, 40 will indicate the physical separation between these devices 30, 40.

[0054] In various implementations, the RSSI from each additional BT device (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 additional BT device is received within about 2 seconds to about 3 seconds. In other certain cases, the RSSI from each additional BT device is received in less than two seconds (e.g., within one second to two seconds); and in some cases, the RSSIs are received in less than one second.

[0055] Continue to refer Figure 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 a group of devices that received RSSI. In some cases, only one, two, three, etc. devices on the list 110 are within range of providing RSSI responses. As noted herein, the description of the two BT devices (e.g., AD1 and AD2, e.g., the first BT device 30 and the second BT device 40, respectively) is described. Figure 3 In other cases, only one device on list 110 is within range to provide an RSSI response.

[0056] In some cases, the determined highest RSSI (e.g., AD1) and the determined second highest RSSI (e.g., AD2) include normalized values ​​based on the type of each BT device (e.g., the type of BT device 30 and / or the type of BT device 40). For example, 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 ​​indicating the distance between the additional BT devices and the first BT device 20. In some cases, RSSI values ​​for different additional BT devices are normalized based on known characteristics (e.g., RSSI characteristics) of one or more of these devices, such as the strength of the BT transmitter at one or more of the first BT device 30, the second BT device 40, etc. In a specific example, the first BT device 30 includes a laptop computer or tablet computing device having a BT transmitter of a first (relatively high) strength, and the second BT device 40 includes a smart phone or smart watch having a BT transmitter of a second (relatively low) strength. In this example scenario, when normalizing RSSI values ​​received from the first BT device 30 and the second BT device 40, the controller 50 reduces the RSSI value from the first BT device 30 and / or increases the RSSI value from the second BT device 40 to account for known differences in BT transmitters. Additional examples of known RSSI characteristics of BT devices may include, for example, whether the BT device has a chipset that provides a greater RSSI, or whether the device is currently outputting audio, and / or whether the device was recently powered on. Additional factors that affect RSSI may include whether other active BT radios are in the vicinity, device usage (e.g., higher power usage vs. lower power usage), environmental factors such as temperature and / or humidity, obstructions, antenna type, orientation, environmental reflection and absorption of signals, product external materials, etc. Normalizing RSSI values ​​may be based on one or more of the above-mentioned RSSI characteristics.

[0057] In an additional optional process, if decision D2 is yes (RSSI of AD1 is the highest value received), then in decision D3, the controller 50 determines whether the RSSI of the first BT device 30 exceeds a certain threshold of the RSSI of the second BT device 40. In some cases, the threshold indicates the physical distance between the first BT device 30 and the second BT device 40 (relative to the BT device 20). That is, as noted herein, the physical distance between the devices can be reliably detected by the difference in RSSI to be at least about 15 cm to about 30 cm. In certain cases, the threshold takes into account the margin of uncertainty in the RSSI value. Differences in device RSSI characteristics (e.g., BT transmitter strength and / or device category) may affect the margin of such uncertainty. In some examples, as the physical distance between the BT devices 30, 40 and the BT device 20 decreases (i.e., the devices are closer together), the margin of uncertainty increases. For example, the margin of uncertainty may be greatest when the highest RSSI and the second highest RSSI (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) relative 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 value from the BT device. In some cases, the threshold may be set to a percentage or range of percentages (of the transmitted signal strength), a fixed value or range of values ​​(e.g., in arbitrary units or power levels (dBm)), or a variable value or range of values ​​(e.g., different based on known signal strength conditions of the attached BT devices 30, 40 and / or known conditions of the relevant environment). In certain non-limiting examples, the threshold is equal to about 0.5 to about 3.5 decibel milliwatts (dBm), and in specific non-limiting examples, the threshold is equal to about 1 dBm to about 3 dBm, and in other specific non-limiting examples, the threshold is equal to 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 finalizing the decision D3 .

[0058] If the decision D3 is yes, then in process P4 , the controller 50 is configured to select the first additional device (eg, the BT device 30 ) for BT connection.

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

[0060] If decision D3 is no (N), i.e., the RSSI value of the additional device with the highest RSSI does not exceed the RSSI of the second highest RSSI device by the threshold, then in optional process P6, the controller 50 is configured to select between the highest RSSI device (e.g., BT device 30) and the second highest RSSI device (e.g., BT device 40) based on the BT connection hierarchy. In some cases, the hierarchy of BT connections is represented by list 110 ( Figure 2 ) such that higher priority connections are listed at the top of the list and lower priority connections are listed at the bottom of the list. In other cases, the hierarchy of BT connections may be determined using one or more criteria for sorting the list 110, such as the recency of connection with the BT device 20, the frequency of connection with the BT device 20, whether an additional BT device is currently outputting audio, etc.

[0061] 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 (eg, the BT device 30 , the BT device 40 , or other BT devices from the list 110 ).

[0062] Although it shows Figure 3 , but it should be understood that certain of these processes may be optionally deployed to connect two BT devices. For example, processes P1, P4, and P7 may be performed in sequence without intervening decisions (e.g., decisions D2, D3) and optional processes associated with these decisions (e.g., processes P5, P6). In this example scenario, the process includes attempting to determine a received signal strength indication (RSSI) of a set of additional BT devices paired with the first BT device 20 (e.g., in response to detecting a trigger at the BT device 20), selecting the additional BT device (e.g., 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.

[0063] In various specific implementations, reference Figure 3The described method is configured to provide an efficient and effective means of connecting desired additional BT devices (e.g., BT device 30, BT device 40, etc.) to 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 in selecting an additional BT device 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 an additional BT device for connection with the first BT device 20. In certain cases, the described process according to various specific implementations may enable the selection of an additional BT device with the highest RSSI within a few seconds.

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

[0065] In some of the above examples, in the case where the additional BT device 30 is a wearable audio device and a connection with a source BT device 20 having known characteristics and / or location is detected, personalized settings can be adjusted and / or applied. For example, if the BT device 30 is a headset, audio glasses, or other wearable audio device and a connection with a BT (source) device 20 known to be located in the user's office, home, gymnasium, etc. is detected, the BT device 30 can apply specific personalized 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 a noise reduction setting (e.g., medium-high noise reduction) and an equalization setting that enhances the playback of work-related music or other content (e.g., classical music playback). In a specific example, the sound output configuration can be adjusted at the BT device 20 and / or BT device 30 in response to detecting a connection between the BT devices 20 and 30. In one example, the BT device 20 is a speaker such as a sound bar, the BT device 30 is a set of headphones (or other wearable audio devices), and a connection between the BT devices 20, 30 is detected (e.g., via SimpleSync provided by Bose Corporation). TM In an example, the controller 50 at the BT device 20 mutes its own audio output after detecting the connection between the BT devices 20 and 30. In a further case, the automatic optional process performed by the controller 50 at one or both BT devices 20 and 30 includes changing the transmission / reception parameters between the BT devices 20 and 30 based on the device type, the transmission content and / or the proximity, for example, to adjust the delay. For example, the transmission / reception parameters between the BT devices 20 and 30 can be adjusted based on the type of transmission content (for example, to reduce the delay in playing video content, or to enhance the range of playing audio content). In some cases, the transmission / reception parameters between the BT devices 20 and 30 can be adjusted periodically and / or continuously based on the updated RSSI values ​​of the BT devices 20 and 30.

[0066] As pointed out in this article, reference Figure 3 The process may include attempting to establish a BT connection with BT devices paired with the first BT device 20, which BT devices have previously been connected to the first BT device 20 via a BT connection and are not currently connected to the first BT device 20. In additional specific implementations, such as Figure 4As shown, some processes are configured to be performed when the first BT device 20 is connected to other BT devices (e.g., BT device 30) from the list 110. Some of these processes are described according to the operating mode of the controller 50, and in some examples, the operating mode is represented as a multi-point 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 a trigger is detected. The sub-process is divided into a first path (I) and a second path (II), each of which has the same initial process P1A, that is, determining that the first additional device (e.g., BT device 30) is already connected to the first BT device 20. In path (I), process P1B includes querying additional devices other than the first additional device (e.g., BT device 30) on the list 110 (e.g., within the RSSI range). In these cases, the controller 50 attempts to determine the RSSI from other BT devices other than the first additional device (e.g., BT device 30) on the list 110. In process P1C, the controller 50 selects the additional device (e.g., the BT device 40) having the highest RSSI from the responses received from the additional devices on the list 110. In contrast, in path (II), the controller 50 in process P1B' queries the additional devices on the list 110 (e.g., within the RSSI range), including the first additional device (e.g., the BT device 30) that has been connected. 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, while ignoring the RSSI received from the first additional device (e.g., the BT device 30) that has been connected. In the above description of the sub-process in P1, the RSSI from the currently connected BT device is ignored before or after the RSSI is received from the additional device on the list 110. In these cases, the controller 50 infers that the trigger is not an attempt to connect to a connected powered-on device.

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

[0068] In various additional implementations including a multi-point connection mode, the controller 50 is configured to maintain a BT connection with a currently connected BT device (eg, BT device 30) after detecting a trigger to connect with another BT device. Figure 3 and Figure 4 , the controller 50 may be configured to maintain a current BT connection with a device (e.g., BT device 30) during any period of time between detecting a trigger and attempting to establish a BT connection between the first BT device 20 and an additional device selected from the list 110 (process P7). In some cases, 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.

[0069] return Figure 3 In another specific multi-point connection mode example, the controller 50 is configured to initiate connections with two different BT devices at the same time. 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 different BT devices with the highest and second highest RSSI responses, for example, after process P1. In these cases, the controller 50 connects with two BT devices (e.g., BT device 30 and BT device 40), and after selecting one of the BT devices 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 the RSSI from the group of additional BT devices, and receives RSSI responses from the BT device 30 and the BT device 40. Then, the controller 50 initiates a BT connection with both the BT device 30 and the BT device 40. In this example, decision D2 to process P6 (as described herein) is executed to select a possible intended connection between the BT device 30 and the BT device 40. For example, the BT device 40 is selected for connection via process P4 or 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.

[0070] In various implementations, the multi-point connection mode can be selected via a user interface command (e.g., any user interface command described herein). In a specific example, the multi-point connection mode can be selected 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) for controlling BT functions at the first BT device 20.

[0071] The list 110 of BT devices described herein may be filtered periodically or in response to a trigger (eg, selection of a lower priority BT device on the list, or addition or subtraction of a BT device from the list 110). Figure 2 ). In some examples, the screening includes removing or deprioritizing duplicate BT devices, BT devices that cannot output audio, devices currently connected to the first BT device 20, devices that were 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, the screening may include removing a second earbud in a wireless pair (e.g., where both can be discovered by BT), or a second or additional speaker in a stereo pair or stereo group (e.g., where the individual speakers can be discovered by BT). In some of these cases, only a single representative BT device is considered a priority in the list 110. In addition, duplicate BT devices may be removed from the list 110 or placed in a low priority time slot on the list 110. In other specific implementations, BT devices that cannot output audio may be removed from the list 110 or otherwise deprioritized. In some cases, the list 110 is periodically screened, for example, to remove unresponsive devices, duplicate devices (such as, two instances of the same device as in the example of earbuds), or secondary devices in a paired or grouped device system (such as, a working speaker in a main working group). In various implementations, periodically screening the list 110 increases the speed of future connection attempts by reducing the chance of attempting to connect to a device that is unlikely to be the desired device.

[0072] Although the controller 50 is configured to control connections between BT devices according to an RSSI-based approach, these features may be disabled or otherwise bypassed on the first BT device 20 and / or any additional BT device capable of performing 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 may 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 may take any form described herein, such as a voice command, a tactile interface command such as pressing a button, a gesture-based command such as nodding or shaking the head, an interface command made via an application (App) connected at the BT device 20 or on other connected devices such as a smartphone or tablet, and the like. In other implementations, the controller 50 may be configured to apply any other conventional connection method in response to a user command, so that the RSSI-based method described herein may be selected or deselected as part of the operating mode of the BT device.

[0073] In any case, the methods described in accordance with various specific implementations have the technical effect of enhancing Bluetooth-based connections between paired devices. For example, compared to conventional methods, the methods disclosed in accordance with various specific implementations can improve the accuracy of the intended device connection and reduce delays in the connection. Since conventional Bluetooth-based connection methods rely on unreliable and / or inconsistent signals received via Bluetooth, these methods typically involve repeated attempts to connect devices, each with its own associated delays. In addition, since the Bluetooth signal range is greater than the RSSI range, more BT devices at larger separation distances are considered in conventional methods. In contrast, the RSSI-based methods disclosed in the present invention can narrow down the group of potential paired BT devices for connection based on the received RSSI, which necessarily indicates proximity. These methods can avoid false alarm connections and can avoid delays that frustrate users.

[0074] Further, using RSSI as the primary factor for selecting from a list of paired devices prioritizes proximity (or inferred proximity) in BT connection determinations, thereby increasing the likelihood of a desired connection. These methods can be particularly useful in enhancing the user experience in situations where a single previously paired BT device is within RSSI range of a sink device, and / or where multiple previously paired different 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 methods can also enable rapid processing of connection options for multiple devices, for example, enabling efficient selection between devices when multiple RSSI responses indicate close proximity.

[0075] Take an example scenario where a user wants to connect a smartphone (as a source device) to a speaker or wearable audio device (as a sink device) in her living room. The user also has a tablet computer in the upstairs bedroom at home, and a laptop computer in the office, which is separate from the living room. The tablet computer was recently connected to the speaker (or wearable audio device). In conventional methods, the user can initiate a trigger when turning on the smartphone, such as turning on the speaker or wearable audio device. In some cases, the user can trigger a Bluetooth connection button or other interface command, while in other cases, the device is configured to automatically attempt to connect. In any case, in response to the trigger, the conventional method will attempt to connect the speaker to the most recently connected device within the Bluetooth range, in this case, the tablet computer in the upstairs bedroom. In some cases, the conventional method will attempt to connect the speaker to the tablet computer multiple times until a stable connection is detected, and each connection attempt may take up to several seconds. Even if the speaker is successfully connected to the tablet computer, the user who attempts to connect the smartphone in the same room to the speaker is also frustrated because her expected device connection has been bypassed based on the Bluetooth range and the recency of the connection. The user may have to enter or otherwise use menus (eg, visual menus or audio interfaces) of one or more BT devices to select the desired connection between the speaker and the smartphone.

[0076] In contrast, methods according to various specific implementations attempt to determine the RSSI of paired BT devices on the device list before attempting a BT connection. Since RSSI is a strong indicator of device proximity, not all devices within Bluetooth range will be eligible for connection using the methods disclosed in the present invention. In the above example, the smartphone may not receive the RSSI from the tablet upstairs, or may receive a very weak RSSI from the tablet. In addition, there will be a significant difference between the RSSI response received by the speaker or wearable audio device (as a sink) from the smartphone in the same room and the RSSI response from the laptop in a separate office. In this way, even if the tablet and / or laptop is ranked higher than the smartphone that the user wants to connect to on the priority list, the significant difference in RSSI response (e.g., exceeding a threshold) makes the smartphone a clear choice for BT connection. These methods can efficiently and automatically achieve the expected connection between the smartphone and the speaker in the same room, thereby providing a more intuitive method than conventional recency-based (or priority-based) rules. This is one of the many example benefits of the methods disclosed in the present invention when considered from the perspective of conventional systems and methods.

[0077] The above description provides an implementation scheme compatible with the Bluetooth Specification Version 5.2 [Vol 0] as of December 31, 2019, and any prior versions (e.g., Version 4.x and 5.x devices). In addition, the connection techniques described herein can be used for Bluetooth LE audio, such as to help establish a unicast connection. In addition, it should be understood that the method is equally applicable to other wireless protocols (e.g., non-Bluetooth, future versions of Bluetooth, etc.) in which communication channels are selectively established between paired sites. In addition, although certain embodiments are described above as requiring no manual intervention to initiate pairing, in some embodiments, manual intervention may be required to complete the pairing (e.g., presenting "Are you sure?" to the user of the source / host device), for example, to provide further security aspects for the present method.

[0078] In some implementations, the host-based elements of the method are implemented in software modules (e.g., "Apps") that are downloaded and installed on a source / host (e.g., "smartphone") to provide pairing functionality according to the above method.

[0079] Although a particular order of operations performed by certain embodiments of the present invention is described above, it should be understood that such an order is exemplary, as alternative embodiments may perform the operations in a different order, combine certain operations, overlap certain operations, etc. References in the specification to a given embodiment indicate that the embodiment may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic.

[0080] The functions or parts thereof described herein, as well as various modifications thereof (hereinafter referred to as "functions") may be implemented at least in part via a computer program product, such as a computer program tangibly embodied in an information carrier, such as one or more non-transitory machine-readable media, for executing, or controlling the operation of one or more data processing devices, such as a programmable processor, a computer, multiple computers and / or a programmable logic component.

[0081] A computer program may be written in any form of programming language, including compiled or interpreted languages, and may be deployed 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. A computer program may be deployed on one computer or executed on multiple computers at one site or distributed across multiple sites and interconnected by a network.

[0082] The actions associated with implementing all or part of the functions can 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 functions can be implemented as special-purpose logic circuits, such as FPGAs and / or ASICs (application-specific integrated circuits). Processors suitable for executing computer programs include, for example, both general-purpose microprocessors and special-purpose microprocessors, and any one or more processors of any type of digital computer. Generally speaking, the processor will receive instructions and data from a read-only memory or a random access memory or both. The components of the computer include a processor for executing instructions and one or more memory devices for storing instructions and data.

[0083] In various specific implementations, unless otherwise specified, electronic components described as "coupled" may be linked via conventional hardwires and / or wireless means so that these electronic components can transmit data to each other. In addition, subcomponents within a given component may be considered to be linked via conventional paths, which may not necessarily be shown.

[0084] A number of specific implementations have been described. However, it should be understood that additional modifications may 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. A method comprising: In response to a BT trigger at a first Bluetooth BT device, attempting to determine a received signal strength indication RSSI from a set of additional BT devices paired with 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 group of additional BT devices and exceeds the RSSI from a second additional BT device having the next highest RSSI by a certain threshold, 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 the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy structure of the group of 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 each additional BT device in the set of additional BT devices paired with the first BT device was previously connected to the first BT device via a BT connection and is not currently connected to the first BT device. The method of claim 1 , wherein the threshold 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 second highest RSSI indicate a proximity of up to about 2 feet to about 3 feet relative to the first BT device. 6 . The method of claim 1 , wherein the BT trigger comprises a command to connect with a previously paired device and is a command different from a new device connection command. 7 . The method according to claim 6 , wherein the BT trigger and the new device connection command are both interface commands enabled at an interface on the first BT device.

8. The method of claim 1 , wherein the BT connection hierarchy of the set of additional BT devices is prioritized based on at least one of: recency of connection to the first BT device, frequency of connection to 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 a last connection to the first BT device, or a most recent scan for proximity to the first BT device.

9. The method of claim 1 , wherein if at least two BT devices in the group 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 in selecting the BT device from the group of additional BT devices, and the BT connection hierarchy is used as a secondary factor in selecting the BT device from the group 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 additional BT device is received within about 2 seconds to about 3 seconds.

12. The method of claim 1, wherein a physical separation of about six inches to about one foot relative to the first BT device is detectable by a difference between the highest RSSI and the second highest RSSI.

13. 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, selecting the second additional BT device having the second highest RSSI for connection.

14. The method of claim 1 , wherein the BT trigger comprises at least one of: detecting that the first BT device moves to a new location, detecting a change in time of day, detecting a BT range between the first BT device and at least one of the additional BT devices, providing input at the first BT device, initiating charging of another device, mechanically actuating the first BT device, receiving 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. The method according to claim 1, wherein in a multi-point connection mode, Before selecting the first additional BT device or the second additional BT device, maintaining a BT connection with a currently connected BT device after detecting the BT trigger. 16 . The method of claim 15 , further comprising ignoring the RSSI from the currently connected BT device before or after receiving the RSSI from the set of additional BT devices paired with the first device.

17. The method according to claim 1, wherein in a multi-point connection mode, The BT trigger includes a power-on command, in response to the power-on command and before 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, and A connection is disconnected 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, comprising: BT Radio; and A controller coupled to the BT radio and configured to control the BT connection by: In response to a BT trigger at the first Bluetooth BT device, attempting to determine a received signal strength indication RSSI from a set of additional BT devices paired with 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 group of additional BT devices and exceeds the RSSI from a second additional BT device having the next highest RSSI by a certain threshold, 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 the first additional BT device or the second additional BT device for connection with the first BT device based on a BT connection hierarchy structure of the group of additional BT devices paired with the first device.

20. The BT device of claim 19, further comprising an electroacoustic transducer coupled to the controller for providing an audio output, 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 additional BT device in the set of additional BT devices paired with the first BT device was previously connected to the first BT device via a BT connection and is not currently connected to the first BT device.

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

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

24. The BT device according to claim 19, wherein in a multi-point connection mode, Before selecting the first additional BT device or the second additional BT device, maintaining a BT connection with a currently connected BT device after detecting the BT trigger.

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