Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Collapse
Brand Logo

ModalAI Forum

  1. ModalAI Support Forum
  2. Ask your questions right here!
  3. Failure to Ros2 topic echo messages from VOXL2 on my laptop using mpa-to-ros2

Failure to Ros2 topic echo messages from VOXL2 on my laptop using mpa-to-ros2

Scheduled Pinned Locked Moved Ask your questions right here!
14 Posts 4 Posters 3.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ggiacaloneG Offline
    ggiacaloneG Offline
    ggiacalone
    Contributor
    wrote on last edited by
    #1

    Hello,

    I am currently trying (unsuccessfully) to receive ROS2 messages from the mpa-to-ros2 node running on my voxl2 to my laptop.

    When I open up 2 terminals side by side both sshh to the voxl2, I can ros2 run voxl-mpa-to-ros2 voxl-mpa-to-ros2 in one terminal and I can successfully ros2 topic echo /hires_small_color (or other topics) in the other terminal, but if I open up a terminal from my machine not sshh, I cannot ros2 topic echo anything, nor can I ros2 node list and see anything.

    Both devices are running ROS2 Foxy.

    My laptop is Ubuntu 20.04 and the Voxl2 is SDK 1.1.2.

    Both devices (laptop and voxl2) are 192.168.1.x and they CAN ping each other.

    Both devices have the same export ROS_DOMAIN_ID=x in the ~/.bashrc (I am using 21).

    Given all this I am very stumped. Any help would be greatly appreciated as my company purchased this drone with the intention of using it for ROS2 development.

    Thanks in advance,

    Giovanni

    1 Reply Last reply
    0
    • ModeratorM Offline
      ModeratorM Offline
      Moderator
      ModalAI Team
      wrote on last edited by
      #2

      Have you looked at ROS 2 network troubleshooting guides? https://docs.ros.org/en/rolling/How-To-Guides/Installation-Troubleshooting.html

      ggiacaloneG 1 Reply Last reply
      0
      • ModeratorM Moderator

        Have you looked at ROS 2 network troubleshooting guides? https://docs.ros.org/en/rolling/How-To-Guides/Installation-Troubleshooting.html

        ggiacaloneG Offline
        ggiacaloneG Offline
        ggiacalone
        Contributor
        wrote on last edited by ggiacalone
        #3

        @Moderator Yes I have!

        ros2 multicast sending and receiving between the devices seems to be working okay.

        I tired getting ros2 run demo_nodes_py talker and listeners to work between the devices but this didn't seem to work either. Oddly enough though, I can see all the nodes from the side of the voxl2 but I can't see the nodes running on the voxl2 from my laptop. They just appear to not exist. But from the voxl side I still cant hear the messages being sent from the talker on my laptop.

        I attached two screenshots, the one with three terminals was taken a few moments before the one with four terminals. Maybe this provides helpful information? The terminal in the top left is the one not ssh into the voxl by the way.

        Screenshot from 2024-03-13 08-54-15.png

        Screenshot from 2024-03-13 08-55-00.png

        ggiacaloneG 1 Reply Last reply
        0
        • ggiacaloneG ggiacalone

          @Moderator Yes I have!

          ros2 multicast sending and receiving between the devices seems to be working okay.

          I tired getting ros2 run demo_nodes_py talker and listeners to work between the devices but this didn't seem to work either. Oddly enough though, I can see all the nodes from the side of the voxl2 but I can't see the nodes running on the voxl2 from my laptop. They just appear to not exist. But from the voxl side I still cant hear the messages being sent from the talker on my laptop.

          I attached two screenshots, the one with three terminals was taken a few moments before the one with four terminals. Maybe this provides helpful information? The terminal in the top left is the one not ssh into the voxl by the way.

          Screenshot from 2024-03-13 08-54-15.png

          Screenshot from 2024-03-13 08-55-00.png

          ggiacaloneG Offline
          ggiacaloneG Offline
          ggiacalone
          Contributor
          wrote on last edited by ggiacalone
          #4

          @Moderator I also was able to test this on a network from a Wireless Access Point that works for other members of my team using other laptops and robots so I don't believe it's a network configuration issue either...

          ggiacaloneG 1 Reply Last reply
          0
          • ggiacaloneG ggiacalone

            @Moderator I also was able to test this on a network from a Wireless Access Point that works for other members of my team using other laptops and robots so I don't believe it's a network configuration issue either...

            ggiacaloneG Offline
            ggiacaloneG Offline
            ggiacalone
            Contributor
            wrote on last edited by ggiacalone
            #5

            @Moderator I was also able to pinpoint the issue to the Voxl2 because I am able to run talker and listener nodes to pass messages between my laptop and a teammate's laptop and I was also able to recreate the same communication issues with his laptop and the Voxl2. I am pretty sure this is a Voxl2 issue and not a ros2 issue. Any help on this would be greatly appreciated.

            ggiacaloneG 1 Reply Last reply
            0
            • ggiacaloneG ggiacalone

              @Moderator I was also able to pinpoint the issue to the Voxl2 because I am able to run talker and listener nodes to pass messages between my laptop and a teammate's laptop and I was also able to recreate the same communication issues with his laptop and the Voxl2. I am pretty sure this is a Voxl2 issue and not a ros2 issue. Any help on this would be greatly appreciated.

              ggiacaloneG Offline
              ggiacaloneG Offline
              ggiacalone
              Contributor
              wrote on last edited by
              #6

              @Moderator I also found this result when running a ros2 wtf. I'm not sure if this is a bad sign but It definitely doesn't look good...

              Screenshot from 2024-03-13 11-56-15.png

              I did the following to install ROS2 Foxy on the Voxl2 according to @Zachary-Lowell-0 's response to another user who was having issues with the foxy install as well.

              • sudo apt-get install voxl-ros2-foxy
              • sudo apt-get install voxl-mpa-to-ros2
              • voxl-configure-mpa-to-ros2
              • source /opt/ros/foxy/mpa_to_ros2/install/setup.bash
              • export ROS_HOME=/opt/foxy
              • ros2 run voxl_mpa_to_ros2 voxl_mpa_to_ros2_node

              Would love some support on this. Thanks in advance.

              1 Reply Last reply
              0
              • Zachary Lowell 0Z Offline
                Zachary Lowell 0Z Offline
                Zachary Lowell 0
                ModalAI Team
                wrote on last edited by
                #7

                @ggiacalone You need to blast the ros2 topic through the network - how are you doing this? voxl-mpa-to-ros2 runs internally which is why you can see it on two separate ssh sessions but when you are on a third session and run ros2 topic ofcourse you wont see what the voxl2 is blowing out the system because there is no networking done in voxl-mpa-to-ros2 - by this I mean there is not a node that is connecting to the router and blasting the messages over the dns.

                If you wish to be able to view the ros2 topics on your personal computer outside the voxl2 you need to implement a node or some other code that will take the ros topics onboard and blast them to your router to be distributed over your network (which I do not recommend as ros2 is meant for onboard compute) - I would use something like mqtt for this type of architecture. Please let me know if this answers your questions.

                ggiacaloneG 1 Reply Last reply
                0
                • Zachary Lowell 0Z Zachary Lowell 0

                  @ggiacalone You need to blast the ros2 topic through the network - how are you doing this? voxl-mpa-to-ros2 runs internally which is why you can see it on two separate ssh sessions but when you are on a third session and run ros2 topic ofcourse you wont see what the voxl2 is blowing out the system because there is no networking done in voxl-mpa-to-ros2 - by this I mean there is not a node that is connecting to the router and blasting the messages over the dns.

                  If you wish to be able to view the ros2 topics on your personal computer outside the voxl2 you need to implement a node or some other code that will take the ros topics onboard and blast them to your router to be distributed over your network (which I do not recommend as ros2 is meant for onboard compute) - I would use something like mqtt for this type of architecture. Please let me know if this answers your questions.

                  ggiacaloneG Offline
                  ggiacaloneG Offline
                  ggiacalone
                  Contributor
                  wrote on last edited by ggiacalone
                  #8

                  @Moderator @Zachary-Lowell-0 Thanks for the new info! This totally makes sense. I do wish to still receive the data over ros2 on my laptop. Specifically, I want the time of flight Pointcloud2 messages and the qvio PoseStamped messages for performing mapping with code that will run externally to the Voxl2.

                  Could you provide a link or some reference to code somewhere that achieves this or something similar? I originally understood that the mpa-to-ros2 node would provide me with ros2 messages over the network. (@Zachary-Lowell-0 said in Failure to Ros2 topic echo messages from VOXL2 on my laptop using mpa-to-ros2:

                  If you wish to be able to view the ros2 topics on your personal computer outside the Voxl2 you need to implement a node or some other code that will take the ros topics onboard and blast them to your router to be distributed over your network)

                  Also, why would I not be able to at least do ros2 demo_nodes_py talker and listeners between my laptop and the voxl. Shouldn't that at least work? I couldn't even see the talker node running on the Voxl2 from my laptop. This seems concerning to me.

                  Lastly, Is ROS1 more easily useable compared to ROS2? I need to have certain functionalities working in a short timeframe and I would like to use the option that will realistically work the best.

                  ModeratorM 1 Reply Last reply
                  0
                  • ggiacaloneG ggiacalone

                    @Moderator @Zachary-Lowell-0 Thanks for the new info! This totally makes sense. I do wish to still receive the data over ros2 on my laptop. Specifically, I want the time of flight Pointcloud2 messages and the qvio PoseStamped messages for performing mapping with code that will run externally to the Voxl2.

                    Could you provide a link or some reference to code somewhere that achieves this or something similar? I originally understood that the mpa-to-ros2 node would provide me with ros2 messages over the network. (@Zachary-Lowell-0 said in Failure to Ros2 topic echo messages from VOXL2 on my laptop using mpa-to-ros2:

                    If you wish to be able to view the ros2 topics on your personal computer outside the Voxl2 you need to implement a node or some other code that will take the ros topics onboard and blast them to your router to be distributed over your network)

                    Also, why would I not be able to at least do ros2 demo_nodes_py talker and listeners between my laptop and the voxl. Shouldn't that at least work? I couldn't even see the talker node running on the Voxl2 from my laptop. This seems concerning to me.

                    Lastly, Is ROS1 more easily useable compared to ROS2? I need to have certain functionalities working in a short timeframe and I would like to use the option that will realistically work the best.

                    ModeratorM Offline
                    ModeratorM Offline
                    Moderator
                    ModalAI Team
                    wrote on last edited by
                    #9

                    @ggiacalone VOXL 2 is just running Debian linux, there's nothing really special going on that would make it behave any different than other computers

                    Under ROS 2 is DDS, which is a networking protocol. You mention "ros2 multicast sending and receiving between the devices seems to be working okay." Which two devices? If it's the VOXL 2 and your laptop, it seems that they are communicating over ROS 2 and the network.

                    The node is publishing topics, what does ros2 topic list output?

                    Here's an article that might help: https://roboticsbackend.com/ros2-topic-cmd-line-tool-debug-ros2-topics-from-the-terminal/

                    ggiacaloneG 1 Reply Last reply
                    0
                    • ModeratorM Moderator

                      @ggiacalone VOXL 2 is just running Debian linux, there's nothing really special going on that would make it behave any different than other computers

                      Under ROS 2 is DDS, which is a networking protocol. You mention "ros2 multicast sending and receiving between the devices seems to be working okay." Which two devices? If it's the VOXL 2 and your laptop, it seems that they are communicating over ROS 2 and the network.

                      The node is publishing topics, what does ros2 topic list output?

                      Here's an article that might help: https://roboticsbackend.com/ros2-topic-cmd-line-tool-debug-ros2-topics-from-the-terminal/

                      ggiacaloneG Offline
                      ggiacaloneG Offline
                      ggiacalone
                      Contributor
                      wrote on last edited by
                      #10

                      @Moderator

                      Yes, multicast works between my laptop and the Voxl2.

                      However, when I run the mpa-to-ros2 node on the Voxl2, and then I do a ros2 topic list on my laptop there is no sign of the topics or messages being published over the network.

                      Here is a demo I just ran:

                      Step 1, Run mpa-to-ros2 on the Voxl2.

                      Screenshot from 2024-03-14 07-51-45.png

                      Step 2, do ros2 topic list on my machine and see nothing.

                      Screenshot from 2024-03-14 07-58-02.png

                      Step 3, confirm that the ros2 topics actually exist on the Voxl2 and that the mpa-to-ros2 node did not fail.

                      Screenshot from 2024-03-14 07-59-01.png

                      I just want access to the topics over ros via my laptop, shouldn't be so complicated. I'm still confused about how ros could be publishing topics and messages, however they are unreachable over the network despite mutlicast working, no firewalls being set up, correct ROS_DOMAIN_IDs set in the bashrc, etc. Could you help clarify on this and provide an example of code that helps to broadcast these topics and messages? @Zachary-Lowell-0

                      ModeratorM dleeD 2 Replies Last reply
                      0
                      • ggiacaloneG ggiacalone

                        @Moderator

                        Yes, multicast works between my laptop and the Voxl2.

                        However, when I run the mpa-to-ros2 node on the Voxl2, and then I do a ros2 topic list on my laptop there is no sign of the topics or messages being published over the network.

                        Here is a demo I just ran:

                        Step 1, Run mpa-to-ros2 on the Voxl2.

                        Screenshot from 2024-03-14 07-51-45.png

                        Step 2, do ros2 topic list on my machine and see nothing.

                        Screenshot from 2024-03-14 07-58-02.png

                        Step 3, confirm that the ros2 topics actually exist on the Voxl2 and that the mpa-to-ros2 node did not fail.

                        Screenshot from 2024-03-14 07-59-01.png

                        I just want access to the topics over ros via my laptop, shouldn't be so complicated. I'm still confused about how ros could be publishing topics and messages, however they are unreachable over the network despite mutlicast working, no firewalls being set up, correct ROS_DOMAIN_IDs set in the bashrc, etc. Could you help clarify on this and provide an example of code that helps to broadcast these topics and messages? @Zachary-Lowell-0

                        ModeratorM Offline
                        ModeratorM Offline
                        Moderator
                        ModalAI Team
                        wrote on last edited by
                        #11

                        @ggiacalone

                        See this document regarding configuring your environment
                        https://docs.ros.org/en/foxy/Tutorials/Beginner-CLI-Tools/Configuring-ROS2-Environment.html

                        What does

                        echo $ROS_LOCALHOST_ONLY
                        

                        provide?

                        1 Reply Last reply
                        0
                        • ggiacaloneG ggiacalone

                          @Moderator

                          Yes, multicast works between my laptop and the Voxl2.

                          However, when I run the mpa-to-ros2 node on the Voxl2, and then I do a ros2 topic list on my laptop there is no sign of the topics or messages being published over the network.

                          Here is a demo I just ran:

                          Step 1, Run mpa-to-ros2 on the Voxl2.

                          Screenshot from 2024-03-14 07-51-45.png

                          Step 2, do ros2 topic list on my machine and see nothing.

                          Screenshot from 2024-03-14 07-58-02.png

                          Step 3, confirm that the ros2 topics actually exist on the Voxl2 and that the mpa-to-ros2 node did not fail.

                          Screenshot from 2024-03-14 07-59-01.png

                          I just want access to the topics over ros via my laptop, shouldn't be so complicated. I'm still confused about how ros could be publishing topics and messages, however they are unreachable over the network despite mutlicast working, no firewalls being set up, correct ROS_DOMAIN_IDs set in the bashrc, etc. Could you help clarify on this and provide an example of code that helps to broadcast these topics and messages? @Zachary-Lowell-0

                          dleeD Offline
                          dleeD Offline
                          dlee
                          Regular
                          wrote on last edited by
                          #12

                          @ggiacalone Did you solve this problem? I have same problem on my drone and laptop.

                          ggiacaloneG 1 Reply Last reply
                          0
                          • dleeD dlee

                            @ggiacalone Did you solve this problem? I have same problem on my drone and laptop.

                            ggiacaloneG Offline
                            ggiacaloneG Offline
                            ggiacalone
                            Contributor
                            wrote on last edited by
                            #13

                            @dlee Not exactly... I ended up switching to ROS1 and everything seems to be working just fine now. I still don't exactly understand why the topics were not being broadcasted over the network. I have been developing with ROS for just a couple years now but this is never something I have ever come across. I'm a little upset there was less help here / support for ROS2 given that the VOXL2 board is advertised as supporting ROS2, but perhaps we're still just missing something? Regardless EOL for ROS1 is still not for quite some time now and I suspect that it will continue to be supported for a while after as well so I don't thing developing in ROS1 is a "bad bet" necessarily. Open to hear thoughts on this from others as well though, I'm always learning and trying to increase my understanding!

                            dleeD 1 Reply Last reply
                            0
                            • ggiacaloneG ggiacalone

                              @dlee Not exactly... I ended up switching to ROS1 and everything seems to be working just fine now. I still don't exactly understand why the topics were not being broadcasted over the network. I have been developing with ROS for just a couple years now but this is never something I have ever come across. I'm a little upset there was less help here / support for ROS2 given that the VOXL2 board is advertised as supporting ROS2, but perhaps we're still just missing something? Regardless EOL for ROS1 is still not for quite some time now and I suspect that it will continue to be supported for a while after as well so I don't thing developing in ROS1 is a "bad bet" necessarily. Open to hear thoughts on this from others as well though, I'm always learning and trying to increase my understanding!

                              dleeD Offline
                              dleeD Offline
                              dlee
                              Regular
                              wrote on last edited by
                              #14

                              @ggiacalone I found something. When I start echoing a topic in voxl2, that topic (echoing) shows up on my laptop. I think we need to figure out the ros2 configuration of voxl.

                              1 Reply Last reply
                              0

                              Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                              Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                              With your input, this post could be even better 💗

                              Register Login
                              Reply
                              • Reply as topic
                              Log in to reply
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes


                              ModalAI
                              Categories Recent Tags ModalAI.com Docs
                              © 2026 ModalAI® · Accelerating autonomy for smaller, smarter, safer drones · Powered by NodeBB
                              • Login

                              • Don't have an account? Register

                              • Login or register to search.
                              • First post
                                Last post
                              0
                              • Categories
                              • Recent
                              • Tags
                              • Popular
                              • Users
                              • Groups