Main Content

Performance Considerations for Using mmWave Radar Sensors for Reading Object Detections

Limits on Update Rate and Baud Rate

Background

The mmWave radar generates radar measurements as frames at intervals defined by the reciprocal of the update rate of the radar. The update rate is in Hz (samples/s). The Update rate is configured using the respective command in Configuration (.cfg) file that is specified using ConfigFile property of the mmWaveRadar object

Update Rate in bytes (Number of bytes expected from radar in a second) = Update Rate * (No of bytes in a frame)

For example, if the update rate is 5 Hz, the radar sends 5 frames of radar measurement data in one second.

Update Rate in Bytes = 5 * (No of bytes in a frame)

The number of bytes in a frame depends on factors like:

  • Outputs the radar is configured to generate. The outputs are configured using the guiMonitor command in the Configuration (.cfg) file.

  • mmWave radar configurations specified by the Configuration (.cfg) file. For example, if Range profile output is enabled, the number of ADC samples specified in the configuration file determines the size of Range profile data generated by the radar.

  • Number of detections in a scenario, if detection outputs are enabled using guiMonitor command in Config File.

The Baud rate of serial transport layer is that rate at which data is transmitted on the serial line in bits per second. The Baud rate at which radar reads data using UART is configured using BaudRate property of mmWaveRadar object.

Recommended Setting

Ensure that Update Rate in Bytes <= Baud Rate in Bytes

Otherwise, data drops and performance glitches can happen.

While setting the baud rate and update rate of the radar, ensure that mmWave sensor will have enough duration to ship out data in every frame over the UART.

Texas Instruments® recommends avoiding enabling Range Doppler Response (Range Doppler Heat Map) and Range Angle Response (Heat Map) for update rates above 5 Hz.

Note

Update rate, outputs generated by radar, and size of some of the outputs are configured using the corresponding command in Configuration (.cfg) file. For more details on the command to configure, refer to the Configuration (.cfg) File Format section in mmWave SDK user guide.

Additional Information

For a baud rate of 921600 bits/s, 92160 bytes can be received or sent through the channel without data drop. Assuming 1 byte is 10 bits, if you have enabled Range Doppler Heat Map for 256 FFT range and 16-point FFT Doppler:

Update Rate in Bytes <= Baud Rate in Bytes

Update Rate * (No of bytes in a frame) <= Baud Rate in Bytes

Update Rate * (256 * 16 * number of bytes per value (4)) < = 92160

Update Rate * 16384 <= 92160

Update Rate <= 92160/16384 ≅ 5 samples/s

This means that if you configure your radar to give only Range Doppler Heat Map and specify a baud rate of 921600, and the update rate is greater than 5 samples/s, you may see data drops and performance issues.

Ensure that your update rate and baud rate are set according to the number of outputs, size of output, and the scene (number of detections you can get from a scene), so that you do not see a sluggish performance.

For the Supported Boards, the maximum baud rate that can be set is 921600. This is because of the limitation of CP210x USB drivers. Refer to the datasheet for CP210x for more details.

Time Taken for Execution of First Step

Calling the mmWaveRadar object for first time after object creation or calling the object after calling the release function takes additional time to complete. This is because the object sends some commands to TI mmWave radar and waits for its response to configure the radar and test the setup.

The subsequent calls the object are faster. While doing a performance characterization, exclude the first call to the mmWaveRadar object.