Other Parts Discussed in Thread: IWR1642
Hi,
I am using
SDK: mmwave_sdk_03_04_00_03
Ros pkg: from mmwave_industrial_toolbox_4_4_1
Config file:
% *************************************************************** % Created for SDK ver:03.04 % Created using Visualizer ver:3.4.0.0 % Frequency:77 % Platform:xWR16xx % Scene Classifier:best_range % Azimuth Resolution(deg):15 % Range Resolution(m):0.244 % Maximum unambiguous Range(m):50 % Maximum Radial Velocity(m/s):1 % Radial velocity resolution(m/s):0.13 % Frame Duration(msec):100 % Range Detection Threshold (dB):15 % Doppler Detection Threshold (dB):15 % Range Peak Grouping:enabled % Doppler Peak Grouping:enabled % Static clutter removal:disabled % Angle of Arrival FoV: Full FoV % Range FoV: Full FoV % Doppler FoV: Full FoV % *************************************************************** sensorStop sensorStop flushCfg dfeDataOutputMode 1 channelCfg 15 3 0 adcCfg 2 1 adcbufCfg -1 0 1 1 0 profileCfg 0 77 438 7 48.98 0 0 15 1 256 6250 0 0 30 chirpCfg 0 0 0 0 0 0 0 1 chirpCfg 1 1 0 0 0 0 0 2 frameCfg 0 1 16 0 100 1 0 lowPower 0 1 guiMonitor -1 1 1 0 0 0 1 cfarCfg -1 0 2 8 4 3 0 15 1 cfarCfg -1 1 0 4 2 3 1 15 1 multiObjBeamForming -1 1 0.5 clutterRemoval -1 0 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 measureRangeBiasAndRxChanPhase 0 1.5 0.2 CQRxSatMonitor 0 3 4 127 0 CQSigImgMonitor 0 127 4 analogMonitor 0 0 aoaFovCfg -1 -90 90 -90 90 cfarFovCfg -1 0 0 50.00 cfarFovCfg -1 1 -1 1.00 sensorStart
Launch File:
<!-- This file will launch rViz along with the mmWave sensor node and configure a TI mmWave 1642 sensor using a 2D config --> <launch> <!-- Input arguments --> <arg name="device" value="1642" doc="TI mmWave sensor device type [1443, 1642]"/> <arg name="config" value="2d" doc="TI mmWave sensor device configuration [3d_best_range_res (not supported by 1642 EVM), 2d_best_range_res]"/> <arg name="max_allowed_elevation_angle_deg" default="90" doc="Maximum allowed elevation angle in degrees for detected object data [0 > value >= 90]}"/> <arg name="max_allowed_azimuth_angle_deg" default="90" doc="Maximum allowed azimuth angle in degrees for detected object data [0 > value >= 90]}"/> <!-- mmWave_Manager node --> <node pkg="ti_mmwave_rospkg" type="ti_mmwave_rospkg" name="ti_mmwave" output="screen"> <param name="command_port" value="/dev/ttyACM0" /> <param name="command_rate" value="115200" /> <param name="data_port" value="/dev/ttyACM1" /> <param name="data_rate" value="921600" /> <param name="max_allowed_elevation_angle_deg" value="$(arg max_allowed_elevation_angle_deg)" /> <param name="max_allowed_azimuth_angle_deg" value="$(arg max_allowed_azimuth_angle_deg)" /> <param name="frame_id" value="ti_mmwave"/> </node> <!-- mmWaveQuickConfig node (terminates after configuring mmWave sensor) --> <node pkg="ti_mmwave_rospkg" type="mmWaveQuickConfig" name="mmWaveQuickConfig" args="$(find ti_mmwave_rospkg)/cfg/IWR1642_best_range.cfg" output="screen" /> <!-- Static transform from map to base_radar_link for visualization of stand-alone mmWave sensor using Rviz --> <node pkg="tf" type="static_transform_publisher" name="static_tf_map_to_base_radar_link" args="0 0 0 0 0 0 ti_mmwave_pcl ti_mmwave 30"/> <!-- Launch Rviz with pre-defined configuration to view mmWave sensor detected object data (color by intensity) --> <!-- <node pkg="rviz" type="rviz" name="rviz" args="-d $(find ti_mmwave_rospkg)/launch/rviz/ti_mmwave.rviz"/> --> </launch>
Ros launch Command:
roslaunch ti_mmwave_rospkg IWR1642_intel.launch
Issue:
The roslaunch fails always for the first time:
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
process[ti_mmwave-1]: started with pid [3070]
process[mmWaveQuickConfig-2]: started with pid [3071]
process[static_tf_map_to_base_radar_link-3]: started with pid [3072]
[ INFO] [1595578523.112115745]: mmWaveQuickConfig: Configuring mmWave device using config file: /opt/ros/melodic/share/ti_mmwave_rospkg/cfg/IWR1642_best_range.cfg
[ INFO] [1595578523.113528304]: waitForService: Service [/mmWaveCLI] has not been advertised, waiting...
[ INFO] [1595578523.121206158]: Initializing nodelet with 4 worker threads.
[ INFO] [1595578523.123398365]: mmWaveCommSrv: command_port = /dev/ttyACM0
[ INFO] [1595578523.123419852]: mmWaveCommSrv: command_rate = 115200
[ INFO] [1595578523.124672788]: mmWaveDataHdl: data_port = /dev/ttyACM1
[ INFO] [1595578523.124693452]: mmWaveDataHdl: data_rate = 921600
[ INFO] [1595578523.124705358]: mmWaveDataHdl: max_allowed_elevation_angle_deg = 90
[ INFO] [1595578523.124719966]: mmWaveDataHdl: max_allowed_azimuth_angle_deg = 90
[ INFO] [1595578523.134898531]: waitForService: Service [/mmWaveCLI] is now available.
[ INFO] [1595578523.637390014]: mmWaveCommSrv: Sending command to sensor: 'sensorStop'
[ INFO] [1595578523.644054440]: mmWaveCommSrv: Received response from sensor: 'sensorStop
'?`?????' is not recognized as a CLI command
mmwDemo:/>'
[ERROR] [1595578523.668398216]: mmWaveQuickConfig: Command failed (mmWave sensor did not respond with 'Done')
[ERROR] [1595578523.668448527]: mmWaveQuickConfig: Response: 'sensorStop
'?`?????' is not recognized as a CLI command
mmwDemo:/>'
[mmWaveQuickConfig-2] process has died [pid 3071, exit code 1, cmd /opt/ros/melodic/lib/ti_mmwave_rospkg/mmWaveQuickConfig /opt/ros/melodic/share/ti_mmwave_rospkg/cfg/IWR1642_best_range.cfg __name:=mmWaveQuickConfig __log:=/home/robot/.ros/log/b4d94f2a-cd84-11ea-b321-00e04b693a06/mmWaveQuickConfig-2.log].
log file: /home/robot/.ros/log/b4d94f2a-cd84-11ea-b321-00e04b693a06/mmWaveQuickConfig-2*.log
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Subsequent launches succeeds:
process[ti_mmwave-1]: started with pid [21961]
process[mmWaveQuickConfig-2]: started with pid [21962]
process[static_tf_map_to_base_radar_link-3]: started with pid [21963]
[ INFO] [1595578635.537578509]: mmWaveQuickConfig: Configuring mmWave device using config file: /opt/ros/melodic/share/ti_mmwave_rospkg/cfg/IWR1642_best_range.cfg
[ INFO] [1595578635.538291467]: waitForService: Service [/mmWaveCLI] has not been advertised, waiting...
[ INFO] [1595578635.548203889]: Initializing nodelet with 4 worker threads.
[ INFO] [1595578635.550494077]: mmWaveCommSrv: command_port = /dev/ttyACM0
[ INFO] [1595578635.550517097]: mmWaveCommSrv: command_rate = 115200
[ INFO] [1595578635.551703414]: mmWaveDataHdl: data_port = /dev/ttyACM1
[ INFO] [1595578635.551727242]: mmWaveDataHdl: data_rate = 921600
[ INFO] [1595578635.551742407]: mmWaveDataHdl: max_allowed_elevation_angle_deg = 90
[ INFO] [1595578635.551755735]: mmWaveDataHdl: max_allowed_azimuth_angle_deg = 90
[ INFO] [1595578635.559175994]: waitForService: Service [/mmWaveCLI] is now available.
[ INFO] [1595578636.061158957]: mmWaveCommSrv: Sending command to sensor: 'sensorStop'
[ INFO] [1595578636.067224621]: mmWaveCommSrv: Received response from sensor: 'sensorStop
Ignored: Sensor is already stopped
Done
mmwDemo:/>'
[ INFO] [1595578636.088751830]: mmWaveCommSrv: Sending command to sensor: 'sensorStop'
[ INFO] [1595578636.094762559]: mmWaveCommSrv: Received response from sensor: 'sensorStop
Ignored: Sensor is already stopped
Done
mmwDemo:/>'
[ INFO] [1595578636.118254437]: mmWaveCommSrv: Sending command to sensor: 'flushCfg'
[ INFO] [1595578636.120953983]: mmWaveCommSrv: Received response from sensor: 'flushCfg
Done
mmwDemo:/>'
[ INFO] [1595578636.136559323]: mmWaveCommSrv: Sending command to sensor: 'dfeDataOutputMode 1'
[ INFO] [1595578636.140231449]: mmWaveCommSrv: Received response from sensor: 'dfeDataOutputMode 1
Done
mmwDemo:/>'
[ INFO] [1595578636.157873469]: mmWaveCommSrv: Sending command to sensor: 'channelCfg 15 3 0'
[ INFO] [1595578636.161360199]: mmWaveCommSrv: Received response from sensor: 'channelCfg 15 3 0
Done
mmwDemo:/>'
[ INFO] [1595578636.177018457]: mmWaveCommSrv: Sending command to sensor: 'adcCfg 2 1'
[ INFO] [1595578636.179881871]: mmWaveCommSrv: Received response from sensor: 'adcCfg 2 1
Done
mmwDemo:/>'
[ INFO] [1595578636.195634126]: mmWaveCommSrv: Sending command to sensor: 'adcbufCfg -1 0 1 1 0'
[ INFO] [1595578636.199362923]: mmWaveCommSrv: Received response from sensor: 'adcbufCfg -1 0 1 1 0
Done
mmwDemo:/>'
[ INFO] [1595578636.214932155]: mmWaveCommSrv: Sending command to sensor: 'profileCfg 0 77 438 7 48.98 0 0 15 1 256 6250 0 0 30'
[ INFO] [1595578636.221503011]: mmWaveCommSrv: Received response from sensor: 'profileCfg 0 77 438 7 48.98 0 0 15 1 256 6250 0 0 30
Done
mmwDemo:/>'
[ INFO] [1595578636.250207639]: mmWaveCommSrv: Sending command to sensor: 'chirpCfg 0 0 0 0 0 0 0 1'
[ INFO] [1595578636.254372033]: mmWaveCommSrv: Received response from sensor: 'chirpCfg 0 0 0 0 0 0 0 1
Done
mmwDemo:/>'
[ INFO] [1595578636.277836802]: mmWaveCommSrv: Sending command to sensor: 'chirpCfg 1 1 0 0 0 0 0 2'
[ INFO] [1595578636.281920861]: mmWaveCommSrv: Received response from sensor: 'chirpCfg 1 1 0 0 0 0 0 2
Done
mmwDemo:/>'
[ INFO] [1595578636.299507663]: mmWaveCommSrv: Sending command to sensor: 'frameCfg 0 1 16 0 100 1 0'
[ INFO] [1595578636.303709745]: mmWaveCommSrv: Received response from sensor: 'frameCfg 0 1 16 0 100 1 0
Done
mmwDemo:/>'
[ INFO] [1595578636.324376669]: mmWaveCommSrv: Sending command to sensor: 'lowPower 0 1'
[ INFO] [1595578636.327500411]: mmWaveCommSrv: Received response from sensor: 'lowPower 0 1
Done
mmwDemo:/>'
[ INFO] [1595578636.341167260]: mmWaveCommSrv: Sending command to sensor: 'guiMonitor -1 1 1 0 0 0 1'
[ INFO] [1595578636.345362141]: mmWaveCommSrv: Received response from sensor: 'guiMonitor -1 1 1 0 0 0 1
Done
mmwDemo:/>'
[ INFO] [1595578636.363181772]: mmWaveCommSrv: Sending command to sensor: 'cfarCfg -1 0 2 8 4 3 0 15 1'
[ INFO] [1595578636.367553106]: mmWaveCommSrv: Received response from sensor: 'cfarCfg -1 0 2 8 4 3 0 15 1
Done
mmwDemo:/>'
[ INFO] [1595578636.384998580]: mmWaveCommSrv: Sending command to sensor: 'cfarCfg -1 1 0 4 2 3 1 15 1'
[ INFO] [1595578636.389369278]: mmWaveCommSrv: Received response from sensor: 'cfarCfg -1 1 0 4 2 3 1 15 1
Done
mmwDemo:/>'
[ INFO] [1595578636.407071560]: mmWaveCommSrv: Sending command to sensor: 'multiObjBeamForming -1 1 0.5'
[ INFO] [1595578636.411562460]: mmWaveCommSrv: Received response from sensor: 'multiObjBeamForming -1 1 0.5
Done
mmwDemo:/>'
[ INFO] [1595578636.429128526]: mmWaveCommSrv: Sending command to sensor: 'clutterRemoval -1 0'
[ INFO] [1595578636.432800255]: mmWaveCommSrv: Received response from sensor: 'clutterRemoval -1 0
Done
mmwDemo:/>'
[ INFO] [1595578636.448509244]: mmWaveCommSrv: Sending command to sensor: 'calibDcRangeSig -1 0 -5 8 256'
[ INFO] [1595578636.453075383]: mmWaveCommSrv: Received response from sensor: 'calibDcRangeSig -1 0 -5 8 256
Done
mmwDemo:/>'
[ INFO] [1595578636.470533197]: mmWaveCommSrv: Sending command to sensor: 'extendedMaxVelocity -1 0'
[ INFO] [1595578636.474631962]: mmWaveCommSrv: Received response from sensor: 'extendedMaxVelocity -1 0
Done
mmwDemo:/>'
[ INFO] [1595578636.492263510]: mmWaveCommSrv: Sending command to sensor: 'bpmCfg -1 0 0 1'
[ INFO] [1595578636.495325027]: mmWaveCommSrv: Received response from sensor: 'bpmCfg -1 0 0 1
Done
mmwDemo:/>'
[ INFO] [1595578636.509307108]: mmWaveCommSrv: Sending command to sensor: 'lvdsStreamCfg -1 0 0 0'
[ INFO] [1595578636.513263723]: mmWaveCommSrv: Received response from sensor: 'lvdsStreamCfg -1 0 0 0
Done
mmwDemo:/>'
[ INFO] [1595578636.528796772]: mmWaveCommSrv: Sending command to sensor: 'compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0'
[ INFO] [1595578636.536074088]: mmWaveCommSrv: Received response from sensor: 'compRangeBiasAndRxChanPhase 0.0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Done
mmwDemo:/>'
[ INFO] [1595578636.561510414]: mmWaveCommSrv: Sending command to sensor: 'measureRangeBiasAndRxChanPhase 0 1.5 0.2'
[ INFO] [1595578636.567009743]: mmWaveCommSrv: Received response from sensor: 'measureRangeBiasAndRxChanPhase 0 1.5 0.2
Done
mmwDemo:/>'
[ INFO] [1595578636.588535685]: mmWaveCommSrv: Sending command to sensor: 'CQRxSatMonitor 0 3 4 127 0'
[ INFO] [1595578636.592800314]: mmWaveCommSrv: Received response from sensor: 'CQRxSatMonitor 0 3 4 127 0
Done
mmwDemo:/>'
[ INFO] [1595578636.614422787]: mmWaveCommSrv: Sending command to sensor: 'CQSigImgMonitor 0 127 4'
[ INFO] [1595578636.618180379]: mmWaveCommSrv: Received response from sensor: 'CQSigImgMonitor 0 127 4
Done
mmwDemo:/>'
[ INFO] [1595578636.635837054]: mmWaveCommSrv: Sending command to sensor: 'analogMonitor 0 0'
[ INFO] [1595578636.639319180]: mmWaveCommSrv: Received response from sensor: 'analogMonitor 0 0
Done
mmwDemo:/>'
[ INFO] [1595578636.655099337]: mmWaveCommSrv: Sending command to sensor: 'aoaFovCfg -1 -90 90 -90 90'
[ INFO] [1595578636.659381375]: mmWaveCommSrv: Received response from sensor: 'aoaFovCfg -1 -90 90 -90 90
Done
mmwDemo:/>'
[ INFO] [1595578636.677008337]: mmWaveCommSrv: Sending command to sensor: 'cfarFovCfg -1 0 0 50.00'
[ INFO] [1595578636.680766549]: mmWaveCommSrv: Received response from sensor: 'cfarFovCfg -1 0 0 50.00
Done
mmwDemo:/>'
[ INFO] [1595578636.700270711]: mmWaveCommSrv: Sending command to sensor: 'cfarFovCfg -1 1 -1 1.00'
[ INFO] [1595578636.704049861]: mmWaveCommSrv: Received response from sensor: 'cfarFovCfg -1 1 -1 1.00
Done
mmwDemo:/>'
[ INFO] [1595578636.719741854]: mmWaveCommSrv: Sending command to sensor: 'sensorStart'
[ INFO] [1595578636.786515633]: mmWaveCommSrv: Received response from sensor: 'sensorStart
Debug: Init Calibration Status = 0x7fe
Done
mmwDemo:/>'
[ INFO] [1595578636.822501860]: mmWaveQuickConfig: mmWaveQuickConfig will now terminate. Done configuring mmWave device using config file: /opt/ros/melodic/share/ti_mmwave_rospkg/cfg/IWR1642_best_range.cfg
[ INFO] [1595578636.824374483]:
==============================
List of parameters
==============================
Number of range samples: 256
Number of chirps: 16
f_s: 6.250 MHz
f_c: 77.412 GHz
Bandwidth: 614.400 MHz
PRI: 486.980 us
Frame time: 100.000 ms
Max range: 62.457 m
Range resolution: 0.244 m
Max Doppler: +-0.994 m/s
Doppler resolution: 0.124 m/s
==============================
[ INFO] [1595578636.824883382]: DataUARTHandler Read Thread: Port is open
[mmWaveQuickConfig-2] process has finished cleanly
log file: /home/robot/.ros/log/b4d94f2a-cd84-11ea-b321-00e04b693a06/mmWaveQuickConfig-2*.log
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
how can i ensure that the roslaunch is always success. My plan is to wrap the roslaunch as a system service and this behaviour is not good to have.