Hard landing causes all parameters to be reset to defaults?!?

About a year ago I set up a flying wing and spent a couple of days tuning and tweaking, since then it has given me 20+ hours of beautiful flight. Today as I threw it the prop adapter came a bit loose, so with no power it just came down a few meters away, hard but not hard enough to break anything.

After tightening the prop adapter I was about to throw it again when I noticed that the elevons were no longer doing elevon mixing, and my flight mode switch was not doing what it should.

I eventually discovered that every single parameter had been reset to the default values… how is this even possible?!?

I found some other similar cases, none of which seem to have any resolution:

Anyway since today’s plans with that plane are totally wrecked, I will instead spend the time going around to all my other planes and backing up their settings!!!

Thanks for the report Chris.
This shouldn’t be possible: someone will definitely look into it.
Do you have a log from that flight, and an an earlier flight (preferably same firmware version)?
Hardware configuration too please (flight controller and how it’s powered at a minimum).

Sorry I don’t have any logs. Now that I think about it, this was running the firmware provided by RadioLink for their Mini-Pix board, before they officially contributed to ChibiOS, so possibly not relevant to standard Ardupilot.

Ok, no worries.

The only way I’m aware of that this could happen is if someone or something set parameter SYSID_SW_MREV to 0. That will initiate a parameter reset on the next boot.

Do some boards have a physical reset switch that could cause this?

@Naterater MiniPix does not. another (unlikely) possibility might be some issue with SD card parameter backup handling, like SD being ejected or displaced. i remember there was some issue with param handling that @tridge fixed over the course of https://github.com/ArduPilot/ardupilot/pull/8888

i don’t know if that ever was relevant on RadioLink branded fw though as i never followed their update / version history.


This just happened again, with a different FC board and different firmware version, and no crash involved!

Over the last few days I have been setting up a new plane, did a few flights and autotune etc. The autotune resulted in some pitch flutter which according to my forums research seems to be caused by a too-high D value. So I connected via USB, just sitting on the bench.

Connects fine.
I see that the D value is indeed a bit high (0.089) so I set it to the suggested 0.04.
Value input background turns green.
Click on “Write Params”.
Dialog says write was ok, value input returns to dark gray.
Click disconnect.
Unplug USB.

Then I wondered about the P and I values, so I connected up again in the same way. Lo and behold every single parameter is now set to the default values. How on earth does this happen?? It’s a real motivation killer…

FC board: Omnibus F4 pro v3
MP version: 1.3.62
Arduplane version: 3.10.0-dev (0dce6172)

This might be related to an issue some of us are having with another F4 board with Copter 3.7-dev. See here on the Gitter chanell. If it’s the same issue it will not happen with current Stable.

This should be the fix: https://github.com/ArduPilot/ardupilot/pull/10769

as this still seems to be relevant imho it might help to gather and track related information: