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.

IWR1443: Demo Visualizer configuration file for faster fps

Part Number: IWR1443

Hi,

I would like to exercise my iwr1443 demo board with other parameters
other than the default values internal to the mmWave Demo Visualizer.
I have observed a number of inquires regarding this and I have learned
the following:

1.  The possible parameters allowed in the demo board is limited but I
do not know what the limits are and none appear to be published.  If
a non-allowed configuration is used, a return value of -1 in the
console window is provided with no insight which parameter is out of
limit and what the limit is.

2. The Sensing Estimator provides suitable parameters for the iwr1443
but as stated above, they may not work and the parameters (and
descriptions) provided are not clearly matched with the parameter
descriptions provided in the SDK user guide.  Perhaps many of the
values provided by the estimator are informational.

One change from the default values I would like to explore is the
frame rate.  The visualizer has an upper limit of 30.  I would like to
go higher, lets say 100 fps.  I realize that the number of chirps in a
frame would have to be reduced and/or limit the file size the uart can
send.  One configuration file I would like to use but errors is this:

% ***************************************************************
% Created for SDK ver:01.01
% Created using Visualizer ver:2.0.0.0
% Frequency:77
% Platform:xWR14xx
% ***************************************************************
sensorStop
flushCfg
dfeDataOutputMode 1
channelCfg 3 1 0
adcCfg 2 1
adcbufCfg 0 1 0 1
profileCfg 0 77 7 7 107.05 0 0 36.89 1 256 5465 0 0 30
chirpCfg 0 0 0 0 0 0 0 1
chirpCfg 1 1 0 0 0 0 0 3
frameCfg 0 1 31 0 10.00 1 0
lowPower 0 0
guiMonitor 0 0 0 0 0 1
cfarCfg 0 2 8 4 3 0 1280
peakGrouping 1 1 1 1 229
multiObjBeamForming 1 0.5
clutterRemoval 1
calibDcRangeSig 0 -5 8 256
compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
measureRangeBiasAndRxChanPhase 0 1.5 0.2
sensorStart

I have noticed that

1. The SampleSwap value in the adcbufCfg line is 1 (from the
visualizer default values) but the SDK user manual states that only a
value of 0 allowed.  This is confusing since it raises doubts about
the accuracy of other information in the SDK user manual.

2. It appears that two chipCfg lines are required.  Can you tell me
what is happening?  If I remove one of them from the visualizer
default case it will not work so I know that both are necessary.

3. The profileCfg values appear to be most critic.  I have attempted to adjust these as required based upon the json file created by the sensing estimator which is

{
    "platform": "IWR1443",
    "num_rx": 3,
    "num_tx": 1,
    "tx_gain": 9,
    "rx_gain": 9,
    "frequency_range": "77 - 81",
    "maximum_bandwidth": 4000,
    "tx_power": 12,
    "ambient_temperature_degC": 30,
    "maximum_detectable_range": 20,
    "range_resolution": 4,
    "maximum_velocity_kmph": 30,
    "velocity_resolution_kmph": 2,
    "measurement_rate": 100,
    "typical_detected_object": "Car",
    "detection_loss": 1,
    "system_loss": 1,
    "implementation_margin": 2,
    "detection_SNR": 12,
    "maximum_radar_cube_size": 384,
    "maximum_RF_bandwidth": 15,
    "maximum_sampling_frequency": 18.75,
    "sensor_maximum_bandwidth": 4000,
    "maximum_allowed_bandwidth": 4000,
    "starting_frequency": 77,
    "maximum_velocity": 8.333333333333334,
    "velocity_resolution": 0.5555555555555556,
    "valid_sweep_bandwidth": 3750,
    "idle_time": 7,
    "adc_valid_start_time": 4.3,
    "excess_ramping_time": 1,
    "periodicity": 10,
    "ambient_temperature": 303.15,
    "noise_figure": 16,
    "num_virtual_rx": 3,
    "non_coherent_combining_loss": 0,
    "rcs_value": 5,
    "combined_factor_in_dB": -2,
    "combined_factor_linear": 0.6309573444801932,
    "inter_chirp_time": 12.3,
    "aux_comp_coeff_a": 78875000000,
    "aux_comp_coeff_b": -8013712.5,
    "chirp_time": 101.6001584786054,
    "ramp_slope_init": 36.90939124656643,
    "ramp_slope_parameter": 764,
    "ramp_slope": 36.885738372802734,
    "aux_comp_T1": 1,
    "maximum_beat_frequency": 4.918098449707031,
    "sampling_frequency": 5.4645538330078125,
    "number_of_samples_per_chirp": 556,
    "total_sweep_bandwidth": 3948.4944133758545,
    "idle_time_minimum": 7,
    "ramp_end_time": 107.04664153577662,
    "carrier_frequency": 77.15861127200186,
    "aux_comp_T2": 3.3,
    "adc_valid_start_time_2": 4.3,
    "lambda": 3.8880948614073803,
    "max_chirp_repetition_period": 117,
    "chirp_repetition_period": 114,
    "num_range_fft_bins": 1024,
    "min_num_of_chirp_loops": 31,
    "max_range_for_typical_detectable_object": 88.11544914293157,
    "min_rcs_detectable_at_max_range": 0.013270330829623643,
    "num_doppler_fft_bins": 32,
    "active_frame_time": 3.534,
    "range_inter_bin_resolution": 2.171875,
    "velocity_inter_bin_resolution": 0.5381944444444444,
    "radar_cube_size": 372
}

I have examined the mmwavelink doxgen and device datasheet for
guidance but it has been limited.

Please advise other sources or particular sections that I should
examine more closely.  If you see any apparent discrepancy in my
configuration, please indicate the short coming.

Thanks.

Al

  • Hi Allen,

    Let me understand your questions.

    Q: The SampleSwap value in the adcbufCfg line is 1

    Please find more details in C:\ti\mmwave_sdk_01_02_00_05\docs\mmwave_sdk_user_guide.pdf

    <ChirpThreshold> Chirp Threshold configuration used for ADCBUF buffer to trigger ping/pong buffer switch. Valid values: 0-8 for xWR16xx only 1 for xWR14xx

    Q:Frame rate

    If you want to increase your frame rate, please make sure UART can transmit all the data. Also, you can write your own software to decode these data from UART. You can find the data format in following link: SDK01.02.00.05: Section "Output information sent to host" file:///C:/ti/mmwave_sdk_01_02_00_05/packages/ti/demo/xwr16xx/mmw/docs/doxygen/html/index.html

    Q: Two chipCfg lines in CFG file

    Two chirpcfg is using for different TX channel setting in TDM-MIMO mode.

    chirpCfg 0 0 0 0 0 0 0 Chirp 0 using TX1

    chirpCfg 1 1 0 0 0 0 0 Chirp 1 using TX3

    frameCfg 0 1 31 0 10.00 1 0: Total 32*2(TX1,TX3,TX1,TX3 .....) chirps loops in frame

    Please find more details in C:\ti\mmwave_sdk_01_02_00_05\docs\mmwave_sdk_user_guide.pdf

     

    Also, Sensing Estimator is using for Chirp Design. You should convert it to the SDK demo cfg file version(some of the config is not support by SDK demo, you can modify the signal chain to using this config).

     

    Regards,

    Wesley.