Extending EagleCAD With Python

eagleAlthough it’s derided for not being open source, EagleCAD is an extremely popular piece of schematic and PCB layout software. Most of the popularity is probably due to the incredible amount of part libraries – it’s certainly not the features Eagle has to offer or its horrible scripting capabilities. [Rob] had enough of the lack of good scripting support in Eagle, so he’s been spending his time making Eagle’s ULP work with Python. He’s only been at it a short time, but already it’s much more usable than the usual Eagle scripts.

Below you can check out a pair of videos of [Rob]‘s Python tools for Eagle in action. The first video goes through aligning a few symbols and creating a board outline (with proper curves!) from a DXF file. The second video shows exactly how valuable these tools are when laying out a board: imagine hundreds of LEDs and resistors automatically aligned to each other with a single click of a mouse. Beautiful.

All the PyEagle stuff is available on [Rob]‘s github, with a DXF importer, group manager, and alignment tool included. Now that everything’s Python, it’s easy to build your own tools without relying on Eagle’s odd ULP language.

[Read more...]

How To Laser Cut Mylar Solder Stencils

Solder Stencil

When you think about the difficulties of working with surface mount components, the first thing that often comes to mind is trying to solder those tiny little parts. Instead of soldering those parts by hand, you can actually apply solder paste to the pads and place all of the components on at once. You can then heat up the entire board so all of the parts are soldered simultaneously. It sounds so much easier! The only problem is you then need a solder stencil. You somehow have to get a thin sheet of material that has a perfectly sized hole where all of your solder pads are. It’s not exactly trivial to cut them out by hand.

[Juan] recently learned a new trick to make cutting solder stencils a less painful process. He uses a laser cutter to cut Mylar sheets into stencils. [Juan] appears to be using EagleCAD and Express PCB. Both tools are available for free to hobbyists. The first step in the process is to export the top and bottom cream layers from your CAD software.

The next step is to shrink the size of the solder pads just a little bit. This is to compensate for the inevitable melting that will be caused by the heat from the laser. Without this step, the pads will likely end up a little bit too big. If your CAD software exports the files as gerbers, [Juan] explains how to re-size the pads using ViewMate. If they are exported as DXF files, he explains how to scale them using AutoCAD. The re-sized file is then exported as a PDF.

[Juan's] trick is to actually cut two pieces of 7mil Mylar at the same time. The laser must be calibrated to cut all the way through the top sheet, but only part way into the bottom piece. The laser ends up slightly melting the edges of the little cut out squares. These then get stuck to the bottom Mylar sheet. When you are all done cutting, you can simply pull the sheets apart and end up with one perfect solder stencil and one scrap piece. [Juan] used a Full Spectrum 120W laser cutter at Dallas Makerspace. If you happen to have this same machine, he actually included all of the laser settings on his site.

Stylish OLED Watch Uses Accelerometer Instead of Buttons

A few days ago [Andrew] contacted us to offer his help for the design of the mooltipass project case. While introducing himself, he casually mentioned his OLED watch that you can see above.

The watch is based on the low-power MSP430F microcontroller from Texas Instruments. It can consume as little as 1.5uA while maintaining a real-time clock and monitoring interrupts. It also uses ferroelectric RAM, which doesn’t need any power to retain its memory contents. That means there’s no need to set the time again if you remove the CR2016 battery that powers the watch.

[Andrew] chose an 0.96″ OLED display that only consumes up to 7mA. He also included an accelerometer that allows him to interact with the watch through its single and double tap detecting feature. He modeled his PCB using EagleCAD and the whole assembly using Sketchup. Most of the components were soldered in his reflow (toaster) oven. The final result is a mere 8.8mm thick and looks very professional in our opinion.

Persistence of Vision Planetary Map

POV planetary map

Looking at the looping GIF above you’re probably thinking, oh, another hard drive POV setup… Well… Not quite.

This is one of [Dev's] latest projects, and it is a planetary map that shows the angular positions of all 8 of the major celestial bodies from any given date between 1800 and 2050. It’s also capable of showing analogue clock hands, the phases of the moon, and other simple graphics.

The main unit is a hard disk, but [Dev] milled off many of the features on it to give it a more exposed, purpose-built look. He designed the LED bearing PCB from scratch using EagleCAD, which sits on the back of the drive, with the spindle poking through. It has 8 rings of 5 surface mounted LEDs, which shine through opaque plastic diffuser rings that he printed using Shapeways — they feature small recesses to fit snugly on the board over the LEDs. On the top level is a 1mm thick black disc of some unknown material that [Dev] had sitting around, which now has 8 holes machined into it in the exact position of the LEDs.

A Cortex-M0 drives the LEDs using an LPCXpresso board which allows the LEDs to sit across only one byte of a hardware I/O port. On the software end, each rotation of the disk is segmented into three hundred and sixty 1 degree slices. This system allows him to achieve a circular resolution of 8×360 pixels at 25 frames per second. Not bad for a persistence of vision device!

Stick around after the break to see the rather entertaining demo video of the device.

[Read more...]

Script lets you import Eagle boards for use in FreeCAD

eagle-designs-imported-for-freecad

[Christian Aurich] wanted to use his Eagle CAD circuit board design in a proper CAD program in order to design enclosures. There are already a few options along these lines, but they didn’t quite fit his needs so he developed a script to import Eagle boards into FreeCAD. The script is packaged as a python macro for FreeCAD.

In describing the shortcomings of what’s already out there [Christian] does mention the use of EagleUp to model boards in Google SketchUp. But he feels the way the data is produced by SketchUp makes these models work well with 3D printing, but says they’re not easy to use with mechanical design CAD software. He also feels that the photo-realistic renderings are useless when developing enclosures.

It’s worth mentioning that this approach is only possible because CadSoft’s migration to XML makes it dead simple to get at the data.

CadSoft’s EAGLE 6 hits beta and packs goodies

Version 6 of the popular schematic and PCB layout software EAGLE is now in beta testing. The most notable change is the migration to XML file formats that we looked at last month.

[PT] didn’t waste any time getting his hands on the software and giving it a thorough test drive. The image seen above shows the files of a MintyBoost. It’s impossible to make out at this resolution, but it is indeed spitting out human-readable (well maybe) XML in the windows below instead of the ‘no trespassing’ binaries they used to use.

Earlier today when working on a feature we had to jump on a different computer that had EAGLE installed in order to look at a .SCH file. We wonder if someone will put out a rendering package that can parse the new format and spit out a quick PNG? At the very least, we expect to see some useful hacks for part replacement or pin swapping. It shouldn’t be too hard to poke around and figure out what happens when changing some of the stored values. Got anything in mind that you can do by editing these by hand?

Oh, we almost forgot! The biggest benefit you get from this is the increased version control compatiblity since programs like git will be able to perform diff functions on the files.

PCB milling tutorial

[Juan Jose Chong] put together a set of videos and a PDF guide to milling printed circuit boards. You’ll find the pair of videos, totaling about twenty-two minutes, embedded after the break. In them, [Jaun] details the techniques used by the IEEE chapter at Texas Tech University to mill PCBs instead of using the traditional method of etching them. We’ve long been a fan of milled PCBs and often dream about the day we can retire the old iron we use for the toner transfer method.

In the tutorial, IsoPro is the software used to control the mill. The CAM files from a PCB design program are imported – they can come from many different programs including EagleCAD. A few setup steps let the operator configure the resolution necessary to mill the correct tolerance and from there the paths that outline each trace are calculated in software. In order to facilitate double-sided boards a reference hole is drilled in the copper clad board to accept a post on the mill table. Tape down the substrate with some foil tape, set the depth of the end mill bit, and let the machine do its thing. [Juan's] video illustrates how quickly this can produce a rather complicated board, finishing in around 20 minutes.

[Read more...]

Follow

Get every new post delivered to your Inbox.

Join 92,099 other followers