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.
Part Number: AWR1642BOOST
I have completed the ROS demo using the 18.104.22.168 SDK on the AWR1642BOOST. The unit is flashed with the Demo binary file from the SDK.
I was working with the Automotive Toolbox v2.2.0 Short Range Radar Lab and was looking to collect the point cloud/velocity data from this lab. It uses a different binary, features different chirp configurations and outputs more data.
My question is how do I modify the existing ROS implementation to collect and publish the additional data over serial. What cpp files should I be looking at? Are there any resources I can look at for this? The Short Range Radar Lab binary file causes an error when reading it with ROS. Ideally, I'd like to recreate the MATLAB GUI from the lab with ROS.
We are glad that we were able to resolve this issue, and will now proceed to close this thread.
If you have further questions related to this thread, you may click "Ask a related question" below. The newly created question will be automatically linked to this question.
In reply to JohnH:
Okay, after having looked at the "sortIncomingData() function in DataHandlerClass.cpp I noticed a few fields I need to change. I decided to try and modify this script to accept data from the AWR1642 Obstacle Detection Lab in the automotive toolbox since it had the best documentation. I changed the header size to 40 bytes as in the lab user manual and noticed that all the header categories were the same ones used in the .cpp script.
I also noticed that the TLV values in the image below were all set up in switch cases in the cpp script.
The Data I'm looking for from the ODS lab are the "range doppler" and "azimuth static heat map".
In the cpp file, Azimith static heat map looks like this:
i = 0;
while (i++ < tlvLen - 1)
//ROS_INFO("DataUARTHandler Sort Thread : Parsing Azimuth Profile i=%d and tlvLen = %u", i, tlvLen);
currentDatap += tlvLen;
sorterState = CHECK_TLV_TYPE;
What would I have to do here to publish the azimuth values as a rostopic? Am I on the right track? Any Resources I should look into?(unfortunately, the last link you sent appears as a broken url)
In reply to Lindsay Vanderbeck:
I got the ROS code working with the ODS binary by sourcing the ODS config file and modifying the mmWaveQuickConfig.cpp file to no longer require a 'Done' signal from the radar.
The point cloud from the sensor is coming in over RViz but the switch cases in DataHandlerClass.cpp are never triggered for the case where MMWDEMO_OUTPUT_MSG_AZIMUT_STATIC_HEAT_MAP or MMWDEMO_OUTPUT_MSG_RANGE_DOPPLER_HEAT_MAP are the required field.
I enables a ROS_INFO line to show what tlvType is being seen on each iteration (ROS_INFO("DataUARTHandler Sort Thread : tlvType = %d, tlvLen = %d", (int) tlvType, tlvLen); ) and I only see types 1,2,3,6. Upon inspecting mmWave.h, tlvTypes 4 and 5 are the missing AZIMUTH_STATIC_HEAT_MAP and RANGE_DOPPLER_HEAT_MAP.
Any idea why I'm not seeing these 2 signals from the sensor? The ODS lab documentation says these signals should be included in the output.
All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.