I have been having quite a few random problems with my arducopter. Mostly stemming from what ended in a pretty bad crash a couple months ago. My quad seems like it has wanted to immediately go to a 45 degree pitch at the back right motor.
I also had the motors arm themselves at random and decide that they don't want to arm after extended periods of time held down and right with nothing but a reboot in between. I do have the old 1280 model, so I dont have cli capabilities.
If someone can let me know how to pull the logs off from there without cli enabled I will pull those off and attach them.
I just ran it again with usb plugged in and watched what all of my outputs do with motors armed, and an interesting thing happens to channel 4. It will only go to either 1049 or 1249, but nothing in between or higher.
It sounds lke you have other issues but first try looking for a motor that's much higher turning friction than the others. That happened to me after a crash that bent the motor shaft slightly. Of course, I ignored the issue but I began to get wierd behaviour such as 45degree takeoffs and strange random shuddering and yawing. Eventually I noticed one motor had some bearing slop. Also noticed by hand turning, it also had much more friction. I found the "motors" CLI feature helpful because I noticed as all the motors sequentially pulse, my suspect motor growled a bit compared to others.
Sounds like you've already covered the easy stuff..... Good luck
I swapped the esc's by just reversing the plug on the board and the problem persists on channel 4. Even in ground control it shows as only ever getting 2 signals 1049 when it has no throttle or 1249 when it has any throttle. The other channels fluctuate the way you would expect when throttle or attitude is changed, but that channel out stays the same.