ArduRover not changing flight modes. Using Non-GPS nav, ROS2, MAVROS

Hello! I’m working to use an indoor motion capture camera system for localization on my Rover using MAVROS & ROS2 Jazzy. ROS2 & MAVROS are in a docker container on the machine, and are successfully receiving the coordinates over Wi-Fi telemetry and appear to be sending data to the Pixhawk 4 through the /mavros/vision_pose/pose topic (VISION_POSITION_ESTIMATE is constantly updating its parameters except covariance and reset_counter). However, I don’t appear to be able to make use of that data- I’m unable to change into auto or guided modes on Mission Planner (V1.3.82). Also, I don’t see anything on /mavros/local_position/pose.

The goal for the project is to run three autonomous vehicles (two air, one ground) in an indoor space with cameras on them. My rover will detect when two drones are about to collide into each other, and alert one of the drones to land. As such, I’m thinking to run these drones as ROS2 nodes because the software seems scalable, and our lab is moving to do more swarm robotics stuff. Any advice would be very helpful!

External Localization:

OptiTrack Motive v3.0.3

Hardware:

Jetson Nano, w/ Jetpack v4.6.4 (forwads coords to mavros, which sends to pixhawk)

Pixhawk 4 w/ ArduRover V4.6.3

Can you upload a logfile demonstrating the issue? It’ll make it easier to diagnose the issue.

I think I figured it out- I managed to get the mavros/local_position/pose working by setting VISO_TYPE to 1 instead of 2 (MAVLINK) lol, and now I appear to be able to switch between flight modes. I appreciate you checking in though!