• 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 PCB Editor
  3. How to make Assy Ref Des follow Ref Des Silk

Stats

  • State Verified Answer
  • Replies 8
  • Answers 1
  • Subscribers 161
  • Views 5497
  • Members are here 0
More Content

How to make Assy Ref Des follow Ref Des Silk

Sagetech
Sagetech over 1 year ago

Is there a way to set the Assy Ref Des to follow the Ref Des silk location and size? It seems there should be as it quickly gets old having to move the assy ref des to match the silk ref des location when there are hundreds of parts on a pcb.

  • Sign in to reply
  • Cancel
  • DavidJHutchins
    0 DavidJHutchins over 1 year ago

    The skill code below should move the assy text to the silk text locations, however I am on vacation & don't have access to licenses to test it...

    procedure(silk2assy()
    let((refdes layer orient silk assy Dx Dy)
    foreach( symbol axlDBGetDesign()->symbols
    if( (symbol->definition->type == "PACKAGE" || symbol->definition->type == "MECHANICAL") then
    if( !symbol->refdes || nindex(symbol->refdes,"*") then
    (refdes = nil)
    else
    (refdes = symbol->refdes)
    )
    if( symbol->component && refdes then
    if((((symbol->prop)->FIXED) == t)||((((symbol->component)->prop)->FIXED) == t) then
    axlMsgPut("skipping FIXED symbol %s" refdes)
    else
    (assy = nil)
    (silk = nil)
    foreach(Child symbol->children
    (layer = (Child->layer))
    if(((Child->objType) == "text") then
    if((symbol->isMirrored) then
    if((layer == "REF DES/SILKSCREEN_BOTTOM") then
    (silk = Child)
    (orient = axlTextOrientationCopy(Child))
    )
    if((layer == "REF DES/ASSEMBLY_BOTTOM") then
    (assy = Child)
    )
    else
    if((layer == "REF DES/SILKSCREEN_TOP") then
    (silk = Child)
    (orient = axlTextOrientationCopy(Child))
    )
    if((layer == "REF DES/ASSEMBLY_TOP") then
    (assy = Child)
    )
    )
    )
    )
    when(silk && assy
    axlTextOrientationCopy(assy orient)
    (Dx = xCoord(silk->xy) - xCoord(assy->xy))
    (Dy = yCoord(silk->xy) - yCoord(assy->xy))
    axlTransformObject(assy ?move list(Dx Dy))
    )
    )
    )
    )
    )
    )
    )
    axlCmdRegister("silk2assy" 'silk2assy)

    • Cancel
    • Vote Up +1 Vote Down
    • Sign in to reply
    • Verify Answer
    • Reject Answer
    • Cancel
  • Sagetech
    0 Sagetech over 1 year ago in reply to DavidJHutchins

    Thank you for the reply. I feel stupid - what do I do with this / how do I use it?

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • DavidJHutchins
    0 DavidJHutchins over 1 year ago in reply to Sagetech

    Save the code into a file named 'silk2assy.il'

    Then in Allegro issue the command 'skill load "silk2assy.il"

    Then run the new command 'silk2assy'

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • jc teyssier
    0 jc teyssier over 1 year ago

    Why do you not use use silkscreen Ref Des instead of assembly one while generating your assembly drawing? The is the easier solution in this case.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Sagetech
    0 Sagetech over 1 year ago in reply to jc teyssier

    Typically that is what I do - and have been doing for years. But....... I had a request to create a searchable PDF of the silk including the pads.The Export PDF command will generate a searchable PDF. I had not used it before in my 30+ years of using Orcad.

    The export PDF command for the silk shows no pads and there is no option to add them. If I export the PDF for the top copper and suppress the traces I get the pads I need but it uses the assy layer for the pkg outlines and ref des. Thus I want the assy ref des to follow the location of the ref des on the silk layer.

    Printing to pdf does not allow for a searchable drawing whereas the Export PDF command does.

    Tom

    • 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