'"cannot marshal None unless allow_none is enabled" TypeError: cannot marshal None unless allow_none is enabled
i created a lauch file to launch my robot into gazebo. first i got oid gains error so i added pid gains manually.Then when i run the launch file i am getting the following error
load_parameters: unable to set parameters (last param was [/p=100.0]): cannot marshal None unless allow_none is enabled
Traceback (most recent call last):
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/__init__.py", line 332, in main
p.start()
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/parent.py", line 300, in start
self.runner.launch()
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/launch.py", line 662, in launch
self._setup()
File "/opt/ros/melodic/lib/python2.7/dist-packages/roslaunch/launch.py", line 649, in _setup
self._load_parameters()
File "/opt/ros/melodic/lib/python2.7/dist-pack
ages/roslaunch/launch.py", line 341, in _load_parameters
r = param_server_multi()
File "/usr/lib/python2.7/xmlrpclib.py", line 1006, in __call__
return MultiCallIterator(self.__server.system.multicall(marshalled_list))
File "/usr/lib/python2.7/xmlrpclib.py", line 1243, in __call__
return self.__send(self.__name, args)
File "/usr/lib/python2.7/xmlrpclib.py", line 1596, in __request
allow_none=self.__allow_none)
File "/usr/lib/python2.7/xmlrpclib.py", line 1094, in dumps
data = m.dumps(params)
dump(v, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 660, in __dump
f(self, value, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 741, in dump_struct
dump(v, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 660, in __dump
f(self, value, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 719, in dump_array
dump(v, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 660, in __dump
f(self, value, write)
File "/usr/lib/python2.7/xmlrpclib.py", line 664, in dump_nil
raise TypeError, "cannot marshal None unless allow_none is enabled"
TypeError: cannot marshal None unless allow_none is enabled
and i first launched the gazebo empty world and launched my file to spawn the robot
<?xml version="1.0" encoding="UTF-8"?>
<launch>
<param name="robot_description" command="$(find xacro)/xacro --inorder '$(find tm_grasp_description)/urdf/tm700_robot.urdf.xacro'" />
<arg name="x" default="0"/>
<arg name="y" default="0"/>
<arg name="z" default="0.5"/>
<node name="mybot_spawn" pkg="gazebo_ros" type="spawn_model" output="screen"
args="-urdf -param robot_description -model m2wr -x $(arg x) -y $(arg y) -z $(arg z)" />
<rosparam file="$(find tm700_moveit_config)/config/gazebo_ros_control.yaml" command="load"/>
</launch>
Solution 1:[1]
This error means one of your parameters is null (undefined or an empty string). Add the --dump-params option to your roslaunch command and it will list all parameters (both set in your launch file and set in your environment). You can then see what parameters are causing problems.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | J. Smith |
