This is a discussion re the bad Accel, Gyro and Baro values that we're seeing with ArduCopter-3.1. The increase in the SPI bus speed from 500khz to 8Mhz has exposed a hardware problem on some boards. That hardware problem is that the 3.3V regulator has been blown so all sensors are running at 5V instead of the intended 3.3V.
How have these regulators been burnt out?
- Attaching a radio receiver or MinimOSD to the APM while the APM is only powered through the USB (see video below)
- Some clone boards seem to come from the factory with blown regulators. 3DR boards might also come with blown regulators although they do a specific check of the regulator as part of the regular QA process.
- It is not (as far as we know) actually caused by the AC3.1 software itself, it just exposes the problem. You could prove this to yourself by checking the 3.3V regulator (see video above) before and after the upgrade.
How can we fix the regulator?
Option #1: If it's a new board (so that it's less likely you burned it out yourself) you could report the problem to the retailer that sold you the board and ask for an replacement. If it's 3DR it's called an "RMA".
Option #2: if you're handy with a soldering iron you can replace the regulator yourself. On the APM2.5.2 (and higher) boards it's not that difficult. On the APM2.5 it's far more difficult.
For APM2.5.2 : TPS79133DBVR
For APM 2.5: MIC5219-3.3YML TR
How can I stop it from happening again?
Do not connect any devices such as a radio receiver, MinimOSD, GPS, etc while the APM is powered especially while powered only through the USB cable.
Attaching a 100uF capacitor across any of the APM's radio input's 5V and GND pins will stop the regulator from being blown by plugging in a receiver. video here!
There are very few reports of regulators being blown twice and no reports of it ever failing in flight.
Below are some graphs of the types of values that we are seeing on these boards.
Replies
I normally just use the low RF HK, but for these tests, I ran with a bench supply, direct battery, 3DR power module, and the BEC.
for info , since I put a MCP1826S I have no problem
I am not saying that a servo would not create high spikes, just on my setup the analog servos or the digital servos in connection with the HK BEC do not create any spike. It doesn't surprise me that certain servos would create a dirty voltage. After all with the motor in a servo its an inductive load and those generally do not work well in electronics.
Normally I keep APM power supply and exterior devices (servos and so on) power supply separate. In my planes I have the servos on the HK BEC and the APM on a 3DR power module. My quad I went the cheap way feeding the APM over the output rail with JP1 - that's why I checked my servos since yours create such high spikes. But in both ways its not going up but down and the digital Hyperion DS11 servos seem to be clean.
Glad to hear some servos are good, unfortunately we have tested a few HiTec as well as HK and New-power, all create spikes that are quite nasty. they even produce these when powered directly off batteries ( cant blame a UBEC)
the fix was quite simple, we placed a 1N5339 zener diode across the servo rail, stripe end to the positive rail, the other end to gnd.
this clamped the voltage nicely.
Ok, in that case that excludes then my thought that maybe the BEC was reacting weird to the servo load. Hmm pretty bad that so many servos do that.
Mario, I just tested the rest of my LOW RF NOISE UBECs. I only had 2 more laying around that I could test with no load. I have one in my quadcopter with full APM setup with GPS, external compass, digital Hyperion pan and tilt servos and another one on my plane with full APM setup and a bunch analog servos.
Those are the units I have. I think the only different one is my unit #4 that's a little older. I saw my newer units state a V2.0 on the back.
This was unit #1 - no load max voltage 5.316V
This was unit #2 - no load max voltage 5.275V
Unit #3 sits on my plane with full APM setup and plenty servos to jerk on power-up. Tried a couple times and those two steps till it reaches 5V were always identical. Max voltage with this unit was 5.282V
I guess the crummy startup comes from all servos moving for the first power on.
Unit #4 is my oldest HK Low RF Noise BEC. This one sits on a quadcopter with two digital Hyperion servos and full APM setup with GPS and external compass. This unit was actually the one with the lowest voltage compared to all other three BEC with max voltage 5.025V.
Since it was mentioned here before I also tried moving the digital Hyperion DS11 pan and tilt servos like crazy but no high voltage spike. Actually all I saw was negative spikes.
This is my HK Low RF Noise BEC unit #3 in my plane with a bunch of analog servos moving at the same time. Same here - no high voltage spikes but quiet some low dropouts.
I think I have to try that with my Castle Creation BEC and see if that is also that easily brought down in voltage by just wiggling a bunch of servos.
Thanks for doing some real testing. How fast is your scope?
A couple things that would be great to try if you could:
1) Try to connect the BEC such that it generates a long spark. Same on disconnect.
2) Are your power wires long or short? There's a connection between the wire length, inductance, and spiking on inrush current.
3) I believe having some capacitance at the load also causes more spiking?
You should try this again, but on the output of the BEC, put 6" of wiring, and maybe 10uF of capacitance. Then attach the probe to the capacitor.
I guess it's great if these BECs are well behaved, but it still leaves us scratching our heads.
My scope is a little older DSP based USB scope with 200MHz and 5 giga sample/sec. Its fairly quick but not too accurate down to the millivolt.
Unit #1 & #2 where just the BEC to a 3S Lipo and measuring the non load output - real short wires.
Unit #3 is actually wired in my plane with aprx 8" wires with a 3DR power module in the middle. The power module powers exclusively the APM and the BEC powers 6 servos and the RX.
Unit #4 sits in my quad copter with aprx 6" wires and powered everything, APM. GPS, RX, OSD, and 2 servos. Its the oldest HK BECs and I think its a different version than the V2.0 as it regulates pretty accurate the 5V not 5.2-5.3V and the power-up curve looks different.
What I didn't expect to see were those high drops down to aprx 4V when I moved the servos. I thought to be far away from the max 6A in order for it to shed volts to keep the current within limits - or its just not very good at handling current spikes.
That's why my first thought was that Philips BEC maybe is acting up on the digital servos and sharp inductive loads but as he states same happens direct on a battery powered setup with no BEC. I guess there are some nasty servos out there.
This was the unit #3 in my plane at power off. I only did one screenshot yesterday as there was nothing special. Besides that my plane has probably some high capacitance because the voltage dropped pretty slow down to 0V.
I put all screenshots and pictures here: http://1drv.ms/MWz8in
Here's a discussion I started last year about the issue with servos.
http://www.diydrones.com/forum/topics/helicopter-avionics-power-supply
It's an even bigger problem on helis which tend to use big, fast, powerful servos, and they often all move at exactly the same time.