Having cheap PCB’s made part 2.

A while ago i made a popular post about having cheap PCB’s made. Some things have changed so it’s time for a new post.

BatchPCB is now OSH Park.

EuroCircuits have broadened their range of services to better cater to prototype runs and hobbyists.

Seeedstudio have a PCB prototype service.

Where there are lots of suppliers and customers shopping for the best price, sooner or later someone is going to set up a price comparison site like : PCBShopper.

The most interesting manufacturer for me is now DirtyPCBs (from the people behind Dangerous Prototypes who made the Bus Pirate), my last 3 batches were ordered there.

The first batch was a new run of the LivingColors Arduino shield.

New batch of LivingColors Arduino shields.
New batch of LivingColors Arduino shields.

The second batch was a breakout board for the NiceRF SX1276 LoRa module. Here i experimented a little with contour routing.

SX1276 module breakout board.
SX1276 module breakout board.

The third batch was an adapter board to use no-name CC2500 modules in boards designed for the Quasar QFM-TRX1-24G. The boards are small (about 20 mm x 25 mm) and the minimal size for dirtypcbs PCB’s is 100 mm x 100 mm. Here I experimented with breakout panels, putting 4 PCB’s in one design.

Adapter boards
Adapter boards

The end result worked out nicely, two things I’d do better now are :

  • Position the “mouse bites” differently so the rough edges won’t protrude, see this post.
  • Copy and fixate the silkscreen text to a new layer before copying and rotating the sub-PCB’s. If you look closely at the PCB’s you’ll see that the text didn’t rotate with the rotated copies of the traces. That’s what you want for a big PCB but not for a breakout PCB. There is a ULP for that and a nice tutorial.




Export Eagle to Sketchup

3D view of Eagle project.

Generating 3D views of Cadsoft Eagle projects can be done with Eagle3D. Eagle3D generates POV-Ray scrips from Eagle PCB’s. The board and parts can then be rendered in POV-Ray. I have done this to make pretty pictures of the Arduino CC2500 shields.

Arduino CC2500 Shield rendered in Eagle3D
Arduino CC2500 Shield rendered in Eagle3D

Relevant links :

Eagle3D main site : http://www.matwei.de/doku.php?id=en:eagle3d:eagle3d
Eagle 3D at BerliOS : http://developer.berlios.de/projects/eagle3d/
Cadsoft Eagle : http://www.cadsoft.de/index.htm
POV-Ray : http://www.povray.org/

Eagle project as a 3D design.

The problem with Eagle3D is that it only generates images. The 3D design cannot be edited and the data can not be used for manufacturing.

A logical solution is to generate a 3D CAD file that can be edited and can be used for manufacturing. The popular choice for product design in the “maker scene” is Google Sketchup. It is extendable in Ruby, and there are are extensions available to export to 3D printers (see Shapeways and Ponoko) and lasercutters via Inkscape and the Faces-to-SVG plugin (see Ponoko).


The people behind the Gumstix have done some work on Eagle – Sketchup integration. Documentation is a bit sketchy and the latest projectfiles are from 2009.

Relevant links :

The Eagle and Sketchup scripts : http://pubs.gumstix.com/models/ulp/
Sketchup models : http://sketchup.google.com/3dwarehouse/search?uq=1182539586607624671355485&scoring=m


EagleUp is a set of scripts in Eagle and Sketchup. It generates files and images in Eagle that can be imported with a script in Sketchup.

EagleUp is still in an early version but it is well documented. I plan to use it and have been tweaking the code.

Relevant links :

EagleUp : http://eagleup.wordpress.com/why-eagleup/


There are a couple of problems with the Eagle – Sketchup integration.


Google Sketchup uses inches as 64 bit floats, precise enough for product design, but has an internal fixed 1 mil (0.0254 mm) tolerance. Faces and lines cannot have points that are closer to each other than this 1 mil tolerance. It is not really in the manual but I found a confirmation here : http://forums.sketchucation.com/viewtopic.php?f=15&t=25175&p=219030&hilit=precision#p218989

A discussion on the issue can be found here :

To avoid this issue the EagleUp author scales the design x 1000. That will not  matter for the pictures but it could complicate manufacturing and combining parts.


Eagle3D has a huge amount of parts available, Matthias Weißer made it possible to make a part parametric and uses one model for say, all pin headers with 4 up to 50 pins. EagleUp parts are Sketchup models and there are only a few available.

Better Tag Cloud