1Overview
Place Designators is an automation tool that runs alongside Mentor Xpedition PCB Designer. Its purpose is to automatically or interactively position the component reference designators (RefDes) — the text labels such as “U1”, “R3”, “C12” — on your PCB layout, on either the Assembly (Assy) layer or the Silkscreen (Silk) layer.
Without this tool, engineers must manually drag and position each RefDes label one at a time. Place Designators can process an entire board in much less time, intelligently scanning candidate positions around each component and selecting the best fit based on your configured rules.
1.1 What the Tool Does
- Connects to an active Xpedition PCB design session automatically when launched.
- Places Assembly RefDes labels on the Assy fabrication layer.
- Places Silkscreen RefDes labels on the Silk fabrication layer.
- Supports both fully automatic placement and step-by-step interactive placement.
- Reports components that could not be placed successfully so you can address them manually.
1.2 Prerequisites
- Mentor Xpedition PCB Designer must be open with a PCB design loaded before launching Place Designators.
- The
setup_parameters.txt file must be present in the same folder as the Place Designators executable. It contains default values for text sizes, fonts, and placement factors. - The tool runs as a separate floating window alongside Xpedition. You can switch between the two windows while using it.
Note: All size values throughout this tool are in mils (thousandths of an inch) unless otherwise noted.
3Assy RefDes Section
The “Assy RefDes” group box contains all settings and controls for placing reference designator text on the Assembly layer of the PCB. The Assembly layer is typically used for documentation and manufacturing assembly drawings.
3.1 Text Size Settings
| Control | Purpose & Behavior |
|---|
| Max Assy Text Size(text box) | The maximum text height (in mils) to use for Assembly RefDes labels. The tool starts at this size and scales down as needed to fit the label near its component. Default: 60 mils. |
| Min Assy Text Size(text box) | The minimum text height (in mils) that the tool will use. If the tool cannot fit the RefDes at or above this size, the placement attempt fails and the component is added to the Error List. Default: 15 mils. |
| Font(drop-down list) | Selects the font to apply to all Assembly RefDes labels. The list is populated from fonts available in Xpedition. Choose the font that matches your company’s drafting standard. Default: Arial. |
3.2 Placement Scaling Factors
These three numeric fields adjust how the placement algorithm sizes and positions the RefDes text. They are unit-less multipliers. Experiment with small changes if default results are not optimal for your board density.
| Control | Purpose & Behavior |
|---|
| Text Size Factor(text box) | Multiplies the virtual bounding box height used internally to calculate spacing around the text object. Increasing this value adds more padding on all sides of the text, making the algorithm keep more space between the RefDes and nearby objects. Default: 1.5. |
| Text Location Length Factor(text box) | Adjusts how far the text is shifted along the length axis (horizontal direction) when the tool moves it away from a conflicting object. Larger values shift text farther horizontally. Default: 2. |
| Text Location Height Factor(text box) | Adjusts how far the text is shifted along the height axis (vertical direction) when the tool moves it away from a conflicting object. Larger values shift text farther vertically. Default: 2. |
3.3 Component Scope
These radio buttons determine which components on the board are processed during an Assy placement run.
| Control | Purpose & Behavior |
|---|
| All Components(radio button) | Process every component on the board. This is the normal mode for a full-board run. |
| Selected Components(radio button) | Process only the components that are currently selected in Xpedition. Use this to re-run placement on a specific subset of components without disturbing the rest of the board. |
3.4 Assy Action Buttons
| Control | Purpose & Behavior |
|---|
| Setup Layers for Assy(orange button) | Sets default layer visibility for Assembly RefDes placement. The software will set these layers automatically when it runs. It may be helpful to do this ahead of running the tool to see what layers the software is working with. |
| Hide Managed Block Names in Designators(checkbox) | When checked, suppresses the managed block name portion of a RefDes text string during placement, showing only the designator value itself (e.g., “U1” instead of “BLOCK_NAME_U1”). Check this when block name prefixes clutter the assembly drawing. |
| Assy Auto Place(green button) | Starts the fully automatic Assembly RefDes placement process. The tool scans each component, evaluates candidate positions, and places the RefDes label at the best available location. A progress bar at the bottom shows status. Components that cannot be placed are added to the Error List. |
| Assy Interactive Place(button) | Opens the Interactive Placement window (see Section 6). Select components in Xpedition, then use the Interactive window to control exactly where each RefDes is positioned. |
| STOP(red button) | Halts an in-progress Auto Place run after completing the current component. Components already processed retain their new placement. |
4Silk RefDes Section
The “Silk RefDes” group box contains all settings and controls for placing reference designator text on the Silkscreen layer. The Silkscreen layer is printed on the physical PCB for identification during assembly and rework.
The Silk section contains more options than the Assy section because silkscreen placement is more complex: it must avoid copper traces, via pads, and other silkscreen graphics to remain legible on the finished board.
4.1 Text Size Settings
| Control | Purpose & Behavior |
|---|
| Max Silk Text Size(text box) | The maximum silkscreen RefDes text height in mils. Default: 55 mils. |
| Min Silk Text Size(text box) | The minimum silkscreen RefDes text height in mils. If the label cannot be placed at or above this size, the component is added to the Error List. Default: 25 mils. |
| Font(drop-down list) | Selects the font for all silkscreen RefDes labels. Additional custom fonts can be added via the setup_parameters.txt file. Default: vf_MentorSTD. |
4.2 Placement Scaling Factors
These five numeric fields tune the Silk placement algorithm. They work the same way as the Assy factors but apply to silkscreen text.
| Control | Purpose & Behavior |
|---|
| Text Size Factor(text box) | Overall virtual bounding box multiplier for silkscreen text. Default: 1.5. |
| Text Location Length Factor(text box) | Horizontal shift factor when resolving silkscreen conflicts. Default: 1.5. |
| Text Location Height Factor(text box) | Vertical shift factor when resolving silkscreen conflicts. Default: 1.5. |
| Stroke Width Factor(text box) | Controls the pen stroke width relative to text height. Calculated as: stroke width = text height × stroke factor. A value of 0.17 means the stroke is 17% of the text height. Default: .17. |
| Text Aspect Ratio / Character W/H(text box) | Sets the width-to-height ratio of individual characters. A value of 1.0 gives square characters; values less than 1 produce narrower characters that can help fit a longer RefDes string near a small component. Default: 1. |
4.3 Component Scope
| Control | Purpose & Behavior |
|---|
| All Components(radio button) | Process every component’s silk RefDes on the board. |
| Selected Components(radio button) | Process only currently selected components in Xpedition. |
| Start with Selected RefDes(checkbox) | When checked and running in “All Components” mode, the tool processes currently selected RefDes objects first before continuing with the rest of the board. |
4.4 Move / Don’t Move Lists
These two checked list boxes give you fine-grained control over which component types are included in or excluded from a Silk placement run.
| Control | Purpose & Behavior |
|---|
| Move(checked list box) | Lists component reference prefix types. Check the boxes next to the types you want the tool to reposition during placement. |
| Select All — Move(checkbox) | Quickly checks or unchecks all items in the Move list at once. |
| Don’t Move(checked list box) | Items checked here will be explicitly skipped — their RefDes labels will not be moved even if also checked in the Move list. |
| Select All — Don’t Move(checkbox) | Quickly checks or unchecks all items in the Don’t Move list. |
4.5 Silk Placement Behavior Options
| Control | Purpose & Behavior |
|---|
| Check for good placement before moving(checkbox) | When checked, the tool first evaluates whether the current RefDes position is already acceptable and skips it if so. Speeds up re-runs on boards that are mostly placed. |
| On Failure, use smallest size and default location(checkbox) | When the tool cannot find an acceptable position at any size above the minimum, places the RefDes at the minimum text size in a default fallback location rather than leaving it unplaced. |
4.6 Lock / Unlock Controls
Locking a RefDes label prevents the tool from moving it in future runs. This is useful after you have manually fine-tuned a label’s position.
| Control | Purpose & Behavior |
|---|
| Lock When Placed(checkbox) | When checked, every RefDes label that the tool successfully places is immediately locked in Xpedition. Checked by default. |
| Lock Selected(button) | Locks the RefDes labels of all currently selected components without running placement. |
| Unlock All(button) | Removes the lock from every silk RefDes label on the entire board. Use before a fresh full-board placement run. |
| Unlock Selected(button) | Removes the lock only from the RefDes labels of currently selected components. |
4.7 Net Classes to Avoid
This checked list box is populated with all net classes defined in your PCB design. Checked net classes are treated as obstacles by the placement algorithm, preventing RefDes labels from being placed on top of those traces.
| Control | Purpose & Behavior |
|---|
| Net Classes to Avoid(checked list box) | Check any net class names whose copper you want the tool to treat as off-limits for RefDes placement. |
4.8 Scan Steps
| Control | Purpose & Behavior |
|---|
| 4 Quadrant Placement Only(checkbox) | When checked, the tool only evaluates positions in the four cardinal quadrant zones (top, bottom, left, right) around each component. When unchecked, diagonal positions are also evaluated. |
| Scan Steps(numeric, 1–5) | Controls the resolution of the position scan grid. Higher values (up to 5) evaluate more candidate positions, increasing quality but also processing time. Default: 5. |
4.9 Silk Action Buttons
| Control | Purpose & Behavior |
|---|
| Setup Layers for Silk(orange button) | Sets default layer visibility for the Silkscreen layer. The software sets these layers automatically when it runs. |
| Hide Managed Block Names in Designators(checkbox) | Suppresses block name prefixes in silkscreen RefDes text during placement. |
| Silk Auto Place(green button) | Starts the fully automatic Silk RefDes placement run. |
| Silk Interactive Place(button) | Opens the Interactive Placement window configured for Silk text. |
| STOP(red button) | Halts the Silk Auto Place run after completing the current component. |
| Place TP Ref Des Only(checkbox) | Restricts the placement run to test point components only. |
| Delete Refs with Hidden Managed Block Names(button) | Removes silkscreen RefDes text objects tagged with the internal property BLOCK_NAME_DELETED. |
| Put TP and Their Nets on a Userlayer(button) | Copies test point RefDes labels and net name annotations onto a designated user layer. |
| Report TP RefDes and Net Names(button) | Generates a report listing all test point reference designators and the net names they are connected to. |
| Correct Stroke Width, Font, Orientation(button) | Corrects stroke width, applies the selected font, and fixes upside-down or mirrored orientations on all silkscreen RefDes labels. Does not move labels. |
5Error List Panel
The Error List panel occupies the right side of the main window. It tracks components whose RefDes labels could not be placed successfully during an Auto Place run.
| Control | Purpose & Behavior |
|---|
| Error List(list view) | Displays the reference designators of all components that failed placement. Clicking a component automatically zooms the Xpedition view to that component. |
| Click to Zoom to Selected Part(label) | Informational label: clicking any entry in the Error List causes Xpedition to zoom to and highlight that component. |
| Select components of Selected Designators(button) | Selects in Xpedition all components whose designators are currently highlighted in the Error List. |
| Mark as Fixed, Remove from List(button) | Removes the selected component from the Error List after you have resolved its placement. Also zooms to the component as confirmation. |
| Save Error List(button) | Saves the current Error List to a text file on disk. |
| Load Error List(button) | Loads a previously saved Error List from disk to resume work from a prior session. |
| Try Select Comp Again(button) | Re-attempts automatic placement for the component currently selected in the Error List. If successful, removes it from the list. |
6Interactive Placement Window
The Interactive Placement window opens when you click “Assy Interactive Place” or “Silk Interactive Place” from the main window. It allows you to manually control where RefDes labels are positioned for selected components.
To use: select one or more components in Xpedition, configure the desired options in this window, then click GO! to move the text.
6.1 Text Type
| Control | Purpose & Behavior |
|---|
| ASSY(radio button) | Operate on Assembly layer RefDes text. |
| SILK(radio button) | Operate on Silkscreen layer RefDes text. |
6.2 Board Side
| Control | Purpose & Behavior |
|---|
| TOP(radio button) | Process components on the top side of the PCB. |
| BOTTOM(radio button) | Process components on the bottom side of the PCB. |
6.3 Text Location
These radio buttons specify where relative to the component the RefDes label should be placed.
| Control | Purpose & Behavior |
|---|
| TOP | Place the RefDes above the component. |
| BOTTOM | Place the RefDes below the component. |
| LEFT | Place the RefDes to the left of the component. |
| RIGHT | Place the RefDes to the right of the component. |
| CENTER | Place the RefDes centered on the component. |
6.4 Text Orientation
| Control | Purpose & Behavior |
|---|
| Horizontal(radio button) | RefDes text oriented horizontally (0 degrees) — normal reading direction. |
| Vertical(radio button) | RefDes text rotated 90 degrees. |
| Follow Part(radio button) | RefDes text orientation follows the component’s own rotation angle in the PCB layout. |
6.5 Size Controls
| Control | Purpose & Behavior |
|---|
| Size(text box) | Current text height in mils. Initialized from the Max text size setting on the main form. |
| +(button) | Increases the text size by a fixed increment for the next GO! operation. |
| −(button) | Decreases the text size by a fixed increment. |
| Text Aspect Ratio(text box) | Sets the character width-to-height ratio for labels being placed interactively. |
6.6 Alignment
The Alignment group snaps the RefDes labels of multiple selected components to a common edge position. Select two or more components in Xpedition first, then click the desired button. All labels move to match the most extreme label in that direction, without changing their position on the opposite axis.
| Control | Purpose & Behavior |
|---|
| Align Left(icon button) | Finds the leftmost X position among all selected RefDes labels and moves all others to match it. |
| Align Right(icon button) | Finds the rightmost X position and moves all others to match it. |
| Align Top(icon button) | Finds the highest Y position and moves all others up to match it. |
| Align Bottom(icon button) | Finds the lowest Y position and moves all others down to match it. |
Note: Alignment acts on the label anchor point (origin). For best results, ensure all components are already on the same board side before aligning.
6.7 Nudge
Shifts the RefDes labels of all currently selected components by exactly 5 mils per click. Use nudge for fine-tuning a label’s position after a GO! placement when it is close but needs a small adjustment.
| Control | Purpose & Behavior |
|---|
| Nudge Up(arrow button) | Moves labels 5 mils in the positive Y direction (upward). |
| Nudge Down(arrow button) | Moves labels 5 mils in the negative Y direction (downward). |
| Nudge Right(arrow button) | Moves labels 5 mils in the positive X direction (right). |
| Nudge Left(arrow button) | Moves labels 5 mils in the negative X direction (left). |
Note: Each click moves the label exactly 5 mils. Click multiple times for larger adjustments. Nudge works on all currently selected components simultaneously.
6.8 Actions
| Control | Purpose & Behavior |
|---|
| GO!(green button) | Moves the RefDes labels for all currently selected components to the position, orientation, and size specified by the controls in this window. |
| Hide(button) | Hides the RefDes label for the currently selected component. |
| Restore(button) | Restores a previously hidden RefDes label. |
| Draw / Delete Reference Grid(button) | Draws a temporary reference grid overlay on the PCB canvas. Clicking again removes it. |
| Keep on Top(checkbox) | Keeps the Interactive Placement window on top of all other windows. |
| E X I T(red button) | Closes the Interactive Placement window and returns to the main window. |
7Status Bar
| Control | Purpose & Behavior |
|---|
| Status Label(bottom text) | Displays the current operation, such as “Placing Silk RefDes . . .” or “Ready” when idle. |
| Progress Bar | A horizontal bar that fills left to right indicating percentage completion of the current auto-place run. |
8Exiting the Application
| Control | Purpose & Behavior |
|---|
| E X I T(red button, bottom right) | Closes Place Designators entirely. Your PCB design in Xpedition is not affected. Any placements already committed to the design remain. Save the PCB before exiting. |
9Setup Parameters File
The file setup_parameters.txt lives in the same folder as the Place Designators executable. It defines the default values loaded into the tool each time it starts. Edit it with any text editor to change defaults for your team or project.
Key parameters in the file:
| Parameter | Purpose |
|---|
| silklfactor | Default Text Size Factor for Silk placement. |
| silkplace_l_factor | Default Text Location Length Factor for Silk. |
| silkplace_h_factor | Default Text Location Height Factor for Silk. |
| stroke_factor | Default Stroke Width Factor for Silk text. |
| max_silk_refdes_ht | Default Max Silk Text Size (mils). |
| min_silk_refdes_ht | Default Min Silk Text Size (mils). |
| assylfactor | Default Text Size Factor for Assy placement. |
| assyplace_l_factor | Default Text Location Length Factor for Assy. |
| assyplace_h_factor | Default Text Location Height Factor for Assy. |
| aspect_ratio | Default Character Width/Height ratio. |
| max_assy_refdes_ht | Default Max Assy Text Size (mils). |
| min_assy_refdes_ht | Default Min Assy Text Size (mils). |
| dist_past_part_edge | Default Distance Past Part value (mils). |
| max_cross_distance | Default Max Cross Distance value (mils). |
| default_assy_font | Font pre-selected for Assy labels on startup. |
| default_silk_font | Font pre-selected for Silk labels on startup. |
| <additional_assy_fonts> | Block section: list custom Assy fonts not in Xpedition’s default font path, one per line. |
| <additional_silk_fonts> | Block section: list custom Silk fonts, one per line. |
Note: Values between a keyword and its value must be separated by a tab character, not spaces. Comment lines may begin with a single quote character (‘).
10Typical Workflow
10.1 Full Board Automatic Placement
- Open your PCB design in Xpedition and launch Place Designators. The tool connects automatically.
- In the Assy RefDes section, click Setup Layers for Assy.
- Verify the Max/Min text sizes and factor values. Leave defaults if you are unsure.
- Select All Components, then click Assy Auto Place. Watch the progress bar.
- When complete, review the Error List. Click each entry to zoom to that component and decide whether to fix manually or use Try Select Comp Again.
- Repeat for the Silk RefDes section, clicking Setup Layers for Silk first.
- Click Save PCB when satisfied, then EXIT.
10.2 Fixing Individual Problem Components
- Click the problem component’s RefDes in the Error List. Xpedition zooms to it.
- Select the component in Xpedition.
- Click Try Select Comp Again to let the tool attempt auto-placement for just that one component.
- If auto-placement still fails, open the Interactive Placement window and manually set the position.
- Once placed acceptably, click Mark as Fixed, Remove from List.
11Tips & Troubleshooting
- If the tool reports “Unable to connect to the Xpedition session,” make sure Xpedition is fully loaded with a PCB open before starting Place Designators.
- If many components end up in the Error List, try increasing Max Cross Distance or Distance Past Part slightly to give the algorithm more room.
- On very dense boards, reducing the Min text size allows more components to be placed automatically rather than failing.
- Use Unlock All before a fresh full-board re-run so the tool can revise all previously placed labels.
- The Correct Stroke Width, Font, Orientation button is a useful cleanup tool after importing designs from other systems.
- Save the Error List using Save Error List before exiting so you can reload it in the next session.
- Modify
setup_parameters.txt to encode your preferred default values so you do not have to retype them each session.