Proximity-based connectivity for Bluetooth devices

By determining RSSI from paired Bluetooth devices and using a connectivity hierarchy, the method addresses the issue of failed connections in conventional Bluetooth reconnection, ensuring efficient and reliable device pairing based on physical proximity.

JP2026062696APending Publication Date: 2026-04-10BOSE CORP
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-12-11
Publication Date
2026-04-10

AI Technical Summary

Technical Problem

Conventional Bluetooth connection methods often fail to connect to the desired device when attempting to reconnect previously paired devices, as they prioritize recent connections over physical proximity.

Method used

A method that determines the Received Signal Strength Indicator (RSSI) from a set of paired Bluetooth devices to select the device with the highest RSSI for connection, using a threshold to differentiate between devices and a connectivity hierarchy to prioritize based on relevance, frequency, and other factors.

Benefits of technology

Improves the likelihood of connecting to the desired Bluetooth device by prioritizing proximity, reducing connection failures and enhancing user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026062696000001_ABST
    Figure 2026062696000001_ABST
Patent Text Reader

Abstract

Various implementations include methods for establishing Bluetooth (BT) connections between devices. [Solution] One exemplary method includes: attempting to determine the received signal strength indicator (RSSI) from a set of additional BT devices paired with the first BT device in response to a BT trigger in 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 and exceeds the RSSI from a second additional BT device having the second highest RSSI by a threshold; and selecting either the first or second additional BT device for connection based on the BT connection hierarchy if the difference between the RSSI from the first additional BT device and the RSSI from the second additional BT device does not exceed a threshold.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure generally relates to device connection. More specifically, this disclosure relates to establishing a Bluetooth connection between previously paired devices.

Background Art

[0002] Although Bluetooth pairing and connection have significant advantages, one drawback of traditional Bluetooth connections occurs during the attempted connection phase between previously paired devices (e.g., between a source device and a sink device). The conventional approach for connecting two devices via Bluetooth involves attempting to connect a sink (also referred to as an “output,” “destination,” or “peripheral”) device to the most recently connected source (also referred to as an “input” or “host”) device within the list of previously paired devices. However, these approaches often fail to connect to the desired device. [[ID=十三]]

Summary of the Invention

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

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

[0005] In some specific embodiments, the method includes: attempting to determine a received signal strength indicator (RSSI) from a set of additional BT devices paired with a first BT device in response to a BT trigger in a first Bluetooth (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 by a threshold the RSSI from a second additional BT device which has the second highest RSSI; and selecting either the first or second additional BT device for connection with the first BT device based on the BT connection hierarchy for the set of additional BT devices paired with the first 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 a threshold.

[0006] In additional specific embodiments, the first BT device includes a BT radio and a controller coupled with the BT radio and configured to control the BT connection by: attempting to determine a Received Signal Strength Indicator (RSSI) from a set of additional BT devices paired with the first BT device in response to a Bluetooth (BT) trigger in 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 by a threshold the RSSI from a second additional BT device having the second highest RSSI; and selecting either the first additional BT device or the second additional BT device for connection with the first BT device based on the BT connection hierarchy for the set of additional BT devices paired with the first 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 a threshold.

[0007] The implementation may include one of the following characteristics, or any combination thereof.

[0008] In a particular implementation, the highest and second highest RSSI determined include normalized values ​​based on the respective types of the first and second additional BT devices.

[0009] In certain cases, each additional set of Bluetooth devices paired with the first Bluetooth device has previously been connected to the first Bluetooth device using a Bluetooth connection, but is not currently connected to the first Bluetooth device.

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

[0011] In certain cases, the uncertainty margin is maximized when the highest RSSI and the next highest RSSI exhibit a proximity of approximately 2 to 3 feet to the first BT device.

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

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

[0014] In certain cases, the BT connectivity hierarchy for an additional set of BT devices is prioritized based on at least one of the following: relevance to the connection with the first BT device, frequency of connection with the first BT device, known RSSI characteristics of the additional BT device, whether the additional BT device is currently outputting audio, whether the additional BT device has recently been powered on, a user-defined priority, the BT profile of the last connection with the first BT device, or the most recent sweep of proximity to the first BT device.

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

[0016] In certain cases, in a paired configuration, the first BT device is the sink BT device, and the additional BT device is the source BT device.

[0017] In certain configurations, RSSIs from each additional BT device are received within approximately 2 to 3 seconds.

[0018] In a particular implementation, a physical separation of approximately 6 inches to 1 foot from the first BT device can be detected by the distinction between the highest RSSI and the second highest RSSI.

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

[0020] In a particular implementation, the BT trigger includes at least one of the following: detecting the movement of the first BT device to a new location; detecting a change in time; detecting the BT range between the first BT device and at least one of the additional BT devices; providing input to the first BT device; initiating charging of another device; mechanically operating 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 the loss of an existing BT connection with the first BT device; or detecting the loss of an existing Wi-Fi connection with the first BT device.

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

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

[0023] In some embodiments, in multipoint connection mode, the BT trigger includes a power-on command, and in response to the power-on command, before selecting a first additional BT device or a 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 either the first additional BT device or the second additional BT device that has not been selected for connection.

[0024] In certain implementations, the multipoint connection mode can be selected via user interface commands.

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

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

[0027] Details of one or more implementations are described in the accompanying drawings and the following description. Other features, objectives, and advantages will become apparent from the description and drawings, as well as from the claims.

Brief Description of the Drawings

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

[0029] Note that the drawings of various implementations are not necessarily to scale. The drawings are intended to show only typical aspects of the present disclosure and should not be regarded as limiting the scope of the implementations. In the drawings, like numerals represent like elements between the drawings.

Modes for Carrying Out the Invention

[0030] This disclosure is at least in part based on the recognition that selecting a Bluetooth (BT) device for connection can be improved by determining the Received Signal Strength Indicator (RSSI) from one or more devices in a paired device list. For example, an RSSI-dependent connection method can improve the likelihood of connecting to a desired BT device compared to a conventional modernity-based (or priority-based) method, thereby saving time and improving the user experience.

[0031] In certain cases, in response to a trigger on a first BT device, the technique includes attempting to determine the RSSI of an additional set of 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 a second additional (paired) BT device in the set by only 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, the selection is made between the first and second additional BT devices based on the BT connectivity hierarchy for the set of additional BT devices. Since RSSI is a strong indicator of physical proximity and provides a reliable signal, the RSSI-based techniques described herein increase the likelihood of connecting a desired set of (previously) paired BT devices. That is, these techniques rely at least in part on the assumption that the user wants to connect BT devices within proximity range and not necessarily based on the most recent connection or frequency of connection between devices.

[0032] Commonly labeled components in the diagram are considered substantially equivalent for illustrative purposes, and redundant descriptions of those components are omitted for clarity.

[0033] Figure 1 shows an example of a system 10 comprising a set of Bluetooth-enabled devices (or simply Bluetooth devices, or BT devices) in various implementation forms. As referred to herein, a Bluetooth-enabled device includes a Bluetooth radio or other Bluetooth-specific communication system that enables connectivity via the Bluetooth protocol. System 10 includes a first BT device 20 and an additional (or second) BT device 30. In this example, system 10 also includes a further additional (or third) BT device 40. In the example illustrated in Figure 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 “input devices”, or “host devices”). 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, radios, audio systems (e.g., portable and / or fixed), Internet Protocol (IP) phones, communication systems, entertainment systems, headsets, smart speakers, exercise and / or fitness equipment, portable media players, audio storage and / or playback systems, smartwatches or other smart wearable devices. Exemplary Bluetooth-enabled sink devices (e.g., the 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, communication systems, smartphones, vehicle audio systems, exercise and / or fitness equipment, outdoor (or open-air) audio devices, wearable private audio devices, and others.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. Bluetooth-enabled devices as described herein may change their role from source to sink or sink to source depending on the specific application.

[0034] A first Bluetooth-enabled 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 the Bluetooth protocol. In certain exemplary implementations, 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 electronic components 100 such as a power manager and / or power supply (e.g., a battery or power connector), memory, sensors (e.g., an IMU, an accelerometer / gyroscope / magnetometer, an optical sensor, an audio 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 and various reference data for programs that process and control the controller 50, data generated during the execution of any of the various programs performed by the controller 50, the Bluetooth connection process, and / or various updatable data for storage such as paired device data, connection data, device contact information, etc. Certain of the above components shown in Figure 1 are optional and are shown by dashed lines.

[0035] In certain cases, the controller 50 may include one or more microcontrollers or processors having digital signal processors (DSPs). 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, for example, a user interface (not shown) and control of applications driven by the BT device 20. In various implementations, the controller 50 includes a BT connection control module (or more 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 functionality in a BT device connection (e.g., between the BT device 20 and additional BT devices 30, 40, etc.) in any implementation described herein. As described herein, the controller 50 is configured to control functionality in RSSI-based connection methods in 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 an additional network interface that uses 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 certain implementations, the communication unit 60 is particularly suited to communicating with other communication units 60 within BT devices 30, 40 via Bluetooth. In additional specific implementations, the communication unit 60 is configured to communicate with the BT devices described herein using broadcast audio via BLE or a similar connection (including, for example, a proxy connection).

[0037] As described herein, the controller 50 controls the general operation of the Bluetooth-enabled device 20. For example, the controller 50 performs processes and controls for audio and data communication. In addition to general operation, the controller 50 activates Bluetooth functions implemented in the Bluetooth module 70 when it detects certain triggers (or events) as described herein. The controller 50 also activates 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 connectivity between the BT device 20 and additional BT devices 30, 40, etc., using radio frequency (RF) communication. The Bluetooth module 70 exchanges radio signals containing input / output data through an antenna (not shown). For example, in transmit mode, the Bluetooth module 70 processes the data by channel coding and spreading, converts the processed data into a radio frequency (RF) signal, and transmits the RF signal. In 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 restores the processed signal to data. In addition, the Bluetooth module 70 can ensure secure communication between devices and protect data using encryption.

[0039] 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 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 BT device 20, each of which is illustrated with dashed lines as optional in certain implementation configurations. The notations "a" and "b" indicate that components within BT devices 30, 40 are physically separated from similarly labeled components within BT device 20, but can take on similar forms and / or functions to their labeled counterparts within BT device 20. Further descriptions of these similarly labeled components are omitted for brevity. Furthermore, as referred to herein, the additional BT devices 30, 40 may differ from BT device 20 in terms of form factor, intended use, and / or capabilities, but in any case are configured to communicate with BT device 20 via Bluetooth.

[0040] Generally, Bluetooth modules 70, 70a, and 70b include a Bluetooth radio and additional circuitry. More specifically, Bluetooth modules 70a and 70b of BT devices 20 and BT devices 30, 40, etc., include both a Bluetooth radio and a Bluetooth LE (BLE) radio. In various implementations, the presence of a BLE radio within the Bluetooth module 70 is optional. That is, as referred to herein, various implementations utilize only a (classic) Bluetooth radio for connectivity. In implementations including a BLE radio, the Bluetooth radio and BLE radio are typically on the same integrated circuit (IC) and share a single antenna, while in other implementations, the Bluetooth radio and BLE radio are implemented as two separate ICs sharing a single antenna, or as two separate ICs having two separate antennas. The Bluetooth specification, namely Bluetooth 5.2: Low Energy, provides 40 channels to the BT device 20 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 as advertising channels in the Bluetooth specification, while the remaining channels 0 through 36 are designated as data channels in the Bluetooth specification.

[0041] As described herein, various implementations are particularly suitable for making device connection decisions between previously paired BT devices. For this purpose, the methods described according to these implementations relate to connecting additional BT devices 30, 40, etc., to the first BT device 20, where these additional BT devices have pairings with BT device 20. Figure 2 shows a paired BT device list (paired device list) 110 associated with BT device 20. In some cases, the paired device list 110 is stored in one or more parts of the memory of BT device 20, or otherwise is 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, but in other cases, the priority of devices on list 100 is arranged in any other priority scheme. As shown in this example, the paired device list 100 includes (additional) BT devices 30 and (additional) BT devices 40, along with space for further additional BT devices X, Y, Z, and further additional BT devices. In a particular example, 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 the user via an interface (e.g., a visual interface such as an audio interface, display, etc.) for pairing additional devices with BT device 20. Pairing of devices on the paired device list 110 with BT device 20 can be carried out according to any conventional method, e.g., any conventional Bluetooth, BLE, or other Bluetooth-related pairing method. A particular exemplary method of Bluetooth-related pairing is described in U.S. Patent No. 9,066,327 (published June 23, 2015), which is incorporated by reference in its entirety.Furthermore, a method for selecting and / or prioritizing connections between paired devices is described in U.S. Patent Application Publication No. 17 / 314,270 (filed May 7, 2021), which is incorporated in its entirety by reference.

[0042] In a particular example, the paired device list 110 is prioritized to control connections between BT device 20 and additional BT devices paired with it, such as BT device 30, BT device 40, etc. In a particular example, the paired device list 110 is arranged in terms of top-down priority, so that, in the example in Figure 2, BT device 30 is given priority over BT device 40, BT device 40 then has priority over BT device X, BT device X then 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: recent connection with the first BT device, frequency of connection with the BT device, user-defined priority, BT profile of the last connection with the first BT device (e.g., an audio connection profile with a higher priority than other connection profiles), whether the additional BT device is currently outputting audio, whether the additional BT device has recently been 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., RSSI, or any other proximity-based indicator such as an optical and / or acoustic sensor).

[0043] Referring to Figures 1 and 2, according to various implementations, the controller 50 within the BT device 20 is configured to enable proximity-based connections with BT devices on the paired device list 110, e.g., BT device 30, BT device 40, BT device X, etc. Figure 3 is a flowchart illustrating the process for controlling proximity-based connections between the BT device 20 and devices on the paired device list 110. It is understood that the flowchart in Figure 3 illustrates an exemplary configuration in which the first BT device 20 attempts to connect to up to two separate BT devices, e.g., 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 shown by the dashed line is optional. Referring to Figure 3, the process may include the following:

[0044] Process P1: In response to the detection of a trigger on the first BT device (e.g., device 20), an attempt is made to determine the Received Signal Strength Indicator (RSSI) of a set of additional BT devices paired with the first BT device 20 (e.g., devices from the paired BT device list 110 in Figure 2). In some cases, the trigger includes at least one of the following: detecting the BT range between the first BT device 20 and an additional BT device (e.g., BT device 30); providing input to the first BT device 20; initiating charging of another device (e.g., additional BT devices 30, 40, etc.); mechanically operating the first BT device 20; receiving input from an additional BT device (e.g., BT device 30); providing 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); detecting 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 the loss of an existing BT connection with the first BT device (e.g., including subsequent attempts to connect to the nearest BT device and / or a device on List 110); or detecting the loss of an existing Wi-Fi connection with the first BT device (e.g., including subsequent attempts to connect to the nearest BT device and / or a device on List 110).

[0045] Attempting to determine the Received Signal Strength Indicator (RSSI) of an additional set of BT devices does not require those BT devices to lose their active connections with another device (e.g., further BT devices). That is, if one of the additional BT devices (e.g., on List 110) has an active connection with a BT device, process P1 does not necessarily cause the additional BT device to disconnect its active connection until a connection with BT device 20 is established, or at least until an attempt is made to establish a BT connection with BT device 20 (process P7, Figure 3).

[0046] In certain implementations, the BT trigger includes a command to connect to a previously paired device (e.g., on device list 110), which is a separate command from the new device connection command. In certain cases, this connection command is initiated without user interface commands, such as automatically detecting the BT range between devices or starting to charge the BT device. In additional implementations, both the command to connect to a previously paired BT device (e.g., the BT trigger) and the new device connection command are interface commands that are enabled on the interface on the BT device 20. In certain examples, the connection command is a “quick connect” or “simple connect” command that includes abbreviated interface commands 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 the new device connection command which includes a press-and-hold command (e.g., for a few seconds). In certain implementations, the command to connect to a previously paired device puts the controller 50 into a separate connection mode from the command to connect to a new device. In other words, the controller 50 is configured to detect a trigger indicating a desire to connect with a previously paired device and to initiate an operating mode using a specific process described herein.

[0047] In a particular example, the BT radio in 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 an additional example, inputs to the first BT device 20 include commands from a connected application (application, app), such as a button press (e.g., activation of a power button, BT connection button, or other volume control button, or a similar interface command in the first BT device 20), power commands, connection commands, playback adjustment commands, and / or power-on commands in the first BT device 20 or additional BT devices 30, 40, etc. In certain examples, mechanically activating the first BT device 20 may include opening a case housing the first BT device 20 (e.g., a headphone case, earphone case, audio glasses case, etc.) 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 be placed on a surface, stepping on or otherwise getting on exercise equipment, opening a vehicle door, triggering a start in a vehicle, etc.). In certain cases, receiving input from an additional BT device (e.g., BT device 30) may include 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 that BT has recently been turned on in the additional BT device (e.g., BT device 30), or that the additional BT device (e.g., BT device 30) has entered pairing mode, etc. For example, sensors within additional electronic equipment 100 (Figure 1), such as motion sensors, optical sensors, and proximity sensors, can be configured to detect mechanical operation. In certain cases, the form factor of the first BT device 20 indicates the available inputs and / or mechanical operating mechanisms.

[0048] In certain examples, a 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., the first BT device 20) to charge an additional BT device (e.g., BT device 30). In some exemplary configurations, a first BT device may initiate wireless charging of another BT device when it is positioned close to and / or in physical contact with another. For example, a BT device such as BT device 30 may wirelessly charge another BT device such as BT device 20 using the onboard battery(s) in BT device 30 via inductive charging, such as using a Qi wireless charger or similar wireless charger. In additional examples, BT devices 20, 30 may 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 onboard battery power. In some examples, initiating a charging connection acts as a BT trigger as described herein. In certain non-limiting cases, 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 a smartphone to the BT speaker. Detection for charging purposes can also include hardwired connections (e.g., USB connections) and / or docking of a smartphone to a charging slot in the BT speaker. Detecting this charging connection allows the BT speaker (BT device 20) to automatically perform the process described herein (see, for example, Figures 3 and 4) to find the BT device with the highest RSSI, which in this example is 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 the establishment of the BT connection. Such additional actions are further described herein.

[0049] In various implementations, additional BT devices are on the paired device list 110, meaning 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 Figures 1 and 2, the controller 50 attempts to determine the RSSI of at least two BT devices 30, 40 because they are close 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 therefore the controller 50 can be configured to attempt to determine the RSSI of three, four, or more paired BT devices (e.g., BT devices X, Y, and Z on list 110). In these cases, BT device 20 can simultaneously or sequentially transmit signals to two or more BT devices on list 110, attempting to determine the RSSI from those BT devices.

[0050] In various implementations, using the example in Figure 1, the controller 50 in BT device 20 initiates a signal via BT module 70, sending data packets to BT module 70a in BT device 30 and BT module 70b in BT device 40, and receives return signals from each BT module 70a, b indicating the power at which those data packets are received (e.g., as a percentage of the power of the transmitted data packets). Both the transmitted and returned signals are sent via channels designated as data channels 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 BT devices 30, 40, for example, sequentially, in order to determine the mean RSSI, median RSSI, or other mathematically significant indicators of RSSI over a period of time. In certain specific cases, the mean RSSI over a period of time or several RSSI trials are used for the purpose of the connection technique depending on the implementation. As mentioned herein, transmitted power, environmental factors, and other parameters may affect the measured RSSI values. While RSSI may be insufficient to calculate the position of an additional BT device (e.g., BT device 30) relative to a 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.) relative to the first BT device 20. That is, the RSSI value can be used to determine whether BT device 30 is closer to or further away from the first BT device 20 compared to BT device 40 (e.g., on List 110) and / or further additional BT devices X, Y, Z, etc. In certain implementations, a physical separation of approximately 6 inches (approximately 15 centimeters) to approximately 1 foot (approximately 30 centimeters) relative to the first BT device 20 can be detected by the distinction between the highest RSSI value and the second highest RSSI value.For example, if BT device 30 is approximately 10 centimeters from the first BT device 20 and BT device 40 is approximately 35 centimeters from the first BT device 20, the RSSI received from devices 30 and 40 will indicate the physical separation between these devices 30 and 40.

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

[0052] Continuing with Figure 3, in an optional process performed after attempting to determine the RSSI of 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 was received. In a particular case, only one, two, three, etc., devices on list 110 are within the range of providing an RSSI response. As referred to herein, the example in Figure 3 is illustrated 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 the additional case, only one device on list 110 is within the range of providing an RSSI response.

[0053] In certain cases, the highest determined RSSI (e.g., AD1) and the second highest determined RSSI (e.g., AD2) include normalized values ​​based on each type of BT device, e.g., type BT device 30 and / or type 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 certain cases, the RSSI values ​​of separate additional BT devices are normalized based on one or more known characteristics (e.g., RSSI characteristics) of those devices, e.g., the strength of the BT transmitter in one or more of the first BT device 30, second BT device 40, etc. In a particular example, the first BT device 30 includes a laptop or tablet computing device with a first (relatively high) strength BT transmitter, and the second BT device 40 includes a smartphone or smartwatch with a second (relatively low) strength BT transmitter. In this exemplary scenario, when normalizing the RSSI values ​​received from the first and second BT devices 30, 40, the controller 50 takes known distinctions in the BT transmitters into account by decreasing the RSSI value from the first BT device 30 and / or increasing the RSSI value from the second BT device 40. Additional examples of known RSSI characteristics of BT devices may include, for example, whether the BT device has a chipset that provides a higher RSSI, or whether the device is currently outputting audio and / or whether the device has recently been powered on. Additional factors affecting RSSI may include whether other active BT radios are nearby, device usage (e.g., higher power usage v. lower power usage), environmental factors such as temperature and / or humidity, obstacles, antenna type, orientation, environmental reflection and absorption of the signal, product casing material, etc. Normalizing the RSSI value may 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. In certain cases, the threshold refers to the physical separation (relative to BT device 20) between the first BT device 30 and the second BT device 40. That is, as referred herein, a physical separation between devices of at least about 15 cm to about 30 cm can be reliably detected by the RSSI distinction. In certain cases, the threshold takes into account a margin of uncertainty in the RSSI values. This margin of uncertainty may be influenced by distinctions in device RSSI characteristics (e.g., BT transmitter strength and / or device class). In certain examples, the margin of uncertainty increases as the physical distance between BT devices 30, 40 and BT device 20 decreases (i.e., the devices get closer to each other). For example, the uncertainty margin may be maximum when the highest and next highest RSSIs (from BT devices 30, 40, X, Y, etc.) indicate a proximity of up to approximately 2 feet (or 60 cm) to approximately 3 feet (or 90 cm) to BT device 20. The threshold may include a value or range of values ​​that can at least partially account for the uncertainty margin in the RSSI values ​​from the BT devices. In certain cases, the threshold may be set as a percentage or range of percentages (of transmitted signal strength), a fixed value or range of values ​​(e.g., any unit or power level (dBm)), or a variable value or range of values ​​(e.g., different based on known signal strength conditions of additional BT devices 30, 40, and / or known conditions about the environment). In some specific non-limiting cases, the threshold is equal to approximately 0.5 to 3.5 decibel-milliwatts (dBm), in some specific non-limiting cases, it is approximately 1 dBm to 3 dBm, and in even more specific non-limiting cases, it is approximately 2 dBm.In a specific example, the controller 50 is configured to use a hysteresis coefficient to wait for the fluctuating RSSI values ​​from a given device (e.g., BT device 30, BT device 40) to stabilize before terminating decision D3.

[0055] If the result of judgment D3 is "yes", in process P4, the controller 50 is configured to select a first additional device (e.g., BT device 30) as the BT connection.

[0056] Returning to decision D2, if in another optional process 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 a second BT device 40) or an additional BT device from the list having the highest RSSI. After selecting the BT device having the highest RSSI, the process returns to decision D3 as described herein to compare the devices with the highest RSSI and the next highest RSSI, respectively.

[0057] If decision D3 is "No" (N), that is, if 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, then in the 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 the BT connection hierarchy. In a particular case, the BT connection hierarchy is defined by list 110 (Figure 2), where higher priority connections are listed at the top of the list and lower priority connections are listed at the bottom. In the case of an additional device, one or more of the criteria for sorting list 110 can be used to determine the BT connection hierarchy, e.g., the relevance of the connection with BT device 20, the frequency of the connection with 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, for example, BT device 30, BT device 40, or another BT device from list 110.

[0059] Figure 3 illustrates various processes, and it is understood that certain processes among these may be optionally deployed to connect two BT devices. For example, processes P1, P4, and P7 may be carried out sequentially without the intervention of 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 attempting to determine the Received Signal Strength Indicator (RSSI) of a set of additional BT devices paired with the first BT device 20 (e.g., in response to the detection of a trigger in BT device 20), selecting the additional BT device with the highest RSSI for connection (e.g., BT device 40), and attempting to establish a BT connection between BT device 20 and BT device 40.

[0060] In various implementations, the method described with respect to Figure 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.) to the first BT device 20, primarily based on physical proximity (e.g., as indicated by RSSI). That is, if at least two BT devices on List 110 return RSSI responses (to process P1), the RSSI responses from those BT devices are used as the primary factor in selecting additional BT devices for connection with the first BT device 20, and the BT connection hierarchy (e.g., on List 110) is used as a secondary factor in selecting additional BT devices for connection with the first BT device 20. In specific cases, the process described according to various implementations can enable the selection of an additional BT device with the highest RSSI within seconds.

[0061] In certain additional implementations, the controller 50 in a BT device or multiple BT devices is configured to automatically perform an optional action after detecting a BT connection between BT devices (for example, a BT connection between BT device 20 and BT device 30). For example, establishing a BT connection between BT device 20 and BT device 30 can automatically initiate at least one of the following (i.e., without further user intervention such as user interface commands or other user-initiated triggers): a) if the first BT device 20 can launch a software application (e.g., one with smart device capabilities), an application to launch on the first BT device 20 (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.); b) a playlist, podcast, audio track, etc. to start playback; c) applied personalization settings (e.g., noise cancellation settings, equalization settings, hear-through settings, etc.); d) a predetermined volume level set on either or both of BT devices 20 and 30; e) changing the sound output configuration on either or both of BT devices 20 and 30; and / or f) changing the transmit / receive parameters between BT devices 20 and 30, for example, to reduce latency, based on device type, transmitted content, and / or proximity.

[0062] In some of the examples described above, when an additional BT device 30 is a wearable audio device and detects a connection with a source BT device 20 that has known characteristics and / or location, personalization settings can be adjusted and / or applied. For example, if BT device 30 is headphones, audio glasses, or another wearable audio device and detects a connection with a BT (source) device 20 known to be in the user's office, home, gym, etc., BT device 30 can apply specific personalization settings based on the known location of BT device 20. For example, detecting a connection with BT device 20 that is a work computing device can cause BT device 30 to apply noise cancellation settings (e.g., medium to high noise cancellation) and equalization settings that improve the playback of work-related music or other content (e.g., classical music playback). In certain examples, the sound output configuration may be adjusted in BT device 20 and / or BT device 30 in response to detecting a connection between BT devices 20 and 30. In one example, if BT device 20 is a speaker such as a soundbar and BT device 30 is a set of headphones (or other wearable audio devices), and a connection between BT devices 20 and 30 is detected (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 another example, if BT device 20 is a speaker and BT device 30 is a wearable audio device (e.g., headphones), and a connection between BT devices 20 and 30 is detected, the controller 50 on BT device 20 mutes its own audio output. In yet another case, an automatic selection process performed by the controller 50 on one or both of BT devices 20 and 30 includes changing the transmit / receive parameters between BT devices 20 and 30 based on device type, transmitted content, and / or proximity, for example, to adjust latency.For example, the transmit / receive parameters between BT devices 20 and 30 may be adjusted based on the type of content being transmitted (e.g., to reduce latency for video content playback, or to extend the range for audio content playback). In some cases, the transmit / receive parameters between BT devices 20 and 30 may be adjusted periodically and / or continuously based on the updated RSSI values ​​of BT devices 20 and 30.

[0063] As referred to herein, the process described with reference to Figure 3 may include attempting to establish a BT connection with a BT device that has been paired with the first BT device 20, each of which has been previously connected to the first BT device 20 using a BT connection, and which is not currently connected to the first BT device 20. In additional implementations, as illustrated in Figure 4, certain processes are configured to be performed while the first BT device 20 is connected to an additional BT device from List 110 (e.g., BT device 30). Certain of these processes are described in terms of the operating mode of the controller 50, which in some examples is shown as a multipoint connection mode. In certain examples, process P1 may include a subprocess 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 subprocess is separated into a first path (I) and a second path (II), each having the same initial process P1A that determines 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 on list 110 (e.g., within the RSSI range), excluding the first additional device (e.g., BT device 30). In these cases, controller 50 attempts to determine the RSSI from the other BT devices on list 110, excluding the first additional device (e.g., BT device 30). In process P1C, controller 50 selects the additional device with the highest RSSI (e.g., BT device 40) from the responses received from the additional devices on list 110. In contrast, in path (II), controller 50 queries additional devices on list 110 (e.g., within the RSSI range), including the first additional device (e.g., BT device 30) that is already connected in process P1B'. In this path (II), in process P1C', controller 50 selects the highest RSSI from the responses received from the additional devices on list 110, ignoring the RSSI received from the connected first additional device (e.g., BT device 30).In the above description of the subprocess in P1, RSSI from the currently connected BT device is ignored either before or after receiving RSSI from additional devices on 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) may also be performed on any additional devices that are most recently connected or have recently connected, such as a BT device connected to BT device 20 within minutes of the trigger (e.g., within seconds in certain cases). In certain non-limiting examples, List 110 is updated at least partially based on the residency of the connection, and is updated within minutes or seconds. In these cases, any additional devices that have recently connected are treated as if they were already connected, and the controller 50 infers that the trigger is intended to initiate a connection with a separate additional device from List 110.

[0065] In various additional implementations, including multipoint connection mode, the controller 50 is configured to maintain the BT connection with the currently connected BT device (e.g., 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., 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 an additional device selected from the list 110 (process P7). In certain cases, the BT connection with the currently connected BT device is maintained until, for example, in process P4 or process P6, a desired additional device is selected for connection.

[0066] Returning to Figure 3, in another specific example of a multipoint connection mode, the controller 50 is configured to simultaneously initiate connections with two separate BT devices. In this example, the trigger includes a power-on command on BT device 20 (e.g., if BT device 20 is powered off or in sleep mode). In response to the power-on command and before selecting additional BT devices 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 on BT device 20. In response to the power-on command, the controller 50 attempts to determine the RSSI from the set of additional BT devices and receives RSSI responses from BT devices 30 and 40. Next, the controller 50 initiates a BT connection with both BT device 30 and BT device 40. In this example, processes D2 through P6 are performed (as described herein) to select the most likely intended connection between BT device 30 and BT device 40. For example, BT device 40 is selected for connection via either process P4 or process P6. In this case, once BT device 40 is selected for connection, the controller 50 disconnects the BT connection with BT device 30.

[0067] In various implementations, the multipoint connection mode can be selected via user interface commands, such as any user interface commands described herein. In a particular example, the multipoint connection mode can be selected via the user interface on the first BT device 20 and / or via a software application (or app) running on a device (e.g., a smart device) connected to the first BT device 20 to control BT functionality.

[0068] The list 110 of BT devices described herein (Figure 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 removing BT devices from the list 110). In certain examples, filtering may include removing or reprioritizing duplicate BT devices, BT devices that cannot output audio, devices currently connected to the first BT device 20, the most recently connected device 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., if both are discoverable by BT), or a second or additional speaker in a stereo pair or stereo group (e.g., if 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 lower-priority slot on the list 110. In further implementations, BT devices that cannot output audio may be removed from List 110 or otherwise given a lower priority. In some cases, List 110 is periodically filtered to remove, for example, unresponsive devices, duplicate devices such as two instances of the same device in the earphone 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 chance of attempting to connect with devices that are less likely to be the desired device connection.

[0069] The controller 50 is configured to control connections between BT devices according to RSSI-based methods, however these features may be disabled or bypassed on the first BT device 20 and / or any additional BT devices capable of performing the processes described herein. For example, in some cases, the controller 50 may be configured to attempt, in response to a user command, to establish a BT connection between the first BT device 20 and an additional BT device (e.g., the highest priority BT device 30) 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 conventional methods to connect BT device 20 to the highest priority BT device on List 110, which in various cases is the most recently connected additional BT device or the most frequently connected additional BT device. User commands can take any form described herein, such as voice commands, haptic interface commands such as button presses, gesture-based commands such as nodding or shaking the head, or interface commands performed on the BT device 20 or on another connected device such as a smartphone or tablet via a connected application (App). In further implementations, the controller 50 may be configured to apply any other conventional connection method in response to user commands, thereby enabling the selection or deselection of the RSSI-based method described herein as part of the operating 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 and reduce latency in connections compared to conventional techniques. Conventional Bluetooth-based connection techniques rely on unreliable and / or inconsistent signals received via Bluetooth, so these techniques often involve repeated attempts to connect devices, each with its own associated latency. Furthermore, since the range of Bluetooth signals is greater than the range of RSSI, a larger number of BT devices at greater isolation distances are considered in conventional connection techniques. In contrast, the disclosed RSSI-based techniques can narrow down the group of potentially paired BT devices based on the received RSSI, which inevitably indicates proximity. These techniques can avoid frustrating false-positive connections and delays for users.

[0071] Furthermore, using RSSI as a primary factor when selecting from a list of paired devices 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 the RSSI range of a sink device, and / or when multiple different previously paired BT devices are within each other's range (e.g., multiple different sink devices are within the BT range of a source device). These RSSI-based techniques can also enable rapid processing of connection options for multiple devices, allowing for effective selection between devices, for example, when multiple RSSI responses indicate close proximity.

[0072] Consider an exemplary scenario in which a user wants to connect their smartphone (as the source device) to a speaker in their living room or a wearable audio device (as the sink device). 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 is the most recently connected speaker (or wearable audio device). In the conventional method, the user can initiate a trigger, such as turning 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, or the device may be configured to attempt to connect automatically. In any case, in response to the trigger, the conventional method attempts to connect the speaker to the most recently connected device within Bluetooth range, in this case the tablet in the upstairs bedroom. In a particular case, the conventional method may attempt to connect the speaker to the tablet multiple times until a stable connection is detected, which could take up to several seconds per attempt. Even if a speaker is successfully connected to a tablet, users attempting to connect a smartphone in the same room may be frustrated because the intended device connection is bypassed based on Bluetooth range and connection responsiveness. Users may have to enter or otherwise interact with a menu (e.g., a visual menu or audio interface) for one or more BT devices to select the intended connection between the speaker and the smartphone.

[0073] In contrast, various implementations of the technique attempt to determine the RSSI of paired BT devices on the device list before attempting to establish a BT connection. Since RSSI is a strong indicator of device proximity, not all devices within Bluetooth range qualify for connection using the disclosed technique. In the example above, the smartphone may not receive an RSSI from the tablet computer upstairs, or it may receive a very weak RSSI from that tablet computer. Additionally, a speaker or wearable audio device (as a sink) will receive a clear difference in RSSI responses from a smartphone in the same room compared to a 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 wishes to connect to, a clear distinction in RSSI responses (e.g., exceeding a threshold) makes the smartphone the clear choice for the BT connection. These techniques can efficiently and automatically achieve the intended connection between a smartphone and a speaker in the same room, providing a more intuitive approach than conventional proximity-based (or priority-based) rules. This is one of the many exemplary advantages of the disclosed technique when considered in light of conventional systems and methods.

[0074] The above description provides embodiments compatible with BLUETOOTH SPECIFICATION version 5.2 [Vol 0], December 31, 2019, and any earlier versions, e.g., versions 4.x and 5.x devices. In addition, the connection techniques described herein may be used for Bluetooth LE audio, for example, to help establish a unicast connection. Furthermore, it should be understood that this technique is equally applicable to other wireless protocols (e.g., non-Bluetooth, future versions of Bluetooth, etc.) where a communication channel is selectively established between a pair 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, for example, to provide an additional security aspect to the technique (e.g., a "Are you sure?" prompt presented to the user of the source / host device).

[0075] In some implementations, the host-based elements of this method 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 the pairing capability described above.

[0076] While the above describes a specific sequence of operations performed by a particular implementation of the present invention, alternative embodiments may perform operations in a different order, combine certain operations, or duplicate certain operations; therefore, such an order is illustrative. References to given embodiments in this specification indicate that the embodiments described may include certain features, structures, or characteristics, but not all embodiments necessarily include such features, structures, or characteristics.

[0077] The functionalities or parts thereof described herein, and various modifications thereof (hereinafter referred to as "the Functionalities") may be implemented, at least in part, through computer program products (for example, computer programs tangibly embodied in information carriers such as non-temporary machine-readable media for execution by or control of the operation of one or more data processing devices (e.g., programmable processors, computers, multiple computers, and / or programmable logical components, etc.)).

[0078] Computer programs can be written in any form of programming language, including compiled or interpreted languages, and can be deployed as standalone programs or in any form, including modules, components, subroutines, or other units suitable for use in a computing environment. Computer programs can be deployed to run on one computer or on multiple computers at one location, or they can be distributed across multiple locations 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 that execute 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 circuits, such as FPGAs and / or ASICs (Application-Specific Integrated Circuits). Suitable processors for executing computer programs include, for example, both general-purpose microprocessors and special-purpose microprocessors, as well as any one or more processors of any type of digital computer. Generally, the processor will receive instructions and data from read-only memory, 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 specified, electronic components described as "coupled" can be linked via conventional wired and / or wireless means so that these electronic components can communicate data with one another. Furthermore, subcomponents within a given component can be considered to be linked via conventional paths, although this is not necessarily illustrated.

[0081] Several implementations have been described. Nevertheless, additional modifications can be made without departing from the scope of the concept of the present invention as described herein, and it is understood that other embodiments also fall within the scope of the following claims.

Claims

1. It is a method, Attempting to determine the Received Signal Strength Indicator (RSSI) from an additional set of BT devices paired with the first Bluetooth (BT) device in response to a BT trigger in the first Bluetooth (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 the second additional BT device having the second highest RSSI by a threshold, then the first additional BT device is selected for connection with the first BT device. A method comprising: selecting either the first additional BT device or the second additional BT device for connection with the first BT device, based on the BT connectivity hierarchy for the set of additional BT devices paired with the first 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.

2. The method according to claim 1, wherein the highest RSSI determined and the second highest RSSI determined include normalized values ​​based on the respective types of the first additional BT device and the second additional BT device.

3. The method according to claim 1, wherein each of the 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.

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

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

6. The method according to claim 1, wherein the BT trigger includes a command for connecting to a previously paired device, and is a separate command from a command for connecting to a new device.

7. The method according to claim 6, wherein both the BT trigger and the new device connection command are interface commands that are activated on the interface on the first BT device.

8. The method according to claim 1, wherein the BT connection hierarchy for the additional BT devices is prioritized based on the residency of the connection with the first BT device, the frequency of the 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 have been 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.

9. The method according to claim 1, wherein if at least two BT devices in the set of additional BT devices return RSSI responses, the RSSI responses from each of the at least two additional BT devices are used as the 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 according to 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 according to claim 1, wherein the RSSI from each of the additional BT devices is received within approximately 2 to 3 seconds.

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

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

14. The method according to claim 1, wherein the BT trigger includes at least one of the following: detecting the 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 input to the first BT device; initiating charging of another device; mechanically operating 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 the loss of an existing BT connection with the first BT device; or detecting the loss of an existing Wi-Fi connection with the first BT device.

15. In multipoint connection mode, The method according to claim 1, wherein the Bluetooth connection with the currently connected Bluetooth device is maintained after the Bluetooth trigger is detected, before selecting the first additional Bluetooth device or the second additional Bluetooth device.

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

17. In multipoint 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, connect to both the first additional BT device and the second additional BT device. The method according to claim 1, comprising disconnecting a connection with either the first additional BT device or the second additional BT device that has not been selected for connection.

18. The method according to claim 17, wherein the multipoint connection mode can be selected via a user interface command.

19. A first Bluetooth (BT) device, BT radio and, Coupled with the aforementioned BT radio, In response to a Bluetooth (BT) trigger in the first BT device, an attempt is made to determine the received signal strength indicator (RSSI) 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 of additional BT devices, and exceeds the RSSI from the second additional BT device having the second highest RSSI by a threshold, then the first additional BT device is selected for connection with the first BT device. A first Bluetooth (BT) device comprising: a controller configured to control the 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 the BT connection hierarchy for the set of additional BT devices paired with the first 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;

20. The system further comprises an electroacoustic transducer coupled to the controller for providing an audio output, The BT device according to claim 19, wherein the highest RSSI determined and the second highest RSSI determined include normalized values ​​based on the respective types of the first additional BT device and the second additional BT device.

21. The BT device according to claim 19, wherein each of the 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 according to claim 19, wherein the threshold takes into account the margin of uncertainty in the RSSI.

23. The BT device according to claim 19, wherein the BT trigger includes a command for connecting to a previously paired device, and is a separate command from a command for connecting to a new device.

24. In multipoint connection mode, The BT device according to claim 19, which maintains a BT connection with the 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 according to claim 19, wherein in a paired configuration, the first BT device is a sink BT device, the set of additional BT devices is a source BT device, and the RSSI from each of the set of additional BT devices is received within approximately 2 to 3 seconds.