Improved adaptive frequency hopping (AFH) channel classification algorithm for narrowband radio devices in battery management system-like (BMS-like) environments

By detecting deep fading channels through a channel assessment algorithm and dynamically adjusting the threshold, the problem of poor channel quality in the BMS environment is solved, transmission reliability is improved, power consumption is reduced, and more efficient channel utilization is achieved.

CN120658284APending Publication Date: 2025-09-16INFINEON TECHNOLOGIES AMERICAS CORP
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510294248.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-03-13
Filing Date
2025-03-13
Publication Date
2025-09-16

AI Technical Summary

Technical Problem

Existing adaptive frequency hopping algorithms cannot effectively identify poor channel quality caused by deep multipath fading and shadowing effects in the metal box environment of the battery management system, resulting in low transmission reliability, high power consumption and increased latency.

Method used

Detect deep fading channels through channel assessment algorithms, dynamically adjust packet error rate thresholds, identify and blacklist channels, and dynamically reclaim channels to adapt to changes in the BMS environment using channel-specific deep fading detection and RSSI comparison techniques.

Benefits of technology

The accuracy of channel assessment is improved, the packet error rate is reduced, the power consumption is reduced, and the transmission reliability and efficiency are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120658284A_ABST
    Figure CN120658284A_ABST
Patent Text Reader

Abstract

Techniques are disclosed for detecting deep fading caused by an amplitude drop and a fast phase change on a channel within a frequency band of a narrowband radio operating in a BMS-like environment with strong multipath. The techniques may identify an interfering channel, a deep fading channel, or a weak signal channel. A channel assessment algorithm may receive a packet on one of a plurality of channels to determine a received signal strength for each packet associated with the channel. The algorithm may determine a PER associated with other channels of the frequency band based on a number of wrongly received packets and a difference between a received signal strength of each packet and a reference signal strength associated with that channel. The PER may be compared to a PER threshold. If the PER of the channel is greater than the PER threshold, the channel may be excluded from being used by the radio.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure generally relates to channel estimation in wireless communications. More specifically, but not by way of limitation, the present disclosure relates to evaluating or classifying channels for adaptive frequency hopping (AFH) algorithms when communicating using narrowband wireless signals in industrial, automotive, electronic, or other applications. Background Art

[0002] Many short-range wireless communications in industrial, automotive, and home applications use narrowband radio devices based on technologies such as Bluetooth (BT), Bluetooth Low Energy (BLE), Wi-Fi, 802.15.4, etc., which share the transmission medium by operating in the Industrial, Scientific, and Medical (ISM) band. For example, the battery management system (BMS) of an electric vehicle can use BLE to continuously monitor the voltage, current, temperature, and other operating characteristics of the battery cell array to manage battery performance and ensure the functional safety of the battery. Due to the shared transmission medium, if the transmitted data packet collides with another packet transmitted from another device at the same time and on the frequency channel, the data packet may be damaged or lost.

[0003] One technique used by Bluetooth or Bluetooth Low Energy (BLE) to overcome interference and avoid packet collisions is a form of frequency hopping spread spectrum (FHSS), known as adaptive frequency hopping (AFH). BT can divide the frequency band into smaller channels (for example, 40 channels in the case of BLE) and rapidly hop between channels when transmitting packets. To further reduce the chance of interference, BT can adapt its hopping sequence, as the term AFH implies. Channel selection algorithms can dynamically track noisy and busy channels and avoid such channels when sending packets through a "channel blacklisting mechanism." However, transmissions can fail for many reasons, including weak signal strength, multipath fading, and external radio interference. While channel assessment techniques can identify noisy and busy channels due to transmissions from interfering devices, external interference signals may be relatively weak within the shielded metal battery box of a vehicle's BMS. Conversely, poor channel quality in this environment may be due to internal effects such as multipath fading, signal shadowing, stationary standing waves, broadband noise from the DC / DC converter, and the dynamic temperature and environmental factors associated with the battery operating in the vehicle. Conventional channel assessment techniques suitable for tracking external interference sources may not adequately detect the poor-quality channels inherent in BMS-like environments. As a result, AFH may not blacklist poor-quality channels, resulting in poor transmission reliability, higher power consumption, and increased transmission delay. An AFH algorithm is needed that can effectively identify channels experiencing deep multipath fading and shadowing effects inherent in BMS-like environments. BRIEF DESCRIPTION OF THE DRAWINGS

[0004] The described embodiments and their advantages may be best understood by referring to the following description taken in conjunction with the accompanying drawings, which do not limit any changes in form and detail that may be made to the described embodiments by those skilled in the art without departing from the spirit and scope of the described embodiments.

[0005] Figure 1 Depicted is a histogram showing the distribution of number of packets as a function of received signal strength indication (RSSI) in a BMS environment and external and internal factors that may cause packet reception failure over a range of RSSIs, in accordance with one aspect of the present disclosure.

[0006] Figure 2 Deep fades are depicted with rapid amplitude drops and phase jumps observed in a BMS environment due to multiple reflection paths as a function of BLE operating frequency, in accordance with one aspect of the present disclosure.

[0007] Figure 3A An example is depicted showing RSSI measured at a BLE receiver as a function of channel number of a BLE frequency band, and a metric for detecting a deep fade at a channel based on a difference between the RSSI measured at the channel and a moving average of the RSSI over a series of channels, according to an embodiment.

[0008] Figure 3B An example is depicted showing RSSI measured at a BLE receiver as a function of channel number of a BLE frequency band, and a metric for detecting a deep fade at a channel based on a difference between the RSSI measured at the channel and RSSI measured at an adjacent channel, according to an embodiment.

[0009] Figure 4 is a flow chart illustrating a method for a BLE receiver, when receiving packets on a BLE channel, to scan the channel for deep fades to determine whether to suspend the channel for AFH, according to an embodiment.

[0010] Figure 5 is a flow chart illustrating a method for a BLE receiver, when receiving packets on a BLE channel, to scan the channel for deep fades, radio interference, or weak signals to determine whether to suspend the channel for AFH, according to an embodiment.

[0011] Figure 6 An AFH channel map according to an embodiment is shown, which contains information on the classification of suspended channels and their associated PER and RSSI resulting from scanning channels in a BMS-like environment.

[0012] Figure 7 is a flow chart illustrating a method for classifying BLE channels for AFH by a BLE receiver when receiving packets by dynamically adjusting a packet error rate threshold (PER threshold) for channel classification based on the number of suspended channels, according to an embodiment.

[0013] Figure 8 is a flow chart illustrating a method for classifying BLE channels for AFH by a BLE receiver when receiving packets by dynamically adjusting a PER threshold based on the number of suspended channels and a PER threshold for channel classification, according to an embodiment.

[0014] Figure 9 is a flow chart illustrating a method, according to an embodiment, for updating an AFH channel map by a BLE receiver based on passive scanning and active scanning and a comparison of the PER of packets received on the channel during a current iteration of the passive scan with the PER of packets received on the channel during a previous iteration of the passive scan.

[0015] Figure 10 is a flow chart illustrating a method, according to one embodiment, for a receiver to detect channel-specific deep fades when receiving packets on a range of channels to exclude the channel from use.

[0016] Figure 11 Depicted is a block diagram of a Bluetooth device showing hardware and software drivers deployed to scan channels to classify BLE channels for AFH channel mapping, including channel-specific deep fades, according to one embodiment. DETAILED DESCRIPTION

[0017] In the following description, numerous specific details are set forth in order to provide a thorough understanding of the concepts presented. The concepts presented may be practiced without some or all of these specific details. In other instances, well-known process operations are not described in detail so as not to unnecessarily obscure the concepts described. Although some concepts will be described in conjunction with specific examples, it should be understood that these examples are not intended to be limiting.

[0018] Narrowband wireless communication technologies, such as Bluetooth (BT), Bluetooth Low Energy (BLE), and 802.11x (Wi-Fi), can operate in a wide range of applications and diverse environments. Increasingly, battery management systems (BMS) deployed in electric vehicles can use BLE to wirelessly monitor, report, and manage the operating characteristics of the battery cells. Wireless BMS architectures offer many advantages, such as reduced wiring harnesses, flexible placement, ease of maintenance, and lower assembly and labor costs. The BMS is typically housed in a metal vehicle battery compartment to reduce interference from external radios, such as Wi-Fi radios, which share the transmission medium with BLE. BLE can use an adaptive frequency hopping (AFH) scheme to further mitigate interference by rapidly hopping between narrow channels (e.g., 40 channels) in the 2.4 GHz ISM operating band in a pattern known to both the transmitter and receiver when transmitting packets. In AFH, a BLE transceiver can perform channel assessment to detect noisy and busy channels so that it can adaptively avoid these channels when selecting a hopping sequence (a mechanism known as channel blacklisting).

[0019] In a metal box operating environment such as a BMS, channel quality may also be degraded due to internal factors such as multipath fading, shadowing, and stationary standing waves. For example, despite a relatively strong signal (e.g., received signal strength indicator (RSSI) much greater than the receiver sensitivity), the BMS may experience a high packet error rate (PER) for some channels due to deep multipath fading and shadowing. Multipath signal propagation can cause fluctuations in the amplitude, phase, and angle of arrival of the received signal. Severe degradation of the channel signal-to-noise ratio and signal distortion (caused by rapid amplitude and phase jumps) may cause communication failure at certain channel frequencies. Other internal factors that may contribute to poor channel quality and high PER may include broadband noise from the BMS's DC / DC converter, environmental variables such as the wide operating temperature range (-40°C to +125°C) due to heating and cooling of the vehicle, and so on.

[0020] While the AFH algorithm can perform channel estimation to identify noisy and busy channels for blacklisting, channel estimation may not be effective at detecting channels experiencing strong multipath and shadowing effects encountered in a BMS-like environment. For example, channel estimation can measure the RSSI of packets received on a channel and collect PER statistics for these packets to identify interfering channels as channels with high RSSI but also high PER. Conversely, channel estimation can measure the RSSI on blacklisted channels to determine whether to reclaim the channel for AFH use when the RSSI of the blacklisted channel from the interference source drops below a threshold. These types of channel estimation are not intended to identify channels experiencing deep fades (e.g., low RSSI) in strong multipath and shadowing environments. As a result, these deep fade channels may be misinterpreted as non-interfering and used by the frequency hopping sequence when they should be blacklisted.

[0021] Disclosed herein are techniques for detecting deep fades with low channel signal-to-noise ratio and signal distortion caused by rapid amplitude or phase changes on channels within a frequency band of a narrowband wireless radio operating in a BMS-like environment with strong multipath. In one aspect, the techniques may identify a channel as a busy channel due to external interference, a channel experiencing deep fades due to rapid amplitude or phase changes associated with multipath, or a channel with a weak signal due to factors other than deep fades. The AFH scheme may classify blacklisted channels in an AFH channel map based on channel characteristics identified through channel evaluation. Classifying blacklisted channels in the AFH channel map may help the AFH scheme determine which channels to reclaim when the conditions of the channel or operating environment change.

[0022] In one aspect, channel estimation can dynamically adjust the packet error rate threshold (PER threshold) for classifying deep fading channels based on the number of blacklisted channels, so that there are a sufficient number of "good" channels for AFH. Advantageously, the disclosed channel estimation technique can flexibly adapt to changing channel conditions in a BMS-like environment with a mixture of deep fading channels and noisy interfering channels to reduce the PER when using the AFH scheme.

[0023] Figure 1 Depicted is a histogram 100 showing the distribution of the number of packets as a function of RSSI in a BMS environment and external and internal factors that may cause packet reception failure over a range of RSSIs, in accordance with one aspect of the present disclosure.

[0024] Received packets with low RSSIs may be due to weak signals 120 caused by the configuration and location of the battery, rather than deep fades. The BLE transceiver can detect weak signal channels by determining that the proportion of packets received on the channel in error and with a measured RSSI below a weak signal threshold is greater than a PER threshold. The number of received packets with weak signals 120 may be relatively low. Weak signal channels can be characterized as semi-static channels and, once blacklisted, can be slowly reclaimed for AFH.

[0025] Received packets with a measured RSSI above the weak signal threshold but below the interfering signal threshold may be due to deep fades 130 caused by rapid amplitude and phase variations associated with strong multipath and shadowing. The BLE transceiver can detect deep fade channels by comparing the measured RSSI of packets received on the channel with the RSSI of packets received on other channels. For example, the BLE transceiver can measure the decrease in RSSI of packets on the channel relative to the average RSSI of packets received on other channels. The BLE transceiver can determine whether this decrease in RSSI is greater than a delta threshold. If the proportion of packets received in error on the channel whose decreased RSSI meets the delta threshold condition is greater than a PER threshold, the BLE transceiver can classify the channel as a deep fade channel. The number of channels affected by deep fades 130 may depend on the location of the BLE transceiver within the shielded metal enclosure of the BMS. Deep fade channels can also be characterized as semi-static channels because their channel characteristics tend to change slowly. Once blacklisted, deep fade channels can be slowly reclaimed for AFH.

[0026] Packets that are received in error but have a relatively high RSSI (e.g., above the interference signal threshold) may come from Wi-Fi interference 140. The BLE transceiver can detect Wi-Fi interference channels by determining that the proportion of packets that are received in error on the channel despite having a measured RSSI above the interference signal threshold is greater than the PER threshold. The number of channels affected by Wi-Fi interference 140 may depend on the degree of frequency overlap between the BMS's BLE channel and the Wi-Fi channel operated by the interference source. Wi-Fi interference channels can be characterized as dynamic channels because their channel characteristics change when the interference source stops transmitting on these channels. Once blacklisted, the Wi-Fi interference channels can be quickly reclaimed for AFH if the interference stops.

[0027] Figure 2Depicted is a deep fade 200 with rapid amplitude drops and phase jumps observed in a BMS environment due to multiple reflection paths as a function of BLE operating frequency, in accordance with one aspect of the present disclosure.

[0028] Due to the rapid amplitude drops and phase jumps 220 and 230 associated with multipath and shadowing effects, the amplitude of the received signal on frequency channel 210 may experience deep fades (e.g., -40 dB). Packets transmitted on frequency channel 210 may be received with sufficiently low RSSI, resulting in a high PER. The rapid amplitude drops and phase jumps 220 and 230 may manifest as a large RSSI gradient across a narrow band of a frequency channel (e.g., frequency channel 210). When using AFH in a BMS-like environment, techniques for detecting deep fade channels can blacklist such channels in the AFH channel map to improve system performance.

[0029] Figure 3A An example is depicted showing RSSI measured at a BLE receiver as a function of channel number for a BLE frequency band, and a metric for detecting deep fades at a channel based on the difference between the RSSI measured at the channel and a moving average of the RSSI over a series of channels, according to an embodiment. A channel assessment algorithm can use this metric to scan for channels experiencing deep fades in order to exclude these channels from use by an AFH scheme.

[0030] RSSI avg(i) 320 may represent the average RSSI measured for packets received at channel i of the BLE band. Channel 15 may exhibit deep fading, as shown by the RSSI at channel 15. avg(i) The steep gradient of 320 is shown. Moving average RSSI MA(i) 330 may represent the RSSI of the channels within the channel window centered on channel i. avg(i) The average value of 320. The size of the window can be determined based on the operating environment of the BLE radio device. MA(i) 330 can act as a low pass filter to smooth the RSSI on channels in the window avg(i) 320 fluctuations. Figure 3A Shows the moving average RSSI MA(i) 330 shows a dip in the frequency band near channel 15. In other embodiments, the moving average RSSI MA(i) 330 can be represented by the RSSI on all 40 channels avg(i) A single RSSI with an average value of 320 avg to be replaced, or by other types of filters.

[0031] The channel assessment algorithm can calculate the ΔRSSI of channel i i 340 is calculated as the RSSI of channel i avg(i) 320 and the moving average RSSI associated with channel i MA(i) 330 is the difference between the two. For example, ΔRSSI of channel 15 i 340 can represent the RSSI of channel 15 avg(i) 320 and a moving average RSSI centered on channel 15 MA(i) The difference between 330. Due to the RSSI at channel 15 avg(i) Steep gradient of 320, ΔRSSI of channel 15 i 340 is very large. RSSI at the channel avg(i) The steeper the gradient of 320, the higher the ΔRSSI of the channel. i 340 is larger. The channel assessment algorithm can be used to calculate the ΔRSSI of channel i. i 340 and gradient threshold Th grad The comparison is done to determine whether channel i is a deep fading channel (e.g., (ΔRSSI i =RSSI avg(i) -RSSI MA(i) )<–Th grad ).

[0032] Figure 3B An example is depicted showing RSSI measured at a BLE receiver as a function of channel number of a BLE frequency band, and a metric for detecting a deep fade at a channel based on a difference between the RSSI measured at the channel and RSSI measured at an adjacent channel, according to an embodiment.

[0033] Instead of RSSI MA(i) 330 is used as a metric. The channel assessment algorithm can calculate the RSSI of channel i. avg(i) and the RSSI of its two adjacent channels i-1 and i+1 respectively avg(i) For example, the RSSI of channel 15 is avg(i) -RSSI avg(i-1) )390 can represent the RSSI of channel 15 avg(i) 320 and RSSI of channel 14 avg(i) The difference between 320. Channel 15 (RSSI avg(i) -RSSI avg(i+1) )395 can represent the RSSI of channel 15 avg(i) 320 and RSSI of channel 16 avg(i) The channel assessment algorithm can be used to calculate the difference between the RSSI of channel i and theavg(i) -RSSI avg(i-1) )390 or (RSSI avg(i) -RSSI avg(i+1) )395 and gradient threshold Th grad Compare to determine whether channel i is a deep fading channel (for example, ((RSSI avg(i) -RSSI avg(i-1) )<–Th grad ) or ((RSSI avg(i) -RSSI avg(i+1) )<–Th grad )).

[0034] Figure 3A and 3B Deep fades can be shown by the RSSI on one channel or a narrow range of channels. avg(i) 320 is characterized by a steep gradient. In contrast, RSSI avg(i) A slow gradient of 320 may not indicate a deep fade. RSSI occurs over a relatively wide range of channels. avg(i) A large decrease of 320 may not indicate a deep fade. avg(i) These types of variations in 320 may be characteristic of a weak transmit signal. In both cases, the RSSI avg(i) 320 and RSSI MA(i) 330 will track each other relatively closely, making the metric (ΔRSSI i =RSSI avg(i) -RSSI MA(i) ) may not exceed the gradient threshold Th grad .

[0035] In one embodiment, the channel assessment algorithm may determine the measured RSSI of packets received on a channel and a moving average RSSI centered on the channel. MA(i) 330 or RSSI of adjacent channels avg(i) 320 (ΔRSSI), such as Figure 3A or Figure 3B When the associated ΔRSSI is greater than the gradient threshold Th grad When , the channel assessment algorithm can accumulate the number of packets received incorrectly on the channel. If its ΔRSSI is greater than the gradient threshold Th grad If the proportion of error packets exceeds the PER threshold, the channel assessment algorithm can classify the channel as a deep fading channel.

[0036] Figure 44 is a flow chart illustrating a method 400 for a BLE receiver, when receiving packets on a BLE channel, to scan the channel for deep fades to determine whether to suspend the channel for AFH, according to an embodiment. The method 400 may be part of a channel estimation algorithm executed by the BLE receiver to classify deep fade channels for AFH channel mapping.

[0037] In operation 401, the BLE receiver can MA(i) (For example, Figure 3A and 3B RSSI MA(i) 330) initialized to the RSSI of the channels within the window centered on channel i avg(i) Assume that the RSSI of the BLE channel is avg(i) Previously compiled by the BLE receiver or obtained from another source. In one embodiment, to eliminate the system calibration process, RSSI MA(i) The RSSI on all channels (e.g., 40 channels) of the BLE band can be represented by avg(i) The average value of a single RSSI avg to be replaced, or by other types of filters.

[0038] In operation 403, the BLE receiver may initialize a counter N_good for keeping count of packets interpreted as not being corrupted by deep fading on the channel. f , and a counter N_bad for keeping a count of packets interpreted as being damaged by deep fades on the channel f The BLE receiver can maintain a pair of N_good for each BLE channel. f and N_bad f counter.

[0039] In operation 405, the BLE receiver may begin a channel classification update interval (e.g., 3 seconds) during which the BLE receiver may scan for packets received on one or more channels to determine if any of the channels are experiencing a deep fade. In one embodiment, the BLE receiver may scan for packets until a configured number of packets (e.g., 50 packets) have been received on the channel or until a PER threshold is exceeded.

[0040] In operation 407, the BLE receiver may receive packets on one or more channels. The BLE receiver may measure the RSSI of each packet.

[0041] In operation 410, the BLE receiver may determine whether the packet is received in error. For example, when the packet fails a cyclic redundancy check (CRC) or when a synchronization timeout occurs, the packet may be received in error.

[0042] In operation 421, if a packet is received in error on a channel, the BLE receiver may determine the measured RSSI of the packet and a moving average RSSI associated with the channel. MA(i) 330 (ΔRSSI). ΔRSSI can be similar to Figure 3A Described ΔRSSI i 340. However, operation 421 may determine ΔRSSI (ΔRSSI=RSSI) on a per-packet basis. packet_on_i -RSSI MA(i) ), instead of Figure 3A The ΔRSSI (ΔRSSI) is determined based on the aggregated channel. i =RSSI avg(i) -RSSI MA(i) In one embodiment, the BLE receiver may determine the measured RSSI of the packet on channel i and the RSSI of adjacent channels (i-1) and (i+1). avg(i) The ΔRSSI can be similar to the difference between Figure 3B Described (RSSI avg(i) -RSSI avg(i-1) )390 or (RSSI avg(i) -RSSI avg(i+1) ) 395. However, operation 421 may determine ΔRSSI on a packet-by-packet basis, (ΔRSSI=RSSI packet_on_i -RSSI avg(i-1) ) or (ΔRSSI=RSSI packet_on_i -RSSI avg(i+1) ), instead of Figure 3B The ΔRSSI is determined based on the aggregated channel, (RSSI avg(i) -RSSI avg(i-1) )390 or (RSSI avg(i) -RSSI avg(i+1) )395.

[0043] In operation 423, the BLE receiver may determine whether the ΔRSSI of the packet is greater than the gradient threshold Th grad (For example, when expressed in dB, ΔRSSI < –Th grad ). Gradient threshold Th grad It can be indicated that the ΔRSSI above which the packet can be interpreted as experiencing a deep fade. gradIt can be preconfigured for each channel individually, or it can be preconfigured with the same value for all channels. grad Can be changed dynamically as the working environment changes.

[0044] In operation 425, if the ΔRSSI of the packet received on the channel is greater than the gradient threshold Th of the channel grad , the BLE receiver can increment the N_bad of the channel f A counter is provided to indicate that the packet was corrupted by a deep fade and to maintain a running count of the number of packets corrupted by deep fades on the channel during the channel classification update interval.

[0045] In operation 431, if the ΔRSSI of the packet received on the channel is not greater than the gradient threshold Th of the channel grad , the BLE receiver can increment the N_good of the channel f A counter is set to indicate that even if the packet is received in error, the packet is not corrupted by a deep fade, and keeps a running count of the number of such packets on the channel during the channel classification update interval. Such packets may be corrupted by noise or interference rather than by a deep fade. Similarly, from operation 410, if a packet is received correctly on a channel, the BLE receiver may also increment N_good for that channel. f A counter to indicate that the packet was not corrupted by a deep fade.

[0046] In operation 440, the BLE receiver may determine whether the channel classification update interval has expired. If not, the BLE receiver may receive additional packets on one or more channels to determine whether any packets are corrupted by deep fading and accumulate N_good for the corresponding channels accordingly. f and N_bad f counter.

[0047] Otherwise, if the channel classification update interval has expired, then in operation 450, the BLE receiver may determine for the channel whether the proportion of packets that have been damaged by deep fading within the channel classification update interval is greater than a PER threshold. For example, the BLE receiver may determine the channel's (N_bad f / (N_bad f +N_good f Is )) greater than PER Th_f , where PER Th_f is the PER threshold for deep fading. f / (N_bad f +N_good f)) can be interpreted as the measured PER of the channel due to deep fading.

[0048] In operation 461, if the channel's ((N_bad f / (N_bad f +N_good f ))>PER Th_f ), the BLE receiver may classify the channel as a "bad" channel due to deep fading. In one embodiment, the BLE receiver may also classify one or more adjacent channels of the bad channel as bad channels, but using a lower PER Th_f The BLE receiver can suspend (also called blacklist) the bad channels in the AFH channel map to exclude the channels from being used by the AFH scheme. In one embodiment, the AFH channel map can store the measured PER, the average value of the measured RSSI (e.g., RSSI) for each bad channel. avg(i) ) and channel number.

[0049] In operation 471, if the channel's ((N_bad f / (N_bad f +N_good f )≤PER Th_f ), the BLE receiver can classify the channel as a "good" channel in the AFH channel map so that the channel is suitable for use by the AFH scheme.

[0050] In one embodiment, PER Th_f Can be very small (e.g., ~0.01) and can be dynamically adjusted to improve AFH channel classification in response to changing operating conditions and to ensure that there are a sufficient number of good channels for the AFH scheme to use. For example, if there are not enough good channels, the BLE receiver can recycle the channel with the lowest / lower PER or highest / higher RSSI in the AFH channel map. avg(i) The BLE receiver can increase the PER for the recycled channels. Th_f , so that at the next channel classification update interval, if the measured PER remains the same, the reclaimed channel will not be immediately blacklisted. On the other hand, if there are few blacklisted channels and some good channels experience low levels of deep fades but not enough to be blacklisted, the BLE receiver can reduce the PER Th_f , in order to try to capture some of these channels with higher measured PER due to deep fades to suspend them.

[0051] In one embodiment, based on the measured RSSI and PER of packets received on the channel, the channel assessment algorithm can scan not only for deep fade channels, but also for weak signal channels and Wi-Fi interference channels. The channel assessment algorithm can classify blacklisted channels in the AFH channel map as belonging to deep fade, weak signal, or Wi-Fi interference channels. Compared to the semi-static nature of deep fades associated with multipath, due to the dynamic nature of WiFi interference, blacklisted channels classified as Wi-Fi interference channels can be checked more frequently (than deep fade channels) to determine whether they can be reclaimed for AFH (e.g., faster recovery time).

[0052] Figure 5 1 is a flow chart illustrating a method 500 for a BLE receiver, when receiving packets on a BLE channel, to scan the channel for deep fades, radio interference, or weak signals to determine whether to suspend the channel for AFH. The method 500 may be part of a channel assessment algorithm executed by the BLE receiver to classify the type of suspended channel for AFH channel mapping, according to an embodiment.

[0053] Used to initialize the RSSI of the channel associated with channel i avg(i) Moving window average RSSI MA(i) Operation 501 may be similar to Figure 4 Operation 401 is described above and will not be repeated for the sake of brevity.

[0054] Operation 503 may initialize an N_good counter for each BLE channel for counting the number of packets interpreted as not being corrupted by deep fades, radio interference, or weak signals on the channel, and initialize an N_bad counter for counting the number of packets interpreted as being corrupted by deep fades on each channel. f A counter that initializes N_bad to count the number of packets interpreted as corrupted by radio interference on each channel (e.g., a busy channel due to Wi-Fi interference). b counter, and initializes N_bad for counting the number of packets interpreted as weak signal packets on each channel w counter.

[0055] Operation 505 for starting a channel classification update interval may be similar to Figure 4 Operation 405 is described above and will not be repeated for the sake of brevity.

[0056] Operation 507 for measuring the RSSI of packets received on one or more channels may be similar to Figure 4Operation 407 is described above and will not be repeated for the sake of brevity.

[0057] Operation 510 for determining whether a packet is received in error may be similar to Figure 4 Operation 410 is described above and will not be repeated for the sake of brevity.

[0058] The measured RSSI for determining packets on a channel and the moving average RSSI associated with the channel MA(i) The operation 521 of ΔRSSI between 330 can be similar to Figure 4 In one embodiment, operation 521 may determine the measured RSSI of the packet on channel i and the RSSI of adjacent channels (i-1) and (i+1). avg(i) ΔRSSI between them.

[0059] Used to determine whether the ΔRSSI of the packet is greater than the gradient threshold Th grad (For example, when expressed in dB, ΔRSSI < –Th grad ) operation 523 can be similar to Figure 4 Operation 423 is described above and will not be repeated for the sake of brevity.

[0060] When the ΔRSSI of the packet on the channel is greater than the gradient threshold Th grad Increment the N_bad of the channel f The operation 525 of using a counter to indicate that the packet is corrupted by a deep fade is similar to Figure 4 Operation 425 is described above and will not be repeated for the sake of brevity.

[0061] In operation 531, if the ΔRSSI of the packet received on the channel is not greater than the gradient threshold Th of the channel, grad (e.g., the packet is interpreted as not being corrupted by a deep fade), the BLE receiver may determine whether the measured RSSI for the packet is greater than an RSSI threshold RSSI high_thresh RSSI high_thresh It can represent an interference RSSI threshold above which a packet can be interpreted as corrupted by interference from an external source (e.g., a Wi-Fi transmission). A BLE receiver will typically receive packets with an RSSI greater than 100 without error if it were not an interfering transmission. high_thresh RSSI of the group. high_thresh It can be preconfigured for each channel individually, or it can be preconfigured with the same value for all channels. In one embodiment, RSSI high_thresh Can be changed dynamically as the working environment changes.

[0062] In operation 533, if the measured RSSI of the packet received on the channel is greater than the RSSI of the channel high_thresh , the BLE receiver can increment the N_bad of the channel b A counter is provided to indicate that the packet was corrupted by interference on the busy channel and to maintain a running count of the number of packets corrupted by interference on the channel during the channel classification update interval.

[0063] In operation 535, if the measured RSSI of the packet received on the channel is not greater than the RSSI of the channel high_thresh (e.g., the packet is interpreted as not being corrupted by deep fading or interference), the BLE receiver may determine whether the measured RSSI for the packet is less than an RSSI threshold RSSI low_thresh RSSI low_thresh Can be smaller than RSSI high_thresh RSSI low_thresh It may represent an RSSI threshold below which the channel may be interpreted as having poor signal quality due to reasons other than deep fading (e.g., due to the location of the BLE receiver, the geometry of the BMS-like environment, etc.).

[0064] In operation 535, if the measured RSSI of the packet received on the channel is less than the RSSI of the channel low_thresh , the BLE receiver can increment the N_bad of the channel w A counter is provided to indicate that the packet is corrupted due to a weak signal and to maintain a running count of the number of weak signal packets on the channel during the channel classification update interval.

[0065] In operation 539, if the measured RSSI of the packet received on the channel is not less than the RSSI of the channel low_thresh , the BLE receiver may increment the N_good counter for the channel to indicate that even though the packet was received in error, the packet was not corrupted by deep fade, interference, or a weak signal, and maintain a running count of the number of such packets on the channel during the channel classification update interval. Similarly, from operation 510, if a packet is received correctly on the channel, the BLE receiver may also increment the N_good counter for the channel.

[0066] In operation 540, the BLE receiver may determine whether the channel classification update interval has expired. If not, the BLE receiver may receive additional packets on one or more channels to determine whether any packets are corrupted by deep fading, interference, or weak signals, and accumulate N_good, N_bad, and N_good values ​​for the corresponding channels. f 、N_bad b or N_badw counter.

[0067] In operation 545, the BLE receiver may determine the N_bad f 、N_bad b or N_bad w The maximum count in the counter. A BLE receiver can receive several types of corrupted packets (see, for example, Figure 1 , for the overlapping region of RSSI corresponding to deep fade 130 and RSSI corresponding to Wi-Fi interference. In one embodiment, packets received on a channel may experience one dominant type of impairment. In one embodiment, packets received on a channel may experience exclusively one type of impairment. Operation 545 may determine the number of packets damaged by the dominant or exclusive type of impairment as N_bad.

[0068] In operation 550, the BLE receiver may determine whether the proportion of packets interpreted as damaged within the channel classification update interval is greater than a PER threshold for the channel. For example, the BLE receiver may determine whether (N_bad / (N_bad+N_good)) of the channel is greater than the PER Th .

[0069] In operation 561, if ((N_bad / (N_bad+N_good))>PER Th ), the BLE receiver may classify the channel as a "bad" channel due to deep fading, interference, or weak signal as determined by the dominant type of impairment associated with N_bad. The BLE receiver may suspend the bad channel in the AFH channel map to exclude the channel from being used by the AFH scheme. In one embodiment, the AFH channel map may store the measured PER, the average value of the measured RSSI (e.g., RSSI avg(i) ), channel classification and channel number. In one embodiment, PER Th Can be dynamically adjusted to improve AFH channel classification in response to changing operating conditions and to ensure a sufficient number of channels for use by the AFH scheme.

[0070] In operation 571, if ((N_bad / (N_bad+N_good))≤PER Th ), the BLE receiver can classify the channel as a "good" channel in the AFH channel map, so that the channel is suitable for use by the AFH scheme.

[0071] Figure 66 shows an AFH channel map 600 according to an embodiment, which contains information about the classification of suspended channels and their associated PER and RSSI resulting from scanning channels in a BMS-like environment. Figure 4 Method 400 or Figure 5 The method 500 may generate an AFH channel map 600 .

[0072] The AFH channel map 600 shows the channel number 610, the measured PER 620, the average RSSI 630, the bad channel type 640, and the recovery time 650 associated with each channel. Figure 4 or Figure 5 The method provides a channel number 610, a measured PER 620, an average RSSI 630, and a bad channel type 640.

[0073] For example, channel 1 has a PER of 10% and an average RSSI of -20 dBm. Despite having a relatively high average RSSI, channel 1 has been classified as a Wi-Fi interference channel based on its high PER. Due to the dynamic nature of Wi-Fi interference, compared to the semi-static nature of deep fades associated with multipath, channel 1 is associated with a fast recovery time, indicating that this channel can be reclaimed for AFH more frequently than deep fade channels. Channel 1 is suspended for use by the AFH scheme. In one embodiment, the AFH channel map 600 can sort the channels based on PER or average RSSI (e.g., sort the channels based on a quality metric from best to worst) so that the channel assessment algorithm can first reclaim suspended channels associated with better quality metrics.

[0074] Channel 34 has a PER of 100% and an average RSSI of -50 dBm. Due to the rapid amplitude drops and phase jumps associated with multipath, channel 34 has been classified as a deep fading channel. Due to the semi-static nature of deep fading associated with multipath, channel 34 is associated with a slow recovery time. Similarly, channels 4 and 35 are classified as deep fading channels. Channels 4, 34, and 35 are suspended for use in the AFH scheme.

[0075] Due to zero packet errors, channels 2 and 3 are classified as good channels and can be used for AFH. Despite having relatively high average RSSIs, channels 36 and 37 exhibit relatively high PERs. Channels 36 and 37 can be interpreted as being susceptible to Wi-Fi interference but can still be used for AFH because the PER does not exceed the threshold. The channel assessment algorithm can receive additional packets on these channels to determine whether to suspend these channels if interference continues.

[0076] As mentioned before, the PER used to classify a channel as a deep fading channel is Th_f Can be dynamically adjusted to improve AFH channel classification in response to changing operating conditions and to ensure that there are a sufficient number of channels for the AFH scheme to use.

[0077] Figure 7 7 is a flow chart illustrating a method 700 for classifying BLE channels for AFH by a BLE receiver when receiving packets by dynamically adjusting the PER threshold used for channel classification based on the number of suspended channels, according to an embodiment. Method 700 may be part of a channel assessment algorithm executed by a BLE receiver to update an AFH channel map.

[0078] In operation 701, the BLE receiver may initialize a PER threshold (good_to_suspended_PER) for suspending a channel if the measured PER of the channel exceeds the PER threshold. In one embodiment, good_to_suspended_PER may be Figure 4 The PER threshold for deep fading (PER Th_f ).

[0079] In operation 703, the BLE receiver may run a channel estimation algorithm to measure the PER of the channels of the frequency band and update the AFH channel map based on the measured PER. In one embodiment, operation 703 may be Figure 4 Method 400 or Figure 5 The AFH channel map may contain information about the classification of suspended channels, such as Figure 6 shown.

[0080] In operation 710, the BLE receiver may determine whether the number of suspended channels in the AFH channel map is greater than a threshold value Th suspended_Hi Th suspended_Hi The maximum number of suspended channels can be indicated to ensure that there are a sufficient number of good channels available for AFH. Th can be configured based on the number of channels in the band (e.g., 40) and the operating environment. suspended_Hi .

[0081] In operation 731, if the number of suspended channels in the AFH channel map is greater than Th suspended_Hi , the BLE receiver can move one or more suspended channels with the lowest PER among all suspended channels in the AFH channel map from the suspended category to good. In this way, the BLE receiver can reclaim the suspended channels that experience the least deep fade. For example, in Figure 6In the AFH channel map, the BLE receiver can reclaim channel 35 because it has the lowest measured PER among those channels classified as deep fading channels.

[0082] In operation 733 , the BLE receiver may increase the PER threshold good_to_suspended_PER so that at the next channel classification update interval, the reclaimed channel is not immediately re-suspended if the measured PER of the reclaimed channel remains the same.

[0083] On the other hand, if the number of suspended channels in the AFH channel map is not greater than Th suspended_Hi , then in operation 721, the BLE receiver may determine whether the number of suspended channels in the AFH channel map is less than a threshold Th suspended_Low Th suspended_Low It can indicate the minimum number of channels expected to be suspended. If the number of suspended channels is less than Th suspended_Low , it may indicate that the PER threshold (good_to_suspended_PER) may be set too high. Th can be configured based on the working environment suspended_Low .

[0084] In operation 723, if the number of suspended channels in the AFH channel map is less than Th suspended_Low , the BLE receiver may reduce the PER threshold (good_to_suspended_PER) so that at the next channel classification update interval, the channel assessment algorithm may suspend one or more channels having a measured PER higher than the reduced PER threshold (good_to_suspended_PER).

[0085] If the number of suspended channels in the AFH channel map is not less than Th suspended_Low , then in operation 741, the BLE receiver may reduce the measured PER of all suspended channels in the AFH channel map by a small amount (e.g., 0.1%). Reducing the measured PER of suspended channels after each channel classification update interval can eliminate the possibility of channels being suspended indefinitely by increasing the chance that suspended channels can be reclaimed. Similarly, after increasing the PER threshold (good_to_suspended_PER) in operation 733 or reducing the PER threshold (good_to_suspended_PER) in operation 723, the BLE receiver may invoke operation 741 to reduce the measured PER of all suspended channels in the AFH channel map by a small amount.

[0086] After operation 741, the BLE receiver may run a channel estimation algorithm in operation 703 for the next channel classification update interval to update the AFH channel map. Operations 710, 731, 733, 721, 723, and 741 may be repeated after each channel classification update interval to dynamically adjust the PER threshold (good_to_suspended_PER).

[0087] Figure 8 8 is a flow chart illustrating a method 800 for classifying BLE channels for AFH by a BLE receiver when receiving packets by dynamically adjusting a PER threshold based on the number of suspended channels and a PER threshold for channel classification, according to an embodiment. Method 800 may be part of a channel assessment algorithm executed by a BLE receiver to update an AFH channel map.

[0088] In operation 801, the BLE receiver may initialize PER th , PER th is compared with the measured PER of the channel to determine whether to suspend the channel. The BLE receiver can th Initialized to the preconfigured value of good_to_suspended_PER. In one embodiment, PER th Can be Figure 4 The PER threshold for deep fading (PER Th_f ).

[0089] In operation 803, the BLE receiver may run a channel estimation algorithm to measure the PER of the channels of the frequency band and update the AFH channel map based on the measured PER. In one embodiment, operation 803 may be Figure 4 Method 400 or Figure 5 The AFH channel map may contain information about the classification of suspended channels, such as Figure 6 shown.

[0090] In operation 805, the BLE receiver may determine whether the measured PER of any scanned channel in the channel assessment algorithm of operation 803 is greater than the PER th Operation 805 may determine whether any channels have been suspended during the current channel classification update interval.

[0091] If the measured PER of at least one scanned channel is greater than PER th , so that at least one channel is suspended, then in operation 810, the BLE receiver may determine the number of suspended channels (N suspended_channel ) is greater than the threshold Th suspended_Hi Thsuspended_Hi The maximum number of suspended channels can be indicated to ensure that there are enough good channels available for AFH. Th can be configured based on the number of channels in the band and the operating environment. suspended_Hi .

[0092] If the number of suspended channels in the AFH channel map (N suspended_channel ) is greater than Th suspended_Hi , then in operation 831, the BLE receiver may map all suspended channels in the AFH channel with the lowest PER (N suspended_channel -Th suspended_Hi ) channels are moved from the pause category to the good category. Thus, the BLE receiver can recover (N) channels that experience minimal deep fading. suspended_channel -Th suspended_Hi ) suspended channels so that N suspended_channel Reduce to Th suspended_Hi .

[0093] In operation 833, the BLE receiver may increase the PER th , so that at the next channel classification update interval, the reclaimed channel is not immediately re-suspended if the measured PER of the reclaimed channel remains the same.

[0094] In operation 841, the BLE receiver may reduce the measured PER of all suspended channels in the AFH channel map by a small amount (e.g., 0.1%). Reducing the measured PER of suspended channels after each channel classification update interval can eliminate the possibility of channels being suspended indefinitely by increasing the chance that the suspended channels can be reclaimed.

[0095] If from operation 810, the number of suspended channels (N suspended_channel ) is not greater than Th suspended_Hi , the BLE receiver does not reclaim any suspended channels or change PER th , and operation 841 may be called to reduce the measured PER of all suspended channels in the AFH channel map by a small amount.

[0096] If from operation 805, the measured PER of all scanned channels is not greater than PER th , then in operation 820, the BLE receiver may determine PER th Is it greater than the pre-configured good_to_suspended_PER? When the measured PER of the scanned channels is not greater than PER th , and PER th When greater than good_to_suspended_PER, this can indicate that PERth has been raised too high so that no channel is suspended. For example, when operation 833 increases PER th To prevent re-pausing the recovered channel least damaged by deep fading, a higher PER th It may also prevent other channels experiencing deeper fades from being suspended.

[0097] If PER th If the PER is greater than good_to_suspended_PER, then in operation 823, the BLE receiver may reduce the PER th , so that at the next channel classification update interval, the channel estimation algorithm can pause for channels with a reduced PER due to deep fading. th The BLE receiver may invoke operation 841 to reduce the measured PER of all suspended channels in the AFH channel map by a small amount.

[0098] If PER th Not greater than good_to_suspended_PER, then for the next channel classification update interval, PER th The BLE receiver may invoke operation 841 to reduce the measured PER of all suspended channels in the AFH channel map by a small amount.

[0099] After operation 841, the BLE receiver may run the channel estimation algorithm in operation 803 for the next channel classification update interval to update the AFH channel map. Operations 805, 810, 831, 833, 820, 823, and 841 may be repeated after each channel classification update interval to dynamically adjust the PER th .

[0100] Figure 9 1 is a flow chart illustrating a method 900 for updating an AFH channel map by a BLE receiver based on passive and active scanning and a comparison of the PER of packets received on the channel during a current iteration of the passive scan with the PER of packets received on the channel during a previous iteration of the passive scan, according to an embodiment. Method 900 may be part of a channel assessment algorithm executed by a BLE receiver to update the AFH channel map.

[0101] In operation 901, the BLE receiver may store the PER of the last value of the measured PER of the channel. conn (Last) is initialized to 0. The BLE receiver can initialize PER threshold , PER thresholdis compared with the measured PER of the channel to determine whether to suspend the channel. The BLE receiver can threshold Initialized to the preconfigured P T In one embodiment, PER threshold Can be Figure 5 PER threshold for pausing a channel (PER Th ). The BLE receiver can also be used to attenuate PER conn The attenuation factor α of (Last) is initialized to a value between 0 and 1. Attenuating the last measured PER of a channel eliminates the possibility that the channel is suspended indefinitely.

[0102] In operation 903, the BLE receiver may use the AFH channel map updated based on the previous channel classification and may blank (pause) channels including channels damaged by WLAN interference. The AFH channel map may contain information about the classification of the suspended channels, such as Figure 6 As shown, the suspended channels are included and classified as WLAN interference channels.

[0103] In operation 904, the BLE receiver may perform passive scanning to measure the PER of the channel based on packets received on the channel of the frequency band in a nominal measurement period (e.g., 3 seconds). In one embodiment, the BLE receiver may receive packets on a channel classified as a good channel or on a WLAN interference channel that has been temporarily unblanked. In one embodiment, operation 904 may be Figure 5 Method 500.

[0104] In operation 905, the BLE receiver may determine whether there is any channel with a measured PER (PER conn (Current)) is greater than PER threshold (P T Thus, operation 905 may determine whether at least one channel can be suspended based on the most recently measured PER.

[0105] If any channel's PER conn (Current) is greater than PER threshold , then in operation 907, the BLE receiver may determine the PER of the channel conn Is (Current) greater than PER? conn (Last) Thus, operation 907 may determine whether the PER of the channel measured in the current measurement period is increased compared to the PER of the channel measured in the last measurement period.

[0106] If the channel PER conn(Current) is greater than PER conn (Last), then in operation 917, the BLE receiver may update the AFH channel map for the channel based on the current channel classification. For example, if the PER of any previously clean channel is conn (Current) is now greater than PER threshold , the AFH channel map can be updated to suspend the channel. Conversely, if the PER of any WLAN interference channel that is temporarily unblanked conn (Current) no longer exceeds PER threshold , the channel can be recycled.

[0107] In operation 919, the BLE receiver may conn (Last) The PER assigned to this channel conn (Current) to prepare for passive scanning in the next measurement period to measure the PER of the channel.

[0108] If the channel PER conn (Current) not greater than PER conn (Last), then in operation 909, the BLE receiver may attenuate the PER of the channel by an attenuation factor α. conn (Last).

[0109] In operation 924, the BLE receiver may perform active scanning to measure the average RSSI (RSSI) of any suspended channels in the AFH channel map. avg ). Compared to the passive scanning of operation 904 (where the BLE receiver evaluates the channel based on packets received on any channel), BLE may require scheduling time intervals and channel resources for active scanning of suspended channels. The BLE receiver may perform active scanning when scheduled or at configurable time intervals (e.g., every 6 seconds). In one embodiment, the BLE receiver may perform active scanning in the background when the BLE transceiver is inactive.

[0110] In operation 945, based on the RSSI measured for each suspended channel during the active scan avg , the BLE receiver can un-blank the channel. For example, if the WLAN interferes with the measured RSSI of the channel avg If the channel is unblanked, the BLE receiver may not update the AFH channel map to indicate that the unblanked channel has been reclaimed as a good channel.

[0111] In one embodiment, to perform the active scan of operation 924 and the unblanking of the WLAN interference channel of operation 945, the BLE receiver may measure the RSSI of the packet of each suspended channel in operation 930. In operation 932, the BLE receiver may average the RSSI measured for all packets received on the channel during the active scan interval to calculate the RSSI of each suspended channel. avg In operation 934, the BLE receiver may calculate the RSSI of each suspended channel. avg and RSSI Threshold If the RSSI of the suspended channel is avg Greater than RSSI Threshold , then in operation 938, due to WLAN interference, the channel can remain suspended (blanked). On the other hand, if the RSSI of the suspended channel avg Not greater than RSSI Threshold , the BLE receiver may unblank the channel to temporarily use the channel in operation 936. As indicated, even if the channel is unblanked, the AFH channel map is not updated until a later time (e.g., at operation 917).

[0112] In operation 947, the BLE receiver may determine whether interference still exists on all previously suspended channels. For example, when the RSSI of the suspended channels measured during the active scan interval is avg Greater than RSSI Threshold When , interference still exists on the channel (operations 934 and 938).

[0113] If interference still exists on the suspended channel, then in operation 959 , the BLE receiver may continue to use the AFH channel map (eg, from operation 917 ) updated based on the previous classification based on passive scanning.

[0114] On the other hand, if there is no longer interference on the suspended channel, then in operation 949, the BLE receiver may attenuate the PER of the channel by an attenuation factor α. conn (Last). For example, if the RSSI of the WLAN interference channel avg No longer greater than RSSI Threshold , the channel is temporarily un-blanked in operation 936, and the BLE receiver may attenuate the PER of the un-blanked channel conn (Last). Attenuation of the PER of the channel whose blanking is temporarily canceled conn (Last) increases the chance that this channel can eventually be reclaimed when the AFH channel map is updated.

[0115] Figure 10is a flow chart illustrating a method 1000 according to one embodiment for detecting a channel-specific deep fade by a receiver when receiving packets on a range of channels to exclude the use of the channel. The method 1000 may be performed by a BLE receiver such as Figure 11 Bluetooth device) to execute.

[0116] In operation 1001 , a BLE receiver receives a plurality of packets on one of a plurality of channels of a frequency band for wireless communication.

[0117] In operation 1003 , the BLE receiver determines a received signal strength (eg, RSSI) of each of the packets received on the one channel.

[0118] In operation 1005 , the BLE receiver determines a packet error rate (PER) for the channel based on the number of erroneously received packets and the difference between the received signal strength of each packet and a reference signal strength associated with one or more other channels of the frequency band.

[0119] In operation 1007 , the BLE receiver determines whether a PER associated with the channel is greater than a PER threshold.

[0120] In operation 1009 , if the PER associated with the channel is greater than the PER threshold, the BLE receiver excludes using the channel for wireless communication.

[0121] In operation 1011 , if the PER associated with the channel is not greater than the PER threshold, the BLE receiver uses the channel for wireless communication.

[0122] Various embodiments of techniques for BLE devices to detect deep fades with low channel signal-to-noise ratio (SNR) and signal distortion caused by rapid amplitude drops and phase changes on channels within the frequency band of narrowband radios operating in a BMS-like environment with strong multipath may include various operations. Various embodiments of techniques for BLE devices to dynamically adjust the PER threshold used to classify deep fade channels based on the number of blacklisted channels to update the AFH channel map so that a sufficient number of "good" channels are available for AFH may also include various operations. These operations may be performed and / or controlled by hardware components, digital hardware, and / or firmware / programmable registers (e.g., as implemented in computer-readable media), and / or combinations thereof. The methods and illustrative examples described herein are not inherently related to any particular device or other apparatus. Various systems (e.g., wireless devices operating in near-field environments, pico-area networks, wide-area networks, etc., including antennas, radio frequency (RF) transceivers, and controllers) may be used in accordance with the teachings described herein, or it may prove convenient to construct more specialized apparatuses to perform the required method steps. The required structure for various such systems will appear as described above.

[0123] Figure 11 A block diagram of a Bluetooth device 1111 is depicted showing hardware and software drivers deployed to scan channels to classify BLE channels for AFH channel mapping, including channel-specific deep fades, according to one embodiment. The Bluetooth device 111 may implement Figure 4-5 or Figure 7-10 Any of the methods.

[0124] The Bluetooth device 1111 may include one or more antennas 1121, Bluetooth hardware 1113, and a Bluetooth driver 1115. The Bluetooth driver 1115 may include a Bluetooth Tx / Rx controller 1117 (e.g., a Bluetooth core scheduler or link manager). The Bluetooth hardware 1113 may include an RF transceiver configured to send or receive packets on one or more channels of the Bluetooth frequency band. The Bluetooth Tx / Rx controller 1117 may execute a channel assessment algorithm to scan channels to classify them as being damaged by deep fading, Wi-Fi interference, or weak signals, and update an AFH channel map that shows suspended channels that are not used for AFH and good channels that can be used for AFH.

[0125] In one embodiment, the Bluetooth device 1111 may include a memory and a processing device (e.g., a Bluetooth Tx / Rx controller 1117). The memory may be a synchronous dynamic random access memory (DRAM), a read-only memory (ROM), or other types of memory, which may be configured to store code for executing the functions of the Bluetooth driver 1115. The processing device may be provided by one or more general-purpose processing devices such as a microprocessor, a central processing unit, etc. In an illustrative example, the processing device may include a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor, a very long instruction word (VLIW) microprocessor, or a processor that implements other instruction sets or a processor that implements a combination of instruction sets. The processing device may also include one or more special-purpose processing devices, such as an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), a network processor, etc. According to one or more aspects of the present disclosure, the processing device may be configured to perform the operations described herein to perform the operations and steps discussed herein.

[0126] The computer-readable medium used to implement the operations of various aspects of the present disclosure may be a non-transitory computer-readable storage medium, which may include, but is not limited to, electromagnetic storage media, magneto-optical storage media, read-only memory (ROM), random-access memory (RAM), erasable programmable memory (e.g., EPROM and EEPROM), flash memory, or another now known or later developed non-transitory type of medium suitable for storing configuration information.

[0127] The above description is intended to be illustrative rather than restrictive. Although the present disclosure has been described with reference to specific illustrative examples, it will be appreciated that the present disclosure is not limited to the described examples. The scope of the present disclosure should be determined with reference to the following claims and the full range of equivalents to which the claims are entitled.

[0128] As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that when used herein, the terms "include," "comprise," "include," "may include," and / or "include" specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or combinations thereof. Therefore, the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting.

[0129] It should also be noted that, in some alternative implementations, the functions / actions mentioned may not occur in the order mentioned in the figures. For example, depending on the functions / actions involved, two figures shown in succession may actually be performed substantially simultaneously, or may sometimes be performed in reverse order.

[0130] Although the method operations are described in a particular order, it should be understood that other operations may be performed between the described operations, the described operations may be adjusted so that they occur at slightly different times, or the described operations may be distributed in a system that allows processing operations to occur at various intervals associated with the processing. For example, certain operations may be performed, at least partially, in reverse order, simultaneously with other operations, and / or in parallel.

[0131] Various units, circuits, or other components may be described or claimed as being "configured to" or "configurable to" perform one or more tasks. In such contexts, the phrases "configured to" or "configurable to" are used to imply structure by indicating that the unit / circuit / component includes structure (e.g., circuitry) that performs one or more tasks during operation. Thus, even when the specified unit / circuit / component is not currently operational (e.g., not turned on), the unit / circuit / component may be said to be configured to perform a task, or configurable to perform a task. Units / circuits / components used with the "configured to" or "configurable to" language include hardware, such as circuitry, memory storing program instructions executable to implement an operation, and the like. Reciting a unit / circuit / component as "configured to" or "configurable to" perform one or more tasks is expressly intended not to invoke 35 U.S.C. § 112, sixth paragraph, with respect to that unit / circuit / component.

[0132] Additionally, "configured to" or "configurable to" may include general structures (e.g., general circuitry) being manipulated by firmware (e.g., an FPGA) to operate in a manner capable of performing the tasks in question. "Configured to" may also include adapting a manufacturing process (e.g., a semiconductor fabrication facility) to manufacture a device (e.g., an integrated circuit) adapted to implement or perform one or more tasks. "Configurable to" is expressly intended not to apply to blank media, an unprogrammed processor, or an unprogrammed programmable logic device, programmable gate array, or other unprogrammed device, unless accompanied by programmed media that imparts the ability for the unprogrammed device to be configured to perform the disclosed functionality.

[0133] For purposes of explanation, the foregoing description has been described with reference to specific embodiments. However, the illustrative discussion above is not intended to be exhaustive or to limit the invention to the precise forms disclosed. In light of the above teachings, many modifications and variations are possible. These embodiments have been chosen and described in order to best explain the principles of the embodiments and their practical application, thereby enabling others skilled in the art to best utilize the embodiments and various modifications that may be suitable for the particular use envisioned. Therefore, the present embodiments are to be considered illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims

1. A method for detecting interference in wireless communication, comprising: receiving, by a device, a plurality of packets on a channel among a plurality of channels of a frequency band for a communications network; determining a received signal strength for each of the plurality of packets; determining a packet error rate (PER) for the channel based on a number of erroneously received packets and a difference between a received signal strength of each packet and a reference signal strength associated with one or more other channels of the frequency band; Determining whether a PER of the channel is greater than a PER threshold; as well as In response to the PER of the channel being determined to be greater than the PER threshold, use of the channel for wireless communication is excluded.

2. The method according to claim 1, wherein Determining the PER of the channel includes: determining, for each packet of the plurality of packets, a difference between a received signal strength of the packet and the reference signal strength when the packet is erroneously received; When the difference is greater than a gradient threshold, determining that the packet is damaged due to deep fading; and The PER of the channel is determined as a proportion of the plurality of packets that are damaged due to deep fades.

3. The method according to claim 2, wherein: Exclusions from using the channel include: When the PER of the channel is greater than the PER threshold, it is determined that the channel is a deep fading channel.

4. The method according to claim 2, wherein: Determining the PER of the channel further includes: When the difference fails to be greater than the gradient threshold and the signal strength of the packet is greater than the interference threshold, determining that the packet is damaged due to signal interference; determining a dominant type of impairment based on the greater of a number of the plurality of packets that are corrupted due to deep fades and a number of the plurality of packets that are corrupted due to signal interference; and The PER of the channel is determined as the proportion of the plurality of packets that are damaged due to the dominant type of impairment.

5. The method according to claim 4, wherein Exclusions from using the channel include: When the PER of the channel is greater than the PER threshold, the channel is determined to be experiencing the dominant type of impairment.

6. The method according to claim 4, wherein: Determining the PER of the channel further includes: When the difference fails to be greater than the gradient threshold and the signal strength of the packet is less than a weak signal threshold, determining that the packet is damaged due to a weak signal, wherein the weak signal threshold is less than the interference threshold; determining a dominant type of impairment based on a maximum of a number of the plurality of packets that are corrupted due to deep fades, a number of the plurality of packets that are corrupted due to signal interference, and a number of the plurality of packets that are corrupted due to weak signals; and The PER of the channel is determined as a proportion of the plurality of packets that are damaged due to the dominant type of impairment.

7. The method according to claim 1, wherein The reference signal strength comprises an average received signal strength of a subset of the plurality of channels, the subset surrounding the channels associated with the plurality of packets.

8. The method according to claim 1, wherein The reference signal strength includes an average signal strength of a second channel that is adjacent to the channels associated with the plurality of packets.

9. The method according to claim 1, further comprising: The PER threshold is adjusted based on a number of the plurality of channels that are excluded from use for wireless communication.

10. The method according to claim 1, further comprising: In response to the PER of the channel being determined to fail to be greater than the PER threshold, the channel is used for wireless communication.

11. The method according to claim 1 , further comprising: A channel map is determined, the channel map containing information of one or more channels among the channels excluded from use for wireless communication, wherein the information includes a classification of interference on each of the channels and a PER for each of the channels.

12. The method according to claim 11, further comprising: When the number of channels excluded from use is greater than a maximum channel threshold, a subset of the channels excluded from use is reclaimed, wherein the subset of the channels reclaimed is determined based on PERs of the channels in the channel map.

13. An apparatus comprising: A processing unit configured to perform operations comprising: receiving a plurality of packets on a channel of a plurality of channels of a frequency band for a communication network; determining a received signal strength for each of the plurality of packets; determining a packet error rate (PER) for the channel based on a number of erroneously received packets and a difference between a received signal strength of each packet and a reference signal strength associated with one or more other channels of the frequency band; determining whether the PER of the channel is greater than a PER threshold; and In response to the PER of the channel being determined to be greater than the PER threshold, use of the channel for wireless communication is excluded.

14. The device according to claim 13, wherein To determine the PER of the channel, the processing unit is further configured to perform operations including: determining, for each packet of the plurality of packets, a difference between a received signal strength of the packet and the reference signal strength when the packet is erroneously received; When the difference is greater than a gradient threshold, determining that the packet is damaged due to deep fading; as well as The PER of the channel is determined as a proportion of the plurality of packets that are damaged due to deep fades.

15. The device according to claim 14, wherein To exclude the channel from use, the processing unit is further configured to perform operations including: When the PER of the channel is greater than the PER threshold, it is determined that the channel is a deep fading channel.

16. The device according to claim 14, wherein To determine the PER of the channel, the processing unit is further configured to perform operations including: When the difference fails to be greater than the gradient threshold and the signal strength of the packet is greater than the interference threshold, determining that the packet is damaged due to signal interference; determining a dominant type of impairment based on a greater of a number of the plurality of packets that are corrupted due to deep fades and a number of the plurality of packets that are corrupted due to signal interference; as well as The PER of the channel is determined as a proportion of the plurality of packets that are damaged due to the dominant type of impairment.

17. The device according to claim 16, wherein To exclude the channel from use, the processing unit is further configured to perform operations including: When the PER of the channel is greater than the PER threshold, the channel is determined to be experiencing the dominant type of impairment.

18. The device according to claim 13, wherein The reference signal strength comprises an average received signal strength of a subset of the plurality of channels, the subset surrounding the channels associated with the plurality of packets.

19. The device according to claim 13, wherein The reference signal strength includes an average signal strength of a second channel that is adjacent to the channels associated with the plurality of packets.

20. The apparatus according to claim 13, wherein The processing unit is further configured to perform operations including: The PER threshold is adjusted based on a number of the plurality of channels that are excluded from use for wireless communication.