# Why do I get "cannot marshal None unless allow_none is enabled" error with MoveIt package?

I have generated a MoveIt config package for the Franka Panda robot using the MoveIt setup assistant. However, when trying to do

roslaunch panda_moveit_config demo.launch


I get the error

TypeError: cannot marshal None unless allow_none is enabled


and gives me a little further info:

load_parameters: unable to set parameters (last param was [/move_group/allow_trajectory_execution=True]): cannot marshal None unless allow_none is enabled


Why is this happening? I realize there are some related questions, e.g. this one, but I figure since it's generated from the MoveIt assistant there should be some more specific guidance.

edit retag close merge delete

Sort by » oldest newest most voted

EDIT: This has been fixed with this pull request: https://github.com/ros-planning/movei...

I figured this out but thought I'd share since others may have the same issue. The root problem is in the MoveIt setup assistant I did not create any Robot Poses, I skipped that section, and as such the config/fake_controllers.yaml file has a parameter initial that then has a blank after it, which gets loaded as None to the parameter server.

I think the best solution is to simply add at least one Robot Pose (e.g. zero position), then you don't have to worry about this. I suppose alternatively you could delete the initial parameter being loaded to the server, but there may be a node that needs that, so I would suggest the first option.

more

This sounds like a bug, and would probably be good to report.

I think the best solution is to simply add at least one Robot Pose

( 2021-01-11 02:42:45 -0600 )edit
1

Turns out this has already been addressed a couple months ago: https://github.com/ros-planning/movei.... My guess is it hasn't made its way into the Melodic debian yet as my system is up to date.

( 2021-01-11 11:09:25 -0600 )edit