-
Notifications
You must be signed in to change notification settings - Fork 129
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
Ros->Ign Bridge stops with signal 245 when JointStatePublisher is run #118
Comments
Thank you for ticketing the issue. Do you have a minimal launch file that can be used to test this issue? Also, what Ignition version are you using? |
Hi sorry for the delay. I've been pretty busy. I am using ignition 4.0.0. I also have ignition 3.3.0 installed. A simple launch file would be (once given a pkg and an urdf file with joints inside): import os
from ament_index_python.packages import get_package_share_directory
from launch import LaunchDescription
from launch_ros.actions import Node
def generate_launch_description():
pkg_name = "PKG_NAME"
urdf_file = "URDF_FILE"
pkg_share = get_package_share_directory(pkg_name)
joint = Node(
package='joint_state_publisher_gui',
executable='joint_state_publisher_gui',
output='screen',
arguments=[os.path.join(pkg_share, urdf_file)],
)
bridge = Node(
package='ros_ign_bridge',
executable='parameter_bridge',
arguments="/joint_states@sensor_msgs/msg/JointState@ignition.msgs.Model",
output='screen'
)
return LaunchDescription([
joint,
bridge,
]) This causes an causes an along with the documentation of how to properly format the arguments. This seems to be due that the argument is malformed which is not the case in the launch file. However running the same command in terminal doesn't seem to generate such an error (Nothing else is running). And the bridge only dies once the JointStatePublisher starts to publish. Not providing an urdf file doesn't crash the bridge as there is nothing beeing publish. So the error is probably in either the subscriber for JointStates or in the publisher for Model |
I have the same problem using ignition citadel and ros foxy. When you launch the ign_bridge alone, there is no error message. You launch a node joint_state_publisher, an error message appear with command parameter_bridge. Same message using the demo code from ignition_bridge/ros_ign_gazebo_demos joint_states.launch.py. |
If I remember correctly I think it was due that in ignition the joint topic for control publishes to Anyway until it is fixed I would recommend you create some sort of republisher that listen to joint_states in ros and publishes it in ignition. Here is my implementation of it. With some tweaking you can get something up and running quite fast. Hope it helps |
If you run a bridge to publish joint_states from Ros2 to ignition with
ros run ros_ign_bridge parameter_bridge /joint_states@sensor_msgs/msg/JointState@ignition.msgs.Model
it works.However if you run JointStatePublisher or JointStatePublisherGui with
ros run joint_state_publisher joint_state_publisher
and a Urdf file the bridge stops with no visible error beside signal 245 beeing sentI tried changing the source topic and it still breaks. And using another data type for the bridge still works fine (float, int) with the JointStatePublisher
The text was updated successfully, but these errors were encountered: