I have assembled a balance bot with two DC motors with encoders on a pixhawk, driven by Barbie Harley Davidson. At present is is reasonably stable but slow, and it is impossible even to start a mission.
The goal is to do the same as a rover here on a real R/C car racing circuit, which with a RTK GPS can reasonable follow the track on the small circuit there 2m wide:
Here is a first 4K video (manually driven with the R/C transmitter):
As can be seen on the tlog part (in parallel with the view from a second camera doing a twitch transmission) it doesn’t know at all where it is and its orientation.
This is other simple test on the big circuit:
The small white horizontal lines are the starting grid positions (as in F1). The real trajectory was going from 7 to 3 forward, and back to 3 backwards, maintaining yaw (moreless north all the time). The yellow trajectory is what it thinks as the trajectory followed.
I’ve tried with v3.52 stable, v4.0.0 stable and v4.0.1 dev, and the yaw inconsistency always occurs. These situations are constant:
For analyzing what is happening with the yaw (and EKF3), I placed the vehicle still (constant coordinates) facing north (yaw 0) with the motors disconnected (no encoder signals) and armed it:
EKF Status Compass turns red, and it thinks the yaw changes slowly:
but even the gyroscopes are quiet:
This is the log, with actual configuration (v4.0.0 stable).
Is it normal that EKF3 behaves so? Can it be corrected? Configuration problem?
If this EKF3 behaviour is normal, what can be the problem for the attitude error which is making impossible even starting a mission?