smach_viewer dependency on Noetic?

Questions about our ROS (Robot Operating System) API

Moderator: arrallan

Post Reply
x34903
Posts: 3
Joined: Thu Jan 28, 2021 1:44 pm
Location: West Point, NY

smach_viewer dependency on Noetic?

Post by x34903 » Thu Jan 28, 2021 1:57 pm

Hebi Team,

I'm trying to set up hebiros following your Wiki, but I'm running into catkin_make issues during install. "smach_viewer" is not in your dependency list, so I wasn't sure what was going on here. Could there be an issue Noetic vs. Kinetic?

Make Error at /opt/ros/noetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "smach_viewer" with
any of the following names:

smach_viewerConfig.cmake
smach_viewer-config.cmake



Thanks,

Steve
x34903
Posts: 3
Joined: Thu Jan 28, 2021 1:44 pm
Location: West Point, NY

Re: smach_viewer dependency on Noetic?

Post by x34903 » Thu Jan 28, 2021 4:17 pm

I found that hebiros_gazebo_plugin depends on smach_viewer (CMakeLists.txt: lines 17 & 127). I found two ways to get catkin_make to finish, but still with errors (see below).

1. Comment out these two lines in CMakeLists.txt
2. Clone executive_smach_viewer inside /src/

At least the hebiros_node runs now. Either way results in the errors below.

Code: Select all

In member function ‘void HebirosGazeboPlugin::UpdateGroup(std::shared_ptr<HebirosGazeboGroup>, const ros::Duration&)’:
/home/usmarobot0/hebi_ros_ws/src/hebiros/hebiros_gazebo_plugin/plugin/hebiros_gazebo_plugin.cpp:68:32: error: ‘class gazebo::physics::Joint’ has no member named ‘GetAngle’
   68 |       double position = joint->GetAngle(0).Radian();
      |                                ^~~~~~~~
/home/usmarobot0/hebi_ros_ws/src/hebiros/hebiros_gazebo_plugin/plugin/hebiros_gazebo_plugin.cpp:71:39: error: ‘class gazebo::physics::Link’ has no member named ‘GetInitialRelativePose’; did you mean ‘SetInitialRelativePose’?
   71 |       auto trans = joint->GetChild()->GetInitialRelativePose().rot;
      |                                       ^~~~~~~~~~~~~~~~~~~~~~
      |                                       SetInitialRelativePose
make[2]: *** [hebiros/hebiros_gazebo_plugin/CMakeFiles/hebiros_gazebo_plugin.dir/build.make:63: hebiros/hebiros_gazebo_plugin/CMakeFiles/hebiros_gazebo_plugin.dir/plugin/hebiros_gazebo_plugin.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:4367: hebiros/hebiros_gazebo_plugin/CMakeFiles/hebiros_gazebo_plugin.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
Invoking "make -j8 -l8" failed
chris_bollinger
Posts: 1
Joined: Tue Feb 02, 2021 2:42 pm
Location: Pittsburgh, PA

Re: smach_viewer dependency on Noetic?

Post by chris_bollinger » Tue Feb 02, 2021 5:42 pm

Thanks for taking a deeper look into this. It looks like you are trying to use HEBIROS, which is our older ROS interface. This version of our APIs was developed for ROS Kinetic, and hasn't been tested much on newer versions. From the error message, it looks like you're running into Gazebo simulator compatibility issues between ROS Kinetic (Gazebo7) and Noetic (Gazebo11?).

More broadly, we encourage users to switch over to our newer ROS API, which is documented at http://wiki.ros.org/hebi_cpp_api_examples. Is there a particular feature or need you have that keeps you on HEBIROS which is not met by the newer API?

Best,
Chris
x34903
Posts: 3
Joined: Thu Jan 28, 2021 1:44 pm
Location: West Point, NY

Re: smach_viewer dependency on Noetic?

Post by x34903 » Tue Feb 02, 2021 7:41 pm

Thanks, Chris! I completely was unaware of the newer API. I'll check it out asap. I'm sure this will fix all issues.
Post Reply