element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Achievement Levels
    • Benefits of Membership
    • Feedback and Support
    • Members Area
    • Personal Blogs
    • What's New on element14
  • Learn
    Learn
    • eBooks
    • Learning Center
    • Learning Groups
    • STEM Academy
    • Webinars, Training and Events
  • Technologies
    Technologies
    • 3D Printing
    • Experts & Guidance
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Arduino Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Project Groups
    • Raspberry Pi Projects
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Or 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
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • 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
Autodesk EAGLE
  • Products
  • More
Autodesk EAGLE
EAGLE User Support (English) Where does RUN search for given ULP name?
  • Blog
  • Forum
  • Documents
  • Events
  • Polls
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Autodesk EAGLE requires membership for participation - click to join
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 6 replies
  • Subscribers 149 subscribers
  • Views 860 views
  • Users 0 members are here
  • ulp
Related

Where does RUN search for given ULP name?

zainka
zainka over 8 years ago

I have a problem with a menu item which should  invoke and run an ULP when clicked. This is a rewrite of the Felicitas_PCBSim menu button.

 

As a company where we are many users of Eagle, which contributes to create and/or change existing ULP's, Scripts and Library parts we have moved these into a version control system (TFS).

 

For ULPs this means that we have a Common folder named ULP with subfolders where we have 1) collected all ULP's generated and delivered originally from Eagle (Folder ULP/Eagle), 2) collected all ULP's as written internaly (in folder ULP/Internal), and 3) a folder which collects all third parties ULP's (in folder ULP/Users). Eagle directories for ulps is set to point at our ULP folder only (meaning the default eagle ulp folder is no longer visible)

 

When we try to invoke Felicitas PCBSim, we get the message that eagle cant find the ulp. I thought that Eagle where searching the defined ulp directory and its subfolders, but I understand now that this is not true. I then tried to redefine the menu item in eagle.src to include the subfolder in the path to the ulp to no help. I have tried to use Quotation marks etc. but it never finds the defined ulp. Last test is shown in the example below

 

Ulp directory points to C:\TFS\Eagle CAD Library\ULP (this is not an issue since we see the ulps available here)

 

eagle.src :

MENU '[c:\TFS\Eagle CAD Library\PCBSim-E001.png] Simulate Current Sheet : RUN Eagle/Felicitas_PCBSim /E;' \

     '[c:\TFS\Eagle CAD Library\PCBSim-E002.png] Simulate All Sheets : RUN Eagle/Felicitas_PCBSim /A;' \

;

 

If I put the ulp in the ULP folder directly and executes with RUN Felicitas_PCBSim

everything is fine but we will try to avoid this if possible.

 

Should be a simple task this, but I am clearly to blind to find the solution.

  • Sign in to reply
  • Cancel
  • clem57
    0 clem57 over 8 years ago

    You could create a windows shortcut in the ULP folder. That should leave it in the palce you want for updates and allow execution for Eagle.

    Clem

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Joop14
    0 Joop14 over 8 years ago

    You have to set Options -> Directories -> User Language programs correctly.

    Eagle does not check sub-directories, so, you have to add multiple entries, one for each (sub)directory.

    On linux and Mac, the delimiter is a colon. On windows it's a semi-colon.

     

    So, the result will look like:

     

    $EAGLEDIR/ulp/Eagle:$EAGLEDIR/ulp/Internal:$EAGLEDIR/ulp/Users

     

    or in your case:

     

    C:\TFS\Eagle CAD Library\ULP\Eagle;C:\TFS\Eagle CAD Library\ULP\Internal;C:\TFS\Eagle CAD Library\ULP\Users

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • zainka
    0 zainka over 8 years ago in reply to Joop14

    Yep, I know, but so to say, that was not the question.... The question was how could I specify the correct path to any given ULP inside a script even when the ulp is stored in a sub-directory of the defined folder in the directory setup (or somewhere completely different place for that case). It seems that it is not possible to specify a path to an ULP that is to be run. Only the name, and then the named ULP must be stored inside the "root" of one of the specified directories.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • autodeskguest
    0 autodeskguest over 8 years ago in reply to zainka

    You can ignore the directories you have set up in Options.  Simply place

    into the script the full path to the ULP no matter where it is.

    The following, as an example, worked for me from a script targeting a ULP

    placed no where near any thing Eagle uses.

    run 'C:/Users/Public/Documents/Merging/statistic-brd.ulp'

     

    You should be able to use a network path and have no issues.

     

    You may need to add the single quotes to cater for spaces in the path.

    Use forward slashes no matter which OS you are using.

     

    HTH Warren

    --

    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
    • Verify Answer
    • Cancel
  • zainka
    0 zainka over 8 years ago in reply to autodeskguest

    Well. It does not handle spaces very well and single quotes only fires off an error saying :

     

    unexpected parameter: '     '

     

    So I suppose thats it. Tried using brackets, double quotes, nothing at all but It will never find the ulp that way.

    Leaves me with putting ulp's to be used inside a script in a directory as added to the directory list.

     

    Something to be added in future versions in Eagle, proper path handling inside script when invoking ulp's.

     

     

    Breg

    Vidar (Z)

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • autodeskguest
    0 autodeskguest over 8 years ago in reply to zainka

    On 26/05/2015 5:54 a.m., vidar vidnes wrote:

    Well. It does not handle spaces very well and single quotes only fires

    off an error saying :

     

    unexpected parameter: '     '

     

    So I suppose thats it. Tried using brackets, double quotes, nothing at

    all but It will never find the ulp that way.

    Leaves me with putting ulp's to be used inside a script in a directory

    as added to the directory list.

     

    Something to be added in future versions in Eagle, proper path handling

    inside script when invoking ulp's.

     

     

    Breg

    Vidar (Z)

     

    --

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

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

     

    Hi and apologies. I did not read your post properly. I see you are

    trying to set up a Text menu and not trying to run a ULP from a script.

     

    I had a go at your problem of specifying the path in the menu item and

    could not. I suspect you maybe correct that it needs a repair in that area.

     

    What you could do is set the menu button to run a script and in that

    script is the run command with the specified path. That works.

     

    All the best

    Warren

     

    • 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 © 2023 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