It's a long story that I will try to summarize. The latest revision of the magnetometer that had some design improvements including making it easier to manufacture to boost production using the pick and place machine, but that also came with a weird issue. 

When I was developing the APM Oilpan we had some noise issues on the 3.3V line caused by a missing 200K resistor on the Voltage Reference pin on the 5V side of the I2C translator (obviously this board never saw the light), if you don't populate this resistor it will introduce terrible noise on the line and cause the analog sensors to fail, this bug was found by Jose Julio (Thanks!). 


A curious thing is that the first version of the magnetometer didn't have this resistor (it worked fine anyway), in the second revision i tried to do the right thing and follow what the datasheet suggested so I added the 200K resistor (same that caused terrible issues on the Oilpan because we didn't use it), expecting some improvement. 


When the boards arrived from the fab, we assemble some and they appeared to be fine, Cindy (our testing lady) added the observation that the sensors were slightly noisier, but we didn't listen (Sorry Cindy!). For the pressure of months of long waits we just released the boards. In just matter of days we received tons of complains.   


After days trying to solve the problem we finally discover that the 200K was the issue. The 2nd issue we have discovered but is not critical is that the voltage regulator will not perform well if you don't suck enough current from it, the magnetometer uses very, very low power and the best practice to solve this is to add a 200 ohms resistor from the 3.3V to GND to add enough load to it (Thanks to Nathan Siedle for this trick), we are not doing this right now, so you will see a power supply output of 3.7V, but the performance is perfect. 


All new boards have this fix, but for those who already got affected boards I would like to give a sincere apology to all our custumers and I would like to offer two resolutions to this problem:

1.- Send it back and we will repair it for you. We will cover all the shipping expenses. Please contact custumer support for more info: help[@] 


2.-Repair it yourself (DIY) quickly and safely by following the following instructions.


NOTE: Before you repair your board, check if your board has a resistor marked "204". This means it has not been fixed (see the first two photos of the repair steps for reference), and if you see instead a resistor marked "0" your board is fine.

If you choose to repair it yourself and something gets messed up, you cannot then return the board. If you are unwilling to take this risk or are feeling a little uncertain about your soldering ability, do not do this. Just return the board for replacement.






















1- Locate the 200k resistor, it is marked with "204."






















2- With a soldering iron, heat either of the resistor's solder points
and wait a few seconds for the heat to reach both solder points. Weak solder irons may not work very well. 























3- Without applying too much force as no not damage the pads, gently
nudge the resistor with the tip of the soldering iron. 























4-The resistor

should stick to the tip, so just lift the tip off the board to remove
the resistor.






















5- Make sure you the pad are still there. 






















6- To create the solder bridge place the tip of the soldering iron
over both pads and apply enough solder to brigde the pads.














































7- If the solder ball is touching both pads then your are done. 

Views: 2808

Comment by sid on January 14, 2011 at 9:14am

ok.. after some struggle it seems that I rectfied my mistake.. GUYS do not touch the solder if you are not confident.. I almost screwd up mine but looks like I am saved..but still I need to test run and fly. I have soldered the board finally on IMU shield..

One more question..There are some lines in the codes to be modified as below ..

//#ifdef IsMAG  (do I also need to uncomment this one ? ) 

Comment by steve on January 14, 2011 at 9:19am
I will use a Weller WLC100 Soldering Station and am wondering what is the best setting to do this so it's not any hotter than it needs to be. 1, 2, 3, 4 or 5?
Comment by John_Mac on January 14, 2011 at 9:55am

My Magnetometer was bought from you in March of 2010.  Item number BR-HMC5843-01.  It has performed fine on an I2C interface.

I see no resistor marked 204.  Does this rev require the "fix"?


Comment by Mauro Rodriguez on January 14, 2011 at 9:58am
@chris Please, could you tell me if i have to do something with my mag?? I bought it in June of 2010. thanks.-
Comment by David spencer on January 14, 2011 at 10:35am

@chris, got a very polite email from 'help@' offering me a free return - as i've soldered my magneto to the Oilpan and don't fancy desoldering it.

However the free shipping is only via the cheapest ground option - which i can understand, and makes total sense in the conti-USA, but since i'm in the UK that will potentially take weeks… and knowing how poor our (UK) post is with tracked items, i don't fancy slinging the Oilpan and magneto into the postal void never to be seen again.

So it looks like soldering iron or bust for me…

3D Robotics
Comment by Chris Anderson on January 14, 2011 at 11:05am
I think the new version with the issue came out in late Nov/ early Dec, so if you got one before that you should be fine.
Comment by Sam Kelly on January 14, 2011 at 11:07am

To everyone who has the older, slightly larger, magnetometer board: you do not need this modification. If there is no 200k resistor (marked 204), there is nothing to remove.


To anyone who took the risk and damaged the board, you can do something like Ryan VandeWater suggests, or solder a wire from the 5V solder jumper to pins 7 and 8 on the i2c chip. It won't look as clean but you get a second chance to get a working board!


And again, if you don't want to risk it, please send it back!

Comment by Luis Mauro on January 14, 2011 at 12:05pm
Hello Jordi
Yes, I believe that this problem is the same as I had discussed with Chris Anderson and others guys at this forum:
Luís Mauro
Comment by Luis Mauro on January 14, 2011 at 1:17pm

Hello Jordi

Now I´m sure that the problem as I had discussed at

is the 200KOhm resistor.

After I removed the 200KOhm resistor and jumped the pads, I turned back my board to 5V and it is working fine now.

best regards


Luís Mauro

Comment by steve on January 14, 2011 at 4:19pm
Any suggestion on the solder iron temp? See my comment above.


You need to be a member of DIY Drones to add comments!

Join DIY Drones

© 2020   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service