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

ModalAI Forum

  1. ModalAI Support Forum
  2. Software Development
  3. ROS
  4. Issue with ROS2 set-up, Deserialization of UORB Topics

Issue with ROS2 set-up, Deserialization of UORB Topics

Scheduled Pinned Locked Moved ROS
17 Posts 5 Posters 4.1k Views 1 Watching
  • 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.
  • Zachary Lowell 0Z Zachary Lowell 0

    Ok @jmltt I fixed it - there was a giant conflict with versioning on px4_msgs and px4_ros_coms which was fun to deal with 🙂 - anyways I have a branch waiting for approval to be merged into the most recent nightly and you can then pull the dev from the apt repository when it gets merged in - until then feel free to rebuild voxl-mpa-to-ros2 deb and install on your voxl2 from the branch zach/submodule update: https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2/-/tree/zach/submodule_update

    Cheers!
    Zach

    J Offline
    J Offline
    jmltt
    Regular
    wrote on last edited by
    #8

    @Zachary-Lowell-0 Awesome, thanks for fixing this I really appreciate it!

    T 1 Reply Last reply
    0
    • J jmltt

      @Zachary-Lowell-0 Awesome, thanks for fixing this I really appreciate it!

      T Offline
      T Offline
      tahawaru
      Regular
      wrote on last edited by
      #9

      @Zachary-Lowell-0

      I'm following the tutorial at https://docs.modalai.com/building-ros2-nodes/
      I dont get the 's' for 'px4_ros_coms'.
      Instead, I have 'px4_ros_com' which doesn't have an executable. So I get:

      rb5:~/colcon_ws$ ros2 run px4_ros_com px4_ros_com
      No executable found

      Any help on this is welcome.

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

        Hi @tahawaru looks like its just a type on the documentation I will update it:

        Please just try running ros2 run px4_ros_com px4_ros_com - no s anywhere in site. Note this package is fully managed by PX4 - not modalAI and can be followed here: https://github.com/PX4/px4_ros_com

        LMK if this helps,
        Zach

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

          Hi @tahawaru looks like its just a type on the documentation I will update it:

          Please just try running ros2 run px4_ros_com px4_ros_com - no s anywhere in site. Note this package is fully managed by PX4 - not modalAI and can be followed here: https://github.com/PX4/px4_ros_com

          LMK if this helps,
          Zach

          T Offline
          T Offline
          tahawaru
          Regular
          wrote on last edited by
          #11

          @Zachary-Lowell-0

          Still getting the same issue

          rb5:~/colcon_ws$ ros2 run px4_ros_com px4_ros_com
          No executable found

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

            @tahawaru said in Issue with ROS2 set-up, Deserialization of UORB Topics:

            No executable found

            Reply

            @tahawaru why are you trying to run px4_ros_com's package in general? The package pertinent to voxl-mpa-to-ros2 is voxl_mpa_to_ros2 - what is it exactly you are trying to do?

            T 2 Replies Last reply
            0
            • Zachary Lowell 0Z Zachary Lowell 0

              @tahawaru said in Issue with ROS2 set-up, Deserialization of UORB Topics:

              No executable found

              Reply

              @tahawaru why are you trying to run px4_ros_com's package in general? The package pertinent to voxl-mpa-to-ros2 is voxl_mpa_to_ros2 - what is it exactly you are trying to do?

              T Offline
              T Offline
              tahawaru
              Regular
              wrote on last edited by
              #13

              @Zachary-Lowell-0

              I'm following this content https://docs.modalai.com/building-ros2-nodes/

              After sourcing, and getting the "no executables found" error, I tried
              rb5:~/colcon_ws$ ros2 pkg executables px4_ros_com
              px4_ros_com debug_vect_advertiser
              px4_ros_com offboard_control
              px4_ros_com sensor_combined_listener
              px4_ros_com vehicle_gps_position_listener

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

                @tahawaru said in Issue with ROS2 set-up, Deserialization of UORB Topics:

                No executable found

                Reply

                @tahawaru why are you trying to run px4_ros_com's package in general? The package pertinent to voxl-mpa-to-ros2 is voxl_mpa_to_ros2 - what is it exactly you are trying to do?

                T Offline
                T Offline
                tahawaru
                Regular
                wrote on last edited by
                #14

                @Zachary-Lowell-0

                I'm having a similar error from running a ros2 command

                rb5:~/colcon_ws$ ros2 run voxl_offboard_figure8 voxl_offboard_figure8
                [INFO] [1723134293.283379373] [offboard_figure8_node]: Offboard Figure 8 Node Alive!
                2024-08-08 16:24:53.442 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:53.950 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                [INFO] [1723134294.428290964] [offboard_figure8_node]: Switching to offboard mode
                [INFO] [1723134294.428816835] [offboard_figure8_node]: Arm command sent
                2024-08-08 16:24:54.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:54.951 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:55.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:55.961 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:56.461 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:56.971 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:57.482 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:57.988 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:58.488 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:58.998 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:24:59.507 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:25:00.016 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                2024-08-08 16:25:00.528 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change

                My Rb5 specs:
                rb5:~/colcon_ws$ voxl-version

                system-image: 1.7.1-M0052-14.1a-perf-nightly-20231025
                kernel: #1 SMP PREEMPT Thu Oct 26 05:24:02 UTC 2023 4.19.125

                hw version: M0052

                voxl-suite:

                Packages:
                Repo: http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.1/binary-arm64/
                Last Updated: 2024-07-19 09:01:43
                List:
                libmodal-cv 0.4.0
                libmodal-exposure 0.1.0
                libmodal-journal 0.2.2
                libmodal-json 0.4.3
                libmodal-pipe 2.9.2
                libqrb5165-io 0.4.2
                libvoxl-cci-direct 0.2.1
                libvoxl-cutils 0.1.1
                mv-voxl 0.1-r0
                qrb5165-bind 0.1-r0
                ...............
                voxl-mavlink 0.1.1
                voxl-mavlink-server 1.3.2
                voxl-microdds-agent 2.4.1-0
                voxl-modem 1.0.8
                voxl-mongoose 7.7.0-1
                voxl-mpa-to-ros 0.3.7
                voxl-mpa-to-ros2 0.0.4
                voxl-mpa-tools 1.1.3
                voxl-neopixel-manager 0.0.3
                voxl-opencv 4.5.5-2
                voxl-portal 0.6.3
                voxl-px4 1.14.0-2.0.63
                voxl-px4-imu-server 0.1.2
                voxl-px4-params 0.3.3
                voxl-qvio-server 1.0.0
                voxl-remote-id 0.0.9
                voxl-ros2-foxy 0.0.1
                voxl-streamer 0.7.4
                voxl-tag-detector 0.0.4
                voxl-tflite-server 0.3.1
                voxl-utils 1.3.3
                voxl-uvc-server 0.1.6
                voxl-vision-hub 1.7.3

                There is no response from the drone.

                T 1 Reply Last reply
                0
                • T tahawaru

                  @Zachary-Lowell-0

                  I'm having a similar error from running a ros2 command

                  rb5:~/colcon_ws$ ros2 run voxl_offboard_figure8 voxl_offboard_figure8
                  [INFO] [1723134293.283379373] [offboard_figure8_node]: Offboard Figure 8 Node Alive!
                  2024-08-08 16:24:53.442 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:53.950 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  [INFO] [1723134294.428290964] [offboard_figure8_node]: Switching to offboard mode
                  [INFO] [1723134294.428816835] [offboard_figure8_node]: Arm command sent
                  2024-08-08 16:24:54.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:54.951 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:55.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:55.961 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:56.461 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:56.971 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:57.482 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:57.988 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:58.488 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:58.998 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:59.507 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:25:00.016 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:25:00.528 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change

                  My Rb5 specs:
                  rb5:~/colcon_ws$ voxl-version

                  system-image: 1.7.1-M0052-14.1a-perf-nightly-20231025
                  kernel: #1 SMP PREEMPT Thu Oct 26 05:24:02 UTC 2023 4.19.125

                  hw version: M0052

                  voxl-suite:

                  Packages:
                  Repo: http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.1/binary-arm64/
                  Last Updated: 2024-07-19 09:01:43
                  List:
                  libmodal-cv 0.4.0
                  libmodal-exposure 0.1.0
                  libmodal-journal 0.2.2
                  libmodal-json 0.4.3
                  libmodal-pipe 2.9.2
                  libqrb5165-io 0.4.2
                  libvoxl-cci-direct 0.2.1
                  libvoxl-cutils 0.1.1
                  mv-voxl 0.1-r0
                  qrb5165-bind 0.1-r0
                  ...............
                  voxl-mavlink 0.1.1
                  voxl-mavlink-server 1.3.2
                  voxl-microdds-agent 2.4.1-0
                  voxl-modem 1.0.8
                  voxl-mongoose 7.7.0-1
                  voxl-mpa-to-ros 0.3.7
                  voxl-mpa-to-ros2 0.0.4
                  voxl-mpa-tools 1.1.3
                  voxl-neopixel-manager 0.0.3
                  voxl-opencv 4.5.5-2
                  voxl-portal 0.6.3
                  voxl-px4 1.14.0-2.0.63
                  voxl-px4-imu-server 0.1.2
                  voxl-px4-params 0.3.3
                  voxl-qvio-server 1.0.0
                  voxl-remote-id 0.0.9
                  voxl-ros2-foxy 0.0.1
                  voxl-streamer 0.7.4
                  voxl-tag-detector 0.0.4
                  voxl-tflite-server 0.3.1
                  voxl-utils 1.3.3
                  voxl-uvc-server 0.1.6
                  voxl-vision-hub 1.7.3

                  There is no response from the drone.

                  T Offline
                  T Offline
                  tahawaru
                  Regular
                  wrote on last edited by
                  #15

                  @tom
                  Hi Tom,
                  I have downloaded the src files from https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2/-/tree/master/colcon_ws/src?ref_type=heads
                  Then I build with colcon build
                  The command "ros2 run voxl_offboard_figure8 voxl_offboard_figure8 " outputs the following while the rb5 is not responding at all
                  [INFO] [1727710160.087447748] [offboard_figure8_node]: Offboard Figure 8 Node Alive!
                  [INFO] [1727710161.215068375] [offboard_figure8_node]: Switching to offboard mode
                  [INFO] [1727710161.225198835] [offboard_figure8_node]: Arm command sent
                  [INFO] [1727710170.118029165] [offboard_figure8_node]: Doing figure 8 now
                  [INFO] [1727710183.178457539] [offboard_figure8_node]: Switching to land mode

                  Can someone update the short introduction to ROS2 usage with the rb5? Please.

                  @tahawaru said in Issue with ROS2 set-up, Deserialization of UORB Topics:

                  @Zachary-Lowell-0

                  I'm having a similar error from running a ros2 command

                  rb5:~/colcon_ws$ ros2 run voxl_offboard_figure8 voxl_offboard_figure8
                  [INFO] [1723134293.283379373] [offboard_figure8_node]: Offboard Figure 8 Node Alive!
                  2024-08-08 16:24:53.442 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:53.950 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  [INFO] [1723134294.428290964] [offboard_figure8_node]: Switching to offboard mode
                  [INFO] [1723134294.428816835] [offboard_figure8_node]: Arm command sent
                  2024-08-08 16:24:54.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:54.951 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:55.452 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:55.961 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:56.461 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:56.971 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:57.482 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:57.988 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:58.488 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:58.998 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:24:59.507 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:25:00.016 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change
                  2024-08-08 16:25:00.528 [SUBSCRIBER Error] Deserialization of data failed -> Function deserialize_change

                  My Rb5 specs:
                  rb5:~/colcon_ws$ voxl-version

                  system-image: 1.7.1-M0052-14.1a-perf-nightly-20231025
                  kernel: #1 SMP PREEMPT Thu Oct 26 05:24:02 UTC 2023 4.19.125

                  hw version: M0052

                  voxl-suite:

                  Packages:
                  Repo: http://voxl-packages.modalai.com/ ./dists/qrb5165/sdk-1.1/binary-arm64/
                  Last Updated: 2024-07-19 09:01:43
                  List:
                  libmodal-cv 0.4.0
                  libmodal-exposure 0.1.0
                  libmodal-journal 0.2.2
                  libmodal-json 0.4.3
                  libmodal-pipe 2.9.2
                  libqrb5165-io 0.4.2
                  libvoxl-cci-direct 0.2.1
                  libvoxl-cutils 0.1.1
                  mv-voxl 0.1-r0
                  qrb5165-bind 0.1-r0
                  ...............
                  voxl-mavlink 0.1.1
                  voxl-mavlink-server 1.3.2
                  voxl-microdds-agent 2.4.1-0
                  voxl-modem 1.0.8
                  voxl-mongoose 7.7.0-1
                  voxl-mpa-to-ros 0.3.7
                  voxl-mpa-to-ros2 0.0.4
                  voxl-mpa-tools 1.1.3
                  voxl-neopixel-manager 0.0.3
                  voxl-opencv 4.5.5-2
                  voxl-portal 0.6.3
                  voxl-px4 1.14.0-2.0.63
                  voxl-px4-imu-server 0.1.2
                  voxl-px4-params 0.3.3
                  voxl-qvio-server 1.0.0
                  voxl-remote-id 0.0.9
                  voxl-ros2-foxy 0.0.1
                  voxl-streamer 0.7.4
                  voxl-tag-detector 0.0.4
                  voxl-tflite-server 0.3.1
                  voxl-utils 1.3.3
                  voxl-uvc-server 0.1.6
                  voxl-vision-hub 1.7.3

                  There is no response from the drone.

                  1 Reply Last reply
                  0
                  • B Offline
                    B Offline
                    brahim
                    Contributor
                    wrote on last edited by
                    #16

                    @tahawaru there are a few intermediate steps to get ros2 offboard control:

                    • disable offboard_mode (set to false) in voxl-vision-hub.conf line 237: "offboard_mode": "false"

                    • Ensure voxl-microdds-agent is running. You can check by running systemctl status voxl-microdds-agent

                    • Once these steps are complete, and you have the ros2 offboard fig 8 running, you should be able to echo the offboard control mode info either in an adb shell or mavlink console:

                    In adb you can use the command px4-listener offboard_control_mode which should return this

                     offboard_control_mode
                        timestamp: 314055050 (0.031338 seconds ago)
                        position: True
                        velocity: False
                        acceleration: False
                        attitude: False
                        body_rate: False
                        actuator: False
                    
                    • A way to verify the figure 8 ros2 node is sending setpoints to px4 is to echo trajectory setpoints: ros2 topic echo /fmu/in/trajectory_setpoint
                    • When you kill the ros2 offboard node, you can echo that offboard mode status again and the timestamp should go stale and no longer update.
                    T 1 Reply Last reply
                    0
                    • B brahim

                      @tahawaru there are a few intermediate steps to get ros2 offboard control:

                      • disable offboard_mode (set to false) in voxl-vision-hub.conf line 237: "offboard_mode": "false"

                      • Ensure voxl-microdds-agent is running. You can check by running systemctl status voxl-microdds-agent

                      • Once these steps are complete, and you have the ros2 offboard fig 8 running, you should be able to echo the offboard control mode info either in an adb shell or mavlink console:

                      In adb you can use the command px4-listener offboard_control_mode which should return this

                       offboard_control_mode
                          timestamp: 314055050 (0.031338 seconds ago)
                          position: True
                          velocity: False
                          acceleration: False
                          attitude: False
                          body_rate: False
                          actuator: False
                      
                      • A way to verify the figure 8 ros2 node is sending setpoints to px4 is to echo trajectory setpoints: ros2 topic echo /fmu/in/trajectory_setpoint
                      • When you kill the ros2 offboard node, you can echo that offboard mode status again and the timestamp should go stale and no longer update.
                      T Offline
                      T Offline
                      tahawaru
                      Regular
                      wrote on last edited by
                      #17

                      @brahim
                      @tom

                      Hi and sorry for the delayed response.

                      Main result : no response from the rb5
                      Comments: the offboard code example in cpp is running in Gazebo but I cannot get the drone to arm via ROS2 run px4_ros_com offboard_control.

                      This is the output from my terminal
                      ~/ros2_ws$ ros2 run px4_ros_com offboard_control
                      Starting offboard control node...
                      [INFO] [1729601421.989530505] [offboard_control]: Arm command send

                      Notes: The offboard setting is "off" not "false" on the voxl-vision-hub.conf.

                      Do you have a recent tutorial on how to use ROS2 with the rb5?

                      Best wishes,

                      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