Hello,
I tried to fly with 3.3.2 and I can see a lot of EKF warnings about compass. This copter flies perfectly with 3.2.1 and didn't show any mistakes. With 3.3.2 I had to switch off internal compass, because with it the copter refused to arm because of compass inconsistens. There were no metal items nearby. The compass calibrated twice in the wild field, there were no metal items near it.
In general, with 3.3.2 only with an external compass it flies well (not to mention small torsion on yaw at the first 10 seconds after takeoff).
But I'm confused by errors. Could somebody instruct me how to configure EKF properly, for it not to show mistakes?
In anticipation of advices to take the compass away from the power lines and metal objects - everything possible in this direction has already been done, as the copter flies perfectly with 3.2.1 I don't think we have a problem here.
Could be a problem in configuration of EKF cofficients? I'll be very grateful for advices. Please find attached log files of dataflash and telemetry
Replies
Post some photos of the copter, please. 3.3.2 is much more sensitive to compass issues and because of that it flies much better, when everything is working correctly.
I have also had the problem with "Inconsistent Compasses" error coming up all the time. I was able to solve it by loading Arduplane firmware and then flashing back to Copter 3.3.2, must have just been a glitch or firmware issue.
Also when doing compass calibrations it's important to deselect "Auto Complete." The compass cal auto complete function is bad news and always ends the compass calibration before it is fully completed. Be sure to hit all the white dots on screen and collect at least 250 data points for best performance.
Also to add:
This makes me thing you have an EMI problem with the compass. Make sure the external compass is up on a mast away from the battery/escs/and wires/PDB. Not only that but be sure to TWIST the wires for the mag and route them away from battery/escs/wires/PDB also.
From the EKF page:
"From Copter3.3 onwards the EKF has been enabled by default and this parameter is not available. Plane and Rover users can still elect to use the legacy algorithms."
So you're probably now actually USING the EKF with version 3.3.2, where before you were not. I would bet $$ on that. Here's a test you can do:
Open the EKF page in Mission Planner by clicking "EKF" on the HUD. With your props attached upside-down and shifted one position around the copter (such that the thrust pushes the copter into the ground and not into your ceiling :) ), arm it and rev the motors from 0 to 50% quickly.
If you see the EKF bar go from green to red, the magnetic field emitted from your motors are overpowering the magnetic field produced by the molten iron core of the Earth moving (on the order of 10s of micro Teslas). You will not be able to solve this with an internal compass. You will probably need to get an external compass and mount it on a mast high above your copter to solve the problem. I am using this one and highly recommend it. Most connect to an I2C port depending on what board you are running your APM Copter on.
Let me know if you need more help :)
I have exactly the same issues as you andI decidedto downgrade to 3.2.1.
Is there a way to disable ekf in 3.3.2?
No, no way to disable EKF in 3.3
I need 3.3 becouse I need a gimbal manage protocol. It appear in 3.3
Hi. Yes, of course I use EKF in 3.3.2 and yes EKF bar go from green to red. As i write above I use only external compass (with external and intyernal copter not arming).
BUT it show warning even before I Arm a motors. And if I have so bad magnetic interference why copter fly prefect on 3.2.1?
In copter 3.2.1, EKF was not enabled by default. Hence the reason that your copter flew perfect even with compass issues using 3.2.1. Another question: how are you powering your flight controller? Are you using the same battery you're powering the motors with? Could be that you are having some DC power noise issues with the input power to the external compass. Maybe post a picture of your setup with a wiring diagram?
Thanks for your anwer. I'll try to simplify my question. I have a copter that flies good with 3.2.1 and flies bad with 3.3.2. I understand it is caused by EKF. But EKF is made for CORRECTION of all inaccuracies and sensors, but it makes situation worse instead. I understand absolutely that EKF gets excited beacuse of magnetic leveling (?не уверена, что это), but I used all means to reduce them - amazing flight with 3.2.1. with the same setup for a period of 6 months is a proof. Please, help me with the advice - how to setup EKF (its magnetic part) correctly for my copter to fly not worse then with 3.2.1