• 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 automate STEP export in 24.1 with SKILL?

Stats

  • State Verified Answer
  • Replies 4
  • Subscribers 18
  • Views 1934
  • Members are here 0
More Content

How to automate STEP export in 24.1 with SKILL?

evanshultzlightspeed
evanshultzlightspeed 4 months ago

Before 24.1, I wrote a small SKILL procedure to automate Allegro exports. The code is below:
let((t_PnRev b_return)
t_PnRev = buildString(lsGetPnRev("ASY") "_")

when(t_PnRev
b_return = axlRunBatchDBProgram("step_out" strcat("step_out %s -o " t_PnRev "_STP -u MILLIMETER -s \"allegro_" axlVersion('fullVersion) "\" -m -n -d -i -z") ?logfile "step_out")
)

; delete uncompressed STEP file
b_return = b_return && deleteFile(strcat(t_PnRev "_STP.stp"))

b_return
)

Even with some of the variables missing I think it's understandable. Unfortunately, this does not work in 24.1, because this batch command has seemingly been eliminated.

As you can see, this previously generated a STEP file in a ZIP archive with mm units using footprint-assigned STEP models and both mechanical and electrical drill holes. This is the format I desire under 24.1.

3d_model_export looks like it might be the new command, as commands with underscores are usually batch commands, but it's not working for me despite trying that command in various ways as described at https://support1.cadence.com/api/CosWeb/TechPubDocViewerCosLite/7135ff3b794b9157e1af5da8d43990ae8de226eb1af6db95212c9e511dc3f1072b60b4b42f9057b34c6390e2e91550b56313d3dd2d651fd2b6620e2f0c1e64eab76cd065a85e412a980228d1015274732333b20c14c29afb68fca737c4868a2cbbb14b57bb7ac03c8a77c47deebebf77b1e55a69332b02b5c9ea83e54ba09b05326b4097cfb607fb2ed369d785e7a51d04e97cbcdbd6ee6f7c2d2e3bd97909afc67908b4fe2ea33e91e74cb2929b2390/Docs/vcoms/vcoms24.1/vcoms.pdf.

I am able to manually configure an export like I want in the new 24.1 3D export UI which seems to match my SKILL code above in previous Allegro versions (noting that the 'Dielectrics' setting is critical to getting the board outline in the export) like this:

But I'm not able to automate this export so far. I could try using a bunch of axlShell commands to automate the Allegro UI, but that seems too lame to try without asking first. Does anyone know how to automate a STEP export under 24.1 like I had in previous Allegro versions using the SKILL code above?

  • Cancel
  • Sign in to reply
  • evanshultzlightspeed
    0 evanshultzlightspeed 4 months ago

    Actually, just "3d_export" seems to be the right command. And I can find the output for this command on the Allegro console.

    I tried replacing the batch command above with this:

    b_return = axlRunBatchDBProgram("3d_export" "3d_export test.stp millimeter" ?logfile "3d_export_out")

    But I get a typical complaint about missing "%s" for the default design.

    So then I tried this:

    b_return = axlRunBatchDBProgram("3d_export" "3d_export %s test.stp millimeter" ?logfile "3d_export_out")

    And the command can't be run with a return value of -127. That's as simple of an example as I can think of, before building up the exact options I want. Any ideas?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • eDave
    0 eDave 4 months ago in reply to evanshultzlightspeed

    Why not just use axlShell?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • eDave
    +1 eDave 4 months ago in reply to eDave

    This works for me:

    axlShell(lsprintf("3d_export ./%s_3D.stp millimeter -eEXPsSk", axlCurrentDesign()))

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Reject Answer
    • Cancel
  • evanshultzlightspeed
    0 evanshultzlightspeed 4 months ago in reply to eDave

    Hi Dave.

    Thank you. This works for me as well.

    I like the user experience of the axlRunBatchDBProgram and the ability to create a log file, but functionally this is equivalent.

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