Description

Electronic parts are getting smaller and smaller. In fact some parts are not even available as through-hole components. I'd read several articles detailing how to effectively solder surface mounted components and wated to give it a try. Here's a little SMD practice project I put together to experiment with various SMD soldering techniques. Since it's a practice kit, I thought it should be something flashy but not critical. Hence the Matrix Medallion was born.

It's a little bit of electronic jewelry you can build while practicing your SMD soldering techniques. The project consists of a circuit board with 49 SMD LED's (1.6mm X 0.8mm x 0.75mm), one SOIC ATTiny26L processor, a 20mm battery holder clip (for a CR2032 battery) and some interface pins. Throw in some software, a couple of beads, and a piece of chain or cord and you've got a neat piece of programmable jewelry!

Order kits and assembled units here.

 
Note - The beading is just shown as an example of what you can do. The kit/assembled unit only includes 2 split rings and hemp cord.
The LED's in the 7 x 7 matrix are individually controllable and there are three sample programs available to control the LED's. The first sample program allows you to scrolls a text string across the matrix. The second program, implements Conway's "game of life". The third program, implements 4 bouncing balls. You can see videos of each below. You can of course write your own program, or modify one of the sample programs. Just remember that the device is limited by the 3V battery as the 3V level is pretty close to even the Tiny26 'L' variant's drop-out power level, so be careful how much current your program draws at one time. You'll notice that the sample programs don't just scan the LED row's, but scans each LED so that only one LED is ever on at a time. This substantially reduces the peak current draw. If the peak current is too high, the Vcc voltage will sag and the processor will reset. Keep this in mind if you decide to write your own software.
<
Scrolling Text String


Conway's Game of Life


Bouncing Balls


Usage

Assembly

Ah, the fun stuff. The reason you purchased the kit. To try your hand at SMD soldering. Yes you can do it! I personally have used two different techniques with this board. Let's call the one technique the "Reflow Skillet" technique and the other the "heat and slide" (hand soldering) technique. SparkFun has a really good tutorial on the "heat and slide" method that you can read here. They also have a good write-up on the "Reflow Skillet" method here. Then there's another good surface mount tutorial at Curious Inventor. You probably want to review all these before you proceed.

Now, here's the board we're going to be putting components on. There are NO through-hole components at all. Everything is surface mounted and there are components on both sides of the board.
And here's most of what you're going to be soldering onto the board. (no, not the penny!) That's one 20 pin SOIC ATTINL26L along side one of the 49 LEDs. Are you up for the challenge? You can do it! Just take it slow and steady...

The end product, front and back. Forty Nine LEDs in a 7x7 matrix on the front. Six pin programming interface on one edge and power jumper on the other edge. Backside holds the replaceable CR2032 battery and the AVR processor. Note - The bead is just shown as an example of what you can do. The kit/assembled unit only includes 2 split rings and hemp cord.


"Heat and Slide" (hand soldering) Technique

Let's start with the hand soldering method. You really need three hands for this method! I suggest some kind of PanaVise or similar. You just need something to hold the board steady and level while you solder on parts. You also need a soldering iron with a small tip. I found a screwdriver or chisel tip worked better than a conical tip. Of course you'll need some solder, liquid flux and solder-wick. Finally, you'll need a toothpick or two and a set of tweezers. Once you've got all that you're ready to start. Then since the LED's are really, really, small, you may want a loupe or some other means to magnify your view. A bench light like this works pretty well. You'll find that those of us who are really near-sighted (like me) will have a definite advantage. Take your glasses off and you may not need the magnifying glass / loupe. At last, one benefit of being extremely near-sighted!

In brief, here's an outline of the "heat and slide" technique to solder the LED's. Check out the video on the upper right which also demonstrates the technique.
  • Prepare by taking 7 LED's out of the tape reel and place them on the table.
  • Put a small puddle of flux (diameter of a dime, no more) on a piece of wax-paper or plastic. We'll dip the bottom the LED's in it before we solder.
  • Use a toothpick to make sure the LED's on the table are upright and oriented properly with the rest of the board. There's marking on the bottom of the LED, but once they are placed you can't see that mark so I go off the fact that the LED itself (the dark dot within the plastic) is not centered in the plastic. The 'dark spot' goes toward the top of the board. ie the end with the two large holes.
  • Place a small dab of solder on the first (#1) pad where you are ultimately going to place the LED. Either pad will do, but I recommend the pad is closest to the board edge.
  • Make sure this is a small dab of solder. You should barely be able to see it pillow up on the pad. If it creates a ball of solder, that's too much! Take some off. Use the solder-wick if you need to. The resulting pillow should be less than 0.5mm high.
  • Now, pick up the first LED with the tweezers and just touch the bottom of the LED to the dime-size puddle of flux. Don't drop it in, just enough to wet the bottom. Then while still holding the LED with the tweezers...
  • Place the LED slightly below the (#1) pad you just soldered (ie the center of the LED is over the other (#2) pad. Use the toothpick again to hold the LED down on the board when you release the tweezers. Otherwise it'll stick to the tweezers!
  • Now pick up the soldering iron and with the tip just barely on the (#1) pad, not in the middle of the pad, but on the edge, melt the pillow of solder.
  • Once the solder has melted, keep the soldering iron in place and use the toothpick to gently slide the LED to it's final position on the pads. This should put one end of the LED on the still molten (#1) pad and the other end on the un-soldered #2 pad. You might need to use the toothpick to juggle things around a bit to get good alignment, then remove the soldering iron and let the pad solidify. If you've placed the LED correctly, you should just be able to see a sliver of the other (#2) pad sticking out from underneath the other end of the LED.
  • One problem with the very small lightweight SMD's like these LEDs is that they tend to stick to the tip of the soldering iron. You'll see this in the video. Use the tip of the toothpick to hold the LED in place if necessary when you remove the soldering iron.
  • Another problem with these very small parts is that they tend to 'float' on top of the solder. What I've found helpful is after the initial placement put the toothpick vertically on the top of the device and apply a very light pressure to the top of the device and re-heat the soldered (#1) pad. This ensures that the device is flat against the surface of the circuit board.
  • To solder the remaining pad/side of the LED, hold the end of the solder in the right angle made by the LED and the circuit board. Touch the tip of your soldering iron to the groove where the solder is. The solder melts and should be pulled under the LED.
  • Now, verify you've got a good solder joint by lightly brushing your finger across the LED to make sure it doesn't pop off. Do this carefully because if the LED flys off onto the floor, you'll never find it again! Also use your multi-meter to verify the electrical connection.
  • Now you've only got 48 more to go! Once you've got the hang of the technique, I suggest you do the LED's a row at a time. Run down the row placing your solder dab on the 7 #1 pads, the position 7 LED's on the board, then heat and slide them one at a time into position. Then do all 7 #2 pads.

Here's the outline of how to solder the SOIC Tiny26 onto the other side of the board.

  • For multi-pin devices, the technique is similar. Start with a dab of solder on one of the corner pads.
  • Make sure you've got some flux on all the IC legs.
  • Heat the corner pad and using a toothpick, gently slide the chip into place.
  • Remove the heat and verify the placement is correct.
  • Now using a similar technique to the (#2) pad above, hold the solder where the pin meets the chip and apply heat. The solder should melt and get sucked underneath the pin.
  • Repeat the procedure for each pin. Don't worry at this point if you happen to form any solder bridges.
  • Once all the pads are soldered, use solder wick to remove any solder bridges that may have formed. This should still leave solder under the pin holding the pin and pad together.
  • Visually inspect and verify with your meter to make sure all the connections are good and you're done!

"Reflow Skillet" technique

If you're going to be doing this a bunch, it's probably worth figuring out the reflow technique. It's a bit more envolved first getting set up, but it's faster if you have a bunch of boards to do all at once.

Start by reviewing the SparkFun article here, but we're going to it modify a bit. Most of the web related material around DIY reflow soldering talks about using solder paste. Well, that might be ok, but try to find good solder paste and you'll find that it's expensive, has to be refrigerated, and has a short shelf life. Plus, you've really got to have a paste stencil to really make this work. Overall, not something that goes well with a quick and dirty reflow technique. So here, we're just going to use plain old ordinary solder and no stencil. Tools you'll need are: regular solder, small soldering iron, tweezers, toothpick, a cheap electric skillet that says it goes to at least 400°F, some solder flux, and optionally solder wick if you intend to make mistakes. Also you may want a fume extractor of some sort in case you're worried about breathing too many flux or solder fumes.

Note that even though the skillet says it maxes at 400°F, that's not true. It will actually overshoot to around 470°F or 480°F. How far it overshoots will depend on your starting temperature. You'll get the maximum overshoot and thus the maximum temperature starting at room temperature. If you start with a warm skillet, the maximum temperature will probably be less. Get a hand-held IR temperature 'gun' if you want to be more exact with your temperature control.

Don't use your breakfast skillet! After you've soldered with the skillet, never use it for food again!

  • Rather than solder paste, we want to just place a small dab of solder on every LED pad n the LED side of the board.
  • The size of the dab is much more critical here than using the "Heat and Slide" method. The dab needs to be a smooth little pillow. No pointy tips, no bulging mounds. You're going to have to place the LED on top of the solid solder dab's and not have the LED roll off. Try just wiping the tip of your soldering iron across the pads to eliminate any pointy tops. If you get to much solder, try cleaning your soldering iron tip and wiping across the pad again. Still to much? Then use the solder wick to remove it and start again.
  • Optional step - if you're still having trouble getting smooth little pillows of solder, try this. Throw the board (solder side up!) on the cold skillet and crank the temp to 400°F. The indicator light on the skillet should turn on for a few minutes and then turn off. When the light turns off, crank the temp back down to 0 (off). This should peak your board temp around 420°F, hot enough that it should have reflowed the solder pillows and hopefully smoothed them out some.
  • Now similar to the "heat and slide" method, grab the LED with your tweezers and dip the bottom of each LED in flux, then place the LED directly over the pads. The solder flux will not only help the solder to flow properly, it will be a bit sticky and thus keep the LED's positioned. Just don't flood the board with flux. Too much and it will start bubbling when you reflow and that will move your nicely placed parts around! It's easiest to use the toothpick to properly align the LEDs on their pads after the initial tweezer placement.
  • Once everything is placed, double check your placements. For the LEDs on this board, make sure the dark dots are toward the top of the board. Triple check if you must because once you reflow, it will be much harder to correct things!
  • Starting with a room temperature skillet, carefully transfer your board to the skillet. Place the board right over the skillet's temperature sensor (the pointy thing on the temperature dial).
  • Recheck your parts placement just to make sure nothing has moved in the transfer.
  • Now the tricky bit. Turn the skillet temp all the way up. Wait until the temp peaks and the indicator light turns off and then turn off the skillet.
  • Watch closely and you should see the solder melt and the LED's settle into position.
  • Once things cool, check for bad solder joints. Run your finger lightly over the LEDs to make sure none come off. Then check with your multi-meter to make sure you've got good electrical connections.
  • Now's the time to fix any bad connections. Reposition the bad LEDs and go through the reflow heating cycle again. Or, if you only have one or two duds, use the "heat and slide" technique to correct the few problem children. Yes, it's possible to remove the LEDs and replace them at this point, just heat'em up on the skillet and use your tweezers to pick them off the hot board.
  • Note, for components on the other side of the board, you CANNOT use this technique, you have to hand solder those.
Additional notes on attaching components

LED Orientation - All LEDs are oriented on the board the same way. There is marking (a triangle) on the bottom of the LED itself. The point goes up. ('Up' is toward the two mounting holes, 'Down' toward the programming pins) However, once you place the LED's on the board, you can't see the triangle marking any more to determine correct orientation. Instead, use the location of the dark spot inside the LED. The dark spot goes 'Up', see the picture on the right for correct orientation.

Attaching the battery clip - The mounting ears on the battery clip have been trimmed a bit to align with the pads on the board (original design was for a smaller battery clip, not the current CR2032 clip). When soldering the battery clip, make sure it remains level and does not short out any traces. Also put a small dab of solder on the center (+) pad. Not a lot, but just enough to raise the bottom of the battery off the circuit board. This also helps to prevent the bottom of the battery from shorting any traces. See photo on the right.
Programming

I use a USBTinyISP from LadyAda.net. It works just fine, however you need an adapter to connect the 6x1 connector on the Matrix Medallion to the 3x2 pin connector on the USBTinyISP. The pin-out on the Matrix Medallion is (from the middle to the edge) Gnd, Reset, MOSI, SCK, Vdd, MISO. If you'd like to order a 3x2 - 6x1 adapter, they're here.

All source code is written for WinAVR C compiler.

The sample code uses a double-buffer technique. An interrupt driven display routine cycles through the bits in the current buffer and displays them on the LEDs, one LED at a time. Remember, if you try to display more than a few LEDs at once, you'll probably draw too much power from the battery and cause the processor to reset.

While the interrupt routine is displaying the current buffer, your main loop should be slowly populating the new buffer. Once you've completed the new buffer, clear the BufStat flag and wait until it gets set again indicating that the interrupt routine has switched buffers and you can begin populating the new buffer again. Pretty simple.

The fastest frame rate you can achieve is however long it takes to cycle through all 49 LEDs as the new buffer won't be activated until the end of the scan. Your main routine can take whatever time it needs to calculate the next buffer, the display routine will continue to redisplay the current frame until the new buffer is ready. Try your hand at writing your own displays. Post the results in the Forum!!

Note that the Scrolling Text program makes use of a 4x7 font matrix. You can use the included 4x7font.xls to modify / create your own font characters. Just change the location of the '*'s in rows 6-12 and then cut-n-paste rows 18-24 into the source code. If you just want to make your own text string, change the bytes in the Src[] string to be the bytes for the necessary characters. Recompile and burn and you should be good to go.


Download

Circuit Diagram
Scrolling Text source
Conway's Life source
Bouncing Ball source


Forum

Talk about it here