How to make PCB Arduino Uno Shape

Here is another process to get an outline, and holes, from an existing (breadboard) part. This works because usually the board shape and holes are a single path element in the svg file.

Create a new part from the existing part, export it, unzip the .fzpz file. That gets the separate part definition and svg image files for the part.

Delete everything from the breadboard image except the board outline shape. That can be done various ways. With Inkscape, select all, ungroup, deselect the board outline, delete. Might have to repeat, depending how the original part graphics are grouped.

Being familiar with the xml and svg file structure, I just use a text editor, search for the board outline path element (usually big, usually the first in the file), and delete everything else. The result of that is below. That contains the board shape, plus mounting holes, plus holes for each of the header pins.

uno-bb

Getting rid of the head pin holes is a bit trickier. They are embedded in the path element along with the mounting holes. In this case it was easy in a text editor. The mounting holes were the first interior cutouts in the shape, so just needed to delete all of the closed shapes after the 5th (the board is one closed area, plus the four mounting holes). Closed shapes are strings starting with “m” and ending with “z” in the path. That result follows. This is exactly as accurate as the original part definition. No coordinates where changed.

uno-bb-01

Because some of the original board components extended beyond the outline (usb and power jack), that leaves unwanted empty space to the left of the board outline. The final cleanup is to load that into Inkscape, select the shape, change the x and y coordinates to zero, then in the edit menu change the page size to match the selection. Final result.

uno-bb-02

With variations in the tools used, this is something that many Fritzing users should be able to do themselves. It is just a matter of knowning where to get the pieces, and the steps to follow.

WARNING:
Because of a bug in Fritzing’s handling of board shapes when exporting to gerber, the above images will not work correctly for custom pcb shapes. Only the first mounting hole will be in the correct location. The fix for that, is to change those relative move “m” commands in the path, into absolute “M” commands. Initially I thought that changing to “M” and recalculating the move coordinates would be enough, but the svg file contained a mix of relative and absolute commands for the circles. I needed to create the hole cutouts from scratch. The image below, with possible colour change, should work as a pcb shape, and create the correct hole cutouts when exported to gerber.

uno-bb-03