Main Content

bleAngleEstimateConfig

Bluetooth LE angle estimation configuration parameters

    Description

    The bleAngleEstimateConfig object parameterizes the bleAngleEstimate function for estimating the Bluetooth® low energy (LE) angle of arrival (AoA) or angle of departure (AoD).

    Creation

    Description

    example

    cfgAngle = bleAngleEstimateConfig creates a default Bluetooth LE angle estimation configuration object.

    example

    cfgAngle = bleAngleEstimateConfig(Name,Value) sets properties by using one or more name-value pairs. Enclose each property name in quotes. For example, bleAngleEstimateConfig('SlotDuration',1) sets the switch and sample slot duration to 1 μs.

    Properties

    expand all

    Size of the array, specified as a positive integer or a two-element row vector of positive integers.

    • Setting this property to a positive integer specifies a uniform linear array (ULA) antenna array design with array elements on the y-axis.

    • Setting this property to a vector specifies a uniform rectangular array (URA) antenna array design. The vector must be of the form [r c], where r and c denote the number of row elements and column elements in the antenna array, respectively. In this case, the row elements and column elements are present along y-axis and z-axis, respectively.

    Dependencies

    To enable this property, set the EnableCustomArray property to 0 or false.

    Data Types: double

    Normalized element spacing with respect to signal wavelength, specified as a positive real number or a two-element row vector of positive real numbers.

    • Setting this property to a positive real number, specifies a ULA antenna array design with array elements on the y-axis.

    • Setting this property to a vector, specifies a URA antenna array design. The vector must be of the form [sr sc], where sr and sc denote the spacing between row and column elements of the antenna array, respectively. In this case, the rows and columns are present along y-axis and z-axis, respectively.

    Dependencies

    To enable this property, set the EnableCustomArray property to 0 or false.

    Data Types: double

    Flag to enable or disable custom array, specified as 0 (false) or 1 (true).

    Data Types: logical

    Normalized element positions with respect to wavelength, specified as a 3-by-N matrix, where N is the number of elements in the custom array. Each column of the matrix specifies the element position in the form [x; y; z] in the local coordinate system. The first column of the matrix must be [0; 0; 0].

    Dependencies

    To enable this property, set the EnableCustomArray property to 1 or true.

    Data Types: double

    Switch and sample slot duration, specified as 1 or 2. Units are in microseconds.

    Data Types: double

    Antenna switching pattern, specified as an M-element row vector, where M must be in the range [2, 74/SlotDuration+1].

    Data Types: double

    Object Functions

    expand all

    getElementPositionReturn positions of array elements
    getNumElementsReturn number of elements in array

    Examples

    collapse all

    Create a default Bluetooth LE angle estimation configuration object.

    cfgAngle = bleAngleEstimateConfig;

    Specify a ULA antenna array design by setting the antenna array size of the configuration object to 4.

    cfgAngle.ArraySize = 4
    cfgAngle = 
      bleAngleEstimateConfig with properties:
    
                ArraySize: 4
           ElementSpacing: 0.5000
        EnableCustomArray: 0
             SlotDuration: 2
         SwitchingPattern: [1 2 3 4]
    
    

    Create a default Bluetooth LE angle estimation configuration object.

    cfgAngle = bleAngleEstimateConfig
    cfgAngle = 
      bleAngleEstimateConfig with properties:
    
                ArraySize: 4
           ElementSpacing: 0.5000
        EnableCustomArray: 0
             SlotDuration: 2
         SwitchingPattern: [1 2 3 4]
    
    

    Specify a URA antenna array design by setting the antenna array size of the configuration object to [4 4].

    cfgAngle.ArraySize = [4 4];

    Set the row element spacing and column element spacing to 0.4 and 0.3, respectively.

    cfgAngle.ElementSpacing = [0.4 0.3];

    Set the value of antenna switching pattern.

    cfgAngle.SwitchingPattern = 1:16
    cfgAngle = 
      bleAngleEstimateConfig with properties:
    
                ArraySize: [4 4]
           ElementSpacing: [0.4000 0.3000]
        EnableCustomArray: 0
             SlotDuration: 2
         SwitchingPattern: [1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16]
    
    

    Create a default Bluetooth LE angle estimation configuration object.

    cfgAngle = bleAngleEstimateConfig
    cfgAngle = 
      bleAngleEstimateConfig with properties:
    
                ArraySize: 4
           ElementSpacing: 0.5000
        EnableCustomArray: 0
             SlotDuration: 2
         SwitchingPattern: [1 2 3 4]
    
    

    Enable custom antenna array support.

    cfgAngle.EnableCustomArray = 1;

    Specify the normalized element positions with respect to wavelength.

    cfgAngle.ElementPosition = [0 0 0 0;0 0.5 1 0.5;0 -0.5 0 0.5];

    Specify the antenna switching pattern.

    cfgAngle.SwitchingPattern = 1:4
    cfgAngle = 
      bleAngleEstimateConfig with properties:
    
        EnableCustomArray: 1
          ElementPosition: [3x4 double]
             SlotDuration: 2
         SwitchingPattern: [1 2 3 4]
    
    

    References

    [1] Bluetooth Technology Website. “Bluetooth Technology Website | The Official Website of Bluetooth Technology.” Accessed November 22, 2021. https://www.bluetooth.com/.

    [2] Bluetooth Special Interest Group (SIG). "Bluetooth Core Specification." Version 5.1. https://www.bluetooth.com/.

    [3] Wooley, Martin. Bluetooth Direction Finding: A Technical Overview. Bluetooth Special Interest Group (SIG), Accessed April 6, 2020, https://www.bluetooth.com/.

    Extended Capabilities

    C/C++ Code Generation
    Generate C and C++ code using MATLAB® Coder™.

    Version History

    Introduced in R2020b

    expand all