I have MATEK-F405 board (Tyro129 Quadcopter) (Version:4.0.5; also tried 4.0.5-STD image), and its accelerometer seems to be buggy:
Once the board is positioned in the flight direction - the compass is ok and if I turn the board with ‘nose-up’ - the accelerometer shows towards up which is OK. However if I turn the board to the right - the accelerometer shows towards left (this is while the directions is so: Pitch-0, Roll-0, Yaw-0). This happens both in MissionPlanner on Windows and in QGroundControl and APMplanner on Linux.
I can change the direction of flight so: Pitch-180, Roll-180, Yaw-0, - but then the problem will ‘pass’ to the Pitch direction: if I turn the board to the Right - the accelerometer shows towards Right, but if I turn the board with ‘nose-up’ - the accelerometer shows to the down.
It feels like I need to “swap the direction” of Roll (i.e. “multiply it by -1”), rather than add an offset to it. Is there such thing as “-1 multiplication” for the Roll parameter?
I think my FC is not defect because it worked properly in Betaflight (after adding 90d Yaw offset) and in iNav (without any changes), but not in Ardupilot. The arrow on the FC is facing upwards and to the flight direction. I also have calibrated the accelerometer (by putting it in 6 different positions) after I set up the frame (-Quad X).
Did you do acceloremeter calibration?
Edit: sorry I see it now that you already done it.
Could you please send the parameter file?
Also flash plane firmware and then copter firmware and you can get the default parameters which I believe that works properly.
Could this be the issue?
" For the -STD version please use the MatekF405-STD type firmware. For the -CTR version with MPU6000 please use the MatekF405 type firmware. For the MatekF405-Wing which has an essentially different board layout please use the dedicated firmware. Please note that ArduPilot does not support -AIO and -OSD versions per default as additional hardware and / or software adjustments are required." https://ardupilot.org/copter/docs/common-matekf405.html
Your flight controller is a good one. I did not connect it to any other electronics, I tried it alone. Arducopter 4.0.3 was installed on it but I will try the latest tomorrow. From what I understand is you are new to ardupilot. So please send a couple of detailed photos regarding to your setup. Video will be better. Show us both your quadcopter and qgroundcontrol or mission planner screen at the same time if possible. Move the vehicle on roll pitch and yaw axes. It should work. I can’t think any reason why it shouldn’t. Make sure the arrows are visible when you put the vehicle on ground on both flight controller and GPS module. Also the arrows should be directing the forward of the vehicle.