Found out that pr2 uses
libgazebo_ros_controller_manager.so
as plugin instead of libgazebo_ros_controller.so, so I changed the plugin in my urdf to that.
It now loads the controller manager and tries to parse the robot_description from the parameter server.
The robot is not falling, it is held in position by the controller, I think. But this crashes!
..........
Dbg plugin model name: smart_arm
[ INFO] [1428668226.366662355, 1.120000000]: starting gazebo_ros_controller_manager plugin in ns: /
[ INFO] [1428668226.367980472, 1.120000000]: Callback thread id=7f9e9daef700
[ INFO] [1428668226.386303567, 1.120000000]: gazebo controller manager plugin is waiting for urdf: //robot_description on the param server. (make sure there is a rosparam by that name in the ros parameter server, otherwise, this plugin blocks simulation forever).
[ INFO] [1428668226.491614563, 1.120000000]: gazebo controller manager got pr2.xml from param server, parsing it...
adding actuator elbow_flex_motor
adding actuator left_finger_motor
adding actuator right_finger_motor
adding actuator shoulder_pan_motor
adding actuator shoulder_pitch_motor
adding actuator wrist_roll_motor
Segmentation fault (core dumped)
[gazebo-1] process has died [pid 10196, exit code 139, cmd /opt/ros/indigo/lib/gazebo_ros/gzserver -e ode worlds/empty.world __name:=gazebo __log:=/home/p100213/.ros/log/7a2eff70-df7b-11e4-bd67-002481150e15/gazebo-1.log].
log file: /home/p100213/.ros/log/7a2eff70-df7b-11e4-bd67-002481150e15/gazebo-1*.log
A little debugging revealed that it seems to crash in gazebo_ros_controller_manager.cpp, in line 379.
this->cm_->initXml(doc.RootElement());
Is it actually ok to use this plugin in an non-pr2 robot?
UPDATE:
At home I got Ros/Indigo installed from source on Debian/Jessie, which seems to work for the most part!
When I tried the above , I got
[ INFO] [1428760883.992343714, 0.524000000]: gazebo controller manager got pr2.xml from param server, parsing it...
Error [Model.cc:779] Exception occured in the Load function of plugin with name[gazebo_ros_controller_manager] and filename[libgazebo_ros_controller_manager.so]. This plugin will not run.
Segmentation fault
[gazebo-1] process has died [pid 15899, exit code 139, cmd /home/sietse/catkin_ws/src/gazebo_ros_pkgs/gazebo_ros/scripts/gzserver -e ode worlds/empty.world __name:=gazebo __log:=/home/sietse/.ros/log/351c4266-e053-11e4-9232-ac220b1a4c95/gazebo-1.log].
log file: /home/sietse/.ros/log/351c4266-e053-11e4-9232-ac220b1a4c95/gazebo-1*.log
Also the gazebo view stays black.
Please help, Sietse