Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

ok Here I am again answering my own questions. I never did figure out how to print out the arguments inside a launchfile. I almost stopped doing robotics because this. The whole issue is because the navigation2.launch.py file provided by robotis in their turtlebot3_navigation package is using the WRONG parameter name

This is their code

IncludeLaunchDescription(
             PythonLaunchDescriptionSource([nav2_launch_file_dir, '/bringup_launch.py']),
             launch_arguments={
                 'map': map_dir,
                 'use_sim_time': use_sim_time,
                 'params': param_dir I think this is wrong should be params_file
                 }.items(),   
),

This is the code that works

IncludeLaunchDescription(
    PythonLaunchDescriptionSource([nav2_launch_file_dir, '/bringup_launch.py']),
    launch_arguments={
        'map': map_dir,
        'use_sim_time': use_sim_time,
        'params_file': param_dir
        }.items(),

),

params Should be params_file

They never probably noticed that the local costmap parameters are not set and the default values are used. The default values work for their simulations but I had gone through extensive customizations in ros1 to to get the my burger to negotiate the tight spaces in my living room.

I wasted over 100 hours trying to track down why the robot would not go through the narrow space because I assumed the robotis packages had been fully tested. It would have helped if I could have printed the arguments being passed into the launch file so if anyone figured that out add a comment here.

Lesson learned do not assumed ros2 software has been tested. Also visually examine both side of the launch files hand off.