With the version 4, eagleUp is much simpler and intuitive to use. Here is a short tutorial that will walk you through the steps from a 2D design to an enclosed 3D model.
Open your project with Eagle as usual. Make sure that your board has a closed contour on layer 20 (Dimensions). It can be a rectangle, a complex polygon with rounded edges… Unfortunately at this step a circular contour does not work as it has no edges.
For better accuracy, set the width of your outline to zero so it’s as thin as possible.
The board provided for the tutorial is ready to use. No action needed.
Export from Eagle
For this small tutorial I provide a demo project with a layout and the corresponding schematics. Please consider this only as a material for modelling. The initial idea was to make a simple 4-bit meter for analog signal. As a circuit it probably does not work !
Run the ULP “eagleUp_export.ulp”. You can click on File / Run / eagleUp_export.ulp.
A window with various settings will appear. Here you can set the colour of your board, the type of plating. The images will look better with the 1200 dpi resolution, but the model will get heavier and slower, so you should use it for small boards only. 600 dpi is ok most of the time and has sufficient details. If you have a very large board or want a quick preview you can use the 300 dpi but the quality of the texts will be lower.
You can use the tPlace layer for the silk screen, or tPlace + tNames if you have placed the designators correctly.
If you have a large board and just want a quick preview of the board and components you can select the no image option. It skips all the steps related to image creation so it is much faster.
If you want to try different color sets for your board, try the custom solder mask color. A popup will prompt two hexadecimal colors : one for the mask over copper (usually lighter) and one for mask over epoxy (darker). You can find a color generator here. Share your best results !
Press OK to launch the export. It should take just a few seconds, then you are back to your design. Users of older versions of Eagle ( before 5.11) might see popups asking for the overwrite of the image files.
The export script writes in the folder of your design a *.eup file with the details of your board : shape, thickness, position of the packages, and exports some images of the copper, silk and masks. These images will be mixed to create a realistic view of the PCB.
You can run the export script as many times as you want with different settings to see their effects.
After a successful export you will see a popup. If a new version of eagleUp is available you will get a notification as well.
Import in Sketchup
Open Sketchup. If asked, set the template to engineering in meters. It is convenient to draw. I enter the dimensions in meters instead of millimeters to achieve smaller details. You can delete any object included in the template.
Click on the Plugins menu, then import design from Eagle.
Browse to your project directory and select the eup file previously generated. You will see several terminal popup and disappear during the creation of the PCB images. This step can take a few minutes with a large design on a slow computer. Just be patient.
If all goes well, after a few seconds you will see a popup saying
Eagle'up import completed Missing packages: 1X02
The import is completed. There was no model for the pinheads so it is listed as missing.
Note : if you are experiencing issues with the import in Sketchup, enable the ruby console in Window / Ruby console before running the plugin. This will give useful information.
Here you go. A nice model of your previously 2D design. But will it fit in an enclosure ? No project is completed before being in a nice enclosure, right ?
Use the measurements tools of Sketchup to get an idea of the dimensions of your project :
Remember the unit is mm and not meter. Well it seems that Sparkfun Soapbox could be a match for our project.
From the datasheet provided you can try to model the enclosure. To save some time I have included this enclosure in the models. So you just have to click on File / import. Browse to your /models directory and select Soapbox.skp
You can rotate and translate the half-shell below your board to check the fitting. At this point you will usually notice conflicts and collisions.
At this point you can manipulate the board and the enclosure, check for the mounting points, attachments… before having the real board or even purchase the enclosure. CAD saves time, money and a lot of effort !
You may have noticed that the Led pins were quite long. That’s because we have not yet cut them to the proper length. Let’s close the enclosure and check the length needed to have the Leds visible from the outside.
The easiest is to duplicate the half-shelf with the rotate function. Press Control once and it will rotate+copy. Since the shell is symmetrical you can use the middle point of the small side like shown below. Much quicker than trying to add a new instance and try to align it by hand.
With the top shell in place, select it and hide it (contextual menu). You can un-hide it at any time with edit / unhide all.
Now select the four Leds, and move them up (along the blue axis).
Unhide All, and check if the Leds are visible above the enclosure. Repeat until you like the position of the Leds.
For a final check you can apply a translucent material to the top shell. I use Translucent Glass Block Dark. Everything seems all right inside. You can now take measures of the location of the Leds, so you know where to drill the enclosure.
This project is not finished. You can complete the model by adding some proper connectors for the input signal and for the battery, and an On/Off switch. Maybe a larger enclosure will be necessary after all !
I hope this small tutorial shows you the benefits of a 3D modelling of your electronic layout. Please ask in the comments if you need more detailed step.
55 thoughts on “Tutorial”
It is working fine, I had troubles with the old version and my OS but with the new Eagleup, its working just perfect, I have to thank to everyone who made this possible. I will show my students this freeware.
Found this neat little thing lately on the net and heavily used it, very useful, also for work with SolidWorks with a STL Im/Export between SketchUp and SW.
The only thing that realy bothers me is, when can I use round structures? Can there be a deeper dig on this, at least regarding documentation to avoid running into trouble and getting stuck in the mud? Thanks to all involved.
Cheers from Germany
The only limitation regarding a round PCB is that it needs to be defined by two arcs (two half circles) of width=0.
WOW! This is great!
I used to just use a green square to represent my board and if I needed I would place some components in place by measuring their position. this will be a lot easier now that I can see where they should be placed!
After the import into sketch up it complains about missing packages.
Where should these packages be?
in your models/ folder. You can have as many sub-folder as you want.
I’m using Ubuntu 11.10.
Sketchup, Eagle and imagemagick work like a charm.
But which paths do you have to fill in when running the EagleUp.ulp for the first time? There is no convert.exe or other to point to in linux.
Or can you just leave them blank?
Don’t you have convert in your bin or sbin folder ?
Thanx for pointing that out.
The composite and convert files are located in /usr/bin/.
Excellent work. However I did follow the instructions for this example and all components are missing at the end (the board is perfect !).
Is there something that I’m missing?
Note: using Eagle 6.1.0, Eagleup 4.3, Googlesketch up 8 and ImageMagick-6.7.4-Q16
Missing models could come from :
– wrong path set in the general settings
– skp files missing
In particular check eagle version if you placed it in C:/Program Files/Eagle x.y.z/models/
For me it works but have 2 issues,
1. The default paths are wrong, easy to fix.
C:/Program Files (x86)/EAGLE-6.2.0/models/
C:/Program Files (x86)/ImageMagick-6.7.6-Q8/convert.exe
C:/Program Files (x86)/ImageMagick-6.7.6-Q8/composite.exe
2. The *board_top&*board_bottem files come out pure ivory, so all i see is a ivory board with components on it.
Default paths need to be adjusted depending on your system settings.
I recommend an older version of ImageMagick, see the note on Installation page.
I am having exactly the some problem and I have downloaded the ImageMagick version you have suggested. I imagine no one has a correction for this yet.
I installed everything, but is showing a error when I export for ULP. This error:
Can´t open ‘C:\ Program Files (x86)\Eagle-6.2.0\projects\demofiles\eagleUp\demo3d.eup’
No such file or directory.
What´s a problem?
– does the folder exist ?
– do you have write permission on this folder ?
A general recommendation is to avoid storing files in a project folder, it makes it harder to backup your files.
Ok, I created the folder. Thank very much.
I have installed all and it work fine. But I don’t see any net, only the components on board? Someone have this problem?
Which version of ImageMagick have you installed ? Some versions are known to be problematic.
In any case, 6.7.8-5-Q8 is fine.
same here, using both 6.8.2-2-Q8-x86 dll and 6.8.2-2-Q16-x64 dll on a Win8 64-bit.
Components are shown, but there isn’t any net.
Another thing is that the board is not in the right place, I have to move it up a little to see components on the bottom side, and there are a couple of mm between the top side components and the board.
I’ve managed to correct the problem. I’ve downloaded version 6.7.6-6-q8 of Image Magick and then it worked. You can find it here:
Concerning your other problem, it’s caused when you import our board over another. I recommend you to create a new file or delete the previous board each time you import a new one.
Can you try with this version :
I have just checked this older version and it works ok.
Maybe imagemagick API has changed in the latest releases.
Version 6.8.0-6-q8 worked like a charm, as did the hint to use a new file for each import.
Thanks for your suggestions,
and thanks Jerome for the great tool you provided us.
Everytime I use the EagleUp ULP it disables the “display pad names” setting of Eagle (options -> set -> misc). Is there a way to solve this?
Pad names need to be disabled to generate the PCB texture. In the ULP this is done with the line :
cmd += “SET PAD_NAMES OFF;\n”; // hide pad name in case they were visible
Eagle scripting language does not offer a way to check if the parameter is On or Off (a GET function). So it will not be restored.
You can either :
1- set it back manually (assign a keyboard shortcut or a menu bar button)
2- replace the line 1333, but it will then always set it On !
cmd += “display NONE ” + active_layers + “\nSET PAD_NAMES ON;\n”;
I recommend option 1.
I am having exactly the some problem (Róbson Fernando – 04/05/2012), but the folder exist, and I have full permission on this folder (none system volume)… “eagleUp_export.ulp” created 04.07.2012.
What is the exact path of your eup file ?
check that the general setting for the export sub folder is only a sub folder (for ex 3d export) and not a complete path that would cause an error.
Yes! It is working!
Thanks for your suggestions, Jerome. Nice tool.
Using: Win 7SP1, Eagle 6.1.0, Eagleup 4.4, SketchUp 8 and ImageMagick-6.8.0-Q8_windows-static.
After installing EagleUp I ran the Sketchup plugin – used the demo PCB … .
Part of the PCB appears in SketchUp, but a message confirms the components are missing.
Is the reason that I did not locate the proper directory. And if so, where to locate them?
The best location for the models is in a folder where you store your designs.
User files in the Program Files folder is not a good habit.
Make sure the path in the eagleUp settings match the path of your files.
ÍI have a small problem. I installed everything, the demo working fine, but my PCB is nor visible in the sketchup
Ruby console stops at here:
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:84:in `chdir’
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:84:in `import_file’
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:76:in `import’
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:838
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:84:in `call’
C:/Program Files (x86)/Google/Google SketchUp 8/Plugins/eagleUp_import.rb:84
Please help be what is a problem
Can you give the path where is your eup file is saved ?
The new version of Google Sketch Up does not have the PlugIns menu listing. It requires an RBZ file to be installed using the Window/Preferences/Plugins menu system. It does not like the current RB file.
I am surprised to hear that the recent versions of Sketchup is not compatible with the older plugins. What is the issue exactly ? You might have to create by hand the Plugins folder. Then copy paste the rb file, and restart Sketchup.
Otherwise it is possible to convert simply the rb into rbz :
compress eagleUp_import.rb in eagleUp_import.zip
rename eagleUp_import.zip as eagleUp_import.rbz
try installing it with the new installer
Success with EAGLE v6.4, eagleUp v4.4, and ImageMagick-6.8.0-6-Q8-windows-dll.exe. More thanks to Jerome and other developers! Hope eagleup keeps its momentum!
For anyone using OSH Park, the custom board color I use is 0x330053 and the trace color is 0x401264. These are the colors from board renders on OSHPark website
thanks for tutorial. very helped to me…
Thanks for the tutorial and your patient replies to everybody. I have installed everything but I have a problem. Imported the EUP in sketchup but shows that all models are missing and nothing is visible. Am I wrong with any of my paths?
Eagle’up import completed
OS: Win 7 home premium
Eagle in R:\Rcp\PCB Manufacturing\Eagle 6.3\projects\examples\demo3d.brd
Sktchup in C:\Program Files (x86)\Google\Google SketchUp 8
Imagemagic in C:\Program Files (x86)\ImageMagick-6.8.0-Q8
Eagle3d in R:\Rcp\PCB Manufacturing\Eagle 6.3\eagle3d
Eagleup ULP settings
Models path: R:/Rcp/PCB Manufacturing/Eagle 6.3/models/./
convert.exe path: C:/Program Files (x86)/ImageMagick-6.8.0-Q8/convert.exe
Composite.exe path: C:/Program Files (x86)/ImageMagick-6.8.0-Q8/composite.exe
export subfolder: R:/Rcp/PCB Manufacturing/Eagle 6.3/projects/examples/eagleUp
Models in R:\Rcp\PCB Manufacturing\Eagle 6.3\models
EUP in R:\Rcp\PCB Manufacturing\Eagle 6.3\projects\examples\eagleUp
as a quick guess I would say the paths should be :
Models path: R:/Rcp/PCB Manufacturing/Eagle 6.3/models/
export subfolder: eagleUp
The subfolder is just the name of the folder that will be created where your brd and sch files are.
IT WORKS !!! Thanks. That was a quick reply. Made the corrections that you suggested.
Another mistake that I committed. I had earlier chosen the template “Architectural design – millimeters” and when I imported the EUP file it suggested “it seems that C1206 is quite large. Do you want to resize it?”. This was the case for each component and in the end all the components lay piled up at the origin.
When I chose the template “Simple template – meters” it was smooth and no errors. I could see the board straightaway. Hope these points help the others.
Thanks again. Wonderful tool that you have made.
i downloaded yout program, sketchup 13.0.4812, and imagemagick 6.8.7-5-Q8-x86-dll.exe. All is installed and the paths are seted up in your eagle script.
1. When i convert your Examble there are no errors. I import it in Sketchup and see that everything works fine. I see the board, the layout……
2. When i convert my own board, a simple Atmel mega8 with peripherie, there are no errors when running your script. In the directory of my Project is now the eagleUP directory containing the images and the .eup file. When i now try to imnport the .eup in Sketchup, using your plugin, nothing happens. There ar no errors, no windows which popup, no board shown, just nothing. Its like i never tryed to import.
Is this a known Problem? Can you help me please, because i wanna use your program cause its great.
I suspect the path of your own project contains non latin characters which are not very well supported by Sketchup.
You can try to place temporarily your files in for exemple C:\test
Also, try opening the Ruby console (in Window menu) before importing the eup file.
Sketchup seems to hang when I click try and use the Eagle Plugin. I enabled the Ruby Console to get clues but nothing appears there. Any ideas?
do you see the dialog to select your file or not ?
Can you give more info on your platform, sketchup version …
Hi, thanks for response.
I see the dialogue and can select a file. Once i’ve clicked on ‘Open’ button the dialogue box goes and then nothing else appears to happen.
Eagle 6.5.0 for Linux Standard Edition
Eagle up as per “eagleUp4.4.zip”
Ubuntu 13.10 Desktop 32 bit (Linux 3.11.0-15-generic)
I have tried with the latet Sketchup 13 first off but the same behaviour is observed. I rolled back to Sketchup 8 as that seemed to be the last version wineHQ listed as working well. I saw some advice here about using Moonlight 4 but can’t seem to get hold of the install for it. The link given here was http://go.microsoft.com/fwlink/?LinkID=149156&v=4.0 which is somehow dynamic or redirected and doesn’t lead me to ver4. I had to set user agent in my browser to get microsoft site to treat me as if detected OS is windows which works but no dice on getting older version from the site.
I think that is everything! 🙂
If you need any other specific info i’ll try and oblige. If you have any idea what could be causing the issue I’ll be grateful.
Many thanks and best regards,
Thought I would share an idea….
An alternative way to generate your boards PNG tracks, silkscreen etc file is to visit http://mayhewlabs.com/3dpcb and select launch 3D Gerber viewer, then drag and drop your boards Gerber files and hit enter. The web app will generate a 3D view of just your board (no components of course). You can save this as a PNG and then import it into Sketchup. I find it is a bit quicker and looks pretty detailed.
Thanks for sharing your idea. I personally think this method is slower when you take into account all the necessary steps, but if you like the color scheme you can pick the colors with any image editor and use them in eagleUp for your custom color board. Feel free to share them here.
I just wanted to let you know that I think eagleUp is amazing. I was only using mayhew labs to generate the PNG file for the tracks and silkscreen 🙂
I’m working on a new design now for controlling a motor with a wireless connection and will send you the component models when they’re ready.
I have a small problem. I installed everything, the demo working fine, but my PCB is not visible in the sketchup
Ruby console stops at here:
eagleUp > open file C:\Users\Shri\Desktop\New folder\demo files\eagleUp\demo3d.eup
system > settings imported
system > testing units
system > 100 inch = 2.54m
system > template meters ok
system > using dot as decimal separator
color > colors set
images > creating top and bottom images
Error: #<NoMethodError: undefined method `each' for #>
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:734:in `create_images’
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:399:in `block in import_file’
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:140:in `each’
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:140:in `import_file’
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:76:in `import’
C:/Program Files/SketchUp/SketchUp 2014/Tools/eagleUp_import.rb:838:in `block in ‘
For sketchup 14 plugin path modified to: location of the Plugins folder is C:\Users\[your user name here]\AppData\Roaming\SketchUp\SketchUp 2014\SketchUp\Plugins
For Sketchup 2014 please read :
Hi 🙂 I need Engineering-meters templete(.skp) but I haven’t got it inside Sketchup . I searched it in web but I can’t find it anywhere. Please help me 🙂
Hi. In Sketchup 2015 you can use the template “Construction – Documentation meters”.
i have a sketchup model then how i can save it to eagle so it will appear automatically on skecthup with my PCB?
You can create an Eagle part, either just a footprint, or a full device with symbol (for sch) and footprint.
Make sure the footprint name matches the skp file. Place the skp file in your models folder.
eagleUp will add the new models to your board like a regular part. You do not need to have electrical contacts, silkscreen or anything.
I recommend you add some lines to the tDoc layer (or any other layer you use for documenting) to show you where the model will end up while you are working in Eagle.