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) CAM Process Create Directories
  • 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
  • Replies 17 replies
  • Subscribers 179 subscribers
  • Views 1728 views
  • Users 0 members are here
Related

CAM Process Create Directories

Former Member
Former Member over 14 years ago

Hello,

 

I would like to suggest that there be a way for the CAM processor to

automatically create any sub-directories it needs based on the file

specified for a given layer.  For instance, I have the following file

specified for my top layer:

 

%P/gerbers/01-top.grb

 

This structure helps keep the design files separate from the manufacturing

file output.

 

But I have to manually create the gerbers folder which is a bit of a pain.

There is more to this folder structure so it's not just one folder, but

actually a whole tree of folders for various outputs and formats.

 

It would be nice if I could set a switch in the CAM processor to simply

create any sub-directories that it needs that don't exist.

 

James.

 

--

James Morrison  ~~~  Stratford Digital

 

Specializing in CadSoft EAGLE

  • Online Sales to North America

  • Electronic Design Services

  • EAGLE Enterprise Toolkit

--

Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

 

  • Sign in to reply
  • Cancel
Parents
  • Former Member
    Former Member over 14 years ago

    On 7/22/2011 7:45 AM, James Morrison wrote:

    Hello,

     

    I would like to suggest that there be a way for the CAM processor to

    automatically create any sub-directories it needs based on the file

    specified for a given layer.  For instance, I have the following file

    specified for my top layer:

     

    %P/gerbers/01-top.grb

     

    This structure helps keep the design files separate from the manufacturing

    file output.

     

    But I have to manually create the gerbers folder which is a bit of a pain.

    There is more to this folder structure so it's not just one folder, but

    actually a whole tree of folders for various outputs and formats.

     

    It would be nice if I could set a switch in the CAM processor to simply

    create any sub-directories that it needs that don't exist.

     

    James.

     

    or even not a switch... just do it.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • Former Member
    Former Member over 14 years ago

    On 7/22/2011 7:45 AM, James Morrison wrote:

    Hello,

     

    I would like to suggest that there be a way for the CAM processor to

    automatically create any sub-directories it needs based on the file

    specified for a given layer.  For instance, I have the following file

    specified for my top layer:

     

    %P/gerbers/01-top.grb

     

    This structure helps keep the design files separate from the manufacturing

    file output.

     

    But I have to manually create the gerbers folder which is a bit of a pain.

    There is more to this folder structure so it's not just one folder, but

    actually a whole tree of folders for various outputs and formats.

     

    It would be nice if I could set a switch in the CAM processor to simply

    create any sub-directories that it needs that don't exist.

     

    James.

     

    or even not a switch... just do it.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    HI James,

     

    I was going to ask this exact same question!

     

    I instead, create a folder on my desktop called "Gerber Files" Once that is

    created, I then run my CAM Processor and all the files are named as I like

    them and put into that folder, The only thing I can't automate is the

    creation of the folder as you said yourself.

     

    I dont think there is any "Tricks" in the cam processor to create folders

    though.

     

    My file is named as follows in the CAM Processor ( eg)

     

    "/Users/Me/Desktop/Gerber Files/%N SILK TOP.GBR"

     

    I am wondering, Could a ULP Script be written so that it ?

     

    1) Creates the Folder(s)

    2) Runs the CAM Processor of your choice

    3) Run Other scripts like Pick & Place, drilling and even a BOM.

     

    Then we could assign a button in the LAYOUT to run that script?

     

    What do you think?

     

    Dave M

     

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    davem wrote on Fri, 22 July 2011 20:36

    HI James,

     

    I was going to ask this exact same question!

     

    I instead, create a folder on my desktop called "Gerber Files" Once

    that is created, I then run my CAM Processor and all the files are named

    as I like them and put into that folder, The only thing I can't automate

    is the creation of the folder as you said yourself.

     

    I dont think there is any "Tricks" in the cam processor to create

    folders though.

     

    My file is named as follows in the CAM Processor ( eg)

     

    "/Users/Me/Desktop/Gerber Files/%N SILK TOP.GBR"

     

    I am wondering, Could a ULP Script be written so that it ?

     

    1) Creates the Folder(s)

    2) Runs the CAM Processor of your choice

    3) Run Other scripts like Pick & Place, drilling and even a BOM.

     

    Then we could assign a button in the LAYOUT to run that script?

     

     

    I like your thinking.  I've suggested in the past that the CAM processor be

    expanded to be a more generic manufacturing output engine.  Then we could

    add tabs for BOM, x-y data, and any other specific output we need like

    mechanical drawings, etc.  We'd need to be able to specify a ULP to run and

    the ability to run it from the schematic or board file.

     

    I suppose you could write a custom ULP to do it.  But since almost every

    EAGLE user needs to create output for manufacturing of some sort I would

    think having CadSoft solve it once for everyone is a better use of overall

    time than everyone coming up with a solution to the same problem.  And

    because they can write it right into the code base they could do things you

    can't do in ULP/SCR's.

     

    But the idea is sound.  There should be a one-click solution to creating

    all the manufacturing output you need for a project.  And this is not to be

    lazy, it's to be consistent and to reduce mistakes.

     

    James.

    --

    James Morrison  ~~~  Stratford Digital

     

    Specializing in CadSoft EAGLE

    • Online Sales to North America

    • Electronic Design Services

    • EAGLE Enterprise Toolkit

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    Hi James,

     

    I am glad someone likes my "Thinking"!

     

    When I get to the stage of outputting manufacturing data I first run the

    cam processor and view the gerber files etc.

     

    I check for any errors and then make adjustment in the PCB Layout or where

    ever. Then I rerun the gerber output and check again, So By AUTOMATING

    This, we can prevent a whole bunch of duplicate or redundant files and make

    folders of files suited for the different parties that need it, i.e PCB

    Manufacture, PCB Assembly, Purchasing,and as well as complete documentation

    records for your own use, I understand this will be different for each

    company.

     

    So..

     

    I am starting to learn the ULP Scripting language, I do know other

    languages ( object Orientated)  So It shouldn't be impossible.

     

    I have already started reading the manual to get familiar with its

    capabilities, and have already started modify the BOM.ULP to get it to work

    more "SEAMLESS" for my needs.

     

     

    If we wait for CADSOFT to IMPROVE EagleCad then that will never happen, So

    we should not rely on them. ?There has hardly been any MAJOR features or

    changes in the last few releases. Probably because FARNELL own them now!

     

    In order to AUTOMATE the export we need to see what the limits of the

    Scripting language are.

     

    The Main question is :

     

    Q1) Can the CAM Processor be called via a ULP?

     

    and

     

    Q2) is the a better text editor for EagleCad Scripting?

     

    Dave M

     

     

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    OK,

     

    I have been READING THE MANUAL, and some web searching, And I can find

    NOTHING on running the CAM PROCESSOR within a ULP.

     

    I did see that you can run a CAM JOB from a "Command lIne" ( not eagle

    command line)

     

    like this one.

     

    -X-     eXecute CAM Processor

     

    But I dont know if you can call this with a script.

     

    The ONLY other thing I have read is that OLIN seems to have some usefull

    ULPS or scripts that can do cam processing, but on his web link they are

    only available for PC , does anyone have these ULPS?

     

    Dave M

     

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    Gary Gofstein wrote on Fri, 22 July 2011 17:16

    or even not a switch... just do it.

     

    No!  Don't "just do" something that is incompatible with the current

    behavior.

     

    If Eagle had always created subdirectories then I'd probably have my system

    set up to work with that now.  But it doesn't, so I've created my workflow

    around what Eagle does now.  DON'T CHANGE THE DEFAULT.

     

    I use a separate directory for every version of every board, and just put

    all the files in there as one flat pile.  I just checked, and a fairly full

    directory has around 40 files.  That's easily managable without

    subdirectories.  I do have scripts that know the various file name suffixes

    and build the zip files for the board house and for assembly.  These take

    care of the details of grabbing appropriate files from the pile so I don't

    have to.  When I want a file, I know its name and use it directly, so the

    fact that there are 39 other files in the directory is irrelevant.

     

    So for me there is no problem to solve as I've already adapted to how Eagle

    does things.  Add new features if you want, but make sure the default is to

    do the same thing as before.  It would really piss me off if the next

    verion of Eagle did something different out of the box, and I had to waste

    time digging around figuring out how to get it back as it was.

     

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    James Morrison wrote on Fri, 22 July 2011 21:55

    And because they can write it right into the code base they could do

    things you can't do in ULP/SCR's.

     

    A better answer would be to instead add the hooks so a ULP can do it.  Then

    everyone can get what they want.

     

    There are many different ways manufacturing output could work, and the

    chances are pretty much zero Cadsoft is going to do it how I want it done.

    Give me the tools to customize as I see fit instead.  Cadsoft could then

    make a example ULP for novices to get started with.

     

    That said, isn't this already reasonably possible?  Creating gerber files

    is something you do once per board, so I haven't spent a lot of time

    optimizing it.  I have some canned CAM jobs set up for common cases, so

    generating gerbers is already trivial from my point of view.  I've also got

    ULPs and scripts that largely automate making board drawings, creating the

    cross reference file, creating the BOM, and packaging up files for the

    board and assembly houses.  Since this takes a small portion of the time

    designing a board, automating it more isn't high on my list of things to

    do.  However, can't the CAM processor be run from a ULP or script already?

    If so, doesn't that get you what you want?

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

     

    "Gary Gofstein" <nospam@use.forum.net> wrote in message

    news:j0cpc0$jne$1@cheetah.cadsoft.de...

    On 7/22/2011 7:45 AM, James Morrison wrote:

    or even not a switch... just do it.

     

    +1

    I think this is the reasons "folders" were invented after all: to sort

    things. Currently an Eagle "project" is just a bunch of files, most of them

    unassociated in OS with any executable (eagle or other). Eagle should sort

    them (by default) by functionality.

     

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

     

    "Olin Lathrop" <eagle@embedinc.com> wrote in message

    news:j0ek49$bhl$1@cheetah.cadsoft.de...

    around what Eagle does now.  DON'T CHANGE THE DEFAULT.

     

     

     

    With this attitude, over 5 years we will use Eagle10, with the same "default

    functionality" as now, and it will be ten thousands "new" features hidden

    well in some command-line-only-editable file.

     

     

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    Olin wrote on Sat, 23 July 2011 10:09

    James Morrison wrote on Fri, 22 July 2011 21:55

    And because they can write it right into the code base they could

    do things you can't do in ULP/SCR's.

     

    A better answer would be to instead add the hooks so a ULP can do it.

    Then everyone can get what they want.

     

     

    I think that is generally what I had in mind, though I may not have stated

    it as clearly.  Either hooks in the CAM processor to run a ULP or hooks

    from a ULP to run the CAM processor easily would be a minimum.

     

    Quote:

    There are many different ways manufacturing output could work, and the

    chances are pretty much zero Cadsoft is going to do it how I want it

    done.  Give me the tools to customize as I see fit instead.  Cadsoft

    could then make a example ULP for novices to get started with.

     

     

    I don't disagree here.  But with a bit of thought I bet CadSoft could get

    it pretty close.  Then, if it's done as a ULP using the hooks above you can

    customise the last little bit (like how you actually want your files

    organised).  But even then, CadSoft should have something default that is

    usable so newbies have a reasonably complete environment to start with.

     

    Quote:

    That said, isn't this already reasonably possible?  Creating gerber

    files is something you do once per board, so I haven't spent a lot of

    time optimizing it.  I have some canned CAM jobs set up for common cases,

    so generating gerbers is already trivial from my point of view.  I've

    also got ULPs and scripts that largely automate making board drawings,

    creating the cross reference file, creating the BOM, and packaging up

    files for the board and assembly houses.  Since this takes a small

    portion of the time designing a board, automating it more isn't high on

    my list of things to do.  However, can't the CAM processor be run from a

    ULP or script already?  If so, doesn't that get you what you want?

     

     

    It's fine for a one-person organisation if that person is anal enough (like

    you and I Olin) to have the discipline to do things the same way every

    time.  But as more people get involved the more things that have to be

    remembered the more deviation there is.  The gerbers are fine now because I

    can specify our local repository of CAM jobs and people can use that and

    all the gerbers and NC drill files end up with the same names in the same

    places every time.  But that isn't true for BOM's, x-y data, PDF's of the

    schematic, and other things that I extract on every project.  Having one

    "GO" button like the CAM processor to do these extra things is a must for

    corporate work.

     

    I think if you add the ability to run ULP's from a layer tab in the CAM

    processor I think we get just about all the way there.  Except for auto

    generating a schematic PDF.  There should be a way to do that too.  Adding

    PDF as an output type is a start.  But I would like it to be able to get

    access to the schematic layers.  Maybe all that is needed is including the

    schematic layers in the right-hand selection box as well.

     

    James.

    --

    James Morrison  ~~~  Stratford Digital

     

    Specializing in CadSoft EAGLE

    • Online Sales to North America

    • Electronic Design Services

    • EAGLE Enterprise Toolkit

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
  • Former Member
    Former Member over 14 years ago in reply to Former Member

    James Morrison wrote on Sat, 23 July 2011 16:42

    Except for auto generating a schematic PDF.

     

    It seems you can already do this, at least if you are willing to use

    Eagle's PDF generator.  I just looked at the PRINT command options, and it

    appears there is enough there to do that.

     

    What is missing is the ability to select the printer by name.  This is

    presumably something Cadsoft could add without too much trouble.  I use

    Acrobat to create PDF files, not Eagle's built in capability for that.

    Maybe Eagle's is OK, I haven't tried it.  I guess I just trust Adobe to do

    a better job writing PDF files.

     

    --

    Web access to CadSoft support forums at www.eaglecentral.ca.  Where the CadSoft EAGLE community meets.

     

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • 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 © 2025 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