-
Notifications
You must be signed in to change notification settings - Fork 62
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 Support #36
Comments
Absolutely YES but first i need to implement the missing features. Also, my idea was to rewrite the ROS master in Go, but probably the ROS2 support has a wider audience, so i'm sticking to the latter. |
I'd love to see this awesome library getting support for ROS2 as well! |
The main problem of ROS2 is that it's based on another, more generic, protocol, that is DDS, that is relatively newer. There isn't a Go implementation, and it must be build from scratch. This is long and expensive, but i hope it will be done at some point. https://en.wikipedia.org/wiki/Data_Distribution_Service |
Any progress on getting ROS2 support? I'd love to use Golang instead of Python |
Is this library useful for handling the DDS part: https://github.com/rticommunity/rticonnextdds-connector-go? |
Still too young, but can be better than nothing. |
Hey, any updates to support ROS2? Looking forward to it~~ |
Is anyone working on this feature? I'd be happy to help out where I can. |
I’m going to start working on the DDS implementation. @aler9 I’d love to confer with you during the course of development. |
@LarryDCJ hello, First of all, this library is practically in maintenance mode, since all ROS1 features have been implemented a while ago. Recent commits have been about updating dependencies or bug fixing. The reason why a Golang ROS2 implementation was not developed yet is because there are not enough reasons to do it. Personally i can't use ROS in my job since its role as middleware is already taken by Kafka, AMQP or SQS, all of which can be horizontally scaled and have a better handling of undelivered messages, while its role as message encoder is already taken by gRPC. The time i can spend on OSS is currently focused on some other protocols which are way more popular. Furthermore, this porting was never recognized by the official organization (although it's one of the most popular ones), so until now no one showed up offering concrete help. If someone is willing to start a DDS implementation, i'm willing to review the work, but i can't do more than that at the moment. |
@aler9 Thanks for the insight! I'm currently writing a driver for the YDLidar G2 and wanted to implement Ros2 written in Go when it's all done. This is all super new to me as I'm just learning to work with serial data. |
Did you ever look at |
For anyone who's wants to give a Golang ROS2 interface a shot, rather than native golang all the way to the DDS layer, interfacing Go to ROS2's rcl and rmw libraries via C might be a better path. This is how the Python and JavaScript implementions work, and allows the language interface to be independent of the actual middleware that is used, which is good because while DDS is the default, there are other middleware implementations. The nodejs implementation may be useful as a starting point: |
Hi, Does this library support ros2-galactic ? do you have plan for ros2-humble as well? BR, |
Hi, Does this library support ros2-humble ? |
Does this library support ROS2? if not then any plans to support ROS2.
Thanks in advance
The text was updated successfully, but these errors were encountered: