This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/IWR1443BOOST: Can't see/visualize data points that are >5m away from the sensor

Part Number: IWR1443BOOST


Tool/software: Linux

Hello there,

I have an IWR1443BOOST. I've done the calibration with TI tools. I've connected my IWR1443BOOST with an industrial PC running Ubuntu. There, I'm running ROS (robot operating system), and I'm also using TI resources for the ROS node that connects to my IWR1443BOOST.

It's all set up nicely, and I get data from my IWR1443BOOST, which in this context means that my TI radar ROS node is publishing a topic with point cloud data. I now use RViz to visualize these point cloud data. Here's a screenshot:

My problem: I can only see data points that are 5 meters or closer to the sensors, but nothing that is more than 5 meters away. For example, when a person is in front of the sensor and walking away from it, it'll "disappear" once the person is more than 5 meters away from the sensor.

I've been searching through TI e2e forums, and I've tried changing parameters in my configuration file, but I haven't managed to see data points that are farther away than 5 meters. Of what I've read, the IWR1443BOOST can easily see farther than 5 meters (up to 40 or 60m, or even 100), so I guess my question is how to set it up so that I will see those farther away data points. Or which settings am I missing, that I need to adapt to make sure I get data from more than 5 meters?

I'm copying the .cfg file that I'm currently loading into the sensor when starting.

Thank you for your help in advance,

Christoph

PS: here's the content of my .cfg file. It's mostly the same as the sample profile_3d.cfg from the SDK, with the compRangeBiasAndRxChanPhase line adapted from my calibration.

sensorStop
flushCfg
dfeDataOutputMode 1
channelCfg 15 7 0
adcCfg 2 1
adcbufCfg 0 1 0 1
profileCfg 0 77 105 7 57.14 0 0 70 1 128 2604 0 0 30
chirpCfg 0 0 0 0 0 0 0 1
chirpCfg 1 1 0 0 0 0 0 4
chirpCfg 2 2 0 0 0 0 0 2
frameCfg 0 2 16 0 100 1 0
guiMonitor 1 1 0 0 0 1
cfarCfg 0 2 8 4 3 0 768
peakGrouping 1 0 0 1 114
multiObjBeamForming 1 0.5
clutterRemoval 0
calibDcRangeSig 0 -5 8 256
compRangeBiasAndRxChanPhase 0.0590325 -0.06546 -0.54611 -0.50299 -0.52484 -0.90845 -0.41800 -0.77335 0.13928 -0.42429 -0.02182 -0.46127 0.34976 -0.39279 0.52872 0.08542 0.62701 -0.37000 0.35303 -0.06973 0.80161 0.30383 0.85107 0.60709 0.52087
measureRangeBiasAndRxChanPhase 0 1.5 0.2
sensorStart

  • Hi Christoph,

    The easiest way to modify the ROS point cloud visualizer demo configuration is to run the SDK Demo with the mmWaveDemoVisualizer GUI first and get the desired scene configuration using the GUI controls. You can then save the configuration from the Visualizer and send the generated configuration to the ROS demo using the mmWaveQuickConfig command. This procedure is defined in the ROS Point Cloud Visualizer user guide in section "Reconfiguring the chirp profile".

    Please note that you do not need need to re-flash your EVM to run the demo with mmWaveDemoVisualizer since the ROS point cloud visualizer also uses the SDK Out of Box demo so I assume you already have it flashed on your EVM.

    Thanks

    -Nitin

  • Hello Nitin,

    thank you for your answer. I've tried a couple of configuration files that I've created with the mmWaveDemoVisualizer, testing them in indoor and outdoor environments.
    I have managed to get data points up to 10m distance. But the resulting point clouds are getting much fuzzier, and harder to interpret as certain objects than the point clouds that I get with the standard 3D configuration that only shows me points up to 5m distance.

    I'm trying to find a compromise: I want to be able to see data points up to 10m distance, but nearly as clear as the setting that only shows me values up to 5m. Something between the following two configurations (the two best ones I've found in my testing so far).

    1.the one mostly the same as the sample profile_3d.cfg from the SDK, with the compRangeBiasAndRxChanPhase line adapted from my calibration:

    sensorStop
    flushCfg
    dfeDataOutputMode 1
    channelCfg 15 7 0
    adcCfg 2 1
    adcbufCfg 0 1 0 1
    profileCfg 0 77 105 7 57.14 0 0 70 1 128 2604 0 0 30
    chirpCfg 0 0 0 0 0 0 0 1
    chirpCfg 1 1 0 0 0 0 0 4
    chirpCfg 2 2 0 0 0 0 0 2
    frameCfg 0 2 16 0 100 1 0
    guiMonitor 1 1 0 0 0 1
    cfarCfg 0 2 8 4 3 0 768
    peakGrouping 1 0 0 1 114
    multiObjBeamForming 1 0.5
    clutterRemoval 0
    calibDcRangeSig 0 -5 8 256
    compRangeBiasAndRxChanPhase 0.0590325 -0.06546 -0.54611 -0.50299 -0.52484 -0.90845 -0.41800 -0.77335 0.13928 -0.42429 -0.02182 -0.46127 0.34976 -0.39279 0.52872 0.08542 0.62701 -0.37000 0.35303 -0.06973 0.80161 0.30383 0.85107 0.60709 0.52087
    measureRangeBiasAndRxChanPhase 0 1.5 0.2
    sensorStart

    2.this one here that enables me to see data points up to 10m, but not as well defined/clear as the configuration above:

    % ***************************************************************
    % Created for SDK ver:01.02
    % Created using Visualizer ver:1.2.0.0
    % Frequency:77
    % Platform:xWR14xx
    % Scene Classifier:best_range_res
    % Azimuth Resolution(deg):15
    % Range Resolution(m):0.044
    % Maximum unambiguous Range(m):9.01
    % Maximum Radial Velocity(m/s):1
    % Radial velocity resolution(m/s):0.13
    % Frame Duration(msec):100
    % Range Detection Threshold (dB):15
    % Range Peak Grouping:enabled
    % Doppler Peak Grouping:enabled
    % Static clutter removal:disabled
    % ***************************************************************
    sensorStop
    flushCfg
    dfeDataOutputMode 1
    channelCfg 15 5 0
    adcCfg 2 1
    adcbufCfg 0 1 0 1
    profileCfg 0 77 429 7 57.14 0 0 70 1 240 4884 0 0 30
    chirpCfg 0 0 0 0 0 0 0 1
    chirpCfg 1 1 0 0 0 0 0 4
    frameCfg 0 1 16 0 100 1 0
    guiMonitor 1 1 0 0 0 1
    cfarCfg 0 2 8 4 3 0 1280
    peakGrouping 1 1 1 1 229
    multiObjBeamForming 1 0.5
    clutterRemoval 0
    calibDcRangeSig 0 -5 8 256
    compRangeBiasAndRxChanPhase 0.0590325 -0.06546 -0.54611 -0.50299 -0.52484 -0.90845 -0.41800 -0.77335 0.13928 -0.42429 -0.02182 -0.46127 0.34976 -0.39279 0.52872 0.08542 0.62701 -0.37000 0.35303 -0.06973 0.80161 0.30383 0.85107 0.60709 0.52087
    measureRangeBiasAndRxChanPhase 0 1.5 0.2
    CQRxSatMonitor 0 3 5 123 0
    CQSigImgMonitor 0 119 4
    analogMonitor 1 1
    sensorStart

    So my question now is: can you recommend me setting values? As mentioned above, I'm trying to see data points up to about 10m, and less fuzzy than with the second configuration, closer to what I see with the first configuration (which only shows me data points up to 5m).

    Thank you for your help,

    Christoph
  • Hi Christoph,

    Were you able to resolve this issue? Please let us know if you still need support on this thread.

    Thanks
    -Nitin
  • Hi Nitin,

    as written in my post from May 23 above, I am looking for help/suggestions for configuration values. As I didn't find any input on how to "resolve this issue" myself, I've asked for help here, meaning I am still looking for help to find good configuration values that enable me to see data points up to 10m, and with a reasonably good resolution.

    Thank you.
    Christoph
  • Hi Christoph,

    Thanks for the response. I understand that you are able to detect objects at 10 m with the configuration you posted on May 23 but the point cloud is not as rich as with the default ROS driver 3D config at 5m distance. Is this correct?

    One of the differences in the configuration you generated vs the profile_3d config provided in the ROS demo is the CFAR threshold used for detection. The ROS demo config uses a detection threshold of 9dB while the one you generated with the demo visualizer is using 15dB. The higher CFAR threshold will reduce the number of points detected due to the higher threshold requirement.

    I would suggest you to create a config. using the Demo Visualizer as before but consider the following points:

    1. Use the demo visualizer and start with a 2D configuration i.e. 4RX+2TX (no Elevation). It is easier to visualize with the 2D plot.
    2. Change the desirable configuration drop down to Best Range. This will set the Maximum unambiguous range to 50m.
    3. Using the slider, reduce the maximum unambiguous range to at least 20% higher than your expected maximum range. So for 10m, set max range to 12m or higher.
    4. Reduce the Range Detection Threshold from 15dB to 9dB. You may have to tweak this value even lower depending upon the detection results you get.
    5. Disable both Range and Doppler Peak grouping using the corresponding checkboxes.
    6. Send this config to the device and check the detection results on the Demo Visualizer. Iterate with the configuration parameters (range, detection threshold) and check the results using the visualizer until you achieve optimal results. Save a screenshot of the desired configuration as you will need these values in the next step.
    7. Once you have achieved optimal detection at 10m, go back to the Configure Tab and change the Antenna Config to 3D i.e. 4RX+3TX (15deg + Elevation). This will modify the sliders to some default values so you'll need to restore the config using the values achieved in step 6 (use the screenshot).
    8. Now, reconfigure the ROS demo using the above generated configuration as explained in the mmWave ROS driver demo user guide.

    Please also note that due to how the OOB demo processing chain is implemented, moving targets may be detected better than completely static targets so adding motion to your target should help with detection.

    Please mark the thread as resolved if the above resolves your issue otherwise let us know if you need more support with this issue.

    Thanks
    -Nitin