Main Content

bleAngleEstimateConfig

Configuration object for BLE angle estimation

    Download Required: To use bleAngleEstimateConfig, first download Communications Toolbox™ Library for the Bluetooth® Protocol. For more information, see Get and Manage Add-Ons. Alternatively, see Communications Toolbox Library for the Bluetooth Protocol File Exchange.

    Description

    The bleAngleEstimateConfig object creates a configuration object for Bluetooth low energy (BLE) angle estimation. You can estimate the angle of arrival (AoA) and angle of departure (AoD) by configuring the properties of this object.

    Creation

    Description

    example

    cfg = bleAngleEstimateConfig creates a default BLE angle estimation configuration object.

    example

    cfg = 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 an antenna 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.

    Data Types: double

    Normalized element spacing with respect to signal wavelength, specified as a positive real number less than or equal to 0.5 or a two-element row vector of positive real numbers less than or equal to 0.5. 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.

    Data Types: double

    Switch and sample slot duration, specified as 1 or 2. This value must be expressed 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

    getElementPositionPositions of the antenna array elements
    getNumElementsNumber of elements in antenna array

    Examples

    collapse all

    Create a default BLE angle estimation configuration object.

    cfg = bleAngleEstimateConfig;

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

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

    Create a default BLE angle estimation configuration object.

    cfg = bleAngleEstimateConfig
    cfg = 
      bleAngleEstimateConfig with properties:
    
               ArraySize: 4
          ElementSpacing: 0.5000
            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].

    cfg.ArraySize = [4 4];

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

    cfg.ElementSpacing = [0.4 0.3];

    Set the value of antenna switching pattern.

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

    References

    [1] Bluetooth Technology Website. “Bluetooth Technology Website | The Official Website of Bluetooth Technology.” Accessed November 22, 2019. 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™.

    Introduced in R2020b