What is better: Filtering UWB in a companion computer or sending it raw to ardupilot?

Hi all,

I have an Ultrawideband system that tracks a tag attached to my drone. The tags output is processed by my own teensy 4.0 on the drone, which repacks its position into a GPS_INPUT message. This message is then passed onto my pixhawk.

This works, but I need to increase the precision as much as possible. My question now is, would it be best to do some filtering (using an EFK for example) on my teensy and send as precise of a location to ardupilot, or just let the EFK of the ardupilot handle this filtering?

Right now I seem to get better results filtering the data first myself, but I have hardly played with the parameters of the ardupilot EFK yet.

What are your thoughts on this?

ArduPilots EKF has more information to filter the data with, ie it knows the measured accelerations from the accelerators. So I would have thought you could get it to do a better job. I think a key thing is to have the data getting into ArduPilot relatively fast and at regular intervals.

1 Like