Hello everyone,
Project Goal:
I am working on a fully autonomous indoor drone project where GPS is not available. My goal is to use the ZED 2i stereo camera for vision-based odometry and position estimation, and to integrate this with ArduPilot (Pixhawk 2.4.8) for non-GPS navigation.
Current Hardware/Software Setup:
- ZED 2i Stereo Camera (downward facing)
- Jetson Orin Nano 8GB (companion computer)
- Pixhawk 2.4.8 (flight controller running ArduPilot)
- ROS 2 Humble running on Jetson
- MAVROS for communication between ROS and ArduPilot
- ZED ROS2 Wrapper for camera integration
What I’ve Done So Far:
- ZED 2i is publishing pose data via
/zed2i/zed_node/pose
- MAVROS is set up and connected (communication between Jetson and Pixhawk is working)
- Attempting to relay ZED odometry/velocity to
/mavros/vision_pose/pose
and/mavros/vision_speed/speed_twist
What I Need Help With:
- Best Practices:
How should I correctly fuse the ZED2i VIO data with ArduPilot for reliable position control?
- Is publishing to
/mavros/vision_pose/pose
and/mavros/vision_speed/speed_twist
sufficient? - What parameters must be set in ArduPilot (EKF3, VISO, etc.) for external vision navigation?
- Should I use only ZED2i, or combine with optical flow and lidar for better accuracy?
- Frame Alignment:
What is the correct coordinate frame and orientation setup for the ZED2i camera with respect to the drone and ArduPilot’s NED convention? - Parameter Tuning:
- Which specific parameters need to be tuned on both ArduPilot and MAVROS for vision-only navigation?
- Any recommended values for EKF, vision fusion, and VISO parameters?
- Common Issues:
- How to debug if pose/velocity data is not being accepted/fused by ArduPilot?
- Any troubleshooting tips for zero velocity readings or unstable position hold?
- Reference Resources:
- Are there any example projects or detailed documentation for using ZED2i as a VIO source with ArduPilot (similar to Intel T265 guides)?
Any help, suggestions, working examples, or relevant documentation links would be greatly appreciated!
Thanks in advance for your support.