Install and test these applications on your computer. Eagle’up has been developed and tested on Windows platform. Each tool exists as well on Mac and Linux platforms, feel free to comment on the compatibility.

Then download the following archive and unzip it somewhere on your hard drive. (note the archive contains .bat and .scr files that can trigger your antivirus, they are completely safe, thanks Cadsoft for choosing the scr extension).

Step 2 : export from Eagle

Now that the tools are installed, let’s start with the export of the board and components from Eagle. Note: for best accuracy the width of the dimension lines should be set to zero.

In Eagle, open your project and switch to the board editor. Click on the SCR button and select Eagle_up export.scr This scripts exports the PCB layers and components list in the current active project. High resolution png images are generated for the silk, copper, drills and masks layers. Then you are requested to type the PCB thickness (1,6mm by default) so that the PCB model matches your real board. The script generates a text file with a line for each component of your layout. It contains information of placement, side and orientation, as well as the name of the package. This file can be edited by hand if necessary. You find new files in your project folder.

Eagle generates warning if the png files already exist. I have not found how to disable these boring popups sorry. Open the txt file to check the formatting :

The first line describes the board outline. The information uses the layer 20 in Eagle. Currently a rectangle including your outline is exported. If you want a fancy and rounded board you will have to model it yourself in SketchUp (it’s very simple).

The following lines are used to drill holes in the board, like with a CNC machine. Values are X and Y coordinates, radius and half thickness.

Then each line gives the component name (for reference), the x and y coordinates in mm, the orientation, the value (for reference), the package name and finally the z coordinate. The board is placed symmetrically in the model, no jealous. There is a final comma as the Ruby import was not working well without.

The PCB image rendering is based on the previous work of Thomas from Madwizard. In Eagle’up the rendering has been automatized and simplified.

Step 3 : import into SketchUp

Launch SketchUp. I use the template engineering in meters. Does this seem quite large for electronics components. I model all my devices with a 1000:1 scale, so that 1 meter in SketchUp is equal to 1 mm in real. I took this habit as SketchUp was not handling correctly the small dimensions. Feel free to use mm or other units, as long as you keep the same unit everywhere it should go well.

First of all, delete any object present in your model (in my case the human character). The import needs to start from a blank page.

You should have a menu called Plugins in the menu bar. Select “Import design from Eagle” as shown below.

I have not found how to call the common dialog to select a file (any idea?) so you have to type or copy/paste the path of the txt file generated previously.

The Ruby plugin begins by creating the board and apply a green color. Then it imports models of your components. The plugin assumes that they are stored in C:\Program Files\EAGLE-5.9.0\models\ and have the same name as the device package (for example R0603.skp). That’s not very flexible but should work. If you are using a different version of Eagle, open the file eagle_import.rb with your favorite text editor and modify the first line.

If you have not yet modeled a component, a message will warn you. Note the error in the package name (should be MH3,6STD). Very bad idea to use a comma in a package name !

A message indicates that the plugin finished the import. You should normally get this model : (rotate by keeping the middle button of your mouse pressed)

Starts to look good, no ?

At this point you can edit the model, improve the board outline …

Step 4 : generate realistic PCB images

To render the PCB image I use Image Magick. This small utility accepts command lines and can deeply process any kind of images. Edit the batch file if you are curious of details.

The batch file generate PCB images.bat combines the png files generated earlier and color them to get a realistic view of a finished board with stop mask. The colors are chosen for the classic green finish mask, but can be changed to any colors, see the complete list of colors.

Run the batch file from the folder containing the png files (i.e. your project folder). After a few seconds you should have two new png files :

Unfortunately Eagle considers the components largest outlines for the export and not the real board outline, so we have some extra board to cut before importing the image in SketchUp. You can see a thin white line around the real board outline. In Gimp I simply use the magic wand tool and click inside the board near the outline, then image menu and fit canvas to selection. This shrinks the image to the exact dimensions of the board.

Save the file and repeat for the other side. We now have proper boards :

Step 5 : Apply the PCB image on the 3D model

Almost done. In SketchUp, click on the menu File then Import. On the right choose “Use as texture“. Select your board_top.png file. Orientate your model for easy access to the two corners and select the endpoints as shown below :

You can improve the texture quality by changing a setting, see the FAQ page.

Repeat on the bottom side. Save your new model.

You are done. Was it difficult ?

—-

I leave the comments open on this page so you can comment and ask directly here

Your way to create a 3D model of all the board,
entirely in Google SketchUP,is better.

I’ve followed this tutorial.
I opened your board in Eagle 5.7
and I launched the ULP file.
.PNG and .TXT files has been correctly created.
Then I’ve launched the plugin
in Google SketchUP 7.1
It asked me the path of .TXT file;
i’ve inserted it correctly.
BUT nothing more happens 😦
nothing is drawn.. no error message.. nothing.
Models are in correct directory
in Eagle 5.7 and I’ve modified
the first line of plugin script.

Hello Michele,
The error probably comes from the different way of writing a decimal number. Eagle always use the period (.) while Sketchup uses the system settings. If it is set for comma (,) it crashes without warning in the current version.
I have the next version almost ready (includes many improvements and easier to use) but I have been very busy the last few weeks and could not complete the testing. I hope I can release it this month.
Jerome

Hi Erik,
I will publish v4 this week. It handles user defined board shapes and fixes some bugs.

I understand your issue on Mac OS with Sketchup. I will try to have a look. One known issue is the decimal system. In some cases the numbers are not recognized and the scripts stop 😦 I have to add a search and replace for decimal.

Hello John,
v4 is on the way. Can’t give a date as we want to release stable and tested scripts.
As a teaser we can say that the automatisation is pushed a lot forward and it does not require manual steps anymore : image creation, crop and placement on the board are automatized.
Eric has also worked on interaction between Eagle and Sketchup so that mechanical engineers can run all from sketchup directly.
The website will be reviewed for the release as most of the tutorials need updates. Feel free to send me an original board to serve as example.
Jerome