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
ros2 urg_node parameter file #79
Comments
You'll have to post the yaml file if there is going to be any hope of debugging this
Have you checked out the right branch? This repo is used for both ROS1 and ROS2. |
Updated the original file. the orignal is run with urg_node being installed as a binary (apt install). I realized that I was pulling from the wrong branch last night as it dawned on me .. . lol. I'll try building it from source, but was wondering why the binary one wasnt able to take the param file and seemingly was ignoring it. I've built the ros2 version (ros2-devel). sourceed it (. install/local_setup.bash). and then executed the following with the same yaml file (only thing changed from the default is the ip address definition). ros2 run urg_node urg_node_driver __params:=/home/edf/ros2_ws/src/urg_node/launch/urg_node_ethernet.yaml Obviously I can ping the Ip of the scanner. But it doesnt even seem to be going to the param file to pick up the IP network device and seems to be just defaulting to the usb device. As another test, I changed the baud rate on all the yaml devices to 57600 just to see if it was taking the baud rate from the yaml files. And it still gives the same error above - so I think I must be passing the wrong parameter in for the yaml file as it just isnt taking any of them. and finally, I populated the ip address (hard coded) in the urg_node.cpp file at the UrgNode section, rebuilt it and it works fine. ros2 topic echo /scan shows the data from the scanner. So the build obviously works, just that I cant seem to feed a parameter file in correctly. its probably an obvious thing I'm missing, I just dont know what it is. . lol |
Ok - since we generate the node using rclcpp_components_register_node - can you try changing the node name to "urg_node_driver" in your yaml file? I think that ends up being the default node name (but I don't seem to have any example of loading from a yaml -- I've been putting the params directly into a launch file) |
tried changing the yaml file to urg_node_driver and its the same. Like its not even picking up the param file on the call. I will eventually be doing it from a launch file, but right now just testing the new hoyuko with rviz - so that would be the first step. Not sure if its my reference or whether its just not picking up the param declaration on the command line. |
Did you manage to get it fixed? If so, what was the solution? |
I encountered the same error with ROS2 Foxy on Ubuntu.
Else the YAML file is silently ignored and not IP was set. |
installed sudo apt install ros-foxy-urg-node.
ros2 run urg_node getID works fine and returns ID.
ros2 run urg_node urg_node_driver __params:=/opt/ros/foxy/share/urg_node/launch/urg_node_ethernet.yaml
returns can't find serial port 115200 /dev/cu.usbmodemxxxxx
I've set the ip address in the yaml file and it just doesent seem to be reading the paramtere file anywere. Any idea on why its not readin the parameter file and using the IP address of the hokuyo (since thats the model I have) ?
Tried to git clone and build, but colcon build comes out with a bunch of catkin (ros1) type of errors.
Thanks for any assistance. Apologies if this is an idiot request. I've read everything I could find and search upon. Thanks
urg_node_ethernet.yaml file :
The text was updated successfully, but these errors were encountered: