You will find attached log for simple viso test using voxlcam and moving drone by hand.
As you can see, just when started, after “set ekf origin there” if we slide from front to back, from left to right and from bottom to top, the data sent by VOXL match well with the EKF forecast (pos and vel). and the position seen on mission planner match perfectly the reality.
On the other hand, as soon as we turn on our Z axis, the orientation works well but an error appears on the speeds, which do not correspond at all to the position sent.
It seems to me that there is a big mistake in the ardupilot code.
voxl sends positions and velocitys relative to the EKF origin point (which is earth fixed frame)
while ardupilot expects from voxl positions relative to the ekf origin (earth fixed frame) but speeds relative to drone’s fixed frame!
suddenly as long as we are oriented as originally, everything goes well, but as soon as we change orientation, nothing goes and ekf goes into error because the pos do not match to the vel send by voxl frome the ekf point of view…
Sorry for not seeing this message. I received a VOXL camera last week and during testing found the same bug that you did. We’ve got a fix that is going into master within the next week and then I hope to release it in Copter 4.3.2.