# voxl MPA-TO_ROS2

Source: https://forum.modalai.com/topic/2535/voxl-mpa-to_ros2
Category: VOXL SDK and Software (https://forum.modalai.com/category/47/voxl-sdk-and-software)
Tags: ros
Posted: 2023-08-06 08:42:19 UTC by jacob yaacubov
Replies: 15 · Views: 4412

## jacob yaacubov · 2023-08-06 08:42:19 UTC

Hi guys,

i am currently working with voxl 2 using a bridge ros1 to ros2  in order to view imu and camera topics in ros2 topic list 

I understand there are plans to launch the mpa-to-ros2  in the upcoming SDK release , is this true? 

any time estimation on that release of voxl  mpa-to-ros2? 

it will be very helpful for our project 

Thanks

## Reply by eric · 2023-10-03 19:26:52 UTC

@jacob-yaacubov Not sure why you didn't get a response from the moderation team?

It does like it's coming in SDK 1.1: https://docs.modalai.com/ros2-installation-voxl2/#mpa-to-ros2

I would also appreciate a roadmap or timeline. I am about to port it to ROS2 myself, and would prefer to save the hassle if it's just around the corner.

## Reply by eric · 2023-10-03 19:55:12 UTC

Any possibility of opening this up to the public before the release?

https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2.git

## Reply by Zachary Lowell 0 · 2023-10-04 16:06:17 UTC

@eric @jacob-yaacubov the dev branch is ready to be tested by people I would say. You still need to download ros2 on the board since it isnt available on the system image by default yet till sdk1.1 release, HOWEVER, once foxy is installed, the user can run a colcon build inside the colcon_ws directory and then run ros2 run voxl_mpa_to_ros2 voxl_mpa_to_ros2 which will function the same as the original voxl_mpa_to_ros code but just in ros2 foxy.

There will be an install script in the repository eric listed above as well that will just install ros2 foxy on target prior to running the colcon build and such.

## Reply by eric · 2023-10-04 17:54:03 UTC (in reply to Zachary Lowell 0)

@Zachary-Lowell-0 Sweet! Thanks Zach. I currently have ROS2 humble installed on my VOXL 2 flightdeck. Excited to try this out!

Can you tag me when this repository is public?

## Reply by Zachary Lowell 0 · 2023-10-06 15:20:07 UTC (in reply to eric)

@eric I believe the repo is public - pull down the dev branch and follow the instructions for building. HOWEVER note this is only been tested on ros2 foxy since we are running ubuntu 18 on the voxl 2, so unsure how it will run on humble.

## Reply by eric · 2023-10-09 13:37:01 UTC (in reply to Zachary Lowell 0)

@Zachary-Lowell-0 I am getting a 404 from gitlab saying I don't have permission to view it. This is the link I'm trying to access: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2.git

## Reply by tom (ModalAI staff) · 2023-10-09 16:30:38 UTC (in reply to eric)

@eric It's not public yet

## Reply by Jeffrey Mao · 2023-10-16 13:15:44 UTC

Is there a timeline for when it will be public in the future? We have install ROS2 Foxy, and are wondering if would be better to port it ourselves or wait for the release. Even a no would suffice, so we can start the work now

## Reply by Zachary Lowell 0 · 2023-10-16 17:42:39 UTC

@eric @Jeffrey-Mao please just download the debs for now. This should be published to public within the next few days I would say. For now download the two debs, unpackage them and then source the directory: `/opt/ros/foxy/mpa_to_ros2/install/setup.bash`

1. http://voxl-packages.modalai.com/dists/qrb5165/dev/binary-arm64/voxl-ros2-foxy_0.0.1-202310061042_arm64.deb  
2. http://voxl-packages.modalai.com/dists/qrb5165/dev/binary-arm64/voxl-mpa-to-ros2_0.0.1-202310132005_arm64.deb 

Once these have both been installed on target via sudo dpkg -i "PACKAGE", you will be missing some python and xml dependencies, of which include 

1. sudo apt-get install -y libtinyxml2-dev
2. export ROS_HOME=/opt/ros/foxy
3. python3 -m pip install netifaces
4. python3 -m pip install yaml
5. python3 -m pip install lark

Once these are all isntalled, you can run `ros2 run voxl_mpa_to_ros2 voxl_mpa_to_ros2_node` and it will run as if it were the original mpa-to-ros

## Reply by Jeffrey Mao · 2023-10-16 19:32:35 UTC (in reply to Zachary Lowell 0)

@Zachary-Lowell-0 Hi thank you for use the .deb. By the way we try to install voxl MPA-to-ROS2

dpkg: dependency problems prevent configuration of voxl-mpa-to-ros2:
 voxl-mpa-to-ros2 depends on libmodal-pipe (>= 2.6.0); however:
  Version of libmodal-pipe on system is 2.4.0.

Do you have a later system image for libmodal-pipe we can update with

## Reply by Zachary Lowell 0 · 2023-10-17 15:36:09 UTC

@Jeffrey-Mao which SDK are you on - if you are on 1.0.0 then you should not have this issue. This MPA to ROS2 only supports the tip (aka past 1.0.0) - if you need to flash the sdk on to your board, you can download the image here: https://developer.modalai.com/asset/2

## Reply by Jeffrey Mao · 2023-10-18 20:52:09 UTC (in reply to Zachary Lowell 0)

@Zachary-Lowell-0 We installed Ros2 Foxy and the voxl-mpa-to-ros2 package. Thank you for the help. Unfortunately when we try to echo the /qvio message we get the following error. This is a problem if we echo from the voxl2 ssh or my computer. Do you know how to resolve this issue? 

```
Cannot echo topic 'qvio', as it contains more than one type: [geometry_msgs/msg/PoseStamped, nav_msgs/msg/Odometry]
```

Additioanlly when trying to stream the QVIO to either my or someone else's computer it crashes with the SDK after a bit.

## Reply by Moderator (ModalAI staff) · 2023-10-19 18:01:39 UTC (in reply to Jeffrey Mao)

@Jeffrey-Mao can you please type voxl-version, share the output, and confirm you are on the latest SDK? As Zach said, this will not work with older SDK

## Reply by Jeffrey Mao · 2023-10-19 18:57:40 UTC (in reply to Moderator)

@Moderator I upgraded ti SDK 1.0.0 as evidenced by the output

--------------------------------------------------------------------------------
system-image: 1.6.2-M0054-14.1a-perf
kernel:       #1 SMP PREEMPT Fri May 19 22:19:33 UTC 2023 4.19.125
--------------------------------------------------------------------------------
hw version:   M0054
--------------------------------------------------------------------------------
voxl-suite:   1.0.0
--------------------------------------------------------------------------------
current IP: wlan0: REDACTED
--------------------------------------------------------------------------------

vvoxl2:~$ voxl-version
--------------------------------------------------------------------------------
system-image: 1.6.2-M0054-14.1a-perf
kernel:       #1 SMP PREEMPT Fri May 19 22:19:33 UTC 2023 4.19.125
--------------------------------------------------------------------------------
hw version:   M0054
--------------------------------------------------------------------------------
voxl-suite:   1.0.0
--------------------------------------------------------------------------------
Packages:
Repo:  http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.0/binary-arm64/
Last Updated: 2023-10-18 19:46:25
List:
	libmodal-cv              0.3.2
	libmodal-exposure        0.0.8
	libmodal-journal         0.2.2
	libmodal-json            0.4.3
	libmodal-pipe            2.8.5
	libqrb5165-io            0.2.0
	libvoxl-cci-direct       0.1.5
	libvoxl-cutils           0.1.1
	mv-voxl                  0.1-r0
	qrb5165-bind             0.1-r0
	qrb5165-dfs-server       0.1.0
	qrb5165-imu-server       0.6.0
	qrb5165-slpi-test-sig    01-r0
	qrb5165-system-tweaks    0.2.2
	qrb5165-tflite           2.8.0-2
	voxl-bind-spektrum       0.1.0
	voxl-camera-calibration  0.4.0
	voxl-camera-server       1.6.2
	voxl-configurator        0.2.7
	voxl-cpu-monitor         0.4.6
	voxl-docker-support      1.2.5
	voxl-eigen3              3.4.0
	voxl-elrs                0.0.7
	voxl-esc                 1.2.2
	voxl-feature-tracker     0.2.3
	voxl-flow-server         0.3.3
	voxl-gphoto2-server      0.0.10
	voxl-jpeg-turbo          2.1.3
	voxl-lepton-server       1.1.2
	voxl-libgphoto2          0.0.4
	voxl-libuvc              1.0.7
	voxl-logger              0.3.4
	voxl-mavcam-manager      0.5.1
	voxl-mavlink             0.1.1
	voxl-mavlink-server      1.2.0
	voxl-modem               1.0.5
	voxl-mongoose            7.7.0-1
	voxl-mpa-to-ros          0.3.6
	voxl-mpa-to-ros2         0.0.1-202310132005
	voxl-mpa-tools           1.0.4
	voxl-opencv              4.5.5-1
	voxl-portal              0.5.9
	voxl-px4                 1.14.0-2.0.34
	voxl-px4-imu-server      0.1.2
	voxl-px4-params          0.1.8
	voxl-qvio-server         0.9.3
	voxl-remote-id           0.0.8
	voxl-slpi-uart-bridge    1.0.1
	voxl-streamer            0.7.1
	voxl-suite               1.0.0
	voxl-tag-detector        0.0.4
	voxl-tflite-server       0.3.1
	voxl-utils               1.3.1
	voxl-uvc-server          0.1.6
	voxl-vision-hub          1.6.6
	voxl2-system-image       1.6.2-r0
	voxl2-wlan               1.0-r0
--------------------------------------------------------------------------------

## Reply by Moderator (ModalAI staff) · 2023-10-20 19:49:35 UTC (in reply to Jeffrey Mao)

@Jeffrey-Mao voxl-mpa-ros2 is on the dev branch and not yet on stable. We expect more comprehensive testing and promotion to stable in the next few weeks. In the meantime, you can experiment with the latest code in the dev repository at your own risk
