RTLS System
Table of Contents
General Information
- Detailed guide can be found on SimpleLink Academy
- To get usage information for the RTLS Node Manager scripts and GUI please refer to:
tools\ble5stack\rtls_agent\README.md
- In order to edit and view how the RTLS subsystem handles uNPI commands, please refer to the following file:
tools\ble5stack\rtls_agent\rtls\rtls\ss_rtls.py
- In order to see a usage example, please refer to
tools\ble5stack\rtls_agent\examples\rtls_example.py
which shows how to use a RTLS Master + RTLS Slave + RTLS Passive combination - To access GUI, please refer TI Gallery and look for RTLS Monitor project.
Introduction
This readme contains the following information: 1. How to setup AoA demo 2. How to setup ToF demo 3. Description of commands accepted by RTLS Control and their meaning
Angle of Arrival - Setup
Software Setup
AoA is currently supported on all roles with the following caveats:
RTLS Master
- For RTLS Master and RTLS Slave projects, the configuration
-DRTLS_LOCATIONING_AOA
inbuild_config.opt
file that is located in the project directory, controls the build. - To build AoA, keep the option uncommented:
-DRTLS_LOCATIONING_AOA
- Master role will not collect I/Q samples
RTLS Slave
- For RTLS Master and RTLS Slave projects, the configuration
-DRTLS_LOCATIONING_AOA
inbuild_config.opt
file that is located in the project directory, controls the build. - To build AoA, keep the option uncommented:
-DRTLS_LOCATIONING_AOA
- Slave will send out a constant tone at the end of connection packet and it will not collect I/Q samples
RTLS Passive
RTLS_LOCATIONING_AOA
must be defined in predefined symbol/preprocessor symbol.- Passive will collect I/Q samples
- When using AoA raw output mode (AOA_MODE_RAW), consider the following:
- Connection interval of BLE must be at least 300ms to accomodate outputing all of the samples (a large 2k bytes chunk)
- Large amounts of heap will be used to support this mode
Hardware Setup
Note: Pin 29 will be held high on application initialization in order to enable a TX/RX antenna in cases where BOOSTXL-AOA is attached AoA requires 3 devices: RTLS Master/Passive/Slave. The devices should be flashed with the rtls_master/rtls_passive/rtls_slave applications as described above (with AoA flags). Compile and flash your applications - note that the LaunchPad with BOOSTXL-AOA should be used as the RTLS Passive.
- RTLS Master/Slave - These will be CC2640R2F LaunchPad
- RTLS Passive - Requires a special setup with BOOSTXL-AOA
For the RTLS Passive hardware setup, please take a look at Angle of Arrival BoosterPack
Running The Example
The steps to run the out of box example is described in tools\blestack\rtls_agent\README.html
Time of Flight - Setup
Software Setup
RTLS Master
- For RTLS Master and RTLS Slave projects, the configuration
-DRTLS_LOCATIONING_AOA
inbuild_config.opt
file that is located in the project directory, controls the build. - To build ToF, comment out the option in the following manner:
/* -DRTLS_LOCATIONING_AOA */
RTLS Slave
- For RTLS Master and RTLS Slave projects, the configuration
-DRTLS_LOCATIONING_AOA
inbuild_config.opt
file that is located in the project directory, controls the build. - To build ToF, comment out the option in the following manner:
/* -DRTLS_LOCATIONING_AOA */
s
RTLS Passive
- To enable ToF, RTLS_LOCATIONING_AOA must not be defined (can be left as xRTLS_LOCATIONING_AOA)
Hardware Setup
ToF requires 3 devices: RTLS Master/Passive/Slave. The devices should be flashed with the rtls_master/rtls_passive/rtls_slave applications as described above (with ToF flags).
Calibration
This part is relevant when using TOF_MODE_DIST * To calibrate your devices, keep the RTLS Slave 1m apart from RTLS Master/Passive before starting ToF * Once ToF is started and results start appearing, it means that the device is calibrated and started collecting samples
Using BOOSTXL-AOA on a ToF board
It is possible to have a board that is modified to be used for AoA and still being able to perform ToF with. The user must set the relevant antenna pins (IOID28, IOID29, IOID30) to act as output. For reference, see AOA_openPins function under AOA.c.
Running The Example
The steps to run the out of box example is described in tools\blestack\rtls_agent\README.html