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

ROS2 support #80

Closed
wawanbreton opened this issue May 31, 2022 · 16 comments
Closed

ROS2 support #80

wawanbreton opened this issue May 31, 2022 · 16 comments
Labels
enhancement New feature or request

Comments

@wawanbreton
Copy link

Hi,
I'm using an R2000 lidar with ROS2, currently using a bridge from the ROS1 driver.
I will now have a need not to use the bridge anymore, and having only ROS2 nodes.
Is there a work in progress for ROS2 porting ? If not, I will start forking the repository and do it myself, but I just wanted to be sure nobody is alreay working on it.

@ptruka
Copy link
Contributor

ptruka commented Jun 3, 2022

Hello,
we will start the work on the ROS2 driver in the next week. A first version should be available by the end of this month.

@ptruka ptruka added the enhancement New feature or request label Jun 3, 2022
@wawanbreton
Copy link
Author

Thanks for the feedback.
I just pushed a basically working version on my branch. I was about to start doing some refactoring, but it seems useless if you are up to it. You can take a look at it if needed on some points.
I have been struggling about the deserialization of the header, since it is a bit more complicated (impossible ?) with ROS2, so I did a quick-and-dirty implementation. I'm curious to see how you will handle it :)
Of course I would be happy to test your implementation if you need to, however I only have R2000 LIDARs.

@hsd-dev
Copy link
Contributor

hsd-dev commented Jun 7, 2022

I am guessing this is the branch: https://github.com/wawanbreton/pf_lidar_ros_driver/tree/porting-ros2

Thanks for the initial work! I have created a PR here: #82
I will push more commits to it

@wawanbreton
Copy link
Author

Ok, nice ! I think it requires some refactoring : I had to reorganize the initialization as in ROS2 you can't read the parameters before the node is created, so I did things that are not very clean. It works for me yet so I can use my LIDAR, but feel free to break what I did !

@hsd-dev
Copy link
Contributor

hsd-dev commented Jun 7, 2022

sure :) Porting of the package.xml and CMakeLists.txt is already good contribution.

@hsd-dev
Copy link
Contributor

hsd-dev commented Jun 10, 2022

#82 has been closed and the work is being continued on #83.

@shaoxiang
Copy link

Is there a time schedule for ROS2 support? Thanks.

@chenwu-cc
Copy link

ROS2 支持有时间表吗?谢谢。

Can you use the porting ROS2 version normally? We urgently need the ROS2 version driver

@andrewTianxiaolu
Copy link

Hi there. I just tried the porting-ros2 branch on Ubuntu22/ros2 humble, and I met an error when I build the pf_driver. The error is no matching function for call to ‘rclcpp::Duration::Duration(double)’. I have already installed the rosdep before building the source code.
倍加福编译问题
Does anybody have met the same problem like it?

@hsd-dev
Copy link
Contributor

hsd-dev commented Jun 30, 2023

ROS2 支持有时间表吗?谢谢。

Can you use the porting ROS2 version normally? We urgently need the ROS2 version driver

Most of the features are working. There are couple of more bugs to be fixed, which I will do next week.

@hsd-dev
Copy link
Contributor

hsd-dev commented Jun 30, 2023

Hi there. I just tried the porting-ros2 branch on Ubuntu22/ros2 humble, and I met an error when I build the pf_driver. The error is no matching function for call to ‘rclcpp::Duration::Duration(double)’. I have already installed the rosdep before building the source code. 倍加福编译问题 Does anybody have met the same problem like it?

Thanks for testing it on Humble. The driver has been tested only on foxy and galactic. I will take a look at the Humble api and make changes in the coming days.

@shaoxiang
Copy link

ROS2 支持有时间表吗?谢谢。

Can you use the porting ROS2 version normally? We urgently need the ROS2 version driver

It can already be run on ROS2 foxy version.

@PGotzmann
Copy link

Thanks for porting this to ROS2. Really looking forward to this release.
Since both foxy and galactic are already end of life for quiet some time now I still need to ask if you are also planing to release this on Humble and if so when we can expect such a release.

@hsd-dev
Copy link
Contributor

hsd-dev commented Oct 20, 2023

@PGotzmann thanks for your interest. There was a small change (mentioned below) required for humble. The initial test looks good on Humble.

This week we fixed few bugs related to setting (changing) parameters at runtime. Next week we have planned an extensive test for Foxy, Galactic and Humble.

@hsd-dev
Copy link
Contributor

hsd-dev commented Oct 20, 2023

@andrewTianxiaolu said:

Hi there. I just tried the porting-ros2 branch on Ubuntu22/ros2 humble, and I met an error when I build the pf_driver. The error is no matching function for call to ‘rclcpp::Duration::Duration(double)’. I have already installed the rosdep before building the source code. 倍加福编译问题 Does anybody have met the same problem like it?

46ca683 should fix the error.

Another "fix" that might be needed is mentioned here: open-source-parsers/jsoncpp#1356

@hsd-dev
Copy link
Contributor

hsd-dev commented Dec 15, 2023

As mentioned in #83 (comment), the ROS 2 version for foxy, galactic, humble and iron has been moved to a new repo: https://github.com/PepperlFuchs/pf_lidar_ros2_driver. The initial testing is done. Please test the driver and create issues in the new repo.

@hsd-dev hsd-dev closed this as completed Dec 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

7 participants