element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Autodesk EAGLE
  • Products
  • More
Autodesk EAGLE
EAGLE User Support (English) Eagle freezes if run from ulp to generate gerber files
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Autodesk EAGLE to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Verified Answer
  • Replies 14 replies
  • Subscribers 180 subscribers
  • Views 1923 views
  • Users 0 members are here
Related

Eagle freezes if run from ulp to generate gerber files

Former Member
Former Member over 11 years ago

I have a ULP to automate generation of gerberfiles.

In the ULP I use the following command:

 

system("\"" + EagleExe + "\" -X -x0.0 -y0.0 -O+ -c- -dGERBER_RS274X -o\"" + GerberFileName + "\" \"" + B.name + "\" tPlace tNames");

 

This usually works fine but in some cases it just freezes and nothing happens.

If I run the CAM processor manually i get the following warning:

Fullscreen contentimage_31710.html Download
<html><head><title>Jive SBS</title></head>
<body><font face="arial,helvetica,sans-serif">
<b>Error</b><br><font size="-1">
An general error occurred while processing your request.
</font></font></body></html>

 

The ULP probably freezes because of this warning, but the warning is not shown.

Eagle is probably waiting for me to answer the non visible dialog.

Is there some "silent mode" without warnings or some other way to sole this problem?

  • Sign in to reply
  • Cancel
Parents
  • dukepro
    0 dukepro over 11 years ago

    Not sure why, but Eagle is waiting for input from the stdin.  Even if

    stdin is not a tty, it sits there and waits.

     

    I managed to fix this by echoing an "n" to stdin.  It's been working

    consistently ever since.  Even if it never eats the character, there's

    one ready to be read.  Here's a few lines I use to generate a complete

    set of gerber files:

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-TopCopper.gbr 516800.brd 1 17 18 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-BotCopper.gbr 516800.brd 16 17 18 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-NonPTHoles.gbr 516800.brd 20 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-TopSilkScreen.gbr 516800.brd 21 25 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-BotSilkScreen.gbr 516800.brd 22 26 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-TopMask.gbr 516800.brd 29 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-BotMask.gbr 516800.brd 30 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-TopPaste.gbr 516800.brd 31 || exit 1

     

    echo n | eagle -X -N- -f+ -O+ -c- -x0 -y0 -dGERBER_RS274X -o

    516800-RevA-BotPaste.gbr 516800.brd 32 || exit 1

     

    echo n | eagle -X -f+ -N- -O+ -c- -x0 -y0 -E+0.1 -R 516800-RevA.drl

    -dEXCELLON -o 516800-RevA-ExcellonDrill.exc 516800.brd 44 45 || exit 1

     

     

    HTH,

        - Chuck

     

     

     

    On 02/17/2014 06:02 AM, Magnus H-C wrote:

    I have a ULP to automate generation of gerberfiles.

    In the ULP I use the following command:

     

    system("\"" + EagleExe + "\" -X -x0.0 -y0.0 -O+ -c- -dGERBER_RS274X

    -o\"" + GerberFileName + "\" \"" + B.name + "\" tPlace tNames");

     

    This usually works fine but in some cases it just freezes and nothing

    happens.

    If I run the CAM processor manually i get the following warning:

     

    The ULP probably freezes because of this warning, but the warning is not

    shown.

    Eagle is probably waiting for me to answer the non visible dialog.

    Is there some "silent mode" without warnings or some other way to sole

    this problem?

     

    --

    To view any images and attachments in this post, visit:

    http://www.element14.com/community/message/104018

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Reject Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dukepro

    Thank you!

    This works great, but since I use a ULP and (I think) you use a bat-file i had to add "CMD.EXE /c echo y | " in the system call.


    system("CMD.EXE /c echo y | \"" + EagleExe + "\" -X -x0.0 -y0.0 -O+ -c- -dGERBER_RS274X -o\"" + GerberFileName + "\" \"" + B.name + "\" Top Pads Vias");

     

    Simple explanation of variables used:

    "EagleExe" is a string set to the full path of Eagle.exe

    "GerberFileName" is a string set to output path and filename

    B.name is the filename of the board




     



    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    On 02/18/2014 11:29 AM, Magnus H-C wrote:

    Thank you!

    This works great, but since I use a ULP and (I think) you use a bat-file

    i had to add "CMD.EXE /c echo y | " in the system call.

     

    Excellent.  Glad it worked out for you.

     

    The excerpt I posted earlier is part of a shell script that is created

    from a ULP, then just prior to exiting, the ULP calls

    system("./camprep.sh &"); where the ampersand causes the script to be

    executed in the background, thus causing the system() call to return

    immediately, which, in turn, allows Eagle to continue executing while

    the CAM jobs are being created.  I don't know if Windows has some

    equivalent, but you may consider having the argument to system() execute

    in the background - just to prevent freezes.

     

    The ULP determines from the board design which gerber/Excellon files

    need to be created, and which layers to include with each.  The script

    includes the recursive removal of a directory and recreation of it.

    Then all the output files and the associated .gpi files are moved to

    this new directory, and a zip file of the gerbers is created ready for

    uploading to the board fabricator.

     

    So, all in all, it's a clean way to generate a zipped collection of

    gerbers for a particular design - just "run camprep" in the Eagle

    command line.

     

    HTH,

        - Chuck

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dukepro

    Hi @Chuck Huber,

    Your camprep ULP and associated sh script sound very useful indeed! I don't suppose you'd consider sharing them with the community here http://www.cadsoftusa.com/downloads/ , would you? image

     

    Thanks and best regards,

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    On 02/18/2014 04:37 PM, Daniel Wainwright wrote:

    Hi @Chuck Huber,

    Your camprep ULP and associated sh script sound very useful indeed! I

    don't suppose you'd consider sharing them with the community here

    http://www.cadsoftusa.com/downloads/ , would you? image

     

    I'd be happy to.  There's four files involved, and I need to sanitize

    one of them before uploading.  I'll zip them up and throw in a quick

    read-me within the next few days.

     

        - Chuck

     

     

    Thanks and best regards,

     

    --

    To view any images and attachments in this post, visit:

    http://www.element14.com/community/message/104169

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dukepro

    Thanks, I'm sure plenty of folks will appreciate it image

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    On 02/18/2014 04:37 PM, Daniel Wainwright wrote:

    Hi @Chuck Huber,

    Your camprep ULP and associated sh script sound very useful indeed! I

    don't suppose you'd consider sharing them with the community here

    http://www.cadsoftusa.com/downloads/ , would you? image

     

    Okay... It's uploaded as "camprep.zip".  It said something about

    approval, though, so I don't know how long it will take to show up.

     

    HTH,

        - Chuck

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    Daniel,

     

    The upload hasn't cleared Cadsoft yet.  Send me your email address and

    I'll send a copy of the zip directly to you.

     

        - Chuck

     

     

    On 02/18/2014 04:37 PM, Daniel Wainwright wrote:

    Hi @Chuck Huber,

    Your camprep ULP and associated sh script sound very useful indeed! I

    don't suppose you'd consider sharing them with the community here

    http://www.cadsoftusa.com/downloads/ , would you? image

     

    Thanks and best regards,

     

    --

    To view any images and attachments in this post, visit:

    http://www.element14.com/community/message/104169

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    Daniel,

     

    The upload hasn't cleared Cadsoft yet.  Send me your email address and

    I'll send a copy of the zip directly to you.

     

        - Chuck

     

     

    On 02/18/2014 04:37 PM, Daniel Wainwright wrote:

    Hi @Chuck Huber,

    Your camprep ULP and associated sh script sound very useful indeed! I

    don't suppose you'd consider sharing them with the community here

    http://www.cadsoftusa.com/downloads/ , would you? image

     

    Thanks and best regards,

     

    --

    To view any images and attachments in this post, visit:

    http://www.element14.com/community/message/104169

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
  • Former Member
    0 Former Member over 11 years ago in reply to dukepro

    Hello Chuck,

     

    would you mind uploading the camprep.zip to a location where I can download it please? I'm interested in seeing how you handle the generation of the CAM files but I can't find the file to download on the cadsoft website.

     

    Thanks!

    Lieven.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • autodeskguest
    0 autodeskguest over 11 years ago in reply to Former Member

    Am 05.06.2014 08:33, schrieb Lieven Hollevoet:

    Hello Chuck,

     

    would you mind uploading the camprep.zip to a location where I can

    download it please? I'm interested in seeing how you handle the

    generation of the CAM files but I can't find the file to download on the

    cadsoft website.

     

    Thanks!

    Lieven.

     

    --

    To view any images and attachments in this post, visit:

    http://www.element14.com/community/message/115346

     

     

    Maybe it is camprep2.zip at cadsoft?

     

    --

    Mit freundlichen Grüßen / With best regards

     

    Joern Paschedag

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to autodeskguest

    Hey Joern,

     

    sure it is, I don't know how I could miss this when I was looking for the file at the site this morning.

     

    Thank you!

    Lieven.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • dukepro
    0 dukepro over 11 years ago in reply to Former Member

    On 06/05/2014 02:33 AM, Lieven Hollevoet wrote:

    Hello Chuck,

     

    would you mind uploading the camprep.zip to a location where I can

    download it please? I'm interested in seeing how you handle the

    generation of the CAM files but I can't find the file to download on the

    cadsoft website.

     

    Lieven, et al,

     

    Attached is camprep3.zip.  The main differences is that the

    fixdrills.ulp is no longer required, and I've added support for the

    milling layer, and gold finishing layers.

     

    This file can also be found at http://www.dukepro.com/pub/.

     

    Best regards,

        - Chuck

     

     

    Attachments:
    camprep3.zip
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 11 years ago in reply to dukepro

    Hey Chuck,

     

    great, thanks!

     

    Best regards,

    Lieven.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube