Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moveit_simple_grasping #3

Open
gmanwal opened this issue Jan 26, 2016 · 26 comments
Open

Moveit_simple_grasping #3

gmanwal opened this issue Jan 26, 2016 · 26 comments

Comments

@gmanwal
Copy link

gmanwal commented Jan 26, 2016

Hi,
I am trying to run the chapter 10 demo on ROS indigo.
I have followed all of the steps you outline but I am getting problems with Moveit_simple_grasps not being able to find members from the moveit_visual_tools package. I have tried doing an ubuntu-debian install and from source of moveit_visual_tools but there seems to be some dependencies missing (setMuted(false) and loadEEMarker being examples).

Any help with this would be appreciated.

@qboticslabs
Copy link
Owner

Hi

You can install moveit_simple_grasps from the synaptic package manager itself. The default package has some issues, so i have attached zip file for the patched one.

https://github.com/qboticslabs/mastering_ros/blob/master/chapter_10_codes/moveit_simple_grasps.zip

After installing the default package from the synaptic package manager, you will get installed with the necessary dependencies of this package. After that you can uninstall this package and build the above package from source !!

@gmanwal
Copy link
Author

gmanwal commented Jan 26, 2016

Thanks for your reply.
I have tried this but I am now getting this error:
moveit_simple_grasps_server: /usr/include/boost/smart_ptr/shared_ptr.hpp:653: typename boost::detail::sp_member_access::type boost::shared_ptr::operator->() const [with T = const moveit::core::RobotModel; typename boost::detail::sp_member_access::type = const moveit::core::RobotModel*]: Assertion `px != 0' failed.

I have tried using every version of moveit_simple_grasps since 1.01 but it is still not working for me...
I have also tried modifying the simple_grasps_server.cpp file as done in https://github.com/davetcoleman/moveit_simple_grasps/pull/16/files so gripper is the namespace of the end effector.
I am exhausting all possible avenues here.

@qboticslabs
Copy link
Owner

ok.. can you screencast a video and sent to our mail id . Here is my id : [email protected]

We can discuss via mail. !!

@ghost
Copy link

ghost commented May 19, 2016

Hi,
I have found the same issue as gmanwal.
I get this error:
moveit_simple_grasps_server: /usr/include/boost/smart_ptr/shared_ptr.hpp:653: typename boost::detail::sp_member_access::type boost::shared_ptr::operator->() const [with T = const moveit::core::RobotModel; typename boost::detail::sp_member_access::type = const moveit::core::RobotModel*]: Assertion `px != 0' failed.
Were you able to find a solution for it?

Any help would be really appreciated. Thank you in advance

@qboticslabs
Copy link
Owner

Hi @gmanwal

Sorry for the trouble. The real issue is that moveit_simple_grasp package is not maintaining any more !! May be we need to take the source code and have to change it for the new updates in R.O.S. Let me try. I am now at ICRA 2016, so will check after i returned !!! Try to check the code of the package !!!

@gmanwal
Copy link
Author

gmanwal commented May 19, 2016

Thanks Lentin,
I am using other methods for my grasping but it would be useful to have
this working, but no worry.
Congratulations on coming first in the HRATC!!
Can't tell you how many times your books have helped me! Keep up the good
work!

G
On 19 May 2016 21:40, "Qbotics Labs" [email protected] wrote:

Hi @gmanwal https://github.com/gmanwal

Sorry for the trouble. The real issue is that moveit_simple_grasp package
is not maintaining any more !! May be we need to take the source code and
have to change it for the new updates in R.O.S. Let me try. I am now at
ICRA 2016, so will check after i returned !!! Try to check the code of the
package !!!


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#3 (comment)

@qboticslabs
Copy link
Owner

Thanks :) !!

@zongchengzuo
Copy link

Hi,
I am trying to run the command line "roslaunch seven_dof_arm_gazebo grasp_generator_server.launch",
I got a problem, terminal throws

[ERROR] [1465740328.774843123]: Grasp configuration parameter pregrasp_time_from_start missing from rosparam server. Did you load your end effector's configuration yaml file? Searching in namespace: /moveit_simple_grasps_server/right

but I found "pregrasp_time_from_start: 4.0" in the file of seven_dof_arm_grasp_data.yaml.

Could you give me any suggestions?

thanks

@qboticslabs
Copy link
Owner

@zongchengzuo, Sorry for the issue !! Can you send a screencast of the issue to my mail id : [email protected]. !!

@qboticslabs qboticslabs reopened this Jun 21, 2016
@qboticslabs
Copy link
Owner

Hi all

I have found two solutions for this problem. This problem can vary in different system with different environment.

Possible solution:

  1. Stick on to Ubuntu 14.04.2 instead of Ubuntu 14.04.3. The package will perfectly work in ROS version 1.11.13. I think you will get this version in Ubuntu 14.04.2

  2. If you are using Ubuntu 14.04.3, take a try with the following package

https://github.com/qboticslabs/mastering_ros/blob/master/chapter_10_codes/moveit_simple_grasps_1.zip

Please get back to me with your issues to my mail id : [email protected].

I am not closing the issue now, waiting for your response !!!

@Rajkumarsaswamy
Copy link

grasp_generator_server is working

The modified moveit_simple_grasps_1.zip package is good:

https://github.com/qboticslabs/mastering_ros/blob/master/chapter_10_codes/moveit_simple_grasps_1.zip

Thanks!

@davetcoleman
Copy link

why not submit a PR to the original repo to fix the issue, rather than use clunky zip files? that is the point of Github...

@liqisa
Copy link

liqisa commented Oct 12, 2017

SUMMARY

PARAMETERS

  • /moveit_simple_grasps_server/base_link: base_link
  • /moveit_simple_grasps_server/end_effector: gripper
  • /moveit_simple_grasps_server/gripper/end_effector_name: gripper
  • /moveit_simple_grasps_server/gripper/end_effector_parent_link: gripper_roll_link
  • /moveit_simple_grasps_server/gripper/grasp_pose_to_eef: [0.0, 0.0, 0.0]
  • /moveit_simple_grasps_server/gripper/grasp_pose_to_eef_rotation: [0.0, 0.0, 0.0]
  • /moveit_simple_grasps_server/gripper/grasp_posture: [1.0, 1.0]
  • /moveit_simple_grasps_server/gripper/grasp_time_from_start: 4.0
  • /moveit_simple_grasps_server/gripper/joints: ['finger_joint1',...
  • /moveit_simple_grasps_server/gripper/postplace_time_from_start: 4.0
  • /moveit_simple_grasps_server/gripper/pregrasp_posture: [0.0, 0.0]
  • /moveit_simple_grasps_server/gripper/pregrasp_time_from_start: 4.0
  • /moveit_simple_grasps_server/group: arm
  • /rosdistro: indigo
  • /rosversion: 1.11.21

NODES
/
moveit_simple_grasps_server (moveit_simple_grasps/moveit_simple_grasps_server)

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[moveit_simple_grasps_server-1]: started with pid [3388]
[ERROR] [1507773300.324518439]: Grasp configuration parameter pregrasp_time_from_start missing from rosparam server. Did you load your end effector's configuration yaml file? Searching in namespace: /moveit_simple_grasps_server/right
moveit_simple_grasps_server: /usr/include/boost/smart_ptr/shared_ptr.hpp:653: typename boost::detail::sp_member_access::type boost::shared_ptr::operator->() const [with T = const moveit::core::RobotModel; typename boost::detail::sp_member_access::type = const moveit::core::RobotModel*]: Assertion `px != 0' failed.
[moveit_simple_grasps_server-1] process has died [pid 3388, exit code -6, cmd /home/liqi/catkin_ws/devel/lib/moveit_simple_grasps/moveit_simple_grasps_server __name:=moveit_simple_grasps_server __log:=/home/liqi/.ros/log/d1043298-ae95-11e7-845f-000c29b384c9/moveit_simple_grasps_server-1.log].
log file: /home/liqi/.ros/log/d1043298-ae95-11e7-845f-000c29b384c9/moveit_simple_grasps_server-1*.log
all processes on machine have died, roslaunch will exit
shutting down processing monitor...
... shutting down processing monitor complete

when i run the command line roslaunch seven_dof_arm_gazebo grasp_generator_server.launch
my system is Ubuntu 14.04,5
how can i solve those problems ?
thanks

@robotlearning123
Copy link

There is a problem in Ubuntu 16.04 ROS Kinetic.

Grasp configuration parameter `pregrasp_time_from_start` missing from rosparam server. Did you load your end effector's configuration yaml file? Searching in namespace: /moveit_simple_grasps_server/right
[moveit_simple_grasps_server-1] process has died [pid 28316, exit code -5, cmd /

Could you help me ? Thank you!
@qboticslabs

@liqisa
Copy link

liqisa commented Oct 30, 2017

Hi @wangcongrobot
我也遇到了同样的问题,系统版本的问题,而且这个package应该是indigo下的

@iamWHTWD
Copy link

@liqisa @wangcongrobot 想问一下moveit_simple_grasps 在ubuntu14.04.5的兼容问题解决了吗?谢谢你的回复

@iamWHTWD
Copy link

my system is Ubuntu 14.04,5,moveit_simple_grasps ,Have you solved the compatibility problem in ubuntu14.04.5,thank you

@marcusvinicius178
Copy link

Lenthin I also had the problems my friends had previously and I dowloaded the updated moveit_simple_grasps1.zip and it worked! However it still remains an error in the package I would like to alert you guys.... in object "Collision Wall", the source code .h asks for 7 arguments (double, double...) and in the updated file provided, the fifth argument is named as a char, so you need to change and give a float (double) argument which is the height of the wall....after this changing (Add parameters which is missing in this .cpp file) you can compile and it will work. I also had a problem with teleop_pad.cpp in chapter 6 @qboticslabs which I solved including a #ifndef Q_MOC_RUN.... I have taken this solutiion from a forum but I really did not understand what are the Qt objects and why this solution solved my problem....could you explain me? Thanks for the book I am finishing it....and it is very good!

@murtazabasu
Copy link

Hello everyone, I have been following your book 'Mastering_ROS_for_Robotics_Programming'. I am stuck in chapter 10 where I am not able to execute a launch file i.e. roslaunch seven_dof_arm_gazebo grasp_generator_server.launch.

When I execute this I get the following error,
Capture

I have download the updated folder of moveit_simple_grasps as provided above but when I run catkin_make , I get the following errors

Scanning dependencies of target moveit_simple_grasps_test
Scanning dependencies of target moveit_simple_grasps_server
Scanning dependencies of target moveit_simple_grasps_filter_test
[ 96%] Building CXX object moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/src/simple_grasps_test.cpp.o
[ 96%] Building CXX object moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/src/simple_grasps_server.cpp.o
[ 96%] Building CXX object moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/src/grasp_filter_test.cpp.o
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:49:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h: In function ‘void baxter_pick_place::createEnvironment(moveit_visual_tools::MoveItVisualToolsPtr)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:86:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.8,    0,     0.4,         1.4,          0.47,        SUPPORT_SURFACE1_NAME); // computer monitor
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:49:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:87:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.45,   0,     0.4,         0.7,          0.47,        SUPPORT_SURFACE2_NAME); // my desk
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:49:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:88:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(TABLE_X, TABLE_Y, 0,     TABLE_WIDTH, TABLE_HEIGHT, TABLE_DEPTH, SUPPORT_SURFACE3_NAME); // andy table
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp: In constructor ‘baxter_pick_place::GraspGeneratorTest::GraspGeneratorTest(int)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:99:20: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools}’ has no member named ‘setMuted’
     visual_tools_->setMuted(false);
                    ^~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:66:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h: In function ‘void baxter_pick_place::createEnvironment(moveit_visual_tools::MoveItVisualToolsPtr)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:86:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.8,    0,     0.4,         1.4,          0.47,        SUPPORT_SURFACE1_NAME); // computer monitor
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:66:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:87:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.45,   0,     0.4,         0.7,          0.47,        SUPPORT_SURFACE2_NAME); // my desk
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:116:78: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::loadEEMarker(std::__cxx11::string&, std::__cxx11::string&)’
       visual_tools_->loadEEMarker(grasp_data_.ee_group_, planning_group_name_);
                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::loadEEMarker(const moveit::core::JointModelGroup*, const std::vector<double>&)
   bool loadEEMarker(const robot_model::JointModelGroup* ee_jmg, const std::vector<double>& ee_joint_pos = {});
        ^~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note:   no known conversion for argument 1 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:66:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:88:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(TABLE_X, TABLE_Y, 0,     TABLE_WIDTH, TABLE_HEIGHT, TABLE_DEPTH, SUPPORT_SURFACE3_NAME); // andy table
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:117:82: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::publishEEMarkers(geometry_msgs::Pose&, rviz_visual_tools::colors, const char [9])’
       visual_tools_->publishEEMarkers(pose, rviz_visual_tools::ORANGE, "test_eef");
                                                                                  ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:223:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Isometry3d&, const moveit::core::JointModelGroup*, const std::vector<double>&, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const Eigen::Isometry3d& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:223:8: note:   no known conversion for argument 1 from ‘geometry_msgs::Pose {aka geometry_msgs::Pose_<std::allocator<void> >}’ to ‘const Isometry3d& {aka const Eigen::Transform<double, 3, 1>&}’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:230:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Isometry3d&, const moveit::core::JointModelGroup*, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const Eigen::Isometry3d& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:230:8: note:   no known conversion for argument 1 from ‘geometry_msgs::Pose {aka geometry_msgs::Pose_<std::allocator<void> >}’ to ‘const Isometry3d& {aka const Eigen::Transform<double, 3, 1>&}’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:236:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Pose&, const moveit::core::JointModelGroup*, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const geometry_msgs::Pose& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:236:8: note:   no known conversion for argument 2 from ‘rviz_visual_tools::colors’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:242:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Pose&, const moveit::core::JointModelGroup*, const std::vector<double>&, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const geometry_msgs::Pose& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:242:8: note:   no known conversion for argument 2 from ‘rviz_visual_tools::colors’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:122:78: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::loadEEMarker(std::__cxx11::string&, std::__cxx11::string&)’
       visual_tools_->loadEEMarker(grasp_data_.ee_group_, planning_group_name_);
                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::loadEEMarker(const moveit::core::JointModelGroup*, const std::vector<double>&)
   bool loadEEMarker(const robot_model::JointModelGroup* ee_jmg, const std::vector<double>& ee_joint_pos = {});
        ^~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note:   no known conversion for argument 1 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:123:81: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::publishEEMarkers(geometry_msgs::Pose&, rviz_visual_tools::colors, const char [9])’
       visual_tools_->publishEEMarkers(pose, rviz_visual_tools::GREEN, "test_eef");
                                                                                 ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:223:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Isometry3d&, const moveit::core::JointModelGroup*, const std::vector<double>&, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const Eigen::Isometry3d& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:223:8: note:   no known conversion for argument 1 from ‘geometry_msgs::Pose {aka geometry_msgs::Pose_<std::allocator<void> >}’ to ‘const Isometry3d& {aka const Eigen::Transform<double, 3, 1>&}’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:230:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Isometry3d&, const moveit::core::JointModelGroup*, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const Eigen::Isometry3d& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:230:8: note:   no known conversion for argument 1 from ‘geometry_msgs::Pose {aka geometry_msgs::Pose_<std::allocator<void> >}’ to ‘const Isometry3d& {aka const Eigen::Transform<double, 3, 1>&}’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:236:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Pose&, const moveit::core::JointModelGroup*, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const geometry_msgs::Pose& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:236:8: note:   no known conversion for argument 2 from ‘rviz_visual_tools::colors’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:242:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishEEMarkers(const Pose&, const moveit::core::JointModelGroup*, const std::vector<double>&, const rviz_visual_tools::colors&, const string&)
   bool publishEEMarkers(const geometry_msgs::Pose& pose, const robot_model::JointModelGroup* ee_jmg,
        ^~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:242:8: note:   no known conversion for argument 2 from ‘rviz_visual_tools::colors’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:145:22: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools’ has no member named ‘publishBlock’; did you mean ‘publishCone’?
       visual_tools_->publishBlock(object_pose, rviz_visual_tools::BLUE, BLOCK_SIZE);
                      ^~~~~~~~~~~~
                      publishCone
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:153:88: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::publishAnimatedGrasps(std::vector<moveit_msgs::Grasp_<std::allocator<void> > >&, std::__cxx11::string&)’
       visual_tools_->publishAnimatedGrasps(possible_grasps, grasp_data_.ee_parent_link_);
                                                                                        ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_test.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:262:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishAnimatedGrasps(const std::vector<moveit_msgs::Grasp_<std::allocator<void> > >&, const moveit::core::JointModelGroup*, double)
   bool publishAnimatedGrasps(const std::vector<moveit_msgs::Grasp>& possible_grasps,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:262:8: note:   no known conversion for argument 2 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp: In constructor ‘moveit_simple_grasps::GraspGeneratorTest::GraspGeneratorTest(int)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:135:20: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools}’ has no member named ‘setMuted’
     visual_tools_->setMuted(false);
                    ^~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:136:76: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::loadEEMarker(std::__cxx11::string&, std::__cxx11::string&)’
     visual_tools_->loadEEMarker(grasp_data_.ee_group_, planning_group_name_);
                                                                            ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::loadEEMarker(const moveit::core::JointModelGroup*, const std::vector<double>&)
   bool loadEEMarker(const robot_model::JointModelGroup* ee_jmg, const std::vector<double>& ee_joint_pos = {});
        ^~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note:   no known conversion for argument 1 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:137:20: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools}’ has no member named ‘setFloorToBaseHeight’
     visual_tools_->setFloorToBaseHeight(-0.9);
                    ^~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:143:110: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
     visual_tools_->publishCollisionTable(TABLE_X, TABLE_Y, 0, TABLE_WIDTH, TABLE_HEIGHT, TABLE_DEPTH, "table");
                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:172:22: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools}’ has no member named ‘publishBlock’; did you mean ‘publishCone’?
       visual_tools_->publishBlock(object_pose, rviz_visual_tools::BLUE, BLOCK_SIZE);
                      ^~~~~~~~~~~~
                      publishCone
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:185:88: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::publishAnimatedGrasps(std::vector<moveit_msgs::Grasp_<std::allocator<void> > >&, std::__cxx11::string&)’
       visual_tools_->publishAnimatedGrasps(possible_grasps, grasp_data_.ee_parent_link_);
                                                                                        ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:262:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishAnimatedGrasps(const std::vector<moveit_msgs::Grasp_<std::allocator<void> > >&, const moveit::core::JointModelGroup*, double)
   bool publishAnimatedGrasps(const std::vector<moveit_msgs::Grasp>& possible_grasps,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:262:8: note:   no known conversion for argument 2 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:186:81: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::publishIKSolutions(std::vector<trajectory_msgs::JointTrajectoryPoint_<std::allocator<void> >, std::allocator<trajectory_msgs::JointTrajectoryPoint_<std::allocator<void> > > >&, std::__cxx11::string&, double)’
       visual_tools_->publishIKSolutions(ik_solutions, planning_group_name_, 0.25);
                                                                                 ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/grasp_filter_test.cpp:60:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:282:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::publishIKSolutions(const std::vector<trajectory_msgs::JointTrajectoryPoint_<std::allocator<void> >, std::allocator<trajectory_msgs::JointTrajectoryPoint_<std::allocator<void> > > >&, const moveit::core::JointModelGroup*, double)
   bool publishIKSolutions(const std::vector<trajectory_msgs::JointTrajectoryPoint>& ik_solutions,
        ^~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:282:8: note:   no known conversion for argument 2 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:53:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h: In function ‘void baxter_pick_place::createEnvironment(moveit_visual_tools::MoveItVisualToolsPtr)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:86:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.8,    0,     0.4,         1.4,          0.47,        SUPPORT_SURFACE1_NAME); // computer monitor
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:53:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:87:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(0.78,    -0.45,   0,     0.4,         0.7,          0.47,        SUPPORT_SURFACE2_NAME); // my desk
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:53:0:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/custom_environment2.h:88:126: warning: ‘bool moveit_visual_tools::MoveItVisualTools::publishCollisionTable(double, double, double, double, double, double, std::__cxx11::string, const rviz_visual_tools::colors&)’ is deprecated [-Wdeprecated-declarations]
   visual_tools_->publishCollisionTable(TABLE_X, TABLE_Y, 0,     TABLE_WIDTH, TABLE_HEIGHT, TABLE_DEPTH, SUPPORT_SURFACE3_NAME); // andy table
                                                                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:464:8: note: declared here
   bool publishCollisionTable(double x, double y, double angle, double width, double height, double depth,
        ^~~~~~~~~~~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp: In constructor ‘moveit_simple_grasps::GraspGeneratorServer::GraspGeneratorServer(const string&, const string&)’:
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:151:22: error: ‘using element_type = class moveit_visual_tools::MoveItVisualTools {aka class moveit_visual_tools::MoveItVisualTools}’ has no member named ‘setMuted’
       visual_tools_->setMuted(false);
                      ^~~~~~~~
/home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:152:78: error: no matching function for call to ‘moveit_visual_tools::MoveItVisualTools::loadEEMarker(std::__cxx11::string&, std::__cxx11::string&)’
       visual_tools_->loadEEMarker(grasp_data_.ee_group_, planning_group_name_);
                                                                              ^
In file included from /home/murtaza/catkin_ws/src/moveit_simple_grasps/include/moveit_simple_grasps/simple_grasps.h:60:0,
                 from /home/murtaza/catkin_ws/src/moveit_simple_grasps/src/simple_grasps_server.cpp:46:
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note: candidate: bool moveit_visual_tools::MoveItVisualTools::loadEEMarker(const moveit::core::JointModelGroup*, const std::vector<double>&)
   bool loadEEMarker(const robot_model::JointModelGroup* ee_jmg, const std::vector<double>& ee_joint_pos = {});
        ^~~~~~~~~~~~
/home/murtaza/catkin_ws/src/moveit_visual_tools/include/moveit_visual_tools/moveit_visual_tools.h:188:8: note:   no known conversion for argument 1 from ‘std::__cxx11::string {aka std::__cxx11::basic_string<char>}’ to ‘const moveit::core::JointModelGroup*’
moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/build.make:62: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/src/simple_grasps_test.cpp.o' failed
make[2]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/src/simple_grasps_test.cpp.o] Error 1
CMakeFiles/Makefile2:7998: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/all' failed
make[1]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_test.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/build.make:62: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/src/grasp_filter_test.cpp.o' failed
make[2]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/src/grasp_filter_test.cpp.o] Error 1
CMakeFiles/Makefile2:8231: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/all' failed
make[1]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_filter_test.dir/all] Error 2
moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/build.make:62: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/src/simple_grasps_server.cpp.o' failed
make[2]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/src/simple_grasps_server.cpp.o] Error 1
CMakeFiles/Makefile2:8118: recipe for target 'moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/all' failed
make[1]: *** [moveit_simple_grasps/CMakeFiles/moveit_simple_grasps_server.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

I have also edited the custom_environment2.h providing 7 arguments instead of 5 which is,
image

I have tried it on both ros-melodic and ros-kinetic I get the same error on both the versions

I would be glad if you can help me out

@learningxiaobai
Copy link

hi,when i catkin_make,i get the following error:
fatal error: moveit_simple_grasps/GenerateGraspsAction.h: no such file or directpry #include <moveit_simple_grasps/GenerateGraspsAction.h>
i would be glad if someone help me out.

@qboticslabs
Copy link
Owner

@learningxiaobai Can you put Ubuntu version and ROS version you are using?

@learningxiaobai
Copy link

@learningxiaobai Can you put Ubuntu version and ROS version you are using?

18.04,melodic

@qboticslabs
Copy link
Owner

@learningxiaobai The moveit_simple_grasps is currently depreciated, can you reconsider to use the following packages

https://github.com/ros-planning/moveit_grasps

https://ros-planning.github.io/moveit_tutorials/doc/moveit_grasps/moveit_grasps_tutorial.html

@learningxiaobai
Copy link

@learningxiaobai The moveit_simple_grasps is currently depreciated, can you reconsider to use the following packages

https://github.com/ros-planning/moveit_grasps

https://ros-planning.github.io/moveit_tutorials/doc/moveit_grasps/moveit_grasps_tutorial.html

thanks,i will try

@lzyyy58
Copy link

lzyyy58 commented Oct 26, 2022

Are there any packages suitable for the noetic version

@lzyyy58
Copy link

lzyyy58 commented Oct 26, 2022

@learningxiaobai Have you tried?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests