Setup ROS2 bridge for VRX
Opened this issue · 5 comments
What needs to change?
To use the new version of the VRX simulator (ie, the simulator for RobotX), we will need to install the ROS 2 bridge, which will allow our ROS 1 code to communicate with the ROS 2 code used by VRX.
How would this task be tested?
- Add a test to ensure that we can use the VRX simulator (ie, we can run a launch file and launch our boat).
Update:
I followed installation steps for my local ubuntu 20.0.4 machine for the VRX simulator. This involved building a docker image as specified in the VRX repo. I also read the documentation on the ros1_bridge package and its usage, as well as multiple bridge tutorials on the different options this package and other similar ones offer. At the moment, I have the following preliminary steps in mind for the bridge setup:
-
Understand the requirements for ROS1 communication with VRX ROS2 code.
-
Meet with team leaders (@cbrxyz) to clarify environment-specific matters in our project.
-
Setup docker image for virtual machine (as done locally) or ROS2 distribution.
-
Install the ros1_bridge package. Either for one-way or dynamic communication between ROS1 and ROS2 topics.
-
Verify basic connectivity and functionality of the bridge by creating a test nodes .
-
Modify launch files that ensure the proper bridge configuration and setup.
-
Launch and verify functionality of the VRX simulator.
-
Create test case that automatically tests the bridge upon launch.
Progress update:
I am working on the installation of ros2, which is a prerequisite for ros1_bridge. I am writing a script that handles this installation, so that it can be ran before running the new VRX version.
I have read documentation and guides for the use of the bridge, and knowing that it needs two-way communication, a dynamic bridge is likely required.
In order to ensure the bridge is working properly, I will be writing a test node and a guide for testing the functionality of the bridge.
Finally, I had some issues with the initial approach I was considering, as it filled my Linux disk space, so I had to handle that before I could continue with the bridge setup
Progress update:
This week I did not manage to work on this issue. I had interviews scheduled on a very short time frame throughout the week so I will make up for the time next week.
Progress Update:
I managed to get the bridge running on my local machine using foxy as my ros2 distro. I am working on adding its installation to the scripts. Before submitting a PR I'll have to test my changes to ensure they don't break our environment
Update
- I have completed the bridge installation. Although I had the PR setup for ROS2 foxy, due to incompatibility with the new gazebo garden that must be used for VRX, I had to modify it to work with ros2 humble
- I am drafting the PR for the humble/noetic bridge.
- Aside from drafting the PR. The following package must be fixed as well: 'rcl_interfaces/msg/Log' and ROS 1 type 'rosgraph_msgs/Log'