Getting more serious about SMD production

I’ve been doing all manual SMD assembly ever since I started Low Power Lab, and still do at this moment. I find it too hard to outsource assembly and too prone to some issues.

Anyway, in the beginning there were tweezers, a microscope, and a toaster over for reflowing. I very quickly realized that the tweezer method was insane to put it mildly, the only worst thing that I can think of is actually soldering everything with a soldering iron instead of using paste. Nonetheless the first ever Moteino batch was tweezer-microscope+reflow assembled. Then I figured out how to make metal stencils out of soda cans. That works beautifully, costs next to nothing, and the more you make the faster and better it gets, and those stencils never wear out, unlike mylar or other plastic stencils. It’s the closest you will get to real stainless steel stencils. But I could only spread paste on 1 piece and it gets tedious, watch this video of how I actually do it. Panelizing PCBs sounded a bit scary.

So finally I made the jump and panelized a batch of Moteinos recently. The panel has 2.5mm tooling holes that are spaced on a NxN cm grid (which would fit the Stencil8 tooling block), but quite frankly they could be spaced any way. The tooling holes match holes in the stencil such that the stencil alings perfectly with the PCB. The panels and stencils are made at Hackvana. I don’t have a tooling block because quite frankly I don’t think it’s needed (UPDATE: I actually had a MDF block milled – see this post for details). I drilled holes in some MDF using a 2.5mm drill bit (the thin sheets that come with the stencil are right size and perfect for the job), using the PCB to pilot the holes. Then 2.5mm steel tooling pins align the stencil with the PCB.

The time savings is significant, especially if multiple panels are assembled at once. I was reluctant at first and I was worried about the spacing between the PCBs and other things like that. But glad I did it and this is a first step towards more serious in house assembly. The v-scoring means the PCBs are snapped apart after reflowing, and the edges will be a bit rougher than the nicely routed PCBs I was used to. I do however snap the panels in 3 rows for easier SMD assembly with my pick and place vacuum tool. After reflow they are snapped into individual pieces. The panelization is done at the PCB fab for an extra fee.
The McMasterCarr parts for the pins and the drill bit are: here for the pins and here for the drill bit.

Next up: pick and place machine maybe? Haha.

Moteino Power Shield now available

I kept talking about it here and there in the forum and the blog. And finally now it’s for real. Parts have been sitting around for weeks and I finally managed to free up some time and get a few assembled, take some shots and put it up on the shop. I know a lot of people asked “how about if you have projects that require 5V because of some special sensors”. So this little board came about for that specific reason. And since I was at work generating 5V from almost nothing, why not add a lipo charger, a voltage level detector, a little prototyping area and a switch (but maybe not the kitchen sink) ?

The charger chip is the popular MCP73871, charges at 500mA via USM mini-B and has a charging status LED. The booster is the mighty TPS61220 adjustable output boost regulator. The output voltage is 5V by default. It can be switched to 3.3V if wanted, by means of a solder jumper:

Even though it works, you should avoid trying to get 3.3V output from a 3.7V lithium battery, because … well … it defeats the purpose of it. Try getting 3.3V output from something much less than that, say a AA/AAA cell, that will put this board to good use.

I’ve started using this to power MotionMote from a small 400mA battery since the PIR sensor requires at least 5V, and Moteino will work great with 5V input (on “VIN”). So that’s a great application, and battery voltage monitoring comes included, sweet. The little lipo won’t last a long time (actually I don’t know how long … we’ll see), but when it does, I can see it from the incoming battery level indicator, and then just quickly recharge it. Not awfully inconvenient. The battery voltage monitor is just a VCC-1Meg-470K+0.1uF-GND circuit which divides the voltage and feeds it into Moteino analog pin A7 where you can read it as analog and interpret it according to what battery you got hooked up. A formula that I use for batteries up to 9V is:

int batteryReading = analogRead(A7);
float battV = ((float)batteryReading * 3.3 * 9)/(1023*2.976);

As you can see there’s also a small prototyping area. The Moteino can be mounted above or below, your choice, just keep the power pins aligned of course. The switch should be OFF to avoid loads when charging and let the charger exert its love on the battery uninterrupted.

At this point it hasn’t been extensively tested but I’ve had no issues using it in my projects. And hey this little board will resurrect your AA batteries from among the many dead you surely have around (you didn’t throw all those away right?). Getting 5V/3.3V from as low as 0.7 is not too hard for the Moteino Power Shield.

Eagle schematic and layout are available on Github.