• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X Scripting - Skill
  3. How to export NCDrill, NCRoute in SKILL

Stats

  • Replies 1
  • Subscribers 18
  • Views 10222
  • Members are here 0
More Content

How to export NCDrill, NCRoute in SKILL

yuriyk
yuriyk over 7 years ago

Hello,

I've been trying to find the solution to this for quite some time, searched all over the forums, but not able to get the information I need.

I am trying to use SKILL to automate exporting NCDrill and NCRoute files. I tried the following script and it give me errors and not drill file.

axlRunBatchDBProgram("nctape" "nctape -$ " ?logfile "ncdrill.log")

errors from log:

ERROR(SPMHMF-335): There was an error extracting the drilling data. [help]
ERROR(SPMHMF-336): Program terminated.

while this script below worked fine, it outputted a gibberish file name: #Taaaabf17304_1-16.rou

axlRunBatchDBProgram("ncroute" "ncroute -v %s " ?logfile "ncroute.log")

When i export NCDrill and NCRoute files manually (or recorded script) through Manufacture>NC>NCDrill/Route, it creates a #designname#.drl

How can i achieve the same with axlRunBatchDBProgram?

Thank you!

  • Cancel
  • Sign in to reply
Parents
  • B Bruekers
    B Bruekers over 7 years ago

    The 'debug' mode can be useful as described in the axlRunBatchDBProgram() documentation: 

    For debug, set the env variable, wait_debug, on the Allegro command line:
    set wait_debug
    or in Skill
    axlSetVariable("wait_debug" nil)
    This echos the spawning arguments of your program.

    If i try this on a design i see this command: cmd= nctape -$ -q  -o -n "test.brd" C:/test/#Taaaaac03900.tmp

    Example code which i use to generate NC drill:

    sprintf(str "nctape -$ -q -o -n \"%s.DRL\" %%s", axlCurrentDesign())
    res= axlRunBatchDBProgram("Generating Drill Files... " str ?logfile "ncdrill" ?warnProgram t ?noExitMsgs t)

    The res contains the return status of nctape. t = successful, 1 = warning, 2 = error. 

    Further you can look in the Cadence help for 'nctape'. There you can see which parameters the nctape executable accepts

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Reply
  • B Bruekers
    B Bruekers over 7 years ago

    The 'debug' mode can be useful as described in the axlRunBatchDBProgram() documentation: 

    For debug, set the env variable, wait_debug, on the Allegro command line:
    set wait_debug
    or in Skill
    axlSetVariable("wait_debug" nil)
    This echos the spawning arguments of your program.

    If i try this on a design i see this command: cmd= nctape -$ -q  -o -n "test.brd" C:/test/#Taaaaac03900.tmp

    Example code which i use to generate NC drill:

    sprintf(str "nctape -$ -q -o -n \"%s.DRL\" %%s", axlCurrentDesign())
    res= axlRunBatchDBProgram("Generating Drill Files... " str ?logfile "ncdrill" ?warnProgram t ?noExitMsgs t)

    The res contains the return status of nctape. t = successful, 1 = warning, 2 = error. 

    Further you can look in the Cadence help for 'nctape'. There you can see which parameters the nctape executable accepts

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Cancel
Children
No Data
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information