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

RoboClaw ROS driver in C++ #1

Open
harryman1 opened this issue Mar 11, 2016 · 11 comments
Open

RoboClaw ROS driver in C++ #1

harryman1 opened this issue Mar 11, 2016 · 11 comments

Comments

@harryman1
Copy link

request of a C++ driver version for ROS, that includes USB and UART support

@griz11
Copy link

griz11 commented Mar 23, 2016

Awesome guys. I really needed this.

@sonyccd
Copy link
Owner

sonyccd commented Apr 5, 2016

Okay so update on the C++ driver.

I have made a good bit of progress but due to the fact that the developers of the Roboclaw did not provide a C++ driver for anything other than Arduino, I'm having to write it from scratch. This is not very difficult but is extremely time consuming considering the large number of functions that are needed. I'm also making sure that all of the driver code is compliant with ROS and will not interfere with other Ross knows that might be using serial. As soon as I have the C++ Roboclaw driver written the ROS C++ node should not take much longer.

@ColinHeffernan
Copy link

I actually just built one myself using the ROS serial library and modifying the existing Roboclaw C++ code. The serial library is deliberately modeled after PySerial, so It actually ended up being pretty easy to translate stuff from the Roboclaw Python code. You primarily just need to implement the write() and read() methods of the class and get rid of all the Arduino specific stuff. Aside from that a lot of the existing code can remain intact. I will post it next week once I have tested everything!

@harryman1
Copy link
Author

Hi Colin

your contribution will be very welcome, please if you can share this it would be fantastic

Thank you

Date: Tue, 3 May 2016 08:49:52 -0700
From: [email protected]
To: [email protected]
CC: [email protected]; [email protected]
Subject: Re: [sonyccd/roboclaw_ros] RoboClaw ROS driver in C++ (#1)

I actually just built one myself using the ROS serial library and modifying the existing Roboclaw C++ code. The serial library is deliberately modeled after PySerial, so It actually ended up being pretty easy to translate stuff from the Roboclaw Python code. You primarily just need to implement the write() and read() methods of the class and get rid of all the Arduino specific stuff. Aside from that a lot of the existing code can remain intact. I will post it next week once I have tested everything!


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub

@sonyccd
Copy link
Owner

sonyccd commented May 4, 2016

This is great! I have been swamped with finals so this makes like much easier. If you post the C++ driver I will write the C++ node to use it. I will also contact ionmc and let them know you wrote a C++ driver.

@ColinHeffernan
Copy link

ColinHeffernan commented May 4, 2016

I just posted a development branch so feel free to have at it. I can't actually test it until next week though, so I'll have no idea if anything works or if it is leaking memory etc... I'm pretty new to C++, so I would love any early feedback you can give. I was actually going to email them about an error in the Python library anyway, so I'll send my code along once I test and verify it next week.

@sonyccd
Copy link
Owner

sonyccd commented Aug 6, 2016

This is great to hear from so many people. I am about to start using the roboclaw again so I will start pitching in with in a month or so .

@jagadeesh-nelaturu
Copy link

Can someone update on the status of the C++ library?
Thanks in advance.

@sonyccd
Copy link
Owner

sonyccd commented Oct 8, 2016

Would anyone like to take this on?

I am yet again not working with the roboclaw

@csvance
Copy link

csvance commented Jan 7, 2019

https://github.com/csvance/roboclaw

Just got SLAM working using a node I wrote in C++. It doesn't have a ton of bells and whistles yet, but Odometry and differential drive works with move_base / gmapping.

There will definitely be improvements / additions to it in the future, including support for drive systems other than differential.

@AlbertCAC
Copy link

Is there any update on the driver, does it work with ROS melodic?

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

No branches or pull requests

7 participants