Now the following has happened to me quite a few times with different codes. Latest code I've tried is 2.1. APM is version 1:
I'm hovering in stable mode. In flight, the quad just tips over and crashes. After that, one of the motors is squeaking loudly without rotating.
Moreover, the arducopter does not respond to any stick movements. The leds are on, but I'm unable to disarm it. I need to disconnect and reconnect the battery to get it responding again.
Any ideas? Faulty APM?
The compass failed. Check the solder joints.
This is the I2C hangup we're trying to fix. If the compass fails in flight due to vibration and a bad solder joint you can have this issue.
Oops. Is there anything I can do myself to fix this? I have checked the soldering of the compass.
I'd try reflowing the solder joints, just to be safe. You could also try attaching another ground line directly from the compass to the board, in addition to the pin. It seems the loss of ground is the most disruptive.
How do you know it's the ground more than anything else?
Ok, I have reflowed the solder joints on the compass. The problem still persists.
Is there anything else I can try?
Testing. The lockup occurred with the highest frequency when the ground line was disconnected. Disconnecting the other lines caused an occasional lockup, but nowhere near as reliably.
Couple of questions:
Did you reflow the solder joints on the IMU board as well? Have you tried just shutting it off it see if it makes a difference? Do you have anything else connected to the I2C bus? Is the GPS working alright, if you have one?
It's possible the problem you're seeing is slightly different then the one I was experiencing.
Yes, I reflowed the joints on the IMU board as well. I haven't tried to shut off the compass. I have nothing connected to the I2C bus.
The GPS works, but I'm using "stabilize" mode when I do test flights now.
Also, it might be worthwhile to try the motor rev test. This works better with the blades to see if vibration is a cause, but make sure you tie the quad down and move the battery away, because you're not going to be able to shut it off if it hangs and you'll need to yank the battery. Connect it VERY loosely. I strongly recommend trying this with the blades removed first and only try the blades if it won't lock up bladeless. If you do it with the blades attached be very careful... you do NOT want to get hit with one of them.
I have a video where I tried this here: http://www.youtube.com/watch?v=tYsN1JEvQsg
Can vibrations itself make the APM freeze/crash if they don't cause a connection failure?
I'm not 100% certain, but my best guess is no. Almost all of the parts on the board should be shock tolerant to several 1000 G's at a minimum. The amount of force you'd need to actually stall the processor would likely destroy it at the same time.
That being said though, if you have a TON of interference near the board that could lock it up. The motor rev test should at least prove if it's vibration or not. Do you have a Xbee module or the ESC's near the board?
Yes, I have an Xbee module next to the receiver, so it's 3 cm or so above the board. Perhaps I should move it to one of the arms?