PixRacer experiences motor race condition

I was compiling my own versions for a while and thought it was my compiles causing the issue.
After loading the latest build noticed that it too was doing the same thing.
Tried varies builds and found the issue started between build 6/17 and 6/18.
This build seems to work ok: 4d964fbf2fab75ee9c08513c56c46e59bf09203b
This build seems to be bad: ec7c1ab0b05230231207633cddc34ccb7e11dbed

After that build the copter races and flies off out of control.
To test this I hold the copter down and apply a little throttle in Stabilize mode and wait as the motors start going faster and faster and faster with vary little throttle. Maybe this was by design and a new parameter needs to be set but this has caused a couple of crashes for me.


Just tried the same version on a Pixhawk. Motors spin up normally. I adjusted the Pixracer PID’s to match the Pixhawk and the condition is worse. Just a little throttle causes the motors to go to max in seconds.
Here is a log from both flight controllers.
Pixracer: 74.BIN (266.4 KB)
Pixhawk: 331.BIN (179.7 KB)


Is there a way to checkout all the commits up to the point that it breaks and then compile that version and see if works ok. Then add each new commit to that until I find the commit that is giving me the issue?

I tried cloning to that commit but after it compiles I get some other signature and not the one I checked out or it says that version is not found.


Just loaded PX4 flight stack and the copter work normally. Reload 3.4 rc2 and with default parameters and the motors worked normally. Tried test flight and it flies but not vary good. I guess the PID values were not that important until the motor updates that were made after that date.

Will have to figure out how to tune the PID’s on this new platform.


glad that it’s working better.

I can definitely see what you’re saying, some of the motors are going to max even though the throttle is raised only a small amount.

I think it’s because the ATC_THR_MIX_MIN parameter has been corrupted. It is 18000 in the logs you provided but it should always be between 0 ~ 1. I’m not quite sure how this parameter’s value was corrupted but I know there were at least a few weeks where we had a problem with the parameter conversion code in master and it would affect other parameters while it was trying to move some of the RATE parameters from the Copter-3.3.3 position to the Cotper-3.4 position. I think/hope that your vehicle must have had this bad code from master on it at some point.

By the way, this ATC_THR_MIX_MIN parameter is responsible for how Copter prioritises attitude control vs throttle so having it very high would cause it to prioritise attitude control highly and would explain the behaviour we’re seeing.

I will keep a lookout for other people with this problem but I don’t think the problem was present in -rc1 or -rc2.

I’m going to close this topic if that’s ok.