Tool/software:
Hello,
We're doing some testing using a provided configuration file (test_5.cfg),
version sensorStop flushCfg dfeDataOutputMode 3 channelCfg 15 7 0 adcCfg 2 1 adcbufCfg -1 0 1 1 1 lowPower 0 0 profileCfg 0 61.0 10 6 135 0 14970880 3.6 1 256 2000 0 0 48 profileCfg 1 61.0 10 6 135 0 10276864 3.6 1 256 2000 0 0 48 profileCfg 2 61.0 10 6 135 0 6565888 3.6 1 256 2000 0 0 48 profileCfg 3 61.0 10 6 135 0 1871872 3.6 1 256 2000 0 0 48 chirpCfg 0 0 0 0 0 0 0 7 chirpCfg 1 1 1 0 0 0 0 7 chirpCfg 2 2 2 0 0 0 0 7 chirpCfg 3 3 3 0 0 0 0 7 advFrameCfg 4 0 0 1 0 subFrameCfg 0 0 0 1 128 80 0 1 1 80 subFrameCfg 1 0 1 1 128 80 0 1 1 80 subFrameCfg 2 0 2 1 128 80 0 1 1 80 subFrameCfg 3 0 3 1 128 160 0 1 1 a160 guiMonitor -1 1 0 0 0 0 0 cfarCfg -1 0 2 8 4 3 0 12 0 cfarCfg -1 1 0 4 2 3 1 12 0 multiObjBeamForming -1 1 0.5 clutterRemoval -1 1 calibDcRangeSig -1 0 -5 8 256 extendedMaxVelocity -1 0 bpmCfg -1 0 0 1 lvdsStreamCfg -1 0 0 0 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 %Long Range People Detection performance is greatly improved by calculating the compRangeBiasAndRxChanPhase for the individual EVM. An example of this is below, but please calculate with the procedure described in the mmWave SDK users guide %compRangeBiasAndRxChanPhase 0.0 0.71313 -0.07993 0.80444 0.32242 0.65005 0.43036 0.63889 0.31528 0.56631 -0.49283 0.87103 -0.20547 0.80157 -0.02173 0.72357 -0.10864 0.39642 -0.74313 0.82355 -0.56723 0.82816 -0.34360 0.71524 -0.39929 measureRangeBiasAndRxChanPhase 0 1.5 0.2 CQRxSatMonitor 0 3 4 63 0 CQSigImgMonitor 0 127 4 analogMonitor 0 0 aoaFovCfg -1 -70 70 -90 90 cfarFovCfg -1 0 0 200 cfarFovCfg -1 1 -30 30.00 %SceneryParam -50 50 0.5 60 -6 6 staticBoundaryBox -150 150 0.5 230 -0.5 6 boundaryBox -150 150 0.5 220 -0.5 6 gatingParam 18 20 20 20 10 stateParam 4 10 60 600 20 600 allocationParam 30 30 0.5 3 2 2 maxAcceleration 0.1 0.1 0.1 trackingCfg 1 2 500 10 78 121 400 sensorPosition 2 0 0 presenceBoundaryBox -3 3 2 6 0.5 2.5 sensorStart
We aren't getting the 3D data expected (using the radar toolbox visualizer):
Here's the output from the visualizer:
INFO [gui_parser.py:289] Connected b'version\n' b'Platform : xWR68xx\n' b'\rmmWave SDK Version : 03.05.00.04\n' b'\rDevice Info : IWR68XX QM non-secure ES 02.00\n' b'\rRF F/W Version : 06.03.02.06.20.08.11\n' b'\rRF F/W Patch : 00.00.00.00.00.00.00\n' b'\rmmWaveLink Version : 01.02.06.06\n' b'\rLot number : 4226697\n' b'\rWafer number : 16\n' b'\rDie coordinates in wafer: X = 6, Y = 18\n' b'\rDone\n' b'\rmmwDemo:/>sensorStop\n' b'Ignored: Sensor is already stopped\n' b'\rDone\n' b'\rmmwDemo:/>flushCfg\n' b'Done\n' b'\rmmwDemo:/>dfeDataOutputMode 3\n' b'Done\n' b'\rmmwDemo:/>channelCfg 15 7 0\n' b'Done\n' b'\rmmwDemo:/>adcCfg 2 1\n' b'Done\n' b'\rmmwDemo:/>adcbufCfg -1 0 1 1 1\n' b'Done\n' b'\rmmwDemo:/>lowPower 0 0\n' b'Done\n' b'\rmmwDemo:/>profileCfg 0 61.0 10 6 135 0 14970880 3.6 1 256 2000 0 0 48\n' b'Done\n' b'\rmmwDemo:/>profileCfg 1 61.0 10 6 135 0 10276864 3.6 1 256 2000 0 0 48\n' b'Done\n' b'\rmmwDemo:/>profileCfg 2 61.0 10 6 135 0 6565888 3.6 1 256 2000 0 0 48\n' b'Done\n' b'\rmmwDemo:/>profileCfg 3 61.0 10 6 135 0 1871872 3.6 1 256 2000 0 0 48\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 0 0 0 0 0 0 0 7\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 1 1 1 0 0 0 0 7\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 2 2 2 0 0 0 0 7\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 3 3 3 0 0 0 0 7\n' b'Done\n' b'\rmmwDemo:/>advFrameCfg 4 0 0 1 0\n' b'Done\n' b'\rmmwDemo:/>subFrameCfg 0 0 0 1 128 80 0 1 1 80\n' b'Done\n' b'\rmmwDemo:/>subFrameCfg 1 0 1 1 128 80 0 1 1 80\n' b'Done\n' b'\rmmwDemo:/>subFrameCfg 2 0 2 1 128 80 0 1 1 80\n' b'Done\n' b'\rmmwDemo:/>subFrameCfg 3 0 3 1 128 160 0 1 1 160\n' b'Done\n' b'\rmmwDemo:/>guiMonitor -1 1 0 0 0 0 0\n' b'Done\n' b'\rmmwDemo:/>cfarCfg -1 0 2 8 4 3 0 12 0\n' b'Done\n' b'\rmmwDemo:/>cfarCfg -1 1 0 4 2 3 1 12 0\n' b'Done\n' b'\rmmwDemo:/>multiObjBeamForming -1 1 0.5\n' b'Done\n' b'\rmmwDemo:/>clutterRemoval -1 1\n' b'Done\n' b'\rmmwDemo:/>calibDcRangeSig -1 0 -5 8 256\n' b'Done\n' b'\rmmwDemo:/>extendedMaxVelocity -1 0\n' b'Done\n' b'\rmmwDemo:/>bpmCfg -1 0 0 1\n' b'Done\n' b'\rmmwDemo:/>lvdsStreamCfg -1 0 0 0\n' b'Done\n' b'\rmmwDemo:/>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\n' b'Done\n' b'\rmmwDemo:/>measureRangeBiasAndRxChanPhase 0 1.5 0.2\n' b'Done\n' b'\rmmwDemo:/>CQRxSatMonitor 0 3 4 63 0\n' b'Done\n' b'\rmmwDemo:/>CQSigImgMonitor 0 127 4\n' b'Done\n' b'\rmmwDemo:/>analogMonitor 0 0\n' b'Done\n' b'\rmmwDemo:/>aoaFovCfg -1 -70 70 -90 90\n' b'Done\n' b'\rmmwDemo:/>cfarFovCfg -1 0 0 200\n' b'Done\n' b'\rmmwDemo:/>cfarFovCfg -1 1 -30 30.00\n' b'Done\n' b'\rmmwDemo:/>staticBoundaryBox -150 150 0.5 230 -0.5 6\n' b"'staticBoundaryBox' is not recognized as a CLI command\n" b'\rmmwDemo:/>boundaryBox -150 150 0.5 220 -0.5 6\n' b"'boundaryBox' is not recognized as a CLI command\n" b'\rmmwDemo:/>gatingParam 18 20 20 20 10\n' b"'gatingParam' is not recognized as a CLI command\n" b'\rmmwDemo:/>stateParam 4 10 60 600 20 600\n' b"'stateParam' is not recognized as a CLI command\n" b'\rmmwDemo:/>allocationParam 30 30 0.5 3 2 2\n' b"'allocationParam' is not recognized as a CLI command\n"
When we use the file for long range 3D people detection included in the radar toolbox (6843_50m_3D.cfg, it functions more or less as expected:
sensorStop flushCfg dfeDataOutputMode 1 channelCfg 15 7 0 adcCfg 2 1 adcbufCfg -1 0 1 1 1 profileCfg 0 60 35 6 43.0 0 0 8.241 1 125 3433 0 0 48 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 96 0 100 1 0 lowPower 0 0 guiMonitor -1 1 0 0 0 0 0 cfarCfg -1 0 2 8 4 3 0 10 0 cfarCfg -1 1 0 4 2 3 1 10 0 multiObjBeamForming -1 1 0.5 clutterRemoval -1 1 calibDcRangeSig -1 0 -5 8 256 extendedMaxVelocity -1 0 bpmCfg -1 0 0 1 lvdsStreamCfg -1 0 0 0 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 CQRxSatMonitor 0 3 4 63 0 CQSigImgMonitor 0 127 4 analogMonitor 0 0 aoaFovCfg -1 -90 90 -90 90 cfarFovCfg -1 0 0 59.99 cfarFovCfg -1 1 -30 30.00 staticBoundaryBox -50 50 0.5 60 -0.5 6 boundaryBox -50 50 0.5 60 -0.5 6 sensorPosition 2 0 0 gatingParam 4 6 6 6 10 stateParam 4 10 60 600 20 600 allocationParam 30 30 0.5 3 2 2 maxAcceleration 0.1 0.1 0.1 trackingCfg 1 2 250 20 78 121 99 presenceBoundaryBox -3 3 2 6 0.5 2.5 sensorStart
b'sensorStop\n' b'Done\n' b'\rmmwDemo:/>flushCfg\n' b'Done\n' b'\rmmwDemo:/>dfeDataOutputMode 1\n' b'Done\n' b'\rmmwDemo:/>channelCfg 15 7 0\n' b'Done\n' b'\rmmwDemo:/>adcCfg 2 1\n' b'Done\n' b'\rmmwDemo:/>adcbufCfg -1 0 1 1 1\n' b'Done\n' b'\rmmwDemo:/>profileCfg 0 60 35 6 43.0 0 0 8.241 1 125 3433 0 0 48\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 0 0 0 0 0 0 0 1\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 1 1 0 0 0 0 0 4\n' b'Done\n' b'\rmmwDemo:/>chirpCfg 2 2 0 0 0 0 0 2\n' b'Done\n' b'\rmmwDemo:/>frameCfg 0 2 96 0 100 1 0\n' b'Done\n' b'\rmmwDemo:/>lowPower 0 0\n' b'Done\n' b'\rmmwDemo:/>guiMonitor -1 1 0 0 0 0 0\n' b'Done\n' b'\rmmwDemo:/>cfarCfg -1 0 2 8 4 3 0 10 0\n' b'Done\n' b'\rmmwDemo:/>cfarCfg -1 1 0 4 2 3 1 10 0\n' b'Done\n' b'\rmmwDemo:/>multiObjBeamForming -1 1 0.5\n' b'Done\n' b'\rmmwDemo:/>clutterRemoval -1 1\n' b'Done\n' b'\rmmwDemo:/>calibDcRangeSig -1 0 -5 8 256\n' b'Done\n' b'\rmmwDemo:/>extendedMaxVelocity -1 0\n' b'Done\n' b'\rmmwDemo:/>bpmCfg -1 0 0 1\n' b'Done\n' b'\rmmwDemo:/>lvdsStreamCfg -1 0 0 0\n' b'Done\n' b'\rmmwDemo:/>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\n' b'Done\n' b'\rmmwDemo:/>measureRangeBiasAndRxChanPhase 0 1.5 0.2\n' b'Done\n' b'\rmmwDemo:/>CQRxSatMonitor 0 3 4 63 0\n' b'Done\n' b'\rmmwDemo:/>CQSigImgMonitor 0 127 4\n' b'Done\n' b'\rmmwDemo:/>analogMonitor 0 0\n' b'Done\n' b'\rmmwDemo:/>aoaFovCfg -1 -90 90 -90 90\n' b'Done\n' b'\rmmwDemo:/>cfarFovCfg -1 0 0 59.99\n' b'Done\n' b'\rmmwDemo:/>cfarFovCfg -1 1 -30 30.00\n' b'Done\n' b'\rmmwDemo:/>staticBoundaryBox -50 50 0.5 60 -0.5 6\n' b"'staticBoundaryBox' is not recognized as a CLI command\n" b'\rmmwDemo:/>boundaryBox -50 50 0.5 60 -0.5 6\n' b"'boundaryBox' is not recognized as a CLI command\n" b'\rmmwDemo:/>sensorPosition 2 0 0\n' b"'sensorPosition' is not recognized as a CLI command\n" b'\rmmwDemo:/>gatingParam 4 6 6 6 10\n' b"'gatingParam' is not recognized as a CLI command\n" b'\rmmwDemo:/>stateParam 4 10 60 600 20 600\n' b"'stateParam' is not recognized as a CLI command\n" b'\rmmwDemo:/>allocationParam 30 30 0.5 3 2 2\n' b"'allocationParam' is not recognized as a CLI command\n" b'\rmmwDemo:/>maxAcceleration 0.1 0.1 0.1\n' b"'maxAcceleration' is not recognized as a CLI command\n" b'\rmmwDemo:/>trackingCfg 1 2 250 20 78 121 99\n' b"'trackingCfg' is not recognized as a CLI command\n" b'\rmmwDemo:/>presenceBoundaryBox -3 3 2 6 0.5 2.5\n' b"'presenceBoundaryBox' is not recognized as a CLI command\n" b'\rmmwDemo:/>sensorStart\n' b'Done\n'
The problem is that in testing the radars only get about 35 meters of effective range with the latter file, and the file we received for testing was given to us specifically because it was setup to provide greater range.
How do we edit our provided config so that we can get Z axis data? Can we do so and still maintain a 50 meter detection range?
As far as I know we are still using firmware 3.05 on the units, would upgrading the firmware to 3.06 address this?
Thank you,
Parker Lovesee