[Boris Landoni] put together a guide to using an inexpensive 3-axis accelerometer with Arduino. The chip that he chose for the exercise is an MMA7455L made by Freescale. It’s got a lot of nice features packed into it, using hardware to do some of the things you’d need software for with other chips like reporting in which direction the chip is moving, detecting when movement has stopped, and few others. It’s an I2C device, so the examples he provides will be super simple to port to your uC of choice.
But as the title says, there’s a catch. The chip is extremely versatile and you can get your hands on one for under $2. But check out the size of it. That’s a DFN (dual flat no-lead) package which means there are no pins on it. The package has solder contacts on the bottom which do not protrude out the sides. If you want to do some at-home prototyping with the chip you’ll need a hot air pencil or reflow gear as hand soldering is unlikely to be successful. We’re not saying it’s impossible, but it is quite tricky.
Of course, if you’ve got the secret to getting this done with a quality soldering iron we’d like to hear about it.
22 thoughts on “Using A Cheap Accelerometer With Arduino Comes With A Catch”
I soldered one by using an electric skillet. Check out: http://dangerousprototypes.com/2012/01/18/mma7455l-accelerometer-free-pcb-build-4/
This was from http://goo.gl/p9V5B in the comments.
These chips are rough to use but, they will work.
Nice dead bug!
You can take this concept one step further. I made a PCB with the component flipped on the “bottom” side of the board. In actual fact the component was a cutout manufactured to fit the chip. Then you have traces running right up to the edge of the chip.
Put it in upside down, wire it dead bug style, finish with a coat of lacquer for protection. Not only does it work well for DFN packages it also makes for a PCB with a very low profile.
I’ve made mine using one sided pcb, some soldering paste and an old frying pan .. worked like a charm.
You can always spend a few extra bucks and get an adapter….these you can place some solder on the pads, brush with some flux and heat quickly with a pencil torch and then you have it ready to plug and play with a DIP socket:
Surely they can be found elsewhere as well.
The subject implies there are problems with a cheap accelerometer that are avoided with expensive ones. Like, those pricey huge DIP ones? Or ones like this?
Breaking out small IC’s is a great business for many small vendors, like SparkFun (the original?), AdaFruit, Seeed, Modern Device, etc. If the barrier is getting some reflow gear, ~$100 will get you over that hump:
Or, a cheap electric skillet will do the trick, as Tayken found out.
Now let’s all reflow!
Looking at the breakout board from the original post, just making the pcb pads stick out of the side of the package is enough to hand solder? Just preheat the board if you can and have a hot iron.
I once used a 30 watt soldering iron to assemble a surface mount FM transmitter. Since the irons tip was too big I wrapped some 18 gauge (I think it was 18g) wire around the tip and let it protrude past the irons tip about 1/4″. It was a pain in the ass but it worked.
I’ve done it in the past using quite an ugly technique involving hot glue.
It was even featured on Hack a Day.
Do you guys know from where can I order a build of this PCB, for cheap?
dead bug soldering
If you make your PCB decal with long pads, DFNs and QFNs aren’t that bad to solder by hand. Just use a chisel tip iron and lots of flux.
2 words: Conductive Adhesive
My job had some of these a while back, turned out they were just too fiddly to mount, there are very strict rules about how they are mounted on the board since any stress on the package translates to faulty acceleration data. The accelerometer inside the case is not mechanically isolated from the case like with more expensive chips so a full recalibration is needed after mounting, especially if soldered by hand.
I soldered a QFN package ATTiny85 deadbug style onto a BlackBerry Visor Mount. I don’t have any pictures of the actual install in the visor but I do of the ATTiny85 wired up with all the appropriate leads to write to it and use it connected. To protect it so any stresses wouldn’t break off the wire I wrapped some kapton tape around it, it’s pretty sturdy now.
+1 for dead bug and 40 gauge transformer wire…
The only was I’ve ever been able to hand solder those was using the type of wire you use to make an electromagnet. The kind where the insulation will burn right off as you solder. But I think I killed about 4-5 chips before I managed to solder one properly.
For $2 I can get a knock off wii nunchuck off ebay and just rip the circuit board out of it. There’s a library for arduino that works nicely with them (in fact I have improved that library to work with both official and knockoff nunchucks).
Here’s a method I’ve used. It’s not elegant, but it’s really cheap/easy (under a penny, 10 minutes) once you get the hang of handling the 0.1mm polyurethane coated DealExtreme wire I link in that thread. It’s really versatile stuff for working with microelectronics and SMD, so that’s a skill worth having. You don’t need tweezers or Hamner forceps (though those are nice for other uses), Human fingertips can handle 100 micron wire with great dexterity — it’s like sewing thread.
3rd party opportunity:
Step 1: mount chip on a small pcb.
Step 3: profit.
Yup, the site hosting the original article has a store that sells a breakout board (pictured in the article) for 11.50€ (~$15+S/H from Europe) It’d run about $10 domestically.
That’s why I “roll my own”. The chip is under $2 and I don’t have to wait for shipping. I hate to tell you how often I’ve forgotten why I ordered a part by the time it arrived
I build breakout boards for the related MM7660. What we’ve found is that a hotplate, like the electric food warmer ones, does a great job of mounting these. Put a bit of solder on each pad, put a batch on the hotplate, set the chips on top, add flux, and watch them settle in place. Once they’ve settled, you pull them off and set them on a chunk of cold aluminum to cool them, and then you can check pin continuity to the package by reverse body diode testing: turn your multimeter to ‘diode’, put the positive lead on ground, and touch the negative lead to a pin. You should see 0.7v or thereabouts if it’s connected, or open if it’s not, so you can pin-test without powerup. If it’s open put it right back on the hotplate and try again. If you want to reflow them by hand, a Metcal STTC-190 tip has a 0.4mm wide tip and will fit nicely on a DFN pad, allowing you to reflow them pin-by-pin.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)