How do you keep your MOSFETs running cool?
- Flyback diodes?
- Managing the PWM frequency?
- Big heat sinks?
- More MOSFETS in parallel?
Remember, no matter where you go, there you are.
Down at the Company Blog
How do you keep your MOSFETs running cool?
Remember, no matter where you go, there you are.
Years ago, it seemed like the last two weeks in December were just full of retrospectives on the year. It was all over the media all the time. I don't really hear so much of that any more, which might be a good thing, because it kind of made me a little sick at times. Certainly many lists are around, but it just doesn't seem to be such a big deal. Or maybe, I just don't pay attention anymore.
I'm in just that kind of a mood though, so I thought I'd put out my own little retrospective. It's not really a top-ten list, but close enough.
Trade shows: Still got to be the Embedded Systems Conference. I love engineer shows. Years ago, I used to go the Comdex and CES. Way, way back, I went to the West Coast Computer Faire (I was there when the Mac was first shown). Comdex and CES all so glurgy and more about hype then real stuff. At ESC, most of the companies are there showing things that I like and most of the attendees are there to actually learn. It's just cool.
It was kind of sad to see such a sharp decline in companies participating both in San Jose and Boston this year. I think we saw about the same number of folks wandering the show floor as past years, so that at least was good, but I do hope this show remains strong.
Embedded dev boards: This is a three-way tie between the Beagleboard, from Ti, the mbed, from NXP / Arm and a PIC based board that I made myself.
The Beagleboard really sets a new standard for power and accessibility in the embedded development world. As far as I can see, it's a game changer in those terms. Really fine work and making it affordable and open source has made it accessibly to a huge community that would likely have not jumped were it positioned as a high-cost closed development system.
The mbed does for ease of programming and learning what the Beagleboard does for power and features. mBed is truly amazing in terms of how easy it is to get up and running with a 32 bit processor. Again, I don't think I've seen this big of a leap in ease of development ever.
I could list the Arduino here, and it's a viable contender in the 8-bit class, but I'm more of a PIC guy and I'm a little biased toward mine because, well, it's mine. The Arduino gets enough attention in other places anyway. Mine is of a similar caste as Arduino, was first designed in 2005 and has gone through a number of iterations since. It has IMHO a better I/O structure and a little bus to easily connect to some small motor controllers I've designed.
New chip packaging: Package on Package (POP) has been around for a while, but I think it's just finally starting to come in to its own this year, and we've just started assembling it this year. It's a pretty cool way to chomp some more size out of a small little embedded design. The Ti OMAP (used in the Beagleboard) isn't the only POP that we've assembled here at Screaming Circuits, but it's probably the most visible example.
Consumerish thing: I'd have to say electronic ink, as used in the Kindle and other electronic book readers. I haven't spent a whole lot of time with any of these, so I'm not totally sure it's ready for prime time yet, but I think it's very cool and very promising.
Movement: This is a pretty easy one. The open source hardware movement (I hope). Open source has been serious business in the software world for a long time, but until recently, the hardware community hasn't jumped on the concept. Now we have Beagleboard, Arduino and a gazillion others. There are even a number of web sites pretty much devoted to open source hardware and related subjects like circuit bending.
My only concern is that the hardware folks may get overwhelmed and go back into hiding. Over on the Beagleboard Google group, though it's supposed to cover both HW and SW, the topics are virtually all software related. A few HW exclusive discussion boards (like chiphacker.com) have popped up and may get traction, but there's a lot of catching up to do.
My honorable mention in the movement department would be the closely related "after hours hardware" community. This includes hobbyists, circuit benders and hackers (of the good sort). I think the barriers to entry to starter hardware development are lower then any time since the early 1980's. That's a good thing. The more people involved in electronics as a hobby, the more we will have heading down that career path and the more new small businesses we will have start up. All a very good thing. Certainly a lot of creativity going on in this arena.
That's all I've got for now. So I'm calling the list closed. Maybe more later. Maybe
Merry Christmas, Yo, Ho, Ho Green Giant and A Bottle of Rum
I've been spending some time with the mbed here and I'm convinced that there are a lot of good uses for this little thing. One in particular popped in to my head with a lot of vigor.
Back in December of 2008, I listed ten (Octal) things to do to help get through a lousy economy (read #3). If you're pretty much a pure hardware engineer, now might just be a good time to develop some firmware skills.
In my mind, one of the biggest problems going from hardware to firmware isn't the programming itself. That's not really as tough to pick up as you might think. But it's the environment. The tool chains. The configurations. Make files, environment variables, linked libraries, boot loaders, ICSP, flag bits... There's a load of ancillary junk that gets in the way. Some micros require purchased proprietary compilers. Some use open source. Should you use C or C++ or ASM? Too many choices.
Well, here's something that gets rid of all of that extra junk. Plug in an mbed and in minutes you can be experimenting with C programming on an embedded micro controller. Use the onboard LEDs and sample programs to get instant gratification. Plug in some external LEDs or a sensor of some type (maybe from sparkfun) as you get a little more versed in the language. Save the data to the FLASH and graph it in Excel or something.
My personal feeling is that a hardware engineer is much more employable these days with the ability to write firmware. I haven't found a better way to get started then with an mbed. You can worry about all of the other details later, but use this little guy to teach yourself to code.
It's been a soft day's night, and I've been coding like a frog
I wrote about the new mbed development board a while back and mine just arrived over the holiday weekend. I have to say, true to it's promise, It was the easiest piece of development hardware that I've ever brought up:
That's ten steps, but it's only ten steps. There was nothing else to do. Nothing. The longest step was number seven which took me about two minutes. I programmed a "Knight Rider" sweeper with the four on-board LEDs. I made one of those for my Jack-o-lantern back at Halloween, so it was the first test program that popped into my head.
I built the Jack-o-lantern sweeper with eight LEDs and an 8 bit PIC16F819. The PIC I used came in an 18 pin thru-hole DIP package, costing $3.22 at Digi-Key, and I hand soldered it all on an old perf board. It runs at 20MHz, has 16 GPIO, 3.5K program code space, 256 bytes of FLASH and 256 bytes of RAM.
The 32 bit NXP LPC1764 runs at 100MHz in a 100 pin LQFP and costs $8.70 in quantity of one at Digi-Key. (The dev board, of course, costs more then that) It has 512K of program FLASH and 64K of RAM. The dev board can have up to 25 GPIO (the chip can have up to 70 GPIO with your hardware) along with the standard assortment of peripherals that can be configured, including six hardware PWM channels. The mbed dev board is like a breakout board configured as a 40 pin 0.1" DIP so it will be easy to prototype with.
The processor, being a fine-pitch package really isn't hand-solderable like the PIC except for by the most adventurous of folks, but that's where Screaming Circuits comes in. Why wait for your custom hardware before starting on the software. Get one of these mbed dev boards to work on your software while the EE folks are designing the custom hardware. Then, when they're done, we'll assemble up the prototypes and you can integrate it all together. Take some time out of your development schedule that way.
I've wanted to try out an ARM processor for quite a while, but prior to this, haven't found the right way to do so while keeping within the limits of my time availability and skill set, but this looks like it could very well do the job.
Dan got it. As for what it has to do with PCBs, well, not a whole lot except that my desk was all messy that day so I was using the carpet as a backdrop to photograph a pc board.
Yes. I know. It's a trick question, and not all that interesting in the end, but I was suffering from lack of sleep that day. I thought it just looked cool and so it seemed like a good idea at the time.
As you ponder that question, if you care to ponder that question, keep in mind that I have at my disposal, not just the work of my company, Screaming Circuits, but I have the entire Internets to draw from and the Internets have photos from all of the history of electronics. So, this photo might actually not relate directly to via-in-pad or small component tombstoning.
There will be no prize for the correct answers, but you will likely get at least 3.2 picoseconds of fame if you post your answer as a comment here. And while a picosecond may not seem like much, if you could save picoseconds in a leyden jar, and then do the same over and over again, you could eventually end up with a usable duration.
To have enough time
to do the things you want to do
you just need a fast enough internal clock speed
I'm always writing about stuff that goes wrong (and, hopefully doing a decent job of describing how to avoid such problems). But here it is, Friday the 13th - the traditional bad day of bad days. Break a mirror and watch a black cat cross your path while walking under a ladder.
Here's a QFP part we soldered on. The land-pattern was right. The size and spacing was good. The pad size was good. The fillets all look good. The solder-mask registration is good. No problems. It's an IPC, class II job and everything meets IPC class II. Cool.
No vias in these BGA pads. No open vias without mask near the pads. Decent registration on the soldermask. Nice, planar surface on the pads. Even the vias between the pads are plated over and masked off.
The via caps do look kind of funky, being bigger then the BGA land pads, but that's okay. It's just a nice decent silver finish PCB. And, no tarnish or surface contamination to be seen anywhere.
I've written about Open Source hardware before, such as the beagleboard and Arduino. Those are both great options for folks needing to get moving on embedded microcontroller development. The Arduino is pretty low-end and the Beagleboard is pretty high-end. I think I've run across a good step right in the middle.
A while back at the ESC show, we spoke with a gentleman from ARM about a project that would include an online IDE, and now, here it is. It's not exactly the same as open source, but it solves many of the same problems that open source solves. Mainly, it's a quick and easy way to get up and running with an ARM processor. Well, it looks easy, anyway. I haven't tried it yet. I think I'll see if I can get one and give it a shot.
By the way, we did not build this board. We have built some Beagleboards, but not this particular product. It certainly wouldn't be a problem for us, but that's not why I'm writing about it. It just looks like a great half-way point between something like the Atmel-based Arduino (or the PIC microcontrollers that I use) and the Beaglboard which uses the super-speedy ARM Cortex-A8.
If I can run one down and find the time to fiddle with it, I'll let you know what I think of it in actual use.
Stay tuned. Bulletins as event warrant.
I really like this picture. It's nothing particularly special. Just a BGA-type attachment point of load (POL) power module in the middle of a big PCB, but the contrasting colors, the angle, the range of focus, the component positioning... It just looks cool to me.
I know the function is supposed to be the most important thing, but I've always felt that there is a lot of art in PCB design. It's been said that an airplane that looks good will fly good and I think there's something in that phrase for electronics too.
No. I'm not advocating putting the visual appeal ahead of clock rise times, trace impedance and current capacity. It is first and foremost, an electronic device with an important function to deliver. But, I think a visually attractive, while still superbly functional, product makes a statement about the designer's overall attention to detail.
Or, it might just be making a statement about how tight the development schedule is...
David le Comte wrote:
"...On two layer boards (with 5V CMOS logic in particular) it is very difficult to pass CISP-22 EMC tests without a well grounded flood plane.
In the 1980s it became a requirement for more and more categories of electronic equipment to be tested for EMC compliance.
From first hand experience, I have seen how just adding a flood plane to two-layer boards can reduce EMC by 20dB. (We had to revise existing boards to pass EMC tests during the late 80s and 90s)..." (See his entire comment on the Circuits Assembly blog link above)
That brings up a very good point. EMI. In the prototype/experimental world and the hobby world, there are so many cases where EMI isn't too much of an issue. We don't always think about it. If your project is going into a consumer or business consumer product, no questions, though, EMI is a big consideration. As David indicates, a grounded pour or plane can go a long ways toward keeping stray interference down.
I wonder if an Arduino could pass any EMI standards. Has anyone run it through a lab? Maybe with some good shielding. I bet the "Knight Rider" teeth I made for my pumpkin this Halloween (with a point to point wired PIC16F819) just radiates all over the place.
Pore, pour, pitiful me