Hi all!
After a while I feel kind of lonely in the journey of trying to fly a drone using a MOCAP system. with only using fastRTPS and ROS2 Foxy. Currently I can publish and subscribe to the real PX4 over UART as demonstrated in this: https://github.com/PX4/px4_ros_com/issues/38 which I got it to work.
I can listen to sensor_combined
and vehicle_odometry
. Also I can advertise the debug_vect
and confirm that it receives by using the listener of uorb topics on the px4 through the Mavlink shell.
Currently I am trying to send a simple pose to the px4 using vehicle_visual_odometry
(VehicleVisualOdometry_PubSupTopic) since vehicle_mocap_odometry
(VehicleMocapOdometry_PubSubTopic) is not working with ekf2 according to documentation here: https://dev.px4.io/master/en/ros/external_position_estimation.html -> " EKF2 only subscribes to vehicle_visual_odometry
topics and can hence only process the first two messages (a MoCap system must generate these messages to work with EKF2).".
Also I confirmed vehicle_visual_odometry
is being received properly by the px4 using uorb topic listener.
When I evaluate vehicle_local_position
nothing is happening with the given input. My EKF_AID_MASK= 24 (https://docs.px4.io/master/en/advanced_config/tuning_the_ecl_ekf.html)
My questions:
- How to sync the timestamps properly?
- How do I make the px4 blindly use the MOCAP/OptiTrack system, since its very accurate (ofcourse EKF’ing with IMU-data would be optimal)
Please help, I feel this topic under PX4 software hasn’t been used a lot and I am trying to make it work with very little support. Since ROS2 will be a big part in the future of PX4 I think its most important that we can help each other to solve this problem for the best of both great developers!
Best regards,
Edwin van Emmerik