VISION_POSITIN_ESTIMATE in sitl with plane

I want to simulate visual odometry system in sitl with plane. I fly in auto mode, I change ekf source to external ekf and disable the gps in flight params. before doing that I send vision_position_estimate messages in mavlink with some python script. So my expectation is when I change params, my external nav params going in ekf3 and gps coordinates act like in my vision_position_estimate message. But when I change the ekf and gps enable params, plane going somewhere in asia and then act like in my command. I believe that occurs because of my initial ned coordinate doesnt start with 0,0,0. When I change ekf and gps params I saw ekf3 initial pos ned = 0.7 0.7 0.7 or some random variables in message section. any info about that would be great.


AFAIK , Vision_Position has not been implemented in plane…

I want to handle myself. Do you have any suggestions ?

VisualOdomotry is not vehicle specific, so should work in all vehicle types. It used to be tied to copter, but was moved to AP_Vehicle in April 2020 by Randy
@DollyTheSheep it should work the same way in plane as copter, with the same EK3_SRC and VISO_TYPE parameters.

Thanks @tridge
I cannot find any references on implementing this on a plane, I am curious how it would work in real life.

I guess the most difficult part is to get a Visual Odometry system that can work on a plane?

yes, the PR I did today for the ModalAI VOXL system is promising I think. I’m wondering if I can somehow attach it to one of my planes :slight_smile:
There is also the EQF VIO that I’m working on with ANU (see the talk at the dev conference this year)

1 Like

That’s really interesting, are you using the VOXL Fly Deck or a stripped down system ?

I’m using the m500 pre-built vehicle:

I didn’t need any calibration, just the sw changes in the PR, and it works very nicely

1 Like