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

ModalAI Forum

  1. ModalAI Support Forum
  2. General Questions
  3. ROS2 errors on VOXL2

ROS2 errors on VOXL2

Scheduled Pinned Locked Moved Unsolved General Questions
3 Posts 2 Posters 729 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.
  • Gary HolmgrenG Offline
    Gary HolmgrenG Offline
    Gary Holmgren
    Regular
    wrote on last edited by
    #1

    I installed ROS2 Foxy on my Voxl2 using the instructions

    -sudo apt-get install voxl-ros2-foxy
    -sudo apt-get install voxl-microdds-agent
    -sudo apt-get install voxl-mpa-to-ros2
    -voxl-configure-mpa-to-ros2
    -source /opt/ros/foxy/setup.bash
    -export ROS_HOME=/opt/ros/foxy

    All seems to be okay but when I followed the ModalAI tutorial I get the following errors.

    voxl2:/$ cd
    voxl2:~$ mkdir -p colcon_ws/src
    voxl2:~$ cd colcon_ws
    voxl2:~/colcon_ws$ cd src
    voxl2:~/colcon_ws/src$ git clone https://github.com/PX4/px4_ros_com --recursive
    Cloning into 'px4_ros_com'...
    remote: Enumerating objects: 2288, done.
    remote: Counting objects: 100% (162/162), done.
    remote: Compressing objects: 100% (47/47), done.
    remote: Total 2288 (delta 128), reused 115 (delta 115), pack-reused 2126 (from 1)
    Receiving objects: 100% (2288/2288), 608.87 KiB | 3.60 MiB/s, done.
    Resolving deltas: 100% (1455/1455), done.
    voxl2:~/colcon_ws/src$ git clone https://github.com/PX4/px4_msgs --recursive
    Cloning into 'px4_msgs'...
    remote: Enumerating objects: 3283, done.
    remote: Counting objects: 100% (1092/1092), done.
    remote: Compressing objects: 100% (268/268), done.
    remote: Total 3283 (delta 961), reused 829 (delta 822), pack-reused 2191 (from 3)
    Receiving objects: 100% (3283/3283), 607.13 KiB | 3.92 MiB/s, done.
    Resolving deltas: 100% (2005/2005), done.
    voxl2:~/colcon_ws/src$ cd ../
    voxl2:~/colcon_ws$ colcon build
    Starting >>> px4_msgs
    --- stderr: px4_msgs                         
    CMake Error at /opt/ros/foxy/share/rosidl_adapter/cmake/rosidl_adapt_interfaces.cmake:60 (message):
      execute_process(/usr/bin/python3 -m rosidl_adapter --package-name px4_msgs
      --arguments-file
      /home/root/colcon_ws/build/px4_msgs/rosidl_adapter__arguments__px4_msgs.json
      --output-dir /home/root/colcon_ws/build/px4_msgs/rosidl_adapter/px4_msgs
      --output-file
      /home/root/colcon_ws/build/px4_msgs/rosidl_adapter/px4_msgs.idls) returned
      error code 1:
    
      AttributeError processing template 'msg.idl.em'
    
      Traceback (most recent call last):
    
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/resource/__init__.py", line 48, in evaluate_template
          _interpreter = em.Interpreter(
    
      AttributeError: module 'em' has no attribute 'Interpreter'
    
      
    
      During handling of the above exception, another exception occurred:
    
      
    
      Traceback (most recent call last):
    
        File "/usr/lib/python3.6/runpy.py", line 193, in _run_module_as_main
          "__main__", mod_spec)
        File "/usr/lib/python3.6/runpy.py", line 85, in _run_code
          exec(code, run_globals)
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/__main__.py", line 19, in <module>
          sys.exit(main())
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/main.py", line 55, in main
          pathlib.Path(relative_path), output_dir)
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/__init__.py", line 20, in convert_to_idl
          package_dir, package_name, interface_file, output_dir / 'msg')
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/msg/__init__.py", line 39, in convert_msg_to_idl
          expand_template('msg.idl.em', data, output_file, encoding='iso-8859-1')
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/resource/__init__.py", line 23, in expand_template
          content = evaluate_template(template_name, data)
        File "/opt/ros/foxy/lib/python3.6/site-packages/rosidl_adapter/resource/__init__.py", line 69, in evaluate_template
          _interpreter.shutdown()
    
      AttributeError: 'NoneType' object has no attribute 'shutdown'
    
    Call Stack (most recent call first):
      /opt/ros/foxy/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:130 (rosidl_adapt_interfaces)
      CMakeLists.txt:28 (rosidl_generate_interfaces)
    
    
    ---
    Failed   <<< px4_msgs [4.33s, exited with code 1]
                                    
    Summary: 0 packages finished [4.71s]
      1 package failed: px4_msgs
      1 package had stderr output: px4_msgs
      1 package not processed
    

    Not sure what exactly here is causing the failure. Has anyone else had trouble building this tutorial?

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

      @Gary-Holmgren said in ROS2 errors on VOXL2:

      -source /opt/ros/foxy/setup.bash

      Hey @Gary-Holmgren! So this is an issue with a conflict in the emPY library - it should have been updated in the most recent SDK release - however the solution programmatically is the following:

      python3 -m pip uninstall -y empy
      python3 -m pip install empy==3.3.4

      https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2/-/blob/dev/scripts/voxl-configure-mpa-to-ros2?ref_type=heads#L18

      Cheers!
      Zach

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

        @Gary-Holmgren said in ROS2 errors on VOXL2:

        -source /opt/ros/foxy/setup.bash

        Hey @Gary-Holmgren! So this is an issue with a conflict in the emPY library - it should have been updated in the most recent SDK release - however the solution programmatically is the following:

        python3 -m pip uninstall -y empy
        python3 -m pip install empy==3.3.4

        https://gitlab.com/voxl-public/voxl-sdk/utilities/voxl-mpa-to-ros2/-/blob/dev/scripts/voxl-configure-mpa-to-ros2?ref_type=heads#L18

        Cheers!
        Zach

        Gary HolmgrenG Offline
        Gary HolmgrenG Offline
        Gary Holmgren
        Regular
        wrote on last edited by
        #3

        @Zachary-Lowell-0 Yes this did the trick, thankyou!

        1 Reply Last reply
        0

        Reading along? Create a free ModalAI Forum account to join in.

        With an account you can reply, ask your own question, get an email when a ModalAI engineer answers, and mark the reply that solved it. Your place in each thread is saved between visits.

        Questions about VOXL, Flight Core, ESCs and ModalAI drones are answered here by the engineers who build them.

        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