Patent ID: 12249310

Elements and steps in the figures are illustrated for simplicity and clarity and have not necessarily been rendered according to any sequence. For example, steps that may be performed concurrently or in different order are illustrated in the figures to help to improve understanding of embodiments of the present disclosure.

DETAILED DESCRIPTION

While various aspects of the present disclosure are described with reference toFIGS.1-7, the present disclosure is not limited to such embodiments, and additional modifications, applications, and embodiments may be implemented without departing from the present disclosure. In the figures, like reference numbers will be used to illustrate the same components. Those skilled in the art will recognize that the various components set forth herein may be altered without varying from the scope of the present disclosure.

For background, a least mean square, LMS, algorithm is used to approximate a solution for the least mean squared problem. This algorithm may be implemented, for example, using digital signal processors. The LMS algorithm is based on a method of the steepest descent and computes a gradient in a simple manner. The algorithm operates in a time-recursive fashion.

The ANC system may use a Filtered x-LMS (FxLMS) algorithm (seeFIG.1), or modifications or extensions thereof such as a Modified Filtered-x LMS (MFxLMS) algorithm (seeFIG.2). In each ofFIGS.1and2, the elements are divided between an acoustical domain and an electrical domain. Also, each system may be a scalable, multiple-input-multiple-output (MIMO) system that operates for multiple speaker outputs, multiple error microphones, and, in the case of a listening environment that is a vehicle cabin, multiple engine orders. However, for simplicity in describing the inventive subject matter the description hereinafter includes one speaker, one error signal, and one reference signal. One skilled in the art can extend application of the inventive subject matter to any number of speakers, microphones, and reference signals.

FIG.1is directed to FxLMS, wherein a digital feedforward ANC system100includes a noise source102and a primary noise signal, d[n], that passes through a filter104having a primary path transfer function, P(z). P(z) represents the transfer characteristics of a signal path between the noise source102and an error microphone106. An adaptive filter108has a transfer function, W(z), having an adaptation unit110that calculates a set of filter coefficients (also called parameters) for the adaptive filter108. An actual secondary path system112has a transfer function, S(z), downstream of the adaptive filter108. The transfer function, S(z), represents a signal path between a loudspeaker that radiates a compensation signal and a position in the listening environment. An anti-noise signal, y[n], includes the transfer characteristics of all components downstream of the adaptive filter108, including, for example, amplifiers, digital-to-analog converters, loudspeakers, acoustic transmission paths, microphones, and analog-digital converters. An estimated secondary path system114, has a transfer function Ŝp(z) of the actual secondary path transfer function S(z), and is used by the adaptation unit110to calculate the filter coefficients of the transfer function for the adaptive filter108. The primary path filter104and the actual secondary path filter112represent the physical properties of the listening environment. The transfer functions W(z), S(z), and Ŝp(z) are implemented in a digital signal processor.

Noise source102provides a signal to the primary path filter104which provides a disturbing noise signal, d[n], to the error microphone106. The noise source102also provides a reference signal, x[n] to the adaptive filter108, which imposes a phase shift and outputs a filtered anti-noise signal y[n] to the actual secondary path transfer function112which outputs a signal, y′[n], that destructively superposes the primary noise signal d[n]. The reference signal, x[n], may be derived from a source that is correlated with the primary noise source102, such as engine RPM or accelerometers. A measurable residual signal represents an error signal, e[n], for the adaptation unit110. The estimated secondary path transfer function Ŝp(z) is used to calculate updated filter coefficients. This compensates for decorrelation between the anti-noise signal y[n] and a filtered anti-noise signal, y′[n], due to signal distortion in the secondary path. The secondary path transfer function Ŝp(z) also receives the reference signal, x[n], from the noise source102and provides a modified reference signal x′[n] to the adaptation unit110.

The quality of the estimated secondary path transfer function Ŝp(z) influences the stability of the ANC system100. Deviation of the estimated secondary path transfer function Ŝp(z) from the actual secondary path transfer function S(z) affects convergence and stability behavior of the adaptation unit110. Unstable behavior may be caused by changes in the ambient conditions in the listening environment. For example, when the listening environment is a vehicle cabin, changes in ambient conditions may occur when a window is opened, the seats are adjusted, or there are items (or passengers) on a seat in the listening environment.

In practice, a dynamic system of the secondary path adapts itself to the changing ambient conditions in real time. Such a system is shown in block diagramFIG.2that is like the filter arrangement shown inFIG.1but includes an additional adaptive filter arrangement in parallel with the secondary path system.FIG.2is directed to a modified filtered-x LMS (MFxLMS) and is directed to a digital feedforward ANC system200. The reference signal x[n] is filtered by the first secondary path filter114with the adaptive filter108having transfer function W(z) which estimates the secondary path. Coefficients of the first secondary path filter114are referred to as active filter coefficients. The dynamic system also includes a second adaptive filter208which filters the reference signal x[n] with a transfer function W(z) to generate the anti-noise signal y[n]. The anti-noise signal y[n] is filtered by the actual secondary path system112. The signal y′[n] is audible anti-noise at the error microphone106as filtered by the filter112with the actual secondary path transfer function S(z). The filtered anti-noise signal y′[n] is combined at the error microphone with primary noise d[n] as filtered by the actual primary path system104transfer function P(z).

In the electrical domain, the anti-noise signal y[n] is filtered by a second secondary path filter214using a transfer characteristic Ŝp(z) and subtracted from the error signal, e[n], at an adder216. The result is an estimated noise signal, {circumflex over (d)}p[n], at the error microphone106. The estimated noise signal {circumflex over (d)}p[n] is combined with the signal filtered by the first adaptive filter108at adder218to generate an internal error signal g[n]. The internal error signal g[n] is feedback for the adaptation unit110.

In practice, the secondary path estimate IRs are estimated only once for the listening environment with optimal conditions. For a vehicle cabin listening environment, this takes place only during the production tuning process before the vehicle leaves the production facility. Furthermore, the secondary path estimate IRs represent the listening environment under a nominal scenario. For example, when the listening environment is a vehicle cabin, a nominal scenario is the vehicle in park, not moving, with one driver, and all windows, doors, and trunk closed.

The estimation process involves playing a test signal to excite the electro-acoustic path followed by a deconvolution step to determine the IRs. These estimates remain fixed thereafter for the lifetime of the vehicle. When acoustics within the listening environment change during runtime, for example when the vehicle is being driven with one or more windows down and multiple passengers or items in seats, a mismatch between the actual and stored IRs is created.

In a listening environment in real time, the stored IRs for Ŝp(z) may differ from the actual acoustic transfer function S(z), and this mismatch may eventually result in divergence of the W(z) filters, leading to degraded ANC performance and noise boosting. When Ŝp(z) better matches S(z), the resulting error feedback signal more accurately represents what is really happening in the listening environment and adaptive filters W(z) are much more likely to avoid divergence. Additionally, when Ŝp(z) better matches S(z), a more aggressive tuning approach may be used to increase the cancellation performance because the risk of divergence has been eliminated.

To improve the accuracy of the stored estimates, the inventive subject matter calculates secondary path IRs, online in real time, in a near-imperceptible manner and updating the stored estimates with newly calculated secondary path IRs. It applies to FxLMS and MFxLMS systems described inFIGS.1and2, to calculate Ŝp(z) parameters without the need for generating a test signal. The inventive subject matter also finds unique Ŝp(z) solutions under MIMO conditions. And the inventive subject matter determines if, when, and how to change the Ŝp(z) parameters.

The system, and method, calculates and updates the stored estimates in a manner that is nearly imperceptible to the listener in the listening environment. Any updates that are made to the transfer function coefficients will be inaudible to a listener in the listening environment. The update is so slight, gradual, or subtle that it is not perceived by or affects the listener's senses making it go unnoticed.

FIGS.3A and3Beach show a block diagram300depicting FxLMS and MFxLMS systems, respectively, with an online secondary path IR estimator302(also referred to herein as the IR estimator302) of the inventive subject matter. Online refers to testing and updating secondary path IRs in real time while the vehicle is in operation, being driven, regardless of a current state of vehicle occupancy, window positions, music being played, etc.

The IR estimator302of the inventive subject matter effectively calculates, or estimates, coefficients for the transfer function Ŝp(z) for the ANC system online, using music signals being played, in real time in the vehicle cabin through the vehicle audio system. The music signals are used instead of a test signal. To accomplish this, the IR estimator302includes an adaptive music interference canceller (AMIC)304. The AMIC has a low frequency decorrelator306having parallel crossover filters with a transfer function, Ŝm(z) associated with an adaptive filter system308for the AMIC304. The AMIC304functions like an acoustic echo canceller (AEC) to remove music content from the ANC error microphone106to prevent incorrect adaptation of the transfer function W(z) for adaptive filters108,208.

According to the inventive subject matter, whenever the AMIC304is provided with music signals that have audio spectral content that is sufficient for the music to be used as a proper test signal and a proper step size, μ, the coefficients of the transfer function Ŝm(z) for the adaptive filter system308for the AMIC304will converge on the secondary path IRs between loudspeakers (not shown) and microphones106in the listening environment. A measurable residual signal represents an error signal without audio interference, e′[n], as feedback for an adaptation unit310for calculating coefficients of the transfer function for the adaptive filter308. Once the AMIC adaptive filter308has converged, the coefficients of the transfer function Ŝm(z) may be copied into the transfer function Ŝp(z) to be used as a new secondary path IR estimate for the ANC system.

The music signals314should have audio content that is sufficient to allow proper convergence of the AMIC adaptive filter308. To determine whether the audio content of the music signals314is sufficient, spectral descriptors, like spectral flatness, are considered and a determination about the sufficiency of the music signals is made by the IR estimator302. Acceptable audio content of the music signals314will allow for proper convergence. This will be discussed in more detail later herein.

With music signals314having sufficient audio content, the IR estimator allows the AMIC adaptive filters to converge. Once the AMIC adaptive filters have converged, the step size, μ, is set to zero. This disables the AMIC304once the filters have converged. Disabling the AMIC304stops any further adaptation to guarantee that a stable IR is being used by the IR estimator.

A common problem that arises with multi-channel ANC systems is non-uniqueness of solutions to the normal adaptive filter equations. Non-uniqueness of solutions happens because of a strong correlation between the content being played at different loudspeakers and the multi-path coupling between loudspeakers and microphones in the listening environment. To prevent non-uniqueness of solutions, the IR estimator302includes a low frequency decorrelator306to provide enough decorrelation to find unique Ŝp(z) solutions under MIMO conditions. To accomplish this, the low frequency decorrelator306decorrelates loudspeaker output signals from each other before being played through the loudspeakers. Decorrelating the audio signals transforms the signals into multiple signals that, individually, sound like the original signal but their waveforms are different and have little correlation between them. Typically, linear predictive coding or nonlinear processing is used for signal decorrelation. However, each of these methods for decorrelation may introduce audible distortions in the music. The goal of using the music signals as a test signal involves making the test signal imperceptible to the listener while conducting the test.

To prevent any audible distortions of the music signals314, the IR estimator302applies decorrelation to only a small bandwidth of the music signals314. The low frequency decorrelator306splits the music signals into low and high frequency bands by applying parallel crossover filters316,318, for example Linkwitz-Riley filters. In-vehicle ANC systems typically only target frequencies below 1000 Hz and low frequencies make up only a small fraction of the auditory spectrum, so a cutoff frequency for the Linkwitz-Riley filters may be set to cover only the necessary low frequency bandwidth prior to decorrelation. For example, for Engine Order Cancellation (EOC) the cutoff frequency may be set to 600 Hz. Any distortions in this band are generally imperceptible to a listener. The music signals314are modified enough, in the small bandwidth, to make them unique to each speaker channel without introducing audible distortions into the music. The decorrelation over the small bandwidth, in this case the low frequency bandwidth, decreases the audibility of the decorrelation process making it effective for mathematically decorrelating the speaker signals to avoid non-uniqueness while remaining imperceptible to a listener in the listening environment.

The decorrelated low frequency signals are summed at adder320with the high frequency signals from high pass filter318and the resultant transformed signal322may be used as a test signal, or reference signal, to the AMIC adaptive filter308. Because decorrelation is only applied to the low frequency portion of the music signals, it remains imperceptible in the transformed signal322. Therefore, the transformed signal322becomes a substitute for a test signal, and as a test signal it remains imperceptible to a listener. This makes it possible to perform the test online in real time using the music signals as a test signal.

Once the AMIC adaptive filter308converges, the Ŝm(z) parameters may be copied directly into Ŝp(z). However, as discussed above, before copying the coefficients, the AMIC304should be disabled, or frozen. Because the acoustics in the vehicle cabin may change in the middle of an update, disabling the AMIC ensures that a stable impulse response is being used.

Optionally, if needed, Ŝm(z) may be formatted prior to copying coefficients. The Ŝm(z) filter308may not include the interpolation and decimation processing that is applied to the y[n] signal. Ŝm(z) may need to be formatted so that it can be used directly as a replacement for Ŝp(z). Formatting may be done in more than one manner. For example, before coefficients are copied, processing is performed to convolve the interpolation324and decimation326of filter coefficients with that of Ŝm(z). Another example technique may be to simply include a fixed delay328on the music signals314after decorrelation312. The fixed delay414approximates a delay induced by the interpolation and decimation filters. In this scenario, no further processing is required to modify Ŝm(z), but more memory is required.

Prior to copying the new coefficients into Ŝp(z), the existing coefficients of Ŝp(z) should be stored in memory where they are accessible in the event there is a need to revert back to the existing coefficients. For example, after copying the new coefficients into Ŝp(z), if divergence is detected to be ongoing, the secondary path IR estimator302will revert back to the coefficients of Ŝp(z) that were stored prior to copying.

It should be noted that updates enabled by the IR estimator302are not meant to take place continuously. A supervisor unit may determine if, when, and how to enable the IR estimator302to calculate and update coefficients of the secondary path transfer function for the ANC. Referring now toFIG.4, a block diagram400shows a supervisor unit402for the IR estimator302. For simplicity, the supervisor unit402shown inFIG.4is directed to a FxLMS. However, one skilled in the art can apply the supervisor unit to a MFxLMS as well without departing from the scope of the inventive subject matter.

The supervisor unit402uses secondary path update logic408to determine if an update should take place, to determine when the music signals314may be used as a proper test signal, and to determine when to initiate the update. Lastly, the secondary path update logic unit408may determine how the update will be made to avoid further deterioration of the AMIC304or ANC300system while the vehicle is running.

The supervisor unit402determines if an update should take place when the adaptive filter coefficients are diverging. By monitoring predetermined signal processing parameters406in the frequency domain, in real time, the secondary path update logic408compares S(z) and Ŝp(z). When the comparison results in a difference that exceeds a predetermined threshold range, the supervisor unit402has detected that S(z) is significantly different than Ŝp(z). When this significant difference is detected, the supervisor unit402has determined that new coefficients should be calculated and that an update should be made.

During the comparison of S(z) and Ŝp(z), the supervisor unit402may also consider the error signal without audio interference, e′[n], of the AMIC adaptive filter308. An error in the AMIC algorithm that exceeds a predetermined threshold may indicate that the Ŝm(z) filters are diverging from the actual secondary path IRs S(z) and a new estimate for Ŝp(z) should be calculated. Upon a determination that there is a sufficient difference, for example, the difference exceeds the predetermined threshold range, the supervisor unit402enables AMIC304adaptation.

The supervisor unit402then applies logic408to manage the process for calculating and updating coefficients of the secondary path transfer function Ŝp(z) for ANC. Upon determining that an update should take place, before calculating and updating the secondary path IRs, the supervisor unit402determines whether the music signals314may be used as a proper test signal. The supervisor unit402monitors and analyzes the music signals314to determine whether the music signals314have adequate audio content to be used as a proper test signal. One way in which this determination may be made is by looking at spectral descriptors404in the music signals314. Spectral descriptors404are functions that describe features of music signals. When music signals314have sufficient spectral descriptors, they are considered adequate to ensure that the AMIC adaptive filters308will converge and, therefore, may be used in place of what would normally be a test signal. To avoid a negative effect on the ANC system, the AMIC adaptive filters308should only be adapted when the audio content is sufficiently flat over the required bandwidth. Therefore, spectral flatness is one indicator that the audio content will allow proper convergence of the AMIC filters and that the audio content of the music signals314is sufficient to be used as a proper test signal.

Once the music signals314are determined to be a proper test signal, the supervisor unit402determines when to initiate adjustment of the filter parameters by copying new coefficients derived from proper convergence of the AMIC filters into Ŝp(z). One way that this may be accomplished is to consider a signal-to-noise ratio of ANC microphones in the listening environment. When the background noise in the listening environment is much higher than the music being played, the background noise may dominate the Ŝm(z) filter adaptation. Therefore, when background noise dominates, any update to Ŝp(z) should be delayed until a point in time where there is more music content relative to background noise.

Once the supervisor unit402has determined that the filter parameters for Ŝp(z) may be adjusted, the AMIC adaptive algorithm308,310is disabled, or frozen, so that when adjustments are made, they do not cause further deterioration in AMIC and ANC performance.

Referring now toFIG.5, a flowchart of a method500for calculating and updating the Ŝp(z) parameters of an ANC system online, in real time, using a secondary path IR estimator is shown. The method may be carried out by executing instructions with one or more devices, such as a processor or a controller, stored in a memory, including non-transitory memory. The processor receives sensors from various sensors of the vehicle audio system and the processor carries out the steps based on the received signals and the instructions stored in non-transitory memory.

At step501, the AMIC adaptive algorithm is enabled.

At step502, the method includes using the music signals at the AMIC as a test signal to calculate coefficients of the secondary path transfer function Ŝm(z) associated with AMIC to replace coefficients of the secondary path transfer function Ŝp(z) associated with the ANC system, in real time while the vehicle is on the road, in use, and music is being played through the vehicle audio system in the vehicle cabin.

At step504, the method includes the IR estimator calculating Ŝm(z) parameters and allowing the AMIC adaptive filters to converge.

At step506, after AMIC adaptive filters converge the method includes disabling the AMIC adaptive algorithm by setting the step size, μ, to zero. Setting the step size to zero stops any adaptation at the AMIC and ensures that a stable impulse response is being used while the newly calculated coefficients of Ŝm(z) are being copied as coefficients of Ŝm(z).

While the step size, μ, is zero, but before coefficients are copied, the method may include an optional step508of formatting Ŝm(z) so that the formats for each transfer function Ŝp(z) and Ŝm(z) match. Formatting may be accomplished using more than one technique. For example, the Ŝm(z) filter may not include the interpolation and decimation transfer functions that are typically applied to an anti-noise signal, y[n]. One technique for the optional step of formatting508may be further processing Ŝm(z) so that it can be used directly as a replacement for Ŝp(z). Additional processing is performed to convolve the interpolation and decimation of filter coefficients with that of Ŝm(z). Another technique may be to simply include a fixed delay on the music signals after decorrelation that approximates a delay induced by the interpolation and decimation filters. In this scenario, no further processing is required to modify Ŝm(z), but more memory is required.

At step510, the newly calculated Ŝm(z) coefficients are copied directly into Ŝp(z).

FIGS.6A and6Bare a flowchart of a method600for calculating and updating the Ŝp(z) parameters of an ANC system online, in real time, using a supervisor unit to manage the secondary path IR estimator.

The method600includes the step of continuously monitoring602audio signal and acoustical domain parameters. The method includes the step of detecting604a difference between S(z) and Ŝp(z). As discussed above, one way to detect the difference is to monitor the error signal without audio interference, e′[n]. At step606, the method includes the step of determining when the difference is outside of a predetermined threshold range. If the difference is detected to be within the predetermined threshold range, the method continuously monitors602audio signal and acoustical domain parameters.

When the difference is detected to be outside of the predetermined threshold range, the method includes the step of analyzing608the music signals. The music signals are analyzed by assessing content of the signal. Analysis of the music signals prompts the method to determine610if the music signals have sufficient audio content to be considered a proper test signal. For the music signal to be considered a proper test signal, the audio content must meet predetermined criteria. For example, and as discussed earlier herein, flatness.

When the music signals do not exhibit sufficient audio content to be considered a proper test signal, the method continues to continuously monitor602audio signal and acoustical domain parameters. When the music signals do have sufficient audio content to be considered a proper test signal the method includes enabling612the secondary path IR estimator and calculating614the coefficients of Ŝm(z) by allowing the AMIC adaptive filter system to converge.

Once the AMIC adaptive filter system has converged, the method includes disabling616the AMIC. Disabling the AMIC stops adaptation and guarantees that a stable IR will be used.

The method determines618if Ŝm(z) needs to be formatted to allow the parameters for Ŝm(z) to be copied directly into Ŝp(z). If formatting is needed, the method includes formatting620Ŝm(z).

Once formatting620is complete, or if formatting is not needed, the method includes initiating622the update of the parameters to copy the newly calculated parameters from Ŝm(z) into Ŝp(z). The method includes blending624old Ŝp(z) parameters with the newly calculated Ŝm(z) parameters. The blending624is a smooth slewing, over a tunable or variable time constant, of the parameters to prevent or minimize audible artifacts. An abrupt switch may cause audible artifacts such as pops or clicks that could degrade ANC performance. A time constant for slewing may be tunable, or variable, in the range of 100 ms to several seconds for completion.

Once the coefficients of Ŝp(z) are replaced with the coefficients from Ŝm(z), the method includes monitoring626the new parameters for a predetermined amount of time. The method includes determining628the accuracy of the updated coefficients. If either divergence is occurring or error signals exceed a predetermined threshold range, the method includes reverting back630to the previous parameters. Accuracy may be determined by considering the error signal, e′[n], gradient of error, or pre-existing stability control for ANC.

If divergence is not detected or the error remains within the predetermined threshold range, the method includes keeping632the AMIC inactive for a predetermined period, upon which expiration, the method includes reactivating634the AMIC. After either reverting630back to old parameters or reactivating634the AMIC, the method includes returning636to the step of continuously monitoring602audio signal and acoustical domain parameters.

FIG.7is a block diagram700showing one or more embodiments of the real time secondary path estimator applied to a MIMO system for a listening environment that has four speakers and four microphones. A stereo source702provides music signals to a left channel704and a right channel706. The left704and right706channel signals are filtered by parallel crossover filters710,712,714,716, such as Linkwitz-Riley crossover filters708. A signal from the left channel704is filtered through high-pass filter710and low-pass filter712. A signal from the right channel706is filtered through high-pass filter714and low-pass filter716.

Non-linear transform718is controlled ON or OFF719by the supervisor for the secondary path estimator logic unit. When ON, the non-linear transform718decorrelates at least some of the low frequency bandwidth signals,720for the left channel and722for the right channel. The high frequency bandwidth signals,724for the left channel and726for the right channel, are not subjected to decorrelation.

In the present example, the stereo source702is mixed to four loudspeakers730,732,734, and736. Loudspeakers730and734receive signals that are unprocessed. Loudspeakers732and736receive signals that have undergone non-linear processing738,740.

In practice, for a system with four loudspeakers and four microphones, there are a total of sixteen adaptive filters W(z) to cover each loudspeaker to each microphone742,744,746,748. However, for simplicity, only four adaptive filters750,752,754, and756for microphone748are being shown. Each signal undergoes decimation758,760,762,764. The supervisor unit controls a joint LMS operator766to freeze and/or unfreeze768the secondary path estimator which enables or disables secondary path filter adaptation.

In prior approaches to the problem of diverging adaptive filters W(z), the solution was to reduce step size, μ, and which oftentimes results in disabling the ANC. The inventive subject matter provides the capability to return the ANC system to baseline performance. The step size for adaptive filters W(z) do not need to be lowered because the inventive subject matter creates a more stable system by matching Ŝp(z) to S(z). Also realized is the potential to make cancellation performance more consistent than a system used during production tuning with a “nominal” static Ŝp(z) measurement.

Additionally, the inventive subject matter uses music signals that are already being played through the audio system and being listened to when measuring Ŝp(z). The decorrelation process is applied only to the low frequency bandwidth of interest and is only run periodically, resulting in a measurement approach that is imperceptible to the listener in the vehicle.

Yet another advantage may be realized through more aggressive tuning values being used for the ANC algorithm at the time of its initial setup. The ANC algorithm no longer needs to be tuned conservatively because the inventive subject matter reduces the possibility of a mismatch occurring between the estimated and actual secondary paths once the vehicle leaves the manufacturing facility and is in use on the road.

In the foregoing specification, the present disclosure has been described with reference to specific exemplary embodiments. The specification and figures are illustrative, rather than restrictive, and modifications are intended to be included within the scope of the present disclosure. Accordingly, the scope of the present disclosure should be determined by the claims and their legal equivalents rather than by merely the examples described.

For example, the steps recited in any method or process claims may be executed in any order, may be executed repeatedly, and are not limited to the specific order presented in the claims. Additionally, the components and/or elements recited in any apparatus claims may be assembled or otherwise operationally configured in a variety of permutations and are accordingly not limited to the specific configuration recited in the claims. Any method or process described may be carried out by executing instructions with one or more devices, such as a processor or controller, memory (including non-transitory), sensors, network interfaces, antennas, switches, actuators to name just a few examples.

Benefits, other advantages, and solutions to problems have been described above for one or more embodiments; however, any benefit, advantage, solution to problem or any element that may cause any particular benefit, advantage, or solution to occur or to become more pronounced are not to be construed as critical, required, or essential features or components of any or all the claims.

The terms “comprise”, “comprises”, “comprising”, “having”, “including”, “includes” or any variation thereof, are intended to reference a non-exclusive inclusion, such that a process, method, article, composition, or apparatus that comprises a list of elements does not include only those elements recited but may also include other elements not expressly listed or inherent to such process, method, article, composition, or apparatus. Other combinations and/or modifications of the above-described structures, arrangements, applications, proportions, elements, materials, or components used in the practice of the present disclosure, in addition to those not specifically recited, may be varied, or otherwise particularly adapted to specific environments, manufacturing specifications, design parameters or other operating requirements without departing from the general principles of the same.