mmWave Data Recorder User Guide

Table of Contents

Overview

The mmWave Data Recorder tool is a lightweight Python script that will automatically run through all steps needed to start the sensor such as connecting to its COM port and sending a configuration file. It will then record the incoming data for a specified amount of frames to be saved locally.

Why Use This Tool?

After an initial evaluation of using the Applications Visualizer to see what radar data looks like, this tool should be used to collect processed Radar output data in large and repeated quantities. It is setup so that it is easy to create multiple recording sessions, and is lightweight enough to run on most microcontrollers that can run Python and supports UART. Recordings saved as a JSON file can additionally be replayed within the Applications Visualizer if desired.

Supported Data Types and Formats

The mmWave Data Recorder tool supports data capture of any demo also supported by the Applications Visualizer by using local references within the Radar Toolbox. To see the current list of TI mmWave demos supported by the Applications Visualizer, please see the Applications Visualizer User Guide. This tool pulls TLV (Type, Length, Value) decoding information directly from the Applications Visualizer source files as well. Most of the TLVs created across all Radar Toolbox demos are listed within the Understanding UART Data Output Format User Guide.


Requirements

Hardware

The mmWave Data Recorder tool is designed to be EVM agnostic and work for any device and example combination also supported by the Radar Toolbox’s Application Visualizer. This allows for coverage of all industrial and incabin demos and devices.

Software

Below is a table which includes the required software. All are python modules which can be installed with pip. You can use the file requirements.txt to pip install all of these using pip. For example:

pip install -r requirements.txt

Software Version How to get
Python3 3.x.x Tested with 3.10 through 3.12
pyserial 3.x pip install pyserial==3.5.0
numpy 2.x.x pip install numpy==2.2.5
json-fix 1.0.0 pip install json-fix==1.0.0

User Instructions

This section will give a brief rundown of how to get started using the mmWave Data Recorder.

1. Configure settings.txt

All the required files are within the src/ folder of this tool’s documentation. Here you will find settings.txt where you can specify parameters needed to run the tool.

Configuration Parameters

Within src/cfg/ are three example configurations. This is the directory you should place any configuration you want the tool to send during runtime. You can specify the following within settings.txt as the configuration to send when one of the following type of devices are detected.

Runtime Parameters

Recording Parameters

Linux Users Only

The following information is for Linux users of the script only. Currently, the setting of PARSERTYPE, CFG_PORT, CFG_BAUD, DATA_PORT, and DATA_BAUD has to be manually done. First set MANUAL_OVERRIDE to true within parser_lib.py. Then set the variables below to what your sensor is.

2. Run the script

Once your sensor is connected and ensured to be in functional mode with a proper configuration in the cfg folder, simply start the script by doing python gui_lite.py. The script will automatically determine the connected device, send the appropriate configuration specified for that device, and record incoming data. Once the amount of numFrames is captured, the data is saved as the files set to "True" within the recording parameters.

Data is saved within:
<RADAR_TOOLBOX_DIR>\tools\mmwave_data_recorder\src\binData


Understanding the Source Code

As mentioned above, this tool has source code of its own combined with source code from the Radar Toolbox’s Applications Visualizer. The source code from used from the Applications Visualizer can be found within
<RADAR_TOOLBOX_DIR>\tools\visualizers\Applications_Visualizer\common
Below are all the Python files used across the tool’s functionalities:

Within mmWave Data Recorder

Within Applications Visualizer

Need More Help?