Sie sind auf Seite 1von 630

A D 101

Altium Essentials

Altium Essentials_July2013_Colby
10-July-2013

Software, documentation and related materials:


Copyright 2013 Altium Limited.
All rights reserved. You are permitted to use this document provided that (1) the use of such is for personal use only and
will not be copied or posted on any network computer or broadcast in any media, and (2) no modifications of the
document is made. Unauthorized duplication, in whole or part, of this document by any means, mechanical or electronic,
including translation into another language, except for brief excerpts in published reviews, is prohibited without the
express written permission of Altium Limited. Unauthorized duplication of this work may also be prohibited by local
statute. Violators may be subject to both criminal and civil penalties, including fines and/or imprisonment. Altium, Altium
Designer, Board Insight, Design Explorer, DXP, LiveDesign, NanoBoard, NanoTalk, P-CAD, SimCode, Situs, TASKING,
and Topological Autorouting and their respective logos are trademarks or registered trademarks of Altium Limited or its
subsidiaries. All other registered or unregistered trademarks referenced herein are the property of their respective
owners and no trademark rights to the same are claimed.

Altium Essentials_July2013_Colby
10-July-2013

Table of Contents
Module 1: Your Relationship with Altium
1.1

A new Paradigm in Connected Design Tools ...................................... 24


1.1.1
1.1.2
1.1.3

1.2

24

AltiumLive .................................................................................................................. 24
Signing in to AltiumLive ............................................................................................. 25
Creating an AltiumLive Account................................................................................. 26

Accessing AltiumLive Benefits ............................................................. 26


1.2.1
1.2.2
1.2.3
1.2.4
1.2.5

Installing Altium Designer through AltiumLive ........................................................... 26


Altium Forums ............................................................................................................ 27
BugCrunch and Ideas ................................................................................................ 28
Altium Blogs ............................................................................................................... 29
Accessing Content ..................................................................................................... 30

1.2.5.1
1.2.5.2

Content Store.................................................................................................................. 30
Design Secrets, Altium Videos and Documentation........................................................ 31

1.3

Upgrades and Service Packs ................................................................ 32

1.4

Cloud Preferences ................................................................................. 32

Module 2: Getting Help


2.1

AltiumLive ............................................................................................... 34
2.1.1

AltiumLive Forums ..................................................................................................... 35

2.1.1.1

2.1.2

2.2

34

Receiving Notification About New Forum Threads ......................................................... 37

AltiumLive Blogs ........................................................................................................ 37

Accessing Structured Help Content ..................................................... 38


2.2.1
2.2.2

The Altium Wiki .......................................................................................................... 38


Knowledge Center panel ........................................................................................... 39

2.2.2.1

2.2.3
2.2.4
2.2.5

Offline PDF Documentation ............................................................................................ 40

Shortcuts panel .......................................................................................................... 41


Using F1 ..................................................................................................................... 42
"What's this?" Help (WTH) ......................................................................................... 42

2.3

Examples and Reference designs ........................................................ 42

2.4

Online Videos ......................................................................................... 45


2.4.1.1
2.4.1.2
2.4.1.3
2.4.1.4

2.5

Homepage Banner Ads .................................................................................................. 45


Altium Videos .................................................................................................................. 46
Design Secrets ............................................................................................................... 46
Live and On-Demand Webinars and Demos .................................................................. 47

Altium Support Center ........................................................................... 48

Module 3: The Altium Designer Environment


3.1
3.2

A Unified Design Platform ..................................................................... 50


The Editor View ...................................................................................... 52
3.2.1

Document Tabs in the Documents Bar ...................................................................... 52

3.2.1.1

3.3

50

Controlling Document Layout.......................................................................................... 53

Panels ..................................................................................................... 53
3.3.1
3.3.2

Accessing Panels ...................................................................................................... 53


Panel Display Modes ................................................................................................. 54

Altium Essentials_July2013_Colby
10-July-2013

3.3.2.1
3.3.2.2
3.3.2.3

3.3.3

Grouping Panels ........................................................................................................ 56

3.3.3.1
3.3.3.2

3.3.4

Closing Panels ................................................................................................................ 59


Maximizing/Restoring Panels.......................................................................................... 59

Toolbars .................................................................................................. 59
3.4.1
3.4.2

Expanding Tool Buttons............................................................................................. 59


Positioning & Reshaping Toolbars............................................................................. 60

3.4.2.1

3.5

Tabbed Panel Grouping .................................................................................................. 57


Fractal Panel Grouping ................................................................................................... 57

Moving Panels ........................................................................................................... 58

3.3.4.1
3.3.4.2

3.4

Docked Panel Mode ....................................................................................................... 54


Pop-out Mode ................................................................................................................. 55
Floating Mode ................................................................................................................. 56

Locating Lost Toolbars ................................................................................................... 60

Menus ...................................................................................................... 61
3.5.1
3.5.2

Right-click Popup Menus ........................................................................................... 61


Shortcut Keys............................................................................................................. 61

3.6

Status Bar & Command Status ............................................................. 62

3.7

Dialogs .................................................................................................... 63

3.8

Undo/Redo .............................................................................................. 63

3.9

Multi-Monitor Support ............................................................................ 64

3.10 Saving Desktop Layouts........................................................................ 64


3.11 Saving Preferences to a File or the Cloud ........................................... 64
Module 4: Design Documents
4.1
4.2

Creating a new Document ..................................................................... 66


Opening and Displaying Documents .................................................... 67
4.2.1
4.2.2
4.2.3
4.2.4
4.2.5

4.3

Document Insight ....................................................................................................... 68


Hiding Documents ..................................................................................................... 69
Displaying a Document's Status ................................................................................ 70
Document Window Management............................................................................... 71
Document Storage ..................................................................................................... 72

Different Types of Design Documents ................................................. 72


4.3.1
4.3.2
4.3.3
4.3.4
4.3.5
4.3.6
4.3.7
4.3.8

Project Files ............................................................................................................... 73


Project Collection Files .............................................................................................. 73
Common PCB Design Files ....................................................................................... 73
Common FPGA Design Files..................................................................................... 74
Common Embedded Design Files ............................................................................. 74
Automation Script Files .............................................................................................. 74
Miscellaneous Files ................................................................................................... 74
Importable Binary Files .............................................................................................. 75

Module 5: Design Projects


5.1

66

76

Types of Design Projects ...................................................................... 76


5.1.1
5.1.2
5.1.3
5.1.4
5.1.5
5.1.6

PCB Project (*.PrjPcb) ............................................................................................... 76


FPGA Project (*.PrjFpg) ............................................................................................ 76
Embedded Project (*.PrjEmb).................................................................................... 77
Core Project (*.PrjCor) ............................................................................................... 77
Integrated Library (*.LibPkg) & (*.IntLib) .................................................................... 77
Script Project (*.PrjScr) .............................................................................................. 77

Altium Essentials_July2013_Colby
10-July-2013

5.2

Working with Projects ........................................................................... 77


5.2.1
5.2.2
5.2.3

The Projects panel ..................................................................................................... 77


Creating a new Project .............................................................................................. 78
Adding Documents to a Project ................................................................................. 80

5.2.3.1

5.2.4
5.2.5
5.2.6
5.2.7
5.2.8
5.2.9

Including other files in the Project ................................................................................... 80

Removing a Document from a project ....................................................................... 81


Specifying the Order of Documents in a Project........................................................ 81
Sharing Documents between Projects ...................................................................... 81
Saving Project Documents with a New Name ........................................................... 82
Making Changes to the Project.................................................................................. 82
Renaming Projects - Save Project As ....................................................................... 83

5.3

Transferring Projects - the Project Packager ...................................... 83

5.4

Encapsulating Design Projects............................................................. 85


5.4.1 Linking Projects.......................................................................................................... 85
5.4.2 Unlinking Projects ...................................................................................................... 85
1.1.1044382367 ...................................................................................................................... 85

5.5

Version Controlling Projects ................................................................. 85


5.5.1
5.5.2

Adding a Project to Version Control .......................................................................... 86


Committing Changes to Version Control ................................................................... 88

Module 6: The Schematic Editor


6.1

The Schematic Editor User Interface .................................................... 90


6.1.1

6.2

The Design Insight System ........................................................................................ 91

Navigating the Schematic Editor Workspace ...................................... 91


6.2.1
6.2.2
6.2.3
6.2.4

6.3

90

Navigating with the Mouse ......................................................................................... 91


Navigating with the Keyboard .................................................................................... 92
Navigating via the View menu ................................................................................... 92
Using the Jump menu ................................................................................................ 93

Schematic Preferences .......................................................................... 93

Module 7: Schematic Document Options

95

7.1

Document Options dialog...................................................................... 95

7.2

Sheet Options tab .................................................................................. 95


7.2.1

Template .................................................................................................................... 95

7.2.1.1

7.2.2
7.2.3
7.2.4
7.2.5
7.2.6
7.2.7

Using Templates ............................................................................................................. 96

Standard Style ........................................................................................................... 96


Options....................................................................................................................... 96
Change System Font ................................................................................................. 96
Grids .......................................................................................................................... 96
Electrical Grid............................................................................................................. 97
Custom Style.............................................................................................................. 97

7.3

Parameters tab ....................................................................................... 97

7.4

Units tab .................................................................................................. 99


7.4.1
7.4.2

7.5

Imperial Unit System area ......................................................................................... 99


Metric Unit System area ............................................................................................ 99

Link to Vault............................................................................................ 99

Module 8: Placing Schematic objects.


Altium Essentials_July2013_Colby
10-July-2013

101
5

8.1

Common Elements of Object Placement ........................................... 101


8.1.1

Object Editing Options ............................................................................................. 101

8.1.1.1
8.1.1.2
8.1.1.3

8.1.2
8.1.3

8.2

Different Types of Grids ........................................................................................... 103


Setting the Schematic Cursor Appearance ............................................................. 103

Graphic objects .................................................................................... 103


8.3.1
8.3.2
8.3.3
8.3.4
8.3.5
8.3.6
8.3.7
8.3.8
8.3.9
8.3.10
8.3.11
8.3.12
8.3.13

8.4

Using Over-scores ................................................................................................... 101


Getting Help when Placing Objects ......................................................................... 102

Schematic Grids and Cursors ............................................................. 102


8.2.1
8.2.2

8.3

Editing During Placement ............................................................................................. 101


Editing After Placement ................................................................................................ 101
Re-entrant Editing ......................................................................................................... 101

Lines <PDL> ............................................................................................................ 104


Polygons <PDY> ..................................................................................................... 104
Arcs <PDA> ............................................................................................................. 105
Elliptical arcs <PDI> ................................................................................................. 105
Bezier curves <PDB> .............................................................................................. 105
Text Strings <PT> .................................................................................................... 105
Text frames <PF> .................................................................................................... 106
Notes <PE>.............................................................................................................. 106
Rectangles <PDR> .................................................................................................. 107
Rounded rectangles <PDO>.................................................................................... 107
Ellipse <PDE> .......................................................................................................... 107
Pie charts <PDC> .................................................................................................... 107
Graphic images <PDG> ........................................................................................... 108

Electrical objects.................................................................................. 108


8.4.1
8.4.2
8.4.3
8.4.4
8.4.5
8.4.6

Wires <PW> ............................................................................................................. 109


Buses <PB> ............................................................................................................. 110
Bus Entries <PU> .................................................................................................... 110
Signal Harness <PHH> ............................................................................................ 111
Harness Connector <PHC> ..................................................................................... 112
Harness Entry <PHE> ............................................................................................. 113

8.4.6.1

8.4.7
8.4.8
8.4.9
8.4.10
8.4.11
8.4.12
8.4.13
8.4.14
8.4.15
8.4.16
8.4.17

Harness Definition ........................................................................................................ 114

Net Labels <PN> ..................................................................................................... 114


Power Ports <PO> ................................................................................................... 115
Parts <PP>............................................................................................................... 116
Sheet Symbols <PS> ............................................................................................... 117
Sheet Entries <PA> ................................................................................................. 118
Place Device Sheet <PI> ......................................................................................... 119
Ports <PR> .............................................................................................................. 120
Off Sheet Connectors <PC> .................................................................................... 121
Junctions <PJ> ........................................................................................................ 121
Non-Specific No ERC Directive <PVN > ................................................................. 122
No ERC Targeting a Specific Error Directive <PVE > ............................................. 123

Module 9: Selecting and Editing Schematic Objects


9.1

Select then Edit .................................................................................... 124


9.1.1
9.1.2

Selecting via Direct Object Selection ....................................................................... 124


Selecting Objects Indirectly ..................................................................................... 126

9.1.2.1
9.1.2.2

9.2

124

The Find Similar Objects (FSO) Dialog ......................................................................... 126


The Navigator Panel ..................................................................................................... 127

Editing Schematic Objects .................................................................. 127


9.2.1

Graphically Editing Placed Objects ......................................................................... 127

9.2.1.1

Common Move operations ............................................................................................ 128

Altium Essentials_July2013_Colby
10-July-2013

9.2.1.2

9.2.2

9.2.2.1
9.2.2.2
9.2.2.3
9.2.2.4
9.2.2.5
9.2.2.6

9.2.3

Common Drag Operations ............................................................................................ 128

Editing Placed Wires................................................................................................ 128


Editing by Moving a Wire's Vertex ................................................................................ 128
Moving a Wire Segment ............................................................................................... 128
Move the entire wire ..................................................................................................... 129
Extending a Wire to a New Location ............................................................................. 129
Breaking Wires ............................................................................................................. 129
Multiple lines ................................................................................................................. 129

Editing Using the Properties Dialog ......................................................................... 129

Module 10: Schematic Object Reference

130

10.1 Graphical Object Properties ................................................................ 130


10.1.1 Polylines................................................................................................................... 130
10.1.2 Polygon .................................................................................................................... 131
10.1.3 Elliptical Arc ............................................................................................................. 131
10.1.4 Bezier ....................................................................................................................... 131
10.1.5 Annotation ................................................................................................................ 132
10.1.6 Text Frame............................................................................................................... 132
10.1.7 (Round) Rectangle ................................................................................................... 133
10.1.8 Ellipse ...................................................................................................................... 134
10.1.9 Pie Chart .................................................................................................................. 134
10.1.10 Graphic .................................................................................................................... 135

10.2 Electrical Object Properties ................................................................ 135


10.2.1 Wire.......................................................................................................................... 135
10.2.2 Bus ........................................................................................................................... 136
10.2.3 Signal Harness......................................................................................................... 136
10.2.4 Bus Entry ................................................................................................................. 136
10.2.5 Net Label.................................................................................................................. 137
10.2.6 Power Port ............................................................................................................... 137
10.2.7 Sheet Symbol........................................................................................................... 138
10.2.8 Place Sheet Entry .................................................................................................... 139
10.2.9 Device Sheet Symbol .............................................................................................. 140
10.2.10 Harness Connector: ................................................................................................. 141
10.2.11 Harness Entry .......................................................................................................... 142
10.2.12 Port .......................................................................................................................... 142
10.2.13 No ERC .................................................................................................................... 143
10.2.14 Components............................................................................................................. 144

Module 11: Schematic Placement and Wiring

145

11.1 Placing Components from a Vault ...................................................... 145


11.2 Placing Components From the Library Panel.................................... 145
11.2.1 The Libraries Panel .................................................................................................. 146
11.2.1.1 Placing a Component ................................................................................................... 146
11.2.1.2 Locating Components ................................................................................................... 146

11.3 Placing Components using Place Part (P,P)................................... 147


11.4 Wiring the Design ................................................................................. 148
11.4.1 Using Net Labels to Establish Connectivity ............................................................. 148
11.4.2 Using Signal Harnesses .......................................................................................... 148
11.4.3 Establishing the Scope of Net Identifiers ................................................................. 151

Module 12: Multi-Sheet Design & Design Hierarchy

152

12.1 Defining Sheet Structure ..................................................................... 152


Altium Essentials_July2013_Colby
10-July-2013

12.2 Structuring a Multi-Sheet Design ........................................................ 153


12.2.1 Mixed Schematic/HDL Document Hierarchy ........................................................... 153
12.2.2 Building Hierarchical Structure ................................................................................ 154

12.3 Multi-Sheet Design Connectivity ........................................................ 155


12.3.1 Net Identifiers ........................................................................................................... 155
12.3.2 Net Identifier Scope ................................................................................................. 156

12.4 Assigning Sheet Numbers................................................................... 158


12.5 Checking Sheet Synchronization ....................................................... 159
Module 13: Schematic Annotation

161

13.1 Annotation Overview ........................................................................... 161


13.2 Schematic Level Annotation ............................................................... 162
13.2.1 Order of Processing ................................................................................................. 163
13.2.2 Matching Options ..................................................................................................... 164
13.2.2.1 Complete Existing Packages ........................................................................................ 164
13.2.2.2 Component Parameters ................................................................................................ 164
13.2.2.3 Strictly ........................................................................................................................... 164

13.2.3 Schematic Sheets to Annotate ................................................................................ 165


13.2.4 Proposed Change List ............................................................................................. 166

13.3 Additional Schematic Annotation Commands .................................. 167


13.3.1
13.3.2
13.3.3
13.3.4
13.3.5
13.3.6

Reset Schematic Designators ................................................................................. 167


Reset Duplicate Schematic Designators ................................................................. 167
Annotate Schematics Quietly................................................................................... 167
Force Annotate All Schematics................................................................................ 168
Back Annotate Schematics ...................................................................................... 168
Number Schematic Sheets ...................................................................................... 168

13.3.6.1
13.3.6.2
13.3.6.3
13.3.6.4
13.3.6.5

Auto Sheet Number ...................................................................................................... 169


Auto Document Number ............................................................................................... 169
Update Sheet Count ..................................................................................................... 170
Move Up / Down ........................................................................................................... 170
Custom Numbering / Naming........................................................................................ 170

13.3.7 Schematic Sheet Numbering and Device Sheets.................................................... 170

Module 14: Compile and Verify the PCB project

171

14.1 Compiler settings ................................................................................. 171


14.1.1 Error Reporting tab .................................................................................................. 171
14.1.2 Connection Matrix tab .............................................................................................. 172

14.2 Interpreting messages and locating errors........................................ 174


14.2.1
14.2.2
14.2.3
14.2.4

Getting More Error/Warning Information ................................................................. 174


Clearing Messages .................................................................................................. 174
Allocating No ERC Directive.................................................................................. 175
Project Compiler Error Reference............................................................................ 175

Module 15: The PCB Editor

176

15.1 The PCB Editor User Interface ............................................................ 176


15.1.1 Board Insight System ............................................................................................... 177

15.2 Navigating the PCB Editor Workspace .............................................. 177


15.2.1 Navigating with the Mouse ....................................................................................... 177
15.2.2 Navigating with a 3D Mouse .................................................................................... 180
Altium Essentials_July2013_Colby
10-July-2013

15.2.3 Navigating with a Keyboard ..................................................................................... 180


15.2.4 Navigating via the View or Zoom menu ................................................................... 181
15.2.5 Using the Jump menu .............................................................................................. 181

15.3 PCB Preferences .................................................................................. 182


Module 16: Footprint Manager

183

16.1 Accessing the Footprint Manager ...................................................... 183


16.2 Viewing & Editing Footprints .............................................................. 185
16.2.1
16.2.2
16.2.3
16.2.4
16.2.5

Viewing Currently Linked Footprint Models ............................................................. 185


Adding a Footprint Model......................................................................................... 186
Editing a Footprint Model ......................................................................................... 189
Changing PCB Library ............................................................................................. 189
Copying Footprints Between Components .............................................................. 190

16.2.5.1 Copy and Paste ............................................................................................................ 190


16.2.5.2 Addition to Selected Components................................................................................. 190

16.2.6 Setting a Different Footprint to be the Current Footprint ......................................... 191


16.2.7 Validating Footprint Paths........................................................................................ 191

16.3 Implementing the Changes ................................................................. 192


Module 17: Defining the Board Shape

194

17.1 The Board Shape .................................................................................. 194


17.2 Defining the Board Shape ................................................................... 194
17.2.1
17.2.2
17.2.3
17.2.4

Defining the Board Shape Using a 3D Body ........................................................... 194


Defining the Board Shape as a Polygon .................................................................. 195
Defining the Board Shape from Existing Primitives ................................................. 195
Defining the Board Shape from a DXF File ............................................................. 196

17.3 Editing the Board Shape...................................................................... 197


17.3.1 Editing the Board Shape Vertices ............................................................................ 197

17.4 Creating a Keepout from the Board Shape ........................................ 197


17.5 Adding Cutouts to the Board Shape .................................................. 198
Module 18: Design Transfer

199

18.1 Synchronization - Overview ................................................................ 199


18.2 Transferring the Design ....................................................................... 201
18.2.1 Pre-transfer Checks ................................................................................................. 201
18.2.2 Proceeding with the Transfer ................................................................................... 202

Module 19: Working with the PCB Panel

205

19.1 Navigate using the PCB panel ............................................................ 205


19.1.1 Browse mode selection list ...................................................................................... 205

19.2 Browsing nets and net classes ........................................................... 206


19.3 Browsing components and component classes ............................... 207
19.4 From-To Editor ..................................................................................... 208
19.5 Split Plane Editor ................................................................................. 209
19.6 Differential Pair Editor ......................................................................... 210
Altium Essentials_July2013_Colby
10-July-2013

19.7 Browsing Polygons .............................................................................. 211


19.8 Hole Size Editor .................................................................................... 212
19.9 Browsing 3D Models ............................................................................ 213
19.10 Browsing Structure Classes ............................................................... 214
Module 20: PCB Layers

215

20.1 Defining the Electrical Layer Stackup ................................................ 215


20.1.1 Adding Layers .......................................................................................................... 215
20.1.1.1 Adding a Signal or Plane Layer .................................................................................... 215
20.1.1.2 Adding Insulation Layers .............................................................................................. 215

20.1.2 Working with Layers ................................................................................................ 216


20.1.2.1
20.1.2.2
20.1.2.3
20.1.2.4

Editing Layer Properties ............................................................................................... 216


Deleting a Layer ............................................................................................................ 216
Editing the Stack Up Order ........................................................................................... 216
Editing the Stack Up Style ............................................................................................ 216

20.1.3 Where the Physical Properties are Used ................................................................. 216

20.2 Layer Display ........................................................................................ 216


20.2.1 Changing the Current Layer .................................................................................... 217
20.2.2 Layer Sets ................................................................................................................ 218
20.2.3 Layer Colors............................................................................................................. 220

20.3 Layer Definitions .................................................................................. 220


20.3.1 Signal Layers ........................................................................................................... 221
20.3.2 Internal Plane Layers ............................................................................................... 221
20.3.3 Silkscreen Layers .................................................................................................... 221
20.3.4 Mechanical Layers ................................................................................................... 221
20.3.5 Solder Mask Layers ................................................................................................. 221
20.3.6 Paste Mask Layers .................................................................................................. 221
20.3.7 Drill Drawing Layer .................................................................................................. 221
20.3.8 Drill Guide Layer ...................................................................................................... 222
20.3.9 Keep Out Layer ........................................................................................................ 222
20.3.10 Multi Layer ............................................................................................................... 222

20.4 Drill Pairs .............................................................................................. 222


20.5 Placing a Stackup Legend ................................................................... 223
20.6 Defining Mechanical Layers ................................................................ 224
20.6.1 Mechanical Layer Pairs ........................................................................................... 224

20.7 Internal Power Planes .......................................................................... 225


20.7.1
20.7.2
20.7.3
20.7.4

Defining an Internal Power Plane ............................................................................ 225


Defining a Split Power Plane ................................................................................... 225
Re-defining a Split Plane ......................................................................................... 226
Deleting a Split Plane .............................................................................................. 226

Module 21: PCB Objects

227

21.1 Object Placement and Editing Commonality ..................................... 227


21.1.1 Editing Prior to Placement ....................................................................................... 227
21.1.2 Editing During Placement ........................................................................................ 228
21.1.3 Editing After Placement ........................................................................................... 228
21.1.3.1 Via an Associated Properties Dialog............................................................................. 228
21.1.3.2 Graphical Editing .......................................................................................................... 228
21.1.3.3 Via the PCB Inspector Panel ........................................................................................ 229
Altium Essentials_July2013_Colby
10-July-2013

10

21.1.3.4 Via the PCB List Panel ................................................................................................. 229

21.1.4 Re-entrant Editing .................................................................................................... 229


21.1.5 Getting Help when Placing Objects ......................................................................... 229

21.2 PCB Grids and Cursors ....................................................................... 230


21.2.1
21.2.2
21.2.3
21.2.4

User-Definable Grids ............................................................................................... 231


Snap Guides ............................................................................................................ 231
Snap-Points ............................................................................................................. 232
Setting the PCB Cursor Appearance ....................................................................... 233

21.3 True Type Font Support....................................................................... 233


21.4 Primitive Objects .................................................................................. 234
21.4.1 Track <PT> .............................................................................................................. 234
21.4.2 Line <PL> ................................................................................................................. 236
21.4.3 Pad <PP> ................................................................................................................. 236
21.4.3.1
21.4.3.2
21.4.3.3
21.4.3.4

Pad Designators ........................................................................................................... 238


Jumper Connections ..................................................................................................... 238
Testpoints ..................................................................................................................... 239
Solder and Paste Mask Expansions ............................................................................. 239

21.4.4 Via <PV> .................................................................................................................. 239


21.4.4.1
21.4.4.2
21.4.4.3
21.4.4.4

Vias and Routing .......................................................................................................... 241


Blind and Buried Vias ................................................................................................... 241
Testpoints ..................................................................................................................... 242
Solder Mask Expansion ................................................................................................ 242

21.4.5 Arc <PA> <PE> <PN> <PU> ................................................................................... 242


21.4.6 String ........................................................................................................................ 244
21.4.6.1 BarCode Text................................................................................................................ 245
21.4.6.2 Special Strings .............................................................................................................. 245

21.4.7 Fill <PF> ................................................................................................................... 246


21.4.8 Region <PR> ........................................................................................................... 247
21.4.9 3D Body <PB> ......................................................................................................... 249
21.4.10 Embedded Board Array ........................................................................................... 250
21.4.11 Room <DMR> <DMM> ............................................................................................ 252

21.5 Group Objects ...................................................................................... 254


21.5.1 Component <PC> .................................................................................................... 254
21.5.1.1 Component Designators ............................................................................................... 256

21.5.2 Coordinate <PO> ..................................................................................................... 257


21.5.3 Dimension <PD> ...................................................................................................... 257
21.5.3.1 Angular dimension <PDA> ........................................................................................... 258
21.5.3.2 Baseline dimension <PDB> .......................................................................................... 259
21.5.3.3 Center dimension <PDC> ............................................................................................. 260
21.5.3.4 Datum dimension <PDT> ............................................................................................. 261
21.5.3.5 Leader dimension <PDE> ............................................................................................. 262
21.5.3.6 Linear dimension <PDL> .............................................................................................. 263
21.5.3.7 Linear diameter dimension <PDI> ................................................................................ 264
21.5.3.8 Radial dimension <PDR> ............................................................................................. 265
21.5.3.9 Radial diameter dimension <PDM> .............................................................................. 266
21.5.3.10 Standard dimension <PDD> ......................................................................................... 267

21.5.4 Polygon Pour <PG> ................................................................................................. 268

Module 22: Introduction to Classes and Rooms

271

22.1 Object Classes ..................................................................................... 271


22.1.1 Object Class Explorer .............................................................................................. 271
22.1.1.1 Component Class Generator ........................................................................................ 274

Altium Essentials_July2013_Colby
10-July-2013

11

22.2 Rooms ................................................................................................... 275


22.2.1 Defining Rooms ....................................................................................................... 275
22.2.1.1
22.2.1.2
22.2.1.3
22.2.1.4

Moving components into a room ................................................................................... 276


Moving rooms ............................................................................................................... 276
Using a Room to scope a DRC Rule ............................................................................ 276
Polygon Rooms ............................................................................................................ 276

Module 23: Introduction to PCB Design Rules

277

23.1 PCB Rules System - Fundamentals .................................................... 277


23.2 Defining and Managing Design Rules ................................................ 277
23.2.1 Creating a New Rule ................................................................................................ 278
23.2.1.1 Creating a New Rule with the Rule Wizard ................................................................... 279

23.2.2 Scoping a Rule......................................................................................................... 280


23.2.2.1 Scoping Options ........................................................................................................... 280
23.2.2.2 Scoping a Rule with the Query Builder ......................................................................... 281
23.2.2.3 Getting Help with the Query Helper .............................................................................. 281

23.2.3 Prioritizing the Rules ................................................................................................ 282


23.2.4 Modifying Existing Rules .......................................................................................... 283
23.2.5 Deleting Rules.......................................................................................................... 284

23.3 Checking Rule Application .................................................................. 285


23.3.1 From an Object's Perspective .................................................................................. 285
23.3.2 From a Rule's Perspective ....................................................................................... 286

23.4 Exporting and Importing Rules ........................................................... 288


23.5 Design Rule Reports ............................................................................ 288
23.6 Defining Rules on the Schematic ....................................................... 289
Module 24: PCB Grids, Guides & Options

290

24.1 Accessing the Unified Cursor-Snap System ..................................... 290


24.2 User-Definable Grids ........................................................................... 291
24.2.1 Accessing the Grid Manager ................................................................................... 292
24.2.2 Creating and Defining a Cartesian Grid ................................................................... 292
24.2.2.1
24.2.2.2
24.2.2.3
24.2.2.4
24.2.2.5
24.2.2.6

Settings ......................................................................................................................... 294


Steps ............................................................................................................................ 294
Origin ............................................................................................................................ 295
Display .......................................................................................................................... 295
Extents .......................................................................................................................... 295
Quadrants ..................................................................................................................... 296

24.2.3 Creating and Defining a Polar Grid .......................................................................... 296


24.2.3.1 Steps ............................................................................................................................ 297
24.2.3.2 Angular Range .............................................................................................................. 298
24.2.3.3 Radial Range ................................................................................................................ 298

24.2.4 Default Snap Grid .................................................................................................... 298


24.2.5 Duplicating a Grid .................................................................................................... 298
24.2.6 Defining Grid Purpose ............................................................................................. 299
24.2.7 Defining Grid Display ............................................................................................... 299
24.2.8 Nesting and Grid Priority.......................................................................................... 301
24.2.9 Disabling a Grid ....................................................................................................... 302
24.2.10 Exporting and Importing Grids ................................................................................. 302
24.2.11 Deleting a Grid ......................................................................................................... 303

24.3 Snap Guides ......................................................................................... 303


Altium Essentials_July2013_Colby
10-July-2013

12

24.3.1
24.3.2
24.3.3
24.3.4
24.3.5

Defining a Snap Guide ............................................................................................. 304


Duplicating a Snap Guide ........................................................................................ 305
Disabling a Snap Guide ........................................................................................... 305
Exporting and Importing Snap Guides ..................................................................... 305
Deleting a Snap Guide ............................................................................................. 305

24.4 Object Snap-Points .............................................................................. 306


24.4.1 Snap to Object Hotspots .......................................................................................... 306
24.4.2 Snap to Object Axis ................................................................................................. 306

24.5 Additional Board Options .................................................................... 308


24.5.1
24.5.2
24.5.3
24.5.4

Measurement Unit ................................................................................................... 309


Designator Display ................................................................................................... 309
Route Tool Path ....................................................................................................... 310
Sheet Position .......................................................................................................... 310

Module 25: Positioning components on the PCB

311

25.1 Placing Components into the Workspace.......................................... 311


25.2 Initial Component Placement .............................................................. 311
25.2.1 Cluster Components by Schematic Sheet ............................................................... 311

25.3 Finding a Component for Placement .................................................. 313


25.3.1 Working from the Schematic to the PCB ................................................................. 313
25.3.2 Working in the PCB Editor ....................................................................................... 313

25.4 Moving a Component ........................................................................... 313


25.4.1
25.4.2
25.4.3
25.4.4

Moving Basics .......................................................................................................... 313


Drag Tracks while Moving a Component ................................................................. 314
Component Unions .................................................................................................. 315
Component Grids ..................................................................................................... 316

25.5 Interactive Placement Commands ...................................................... 319


25.5.1 Align Commands ..................................................................................................... 319
25.5.2 Component Placement Commands ......................................................................... 319
25.5.2.1 Working with Component Classes and Rooms ............................................................. 319

Module 26: Interactive Routing

320

26.1 Interactively Routing a Net .................................................................. 320


26.1.1 Auto-complete the Current Route ............................................................................ 321

26.2 Understanding Connectivity ............................................................... 321


26.2.1 Controlling the Color of Connection Lines ............................................................... 323
26.2.1.1 Changing the Connection Line Color ............................................................................ 323
26.2.1.2 Displaying Connection Lines using the Layer Colors .................................................... 326

26.2.2 Displaying Connection Lines in Single Layer Mode ................................................ 326

26.3 Controlling the Routing Width and Via Size ...................................... 327
26.3.1 Changing the Width While Routing .......................................................................... 327
26.3.2 Changing the Via Size While Routing ...................................................................... 328

26.4 The Routing Conflict Resolution Mode .............................................. 329


26.5 Interactive Routing Options and Features ......................................... 330
26.5.1
26.5.2
26.5.3
26.5.4

Routing Gloss Effort ................................................................................................. 330


Automatically Terminate Routing ............................................................................. 330
Loop Removal .......................................................................................................... 330
Restrict to 90/45 ....................................................................................................... 330

Altium Essentials_July2013_Colby
10-July-2013

13

26.5.5 Follow Mouse Trail ................................................................................................... 331


26.5.6 Look Ahead Behavior .............................................................................................. 331

26.6 Shortcuts available during Interactive Routing ................................. 331


Module 27: An Introduction to PCB Global Editing

332

27.1 Altium Designer's Data Editing Paradigm .......................................... 332


27.1.1
27.1.2
27.1.3
27.1.4

Selecting Objects ..................................................................................................... 332


Inspecting Objects ................................................................................................... 333
Editing Objects ......................................................................................................... 333
Masking .................................................................................................................... 334

27.1.4.1 Clearing Selections and Masks..................................................................................... 335

Module 28: PCB Selection & FSO

336

28.1 Selection Commands ........................................................................... 336


28.2 Find Similar Objects (FSO) .................................................................. 338
Module 29: Polygons

340

29.1 Overview ............................................................................................... 340


29.2 Placing a Polygon Pour ....................................................................... 340
29.2.1 Defining Polygon Pour Properties............................................................................ 340
29.2.1.1
29.2.1.2
29.2.1.3
29.2.1.4

Properties ..................................................................................................................... 341


Net Options ................................................................................................................... 342
Mode-Specific Settings (Solid) ...................................................................................... 342
Mode-Specific Settings (Hatched and Outlines Only) ................................................... 342

29.2.2 Defining the Shape of the Polygon .......................................................................... 343

29.3 Editing a Polygon Pour ........................................................................ 343


29.3.1 Changing Properties ................................................................................................ 343
29.3.2 Changing Size and Location .................................................................................... 344
29.3.3 Reshaping a Polygon Pour ...................................................................................... 344
29.3.4 Pouring a Polygon Pour with a Larger Clearance ................................................... 345
29.3.5 Polygon Pour Cutouts .............................................................................................. 345
29.3.6 Slicing Polygon Pours .............................................................................................. 346
29.3.7 Shelving a Polygon Pour ......................................................................................... 347
29.3.8 Converting Hatched Polygon Pours to Solid ........................................................... 347
29.3.9 Manual Repouring ................................................................................................... 348
29.3.10 Deleting a Polygon Pour .......................................................................................... 349

29.4 The Polygon Pour Manager ................................................................. 349


Module 30: Managing Parts and Libraries

353

30.1 Models, Components and Libraries ................................................... 353


30.1.1 Model ....................................................................................................................... 353
30.1.2 Component .............................................................................................................. 353
30.1.2.1 Schematic Symbols ...................................................................................................... 353
30.1.2.2 PCB Components ......................................................................................................... 353

30.1.3 Libraries ................................................................................................................... 354

30.2 Library Types........................................................................................ 354


30.2.1
30.2.2
30.2.3
30.2.4

Model Libraries ........................................................................................................ 354


Schematic Libraries ................................................................................................. 354
Integrated Libraries .................................................................................................. 354
Database Libraries ................................................................................................... 354

Altium Essentials_July2013_Colby
10-July-2013

14

30.2.5 Vaults ....................................................................................................................... 356

30.3 Approaches to Model Management .................................................... 356


Module 31: What is a Component?

359

31.1 Components - the Basic Building Blocks .......................................... 359


31.1.1 Component Properties ............................................................................................. 359

31.2 Component Types ................................................................................ 360


31.2.1 Common Graphic, Different Component ................................................................. 361
31.2.1.1 One Component Symbol for each Real-World Component .......................................... 361
31.2.1.2 One Symbol for Graphically Equivalent Real-World Components ................................ 361
31.2.1.3 One Symbol for each Type of Real-World Component ................................................. 361

31.2.2 Common Component, Different Graphics ............................................................... 361


31.2.3 Multi-part Components ............................................................................................ 361
31.2.4 Non-standard Component Types............................................................................. 362

31.3 Component Parameters ....................................................................... 362


31.3.1 Adding Parameters to an Individual Component ..................................................... 363
31.3.2 Adding Parameters to a Component Library ........................................................... 363
31.3.3 Using Parameters to Reference Additional Documents .......................................... 363
31.3.3.1 Using the HelpURL Parameter to Link to External Documents ..................................... 363

31.4 Establishing Links to Component Models ......................................... 365


31.4.1 Fundamentals of Model Mapping Information ......................................................... 365
31.4.2 Options for Referencing Models .............................................................................. 366
31.4.2.1
31.4.2.2
31.4.2.3
31.4.2.4

Any ............................................................................................................................... 367


Library name ................................................................................................................. 367
Library path ................................................................................................................... 367
Integrated library ........................................................................................................... 367

31.5 Locating and Identifying Components ............................................... 367


31.5.1 Managing Library Search Locations & Available Libraries ...................................... 367
31.5.1.1
31.5.1.2
31.5.1.3
31.5.1.4

Available Project Libraries ............................................................................................ 367


Available Installed Libraries .......................................................................................... 368
Search Path .................................................................................................................. 368
General Provisions ....................................................................................................... 369

31.5.2 Moving Designs from One Location to Another ....................................................... 369

31.6 Changing Library References of Placed Components ..................... 369


31.6.1 Changing Library-Based Components .................................................................... 369
31.6.2 Changing Vault-Based Components ....................................................................... 370

Module 32: Schematic Symbol Libraries

372

32.1 The Dual Nature of the Schematic Symbol ........................................ 372


32.2 Creating a new Symbol Library and an Empty Component Symbol 373
32.3 Creating the Component Symbol ....................................................... 373
32.3.1
32.3.2
32.3.3
32.3.4

The Component Symbol Design Space .................................................................. 373


The Component Symbol Body ................................................................................. 374
The Component Symbol Pins .................................................................................. 375
The Component Symbol Properties......................................................................... 376

32.3.4.1 Component Types ........................................................................................................ 377

32.4 Using the SCH Library Panel ............................................................... 378


32.4.1 Components Section ............................................................................................... 378
Altium Essentials_July2013_Colby
10-July-2013

15

32.4.2
32.4.3
32.4.4
32.4.5

Alias Section ............................................................................................................ 378


Pins Section ............................................................................................................. 379
Model Section .......................................................................................................... 379
Supply Links and Supplier Information .................................................................... 379

32.5 Library and Component Management Techniques ........................... 379


32.5.1 Creating a Library of Components from an Existing Project ................................... 379
32.5.2 Copying Existing Components to a New Symbol Library ........................................ 380

Module 33: Schematic Component Creation

381

33.1 The Schematic Library Editor ............................................................. 381


33.1.1 Editing Tools ............................................................................................................ 382
33.1.2 Editor Terminology ................................................................................................... 383
33.1.3 SCH Library Panel ................................................................................................... 384

33.2 Creating a Schematic Component ...................................................... 384


33.2.1 Adding a New Component ....................................................................................... 385
33.2.1.1 Origin, Units and Grids ................................................................................................. 385

33.2.2 Defining Symbol Graphics ....................................................................................... 386


33.2.3 Adding Pins to the Symbol ....................................................................................... 386
33.2.3.1 Component Pin Editor ................................................................................................... 389

33.2.4 Defining Additional Component Properties.............................................................. 390


33.2.5 Adding Links to Other Domain Models .................................................................... 391
33.2.5.1 Adding Models .............................................................................................................. 392
33.2.5.2 Defining Model Links .................................................................................................... 393

33.2.6 Adding Parameters .................................................................................................. 396


33.2.6.1 Parameters for Component-to-Datasheet Linking......................................................... 398

33.3 Component Verification ....................................................................... 399


33.3.1
33.3.2
33.3.3
33.3.4

Component Rule Check ........................................................................................... 399


Component Report .................................................................................................. 400
Library List ............................................................................................................... 400
Library Report .......................................................................................................... 400

33.4 Copying Components from Other Libraries ...................................... 401


33.5 Creating a multi-part component ........................................................ 402
33.6 Creating an Alternate View Mode for a Part ....................................... 403
Module 34: Supplier Links

404

34.1 Supported Suppliers ............................................................................ 404


34.1.1 Accessing Additional Supplier Services .................................................................. 405

34.2 Searching for Supplier Items .............................................................. 406


34.3 Adding a Live Link to a Supplier Item ............................................. 407
34.3.1 Adding a Link from the SCH Library Panel .............................................................. 408

34.4 Importing Data from a Supplier Item .................................................. 409


34.4.1
34.4.2
34.4.3
34.4.4
34.4.5

Parameter Import Options ....................................................................................... 410


Importing Parameters .............................................................................................. 411
Importing Data Sheet Links ..................................................................................... 412
Importing Pricing Information ................................................................................... 413
Importing Stock Information ..................................................................................... 414

34.5 Adding a Supplier Link and Parameters Simultaneously ................. 415


Altium Essentials_July2013_Colby
10-July-2013

16

34.6 Creating a New Library Component from a Supplier Item ................ 416
34.7 Viewing and Editing Supplier Links ................................................... 418
34.8 Quantity and Pricing ............................................................................ 420
34.8.1 Currency Conversion ............................................................................................... 421

34.9 Including Supplier Data in a Bill of Materials ..................................... 422


34.9.1
34.9.2
34.9.3
34.9.4

Specifying Production Quantity................................................................................ 423


Changing Supplier Currency.................................................................................... 423
Using Cached Pricing Data in BOM Parameters when Offline ................................ 424
Example BOM Template .......................................................................................... 424

34.10 Unified Components the Future Awaits .......................................... 425


34.10.1 Design-Time Part Choices ....................................................................................... 425
34.10.2 Accessing Supply Chain Info During Design ........................................................... 426

Module 35: PCB Libraries

427

35.1 Creating a New PCB library ................................................................. 428


35.2 The PCB Library Editor ........................................................................ 428
35.2.1 The Origin ................................................................................................................ 428
35.2.2 Grid Settings ............................................................................................................ 429
35.2.3 Layers ...................................................................................................................... 429

35.3 Using the PCB Library panel ............................................................... 430


35.4 Library and Footprint Management Techniques ............................... 431
35.4.1
35.4.2
35.4.3
35.4.4

Create a Footprint Library from an Existing PCB Design ........................................ 431


Copy Footprints into a Library.................................................................................. 431
Update a Footprint used on a Board Design ........................................................... 431
Structural Considerations ........................................................................................ 432

35.4.4.1 Multi-part Libraries ........................................................................................................ 432


35.4.4.2 Single-part Libraries...................................................................................................... 433

35.5 Library Reports .................................................................................... 433


Module 36: PCB Component Creation 1
36.1.1
36.1.2
36.1.3
36.1.4
36.1.5

434

Manually Creating a Footprint .................................................................................. 434


Creating a Component using IPC Compliant Footprint Wizard ............................... 435
Creating a Component using IPC Footprints Batch Generator ............................... 436
Creating a Component using the Component Wizard ............................................. 436
Including a 3D Model of the Component ................................................................. 437

36.2 Glossary ................................................................................................ 438


Module 37: Including 3D Models in PCB Components

440

37.1 Adding a 3D Body to a PCB Component............................................ 440


37.1.1 Placing 3D Bodies ................................................................................................... 441
37.1.2 Creating 3D Bodies Interactively ............................................................................. 443

37.2 Importing a STEP Model as a 3D Body .............................................. 445


37.2.1 Linked STEP Models ............................................................................................... 445
37.2.2 Importing STEP Models ........................................................................................... 445
37.2.3 Positioning and Orienting STEP Models ................................................................. 445

Module 38: Creating an Integrated Library


Altium Essentials_July2013_Colby
10-July-2013

447
17

38.1 Creating an IntLib using a Library Package....................................... 447


38.1.1 Creating the Source Library Package ...................................................................... 448
38.1.2 Creating and Adding a Source Schematic Library................................................... 448
38.1.3 Creating and Adding Domain Model Files ............................................................... 449
38.1.3.1 Specifying Where to Find the Models ........................................................................... 449

38.1.4 Compiling the Library Package ................................................................................ 451

38.2 Creating an IntLib from Project Documents ...................................... 452


38.3 Creating an IntLib from a Database Library ....................................... 453
38.4 Placing Components from an Integrated Library .............................. 454
38.5 Modifying an Integrated Library.......................................................... 454
38.5.1 Decompiling an Integrated Library ........................................................................... 455

Module 39: Creating a Bill of Materials (BOM)

456

39.1 Creating a BOM .................................................................................... 456


39.1.1 Layout and Grouping of Data................................................................................... 457
39.1.1.1
39.1.1.2
39.1.1.3
39.1.1.4

Grouped Columns ......................................................................................................... 457


Changing Column Order ............................................................................................... 458
Sorting Data within Columns......................................................................................... 458
Custom Filtering............................................................................................................ 459

39.1.2 Adding Database Information Directly to the BOM .................................................. 460


39.1.3 Adding PCB Information to the BOM ....................................................................... 460
39.1.4 Including Supplier Data in the BOM ........................................................................ 461
39.1.4.1 Specifying Production Quantity ..................................................................................... 462
39.1.4.2 Changing Supplier Currency ......................................................................................... 463
39.1.4.3 Using Cached Pricing Data in BOM Parameters when Offline ..................................... 464

39.1.5 Catering for Variants ................................................................................................ 464

39.2 Exporting the Report ........................................................................... 466


39.2.1 Using Excel Templates ............................................................................................ 466
39.2.1.1 Including Document and Project Parameters ............................................................... 468

39.3 Using Output Job Files ........................................................................ 470


39.3.1.1 Publishing to PDF Based on an Excel Template .......................................................... 471

Module 40: OutJobs

472

40.1 Adding & Defining an OutJob - Overview .......................................... 472


40.2 Adding Outputs to an OutJob ............................................................. 473
40.2.1 Configuring Outputs ................................................................................................. 474

40.3 Defining Output Format ....................................................................... 475


40.3.1 Output Containers .................................................................................................... 475
40.3.1.1 Configuring a Container ................................................................................................ 475
40.3.1.2 Output Location ............................................................................................................ 477

40.3.2 Hard Copy - Print Jobs ............................................................................................ 478


40.3.2.1 Configuring a Print Job ................................................................................................. 479

40.3.3 Linking Outputs to Output Containers and Print Jobs ............................................. 479

40.4 Variant Choice ...................................................................................... 480


40.4.1 Variants and Board Design Release ....................................................................... 482

40.5 Output Generation ............................................................................... 482


40.5.1 From Output Containers .......................................................................................... 483
Altium Essentials_July2013_Colby
10-July-2013

18

40.5.1.1 Publishing Generated Output........................................................................................ 483

40.5.2 From Print Jobs........................................................................................................ 485


40.5.2.1 Print Preview................................................................................................................. 485
40.5.2.2 Printing ......................................................................................................................... 486

40.5.3 From the PCB Release View ................................................................................... 486

Appendix

489

Module 41: Advanced Schematic Editing Techniques

490

41.1 Altium Designer's Data Editing Paradigm .......................................... 490


41.1.1
41.1.2
41.1.3
41.1.4

Selecting Objects ..................................................................................................... 490


Inspecting Objects ................................................................................................... 490
Editing Objects ......................................................................................................... 491
Masking .................................................................................................................... 491

41.1.4.1 Clearing Selections and Masks..................................................................................... 491

41.2 Find Similar Objects (FSO) .................................................................. 491


41.3 The Navigator Panel ............................................................................. 493
41.4 The SCH Filter Panel ............................................................................ 494
41.4.1 Defining the Filter Scope ......................................................................................... 494
41.4.2 Defining the Filter Query .......................................................................................... 495
41.4.2.1 The Query Helper ......................................................................................................... 495

41.4.3 Executing the Filter .................................................................................................. 496

41.5 The SCH List Panel .............................................................................. 496


41.5.1
41.5.2
41.5.3
41.5.4

Defining the Display Scope...................................................................................... 496


Making Selections from the SCH List Panel ............................................................ 497
Smart Grid Tools ...................................................................................................... 497
Smart Editing of String-based Attributes ................................................................. 498

41.6 The SCH Inspector Panel..................................................................... 499


41.7 Find and Replace ................................................................................. 501
41.8 Smart Paste .......................................................................................... 501
Module 42: Schematic Design Directives

505

42.1 Compilation Related Directives - No ERC .......................................... 505


42.1.1 Non-Specific No ERC Directive <PVN > ................................................................. 505
42.1.2 No ERC Targeting a Specific Error Directive <PVE > ............................................. 506
42.1.3 Editing No ERC directives after placement ............................................................. 507
42.1.3.1 Right-click to Place a Specific No ERC Directive .......................................................... 508

42.1.4 The NoERC Manager .............................................................................................. 508


42.1.5 Controlling the Printing of No ERC Directives ......................................................... 509
42.1.6 NoERC Behavior in Older Versions of Altium Designer .......................................... 509

42.2 Compilation Related Directives - Compile Mask ............................... 509


42.2.1 Disabling Compile Masks ........................................................................................ 511
42.2.2 Creative Compile Mask Applications ....................................................................... 511

42.3 PCB Related Directives ....................................................................... 512


42.4 Parameter Set Directives ..................................................................... 512
42.4.1 PCB Layout directive ............................................................................................... 512
42.4.2 Net Class Directive .................................................................................................. 514
42.4.3 Differential Pair Directive ......................................................................................... 516
Altium Essentials_July2013_Colby
10-July-2013

19

42.5 Using Blankets with Directives ........................................................... 517


42.5.1 Highlighting Nets Covered by a Blanket Directive ................................................... 517

42.6 Indirect (Parameter-Based) Design Directives .................................. 518


42.6.1 Specifying component classes ................................................................................ 519

42.7 FPGA Related Directives ..................................................................... 519


42.7.1 Probe directive ......................................................................................................... 519
42.7.2 Instrument Probe Directive ...................................................................................... 520
42.7.2.1 A Word about probing buses ........................................................................................ 521

Module 43: Parameters and Parameter Management

522

43.1 Parameters............................................................................................ 522


43.1.1 Project Parameters .................................................................................................. 522
43.1.2 Document Parameters ............................................................................................. 522
43.1.3 Object Parameters ................................................................................................... 523

43.2 Editing Parameters .............................................................................. 525


43.2.1
43.2.2
43.2.3
43.2.4

Editing via an associated properties dialog ............................................................. 526


Editing by the SCH Inspector panel ......................................................................... 526
Editing via the SCH List panel ................................................................................. 526
Graphical editing ...................................................................................................... 526

43.3 Using the Parameter Manager............................................................. 526


43.3.1 Renaming Parameters ............................................................................................. 527
43.3.2 Adding a Parameter ................................................................................................. 527
43.3.3 Applying Parameter changes................................................................................... 528

Module 44: Design Refactoring

530

44.1 Refactoring Commands ....................................................................... 530


44.1.1 Converting a Part to a Sheet Symbol ...................................................................... 531
44.1.1.1 Pushing a Part onto a New Sub-Sheet ......................................................................... 531

44.1.2
44.1.3
44.1.4
44.1.5

Converting a Part to Ports ....................................................................................... 532


Converting a Schematic Sheet to a Device Sheet................................................... 534
Converting a Device Sheet to a Schematic Sheet................................................... 536
Moving Selected Sub-Circuitry to a Different Sheet ................................................ 537

Module 45: Installing and Updating Altium Designer

539

45.1 Installing Altium Designer ................................................................... 539


45.1.1 License Agreement .................................................................................................. 540
45.1.1.1 Account Log-In.............................................................................................................. 541
45.1.1.2 Altium Download Manager ............................................................................................ 542

45.1.2
45.1.3
45.1.4
45.1.5
45.1.6

Platform Repository and Version ............................................................................. 543


Select Design Functionality ..................................................................................... 544
Destination Folders .................................................................................................. 545
Ready to Install ........................................................................................................ 546
Installing Altium Designer ........................................................................................ 547

45.2 Installing Multiple Revisions of Altium Designer .............................. 549


45.2.1 Installation Folders ................................................................................................... 549
45.2.2 Importing Preferences from a Previous Platform Revision or Major Release ......... 551

45.3 Managing the Altium Designer Installation ........................................ 552


45.3.1 Installation Management Interface .......................................................................... 552
45.3.2 Related Preferences ................................................................................................ 553
Altium Essentials_July2013_Colby
10-July-2013

20

45.3.3 Plugins Explained .................................................................................................... 554


45.3.4 Working with the Plugins View................................................................................. 555
45.3.4.1
45.3.4.2
45.3.4.3
45.3.4.4
45.3.4.5

Surveying the Installation Landscape ........................................................................... 555


Exploring a Plugin Category ......................................................................................... 557
Examining an Individual Plugin ..................................................................................... 559
Examining a Specific Revision ...................................................................................... 561
Effecting Plugin Changes ............................................................................................. 562

45.4 Specifically Changing the Platform Revision .................................... 567


45.5 Automatic Checking for Updates ........................................................ 569
45.5.1 Latest Platform Revision Check............................................................................... 569

45.6 Creating a Local Installation Repository ............................................ 570


45.6.1 Installing on a Target Computer .............................................................................. 572

45.7 Subscription-based Content Stream .................................................. 574


45.7.1 The Right to use Altium Designer Updates ............................................................. 574

45.8 Uninstalling........................................................................................... 576


Module 46: Shortcut Keys

578

46.1 Common Schematic / PCB Editor Shortcuts ..................................... 578


46.2 Schematic Editor Only Shortcuts ....................................................... 579
46.3 PCB Editor Only Shortcuts.................................................................. 580
46.3.1
46.3.2
46.3.3
46.3.4
46.3.5

3D Body Placement Shortcuts ................................................................................. 581


3D Visualization Shortcuts ....................................................................................... 582
Interactive Routing Shortcuts................................................................................... 582
Interactive Differential Pair Routing Shortcuts ......................................................... 583
Interactive Length Tuning Shortcuts ........................................................................ 584

46.4 Devices View Shortcuts ....................................................................... 584


46.5 PCB3D (Legacy 3D) Editor Shortcuts ................................................. 584
46.6 PCB3D Library Editor Shortcuts ......................................................... 584
46.7 Output Job Editor Shortcuts ............................................................... 585
46.8 CAM Editor (CAMtastic) Shortcuts ..................................................... 585
46.9 Digital Waveform Editor Shortcuts ..................................................... 586
46.10 SimData Editor Shortcuts .................................................................... 586
46.11 Text-based Document Editors ............................................................ 587
46.11.1 Common Shortcuts .................................................................................................. 587
46.11.2 Embedded Software Editor (.c, .asm) Shortcuts ..................................................... 588
46.11.3 VHDL Editor Shortcuts ............................................................................................. 589
46.11.4 Scripting Editor (.pas, .vbs, .js, .tcl, .bas) Shortcuts ................................................ 589

Module 47: Putting Version Control to Work

590

47.1 A Quick Version Control Primer ......................................................... 590


47.1.1 Workflow of Version Controlled Documents ............................................................ 590
47.1.2 Handling Contentions .............................................................................................. 591
47.1.2.1 Locking Documents ...................................................................................................... 591
47.1.2.2 Detecting Contentions and Merging Edits ..................................................................... 591

47.2 Version Control Terminology .............................................................. 592


Altium Essentials_July2013_Colby
10-July-2013

21

47.3 Using Version Control in Altium Designer ......................................... 593


47.3.1
47.3.2
47.3.3
47.3.4

Enabling Version Control ......................................................................................... 594


Storage Manager Panel ........................................................................................... 595
Projects Panel .......................................................................................................... 596
Using Subversion ..................................................................................................... 597

47.3.4.1
47.3.4.2
47.3.4.3
47.3.4.4
47.3.4.5
47.3.4.6
47.3.4.7
47.3.4.8
47.3.4.9

Creating a New Repository ........................................................................................... 597


Connecting to an Existing Repository ........................................................................... 598
Adding a Project Folder to the Repository .................................................................... 598
Checking Files into the Repository ............................................................................... 598
Updating a File from the Repository ............................................................................. 601
Showing Differences Between Versions ....................................................................... 601
Removing Files from a Repository ................................................................................ 602
Refreshing File Status .................................................................................................. 602
Displaying a File's Version History ................................................................................ 603

Module 48: The Schematic

604

48.1 Creating Good Schematics ................................................................. 604


48.2 Rules of Good Schematics .................................................................. 605
48.2.1 Schematics should read left to right, top to bottom. ................................................ 606
48.2.2 Ensure schematic documents are appropriately labeled ......................................... 606
48.2.3 Name nets and group related signals together........................................................ 607
48.2.4 Avoid 4-way ties. ...................................................................................................... 607
48.2.5 Make use of Design Hierarchy................................................................................. 608
48.2.6 Make liberal use of color and graphical annotations. .............................................. 608
48.2.7 Reuse known good circuit blocks in a consistent manner. ...................................... 609
48.2.8 Use Annotations and Directives to stipulate design intent and constraints. ............ 609
48.2.9 Use SI Units and Measurements ............................................................................. 610
48.2.10 Use Informative Reference Designators .................................................................. 610
48.2.11 Be aware of Special Rules concerning Power Signals ............................................ 611
48.2.12 Locate Decoupling Capacitors Close to the Components they Serve..................... 612

Module 49: The Printed Circuit Board (PCB)

613

49.1 The Anatomy of a PCB ........................................................................ 613


49.1.1
49.1.2
49.1.3
49.1.4
49.1.5
49.1.6
49.1.7

Single-Sided PCB .................................................................................................... 613


Double-Sided PCB ................................................................................................... 613
Plated Through Holes (PTH) ................................................................................... 614
Top and Bottom Solder Masks ................................................................................ 614
Silkscreen Layers .................................................................................................... 614
Boards with more than Two Layers ......................................................................... 615
Blind and Buried Vias .............................................................................................. 617

49.2 The PCB Manufacturing Process ........................................................ 619


49.3 PCB Glossary of Terms ....................................................................... 620
Module 50: Approaches to the Routing Challenge

622

50.1 Component Placement ........................................................................ 622


50.1.1 Accurately Place Critical Mechanical Components ................................................. 622
50.1.2 Define Rooms for the Various Sub-Systems ........................................................... 622
50.1.3 Locate Support Components around Critical Components ..................................... 622

50.2 Use Pin Swapping to your Advantage ................................................ 623


50.3 Set up Board Layers ............................................................................ 623
50.4 Set up for Impedance Controlled Routing ......................................... 623
Altium Essentials_July2013_Colby
10-July-2013

22

50.5 Define Keep-out Areas ......................................................................... 624


50.6 Setup Design Rules ............................................................................. 624
50.7 Fanout Densely Packaged Components ............................................ 624
50.8 Route Components in Groups ............................................................ 625
50.9 Ensure Low Impedance Power Access .............................................. 625
50.10 Route in Order of Priority .................................................................... 626
50.11 Use Subnet Jumpers ........................................................................... 627
50.12 Place Polygons ..................................................................................... 628
50.13 Interactive Routing ............................................................................... 628

Altium Essentials_July2013_Colby
10-July-2013

23

Module 1: Your Relationship with Altium


Users of Altium products have a unique relationship with Altium in that they are both customers
and members of a broader community of designers and developers. Through Altium's online
portal, members can interact with one another, share design ideas, find solutions to common
design challenges, and access a wealth of content and updates to Altium's products.

1.1 A new Paradigm in Connected Design Tools


As Altium considers its role in empowering the next generation of electronics products, it is clear
that connectedness is a key part of the design landscape. Having a design tool that facilitates the
creation of connected devices and which itself is connected into a design eco-system is a key
element in Altium's development strategy.

1.1.1 AltiumLive

Figure 1. AltiumLive - connecting people and devices.


Altium Essentials_July2013_Colby
10-July-2013

24

AltiumLive is Altium's portal for connecting people and devices. It is a gateway into the Altium
ecosystem that lets designers interact, draw from the knowledge and experience of others,
contribute to the development of the design environment, and tap into online functions and
services necessary to drive electronic devices into the future. And it serves as the portal to new
and updated content for Altium Designer. Ultimately it is the means by which designers, their
design tools, and the devices they create, can all remain connected.

1.1.2 Signing in to AltiumLive


Having activated an AltiumLive account (see next section), members can proceed to sign in
using the email and password they created (or were given) when the account was first created.

Figure 2. Signing in to AltiumLive

Altium Essentials_July2013_Colby
10-July-2013

25

Figure 3. In the absence of already having an AltiumLive account, users can register to join.

1.1.3 Creating an AltiumLive Account


An AltiumLive account requires a unique activation code in order to be created. Most existing
Altium users will have already received their activation code via their registered email address. In
the absence of receiving this email, users can contact their local Altium sales and support office
have the activation code either resent if they are an existing customer, or go online and click the
Register Interest button on the AltiumLive login page (see Figure 2). From there they will be
to another screen where they can submit their details (Figure 3).

1.2 Accessing AltiumLive Benefits


An AltiumLive membership brings many benefits including, of course, access to Altium's design
tools and content, the Altium Forums, Blogs and BugCrunch.

1.2.1 Installing Altium Designer through AltiumLive


While it is possible to receive an offline installer of Altium Designer, the best and quickest way to
get the latest content is to download it directly from AltiumLive.

Altium Essentials_July2013_Colby
10-July-2013

26

Figure 4. Download and install Altium Software direct from the web.

For more information about installing Altium Designer, consult the section labeled
A Walk Through Installing Altium Designer with the Altium Platform Installer in the
Altium wiki.

1.2.2 Altium Forums


The Altium Forums are one of the richest resources available to Altium customer. With many
thousands of contributors (including Altium employees), Altium Forums are the best place to
socialize new ideas, ask questions about Altium tools, or consult others as to the best way to
solve your specific design challenges.

Altium Essentials_July2013_Colby
10-July-2013

27

Figure 5. Altium's Forums are the best way to connect with other Altium users worldwide.

1.2.3 BugCrunch and Ideas


BugCrunch and Ideas are Altium's bug and new feature request management system designed
to bring greater transparency to the process of identifying and tracking bugs or new feature
requests. The process includes the ability to nominate and vote on specific issues that users
would like to see addressed by Altium's developers.

Altium Essentials_July2013_Colby
10-July-2013

28

Figure 6. BugCrunch and Ideas lets users nominate and vote on bugs and new features.

1.2.4 Altium Blogs


Altium is increasingly encouraging developers and internal personnel to provide behind the
scenes insights into work they are doing and the relevance it has with Altium's broader vision.
Usually a post will be made to the forum whenever a blog article is posted so AltiumLive can
comment on the blog post and enter into a dialog with its author.

Altium Essentials_July2013_Colby
10-July-2013

29

Figure 7. AltiumLive Blogs provide AltiumLive members with insights into the latest Altium developments.

1.2.5 Accessing Content


AltiumLive membership includes access to a whole host of content designed to help designers
get the most out of Altium Designer and produce the next generation of electronics products.

1.2.5.1

Content Store.

The Content Store is where designers can access a continuous stream of design content useful
in the creation of electronics products. This content ranges from discrete component models all
the way through to entire reference designs packaged into reusable modules.
Content in the Content Store is ordered as follows:

Altium Designer Plugins - Plug-in software modules for Altium Designer.

Unified Components - Board-Level unified components for use in Altium Designer

NanoBoard Example Designs - Wide range of working example designs capable of running
on one of Altium's NanoBoards.

Reference Designs - Showcases Reference Designs for Altium Designer with PCB, FPGA
and Embedded Software,

Template Designs - PCB design project templates for Altium Designer.

Altium Essentials_July2013_Colby
10-July-2013

30

Figure 8. AltiumLive membership includes access to a range of design and assistive content.

1.2.5.2

Design Secrets, Altium Videos and Documentation

Having access to a wealth of design content is great but sometimes the real challenge is
knowing how to solve a specific design challenge or perform a key operation in Altium Designer.
Altium's rich array of Videos and Design Secrets demonstrate specific features and techniques
with Altium Designer, and the Documentation library augments the Altium Wiki with a range of
downloadable documents.

Altium Essentials_July2013_Colby
10-July-2013

31

1.3 Upgrades and Service Packs


A significant benefit of becoming an AltiumLive Subscriber is the ability to access Altium's regular
upgrades and service packs for Altium Designer. Beginning with Release 10, many of the
features and functions of Altium Designer have been factored into self-contained modules that
users now have the option of installing and/or upgrading as their jobs demand it. This approach
brings a number of benefits:

The base installation footprint of Altium Designer has been dramatically reduced.

Altium can rapidly notify users and deliver bug fixes or new features without needing to wait
for the next major release or service pack.

Users have absolute control over what modules are installed or updated. This way they can
maintain a consistent work environment in their organization while still having access to the
latest features or bug fixes that are relevant to their work.

To access the latest upgrades and service packs from within Altium Designer, select the DXP
Plug-ins and updates menu command (Figure 10).

1.4 Cloud Preferences


For designers who regularly migrate between multiple PCs running Altium Designer, the ability to
store and retrieve Altium Designer preferences in the cloud ensures that a consistent work
environment will be maintained wherever an internet connection is available.
Cloud Preferences can be enabled by selecting the Enable cloud preferences item in the
System folder of the Preferences (DXP Preferences) dialog.

Figure 9. Enabling Cloud preferences allows users to access a consistent design environment wherever an
internet connection is available.

Altium Essentials_July2013_Colby
10-July-2013

32

Figure 10. The installation of specific Altium Designer capabilities is under the total control of users.

Altium Essentials_July2013_Colby
10-July-2013

33

Module 2: Getting Help


Altium offers a range of resources to help designers along the way to creating great designs.
Some of these resources are accessible from within Altium Designer while others are available
online. The decision about which help resource to use will depend on the nature of the problem
being solved and so this module will discuss the various help resources and how they can be
accessed.

2.1 AltiumLive
Altium Designer is more than just a software application. Its real strength lies in the talent and
ingenuity of the designers that use it to solve engineering problems and create the electronic
devices that have and will change the world we live in.

Figure 11. AltiumLive - the designer's portal to the Altium design community and content.

Altium Essentials_July2013_Colby
10-July-2013

34

AltiumLive (http://live.altium.com/#home) is a gateway into the Altium ecosystem that lets


designers interact as part of a community; drawing from its collective knowledge and experience,
and contributing to the development of Altium's design environment, online functions and
services useful for driving electronic devices into the future.
Through AltiumLive, designers can also remain up-to-date with the latest design technologies
and updated content for Altium Designer; all from within Altium Designer 10 onwards. Browse
and download content such as libraries and reference designs, add new device support to local
installations of Altium Designer, and extend its design capabilities with add-ons and feature
updates. In short, AltiumLive lets designers easily manage their entire Altium Designer
installation and keep it up to date.

2.1.1 AltiumLive Forums


Open 24/7, the AltiumLive Forums are often the fastest way to find answers to design challenges
or questions in how to get the most out of Altium Designer. Either use the search capabilities to
locate discussions from a broad range of design related topics, start a new thread to bring focus
to a specific issue or question, or add to the collective body of knowledge by contributing
personal experiences and suggestions to existing conversations.

Figure 12. AltiumLive Forums provide an excellent way to interact with other community members.

AltiumLive Forums are accessible to all AltiumLive Community Members. To become


member of the AltiumLive community, contact your local Altium Sales and Support
office.

Altium Essentials_July2013_Colby
10-July-2013

35

Figure 13. Scan a summary of the latest forum posts.

Figure 14. Trace through detailed forum discussions.


Altium Essentials_July2013_Colby
10-July-2013

36

2.1.1.1

Receiving Notification About New Forum Threads

To help designers remain abreast of the latest forum conversations, a number of notification
options are available. So rather than having to remain logged into the AltiumLive forums at all
times, community members can elect to receive email alerts to ensure they never miss an
important discussion.

Figure 15. By receiving email alerts, community members can remain abreast of forum conversations.

2.1.2 AltiumLive Blogs


Altium has assembled a tremendously talented group of developers from around the globe and
their insights are often extremely helpful in understanding the rationale behind various features
and content. By tuning into the latest blogs and adding comments of their own, community
members can gain further understanding into the way development is thinking about ways to
solve current design challenges.
The AltiumLive Blogs are also the place to go for:

Interesting articles that delve into a particular feature of Altium Designer, or a commentary
on a particular technology out there in the industry.

Announcements of updates to Altium Designer.

Announcements of new content available through the AltiumLive Content Store.

Altium Essentials_July2013_Colby
10-July-2013

37

Figure 16. Hear directly from the people developing Altium Designer through the AltiumLive Blogs.

2.2 Accessing Structured Help Content


In addition to the wealth of information that can be gained from interactive environments such as
AltiumLive's Forums, a range of other, more structured, help resources are also available.

2.2.1 The Altium Wiki


Altium's online wiki (http://wiki.altium.com) is the best way to get the most current information
about Altium Designer's features and functions. It is actively maintained and the first place for
help information to be published.
Searching the wiki can be achieved in a number of ways:
1. From within Altium Designer using the Knowledge Center panel and selecting the Search
The Wiki option (see the next section). A browser window will automatically open within
Altium Designer to display the search results.
2. From within a web browser (either within Altium Designer or as an external application) and
using the wiki's search capabilities directly.
3. Using an internet search engine with the search term preceded by Altium Wiki. So to
search for routing, enter the phrase Altium wiki routing as the search term.

Altium Essentials_July2013_Colby
10-July-2013

38

Figure 17. Altium's Wiki is the most current source of Altium documentation.

2.2.2 Knowledge Center panel


As well as providing access to search the wiki, the Knowledge Center panel is also an excellent
source of information about actions or processes within Altium Designer. This panel (Figure 18)
has two sections. The upper section displays help about the current menu entry, toolbar button,
selected object, panel, and so on. The lower section is the documentation library navigation area
where users can browse through the documentation tree to open PDF-based articles, application
notes, tutorials and the online wiki.
One key feature of the Knowledge Center panel is its ability to dynamically update with help
information relevant to the current action being executed in Altium Designer. By enabling the
Autoupdate button
in the upper right of the panel, the upper region of the panel will be
updated with context sensitive help while you work. If it is not enabled, the display can be forced
to update by pressing F1.

Altium Essentials_July2013_Colby
10-July-2013

39

Press the Autoupdate


button to display context
sensitive help while you
work

Search within Local


Documents (Offline) or the
The cookie trail lets you know

Online Wiki (preferred)

where you are in the library


and sets the scope for your
search

Figure 18. The Knowledge Center panel is used to access both online and context sensitive offline
Documentation.

2.2.2.1

Offline PDF Documentation

For a number of years, Altium used offline PDFs as the mechanism for delivering help
information. While this is a convenient format for printing, the fact that it is offline means that it
can quickly become out of date as Altium Designer continues to evolve. Nevertheless, the
functionality for legacy offline documentation remains supported.
Altium Designer ships with a minimal set of these PDF documents 22 in fact, included in the
Help - FPGA plugin, part of the Documentation Packages category of plugins.
The complete set of PDF documents can be downloaded as a ZIP file
(AltiumLearningGuidesArchive.zip) from:

The Wiki - http://wiki.altium.com/display/ADOH/Download+PDF+Learning+Guides

The Documentation page (http://documentation.live.altium.com) of the AltiumLive


community website.

Simply unzip and drop the files into the \Help folder of the Altium Designer installation (i.e.
\Program Files\Altium\[AD Release Number]\Help). There may be a warning about
file replacement conflicts, resolve these in favor of the contents of the ZIP file.
Within Altium Designer, links to PDF documentation will only become active once the
relevant PDF document(s) have been dropped into the \Help folder.
These PDF learning guides fall into one of two categories:

Still Accurate a Learning Guide belongs to this category if, in comparison to its Wikibased successor, its content is considered to be still accurate. In some cases, the content is
identical. This would typically be the case where no further update has taken place since the
document's content was migrated to the Wiki.
In other cases, differences between the PDF document and the corresponding Wiki page(s)
are deemed to be minimal or slight. In other cases still, migrated content may not yet be truly
'wikified', resulting in the PDF document still being used as an attachment in the Wiki.

Altium Essentials_July2013_Colby
10-July-2013

40

These 'Still Accurate' documents have been given a fresh template, utilizing a black and gold
look and feel.

Legacy a Learning Guide belongs to this category if, in comparison to its Wiki-based
successor, its content is considered to be either:
a) Inaccurate. The Wiki version has been greatly updated, for example with newer
information, and the PDF contains information that is no longer accurate with today's
software (slipped too much out of date).
b) For use with older version(s) of Altium Designer (and therefore not relevant to Altium
Designer 10 or later)
c) For use with design components marked specifically as 'legacy' (such as 8-bit
processors, peripherals and instruments for FPGA design, and available in legacy
libraries). This would be considered still accurate, but rendered legacy from its design
use perspective.
These 'Legacy' documents remain using their original template, utilizing a blue look and feel,
and carry a watermark to reinforce their legacy status.
Please note that the maintenance of Offline (PDF) documentation is being phased out
and replaced by the online Wiki as the primary source of documentation. Users should
only consult offline documentation in the absence of any other reference material.

2.2.3 Shortcuts panel


As users become more proficient with Altium Designer, they will often find it useful to use
keyboard shortcuts to initiate commands rather than mouse clicks. But learning the huge array of
available shortcuts, many of which are contextual, can seem daunting for the new user.
The Shortcuts panel (located in the Help panel group or from the View Workspace Panels
Help Shortcuts menu) provides a ready reference of shortcuts available to the user and is
contextually sensitive so it updates according to the current operation or command.

Figure 19. The Shortcuts panel shows available shortcuts.

Altium Essentials_July2013_Colby
10-July-2013

41

2.2.4 Using F1
The Altium Designer environment includes extensive F1 help support. Virtually every aspect of
the interface has F1 help support, for example:

Press F1 while hovering the mouse cursor over a menu entry, toolbar button or dialog, to
directly open the help topic about that command/dialog.

Press F1 while hovering the mouse cursor over a panel to obtain detailed help specific to
that panel.

Press F1 in the Editor environment for help on that editor. If there is a design object under
the cursor then you will be presented with help on that object.

2.2.5 "What's this?" Help (WTH)


"What's this Help" can be accessed from within most dialog boxes by clicking the What's This
icon and then clicking on the control of interest to popup specific help information.

Figure 20. "What's This Help" provides information about specific controls within a dialog box.

2.3 Examples and Reference designs


One of the best ways to see Altium Designer's features in action is by taking a look at examples
and reference designs that use those features. These designs can serve as both teaching aids
or as a useful starting point for new designs. The default location for these designs is:
C:\Users\Public\Documents\Altium\AD\Examples
The actual location will depend on the path specified for Shared Documents, as part
of initial software installation.

Altium Essentials_July2013_Colby
10-July-2013

42

Figure 21. Examples and Reference Designs are a great way to see Altium in action solving real design
challenges.

Only a small subset of the available examples are installed as part of the base installation. This
is so that the base download and installation footprint of Altium Designer is minimized.
Users can download the full complement of example and reference design projects from the
AltiumLive Content Store (http://contentstore.live.altium.com).

Figure 22. Download additional Examples and Reference Designs from the AltiumLive Content Store.
Altium Essentials_July2013_Colby
10-July-2013

43

The two store fronts of interest here are:

NanoBoard Example Designs a wide range of working example designs for Altium's
NanoBoards. The example designs include the FPGA and embedded projects and
demonstrate a broad range of design challenges, including: TCP/IP, WiFi, mobile
communications, video, audio, image processing, USB mass storage, file systems and much
more.

Reference Designs a collection of larger and more sophisticated example designs to help
designers explore and learn more about Altium Designers capabilities. Some of the
examples include full PCB designs, including the NanoBoard, daughter board and peripheral
board designs. Others showcase aspects of Altium Designer's embedded and soft design
capabilities.

Figure 23. Click to explore an available design in more detail, before downloading the relevant ZIP file.

Altium Essentials_July2013_Colby
10-July-2013

44

For designers who need access to examples and reference designs when they do not have the
internet available, they can download zipped content from the Wiki at:
http://wiki.altium.com/display/ADOH/Download+Examples+and+Reference+Designs
Note that the ZIP files for example and reference designs available from the Wiki
were built at the time of the launch of Altium Designer 10. It is strongly advised to
source such designs from the Content Store, to ensure the latest content.

2.4 Online Videos


Between them, the Altium and AltiumLive websites host a growing list of training, demonstration
and webinar videos that can serve as an excellent starting point for gaining an overall
understanding of how Altium Designer features work and are intended to be used. Some of the
online video resources include:

2.4.1.1

Homepage Banner Ads

Altium's main homepage (http://www.altium.com) displays a banner that regularly links out to
videos that feature the latest capabilities and developments within Altium. This serves as a great
source of information about where Altium is heading and the current focus of developments.

Figure 24. The Altium home page is regularly updated with the latest information about what Altium is
doing.

Altium Essentials_July2013_Colby
10-July-2013

45

2.4.1.2

Altium Videos

With a growing resource of over 160 videos on offer, the Altium Videos page of the AltiumLive
community site (http://altiumvideos.live.altium.com/) will help designers get up and running with
Altium Designer with instructions from expert users.
Where the written documentation offers the 'nuts and bolts' detail, these videos aim to give a
visual overview of a feature or area of the software, highlighting key concepts. They provide a
concentrated burst of pin-pointed information to get users quickly up-to-speed with a particular
subject matter.

Figure 25. Altium Videos demonstrate the use of Altium Designer to solve real-world design challenges.

2.4.1.3

Design Secrets

Design Secret videos offer concise, engaging viewing of hints, tips and processes to enhance
productivity. They reflect concentrated 'tricks of the trade' acquired through the experience of
expert Altium Designer users and Altium Application Engineers.

Altium Essentials_July2013_Colby
10-July-2013

46

Available to browse as a sub-category on the main Altium Videos page of the AltiumLive
community site, they can also be accessed on a dedicated page of their own:
http://designsecrets.live.altium.com/.

Figure 26. Browse just the Design Secret videos on their own dedicated page on the AltiumLive community
site.

2.4.1.4

Live and On-Demand Webinars and Demos

Periodically Altium hosts a range of live and on-demand webinars and demos that provide indepth discussions around design concepts and/or new features. Access to these resources is
managed via Altium's online event management system http://altium.force.com/events.

Altium Essentials_July2013_Colby
10-July-2013

47

Figure 27. Take a look at upcoming events for a specific region, using Altium's Events Manager.

2.5 Altium Support Center


If, after accessing all the other available help resources, an answer to a specific design-related
question is not forthcoming, then it may be time to contact Altium's technical support center http://www.altium.com/supportcenter/.

Figure 28. The Altium Support Center can be used to log and track support cases.
Altium Essentials_July2013_Colby
10-July-2013

48

Users can search through solutions to hundreds of previously logged cases, and log and track
cases of their own. An Altium subscription is required to access this resource.

Figure 29. Use the Support Center to find a solution

Figure 30. or log and track a new case.

Altium Essentials_July2013_Colby
10-July-2013

49

Module 3: The Altium Designer Environment


Altium Designer is a Unified design system. This implies many things but the most noticeable
one when you first open Altium Designer is that all the tools needed to create an electronics
product are contained within a single application. It includes schematic and HDL design capture,
circuit simulation, signal integrity analysis, PCB design, and FPGA-based embedded system
design and development capabilities. In addition, the Altium Designer environment can be
customized to meet a wide variety of user requirements.
But before users can access the benefits of Altium Designer, it is important that they familiarize
themselves with the environment and common GUI elements.

3.1 A Unified Design Platform


Sitting below the Altium Designer faade is a software unification platform known as the Design
Explorer - DXP.exe. The Design Explorer is responsible for loading and coordinating
communications between all the various editors used to create and edit a design. It handles user
interactions and configures the application interface to suit the document being worked on. So
when, for example, a schematic document has the focus, the schematic toolbars, menus and
shortcut keys are all activated. This feature means that designers can switch from routing a PCB,
to producing a Bill of Materials report, to running a transient circuit analysis, and so on and the
correct menus, toolbars and shortcuts will all be readily available. And because all toolbars,
menus and shortcut keys are controlled from a central application, they can also be easily
configured by users to suit their specific style or work environment.

Figure 31. Altium's Unified Design Platform coordinates all design activities from within a single design
application.

The DXP platform, in its naked form, can be seen when Altium Designer is opened without any
design documents loaded. But even in this state, a number of primary GUI objects are visible
(Figure 32).

Altium Essentials_July2013_Colby
10-July-2013

50

Menu Bar

Tool Bars
DXP System
Menu
The Workspace

Access to Panels
Status Bar

Figure 32. Even with no design documents loaded, the primary GUI objects of the DXP Platform are still
visible.

That same platform (including menus, panels and editors) quickly changes once a design
document is loaded.
Menus and toolbars have all
been updated in response to
the focused document

This is a
panel
This is the main editor
area where design data is
displayed for editing

Figure 33. The DXP Platform with several documents (and editors) loaded. Note the primary GUI objects
still exist but have been updated according to the active document

So while the contents of the menus, toolbars, panels and editors may change according to what
documents are loaded and which one has the focus, the way users interact with them remains
consistent.
The DXP platform contains several standard GUI objects whose contents change according to
the specific design documents that are loaded.

Altium Essentials_July2013_Colby
10-July-2013

51

3.2 The Editor View


The Editor View is used to display design data ready for editing. A different Document Editor will
be loaded depending on which type of document has the focus. For example, the PCB editor will
be loaded for PCB documents, the Schematic Editor for schematic documents, the Text Editor
for source code documents, and so on. Each editor contains its own set of commands and
actions that are appropriate for the document being edited.

Figure 34. A schematic open for editing in the Schematic Editor View.

Figure 35. A PCB document open for editing in the PCB Editor View

3.2.1 Document Tabs in the Documents Bar


Documents that are open are allocated a tab at the top of the application. Clicking on a
document's tab will bring that document into focus and make it the active document for editing.
Or alternatively, the CTRL+TAB shortcut will cycle to the next document and make it active.

Altium Essentials_July2013_Colby
10-July-2013

52

Figure 36. Tabs showing various documents open. Note how the Schematic tab is subtly highlighted,
indicating that it is the document currently being edited.

3.2.1.1

Controlling Document Layout

The layout of documents within the main editor can be controlled in a number of ways:

From the Window menu in the main editor

By Right-Clicking one of the Document Tabs in the Document Bar and exposing the
Window menu.

By Left-Click and dragging the dividing region between two tiled documents to resize them
within the main editor.

By Left-Click and dragging a Document Tab to a free region outside the Altium Designer
application window to create a new instance of Altium Designer. This is particularly useful
when using Altium Designer across multiple monitors.
User editable preferences that control how the Document Bar works are accessible from the
DXP Preferences System View page. Specific options are located in the Documents Bar
section of the page.

Figure 37. Document Bar options in the main Preferences dialog.

3.3 Panels
Workspace panels are essential elements of the Altium Designer environment. Whether specific
to a particular document editor or used on a more global, system-wide level, they present
information and controls that aid productivity and allow designers to operate more efficiently.

3.3.1 Accessing Panels


When Altium Designer is first started, a number of panels will already be open. Some panels,
including the Files and Projects panels, will appear grouped and docked to the left side of the
application window. Others, including the Libraries panel will be in pop-out mode and appear as
buttons on the right-hand border of the application window.
At the bottom of the application window there are a number of buttons that provide quick access
to the available workspace panels in context with the document editor that is currently active.
Each button is labeled with the name of the category of panels it gives access to. When a button
is clicked, a pop-up menu of the constituent panels in that category will appear.

Altium Essentials_July2013_Colby
10-July-2013

53

Figure 38. Use the buttons at the lower right of the workspace to access any Panel.

Clicking on an entry in a menu will open the corresponding panel. A tick symbol is used to
indicate when the associated panel is open and visible in the workspace. If a panel is open but
not visible, for example it is a non-active panel in a group of docked panels or it is currently in
pop-out mode, clicking its entry in the menu will make it visible and the active panel.
If the Panel buttons are not visible, make sure the View Status Bar menu item is
checked.
All currently available workspace panels can also be accessed from the View Workspace
Panels sub-menus.

3.3.2 Panel Display Modes


Depending on the particular document editor that is currently active, a large number of panels
may be accessible or indeed open at any given time. To facilitate the layout and use of multiple
panels in the workspace, various panel display modes and management features are provided.
Three different display modes are supported for panels:

Docked mode - panels are permanently displayed within the workspace.

Pop-out mode - panels are hidden, appearing when their button is hovered over, or clicked
on.

Floating mode - panels float over the workspace, becoming transparent whenever the
cursor approaches.

3.3.2.1

Docked Panel Mode

In this mode, a panel can be docked horizontally or vertically within the main application window.
Right-clicking on a panel's title bar or tab and selecting the Allow Dock menu item from the popup menu will configure the docking capability of the panel - horizontally and/or vertically. When
docking vertically, a panel will dock to the left or right of the main design window. When docking
horizontally, a panel will dock either above the main design window (but below docked toolbars)
or below the main design window (but above the status bar).

Altium Essentials_July2013_Colby
10-July-2013

54

Vertically
docked
panel

Horizontally docked panel

Figure 39. For easy access, frequently used panels can be docked in the main editor.

3.3.2.2

Pop-out Mode

The Pop-out mode is essentially an extension of the standard docked mode. A docked panel can
be put into this mode by clicking on the pin symbol next to the panel's close cross. The pin
symbol will change to indicate the mode:

panel in original docked mode

panel now in pop-out mode.

In this mode, the panel will appear as a button on the application border. Moving the cursor over
the panel button will result in the panel sliding out from the border. Moving the cursor away from
the panel will cause it to slide back again. Clicking on the panel button will expand the panel
without sliding. In this case, click away from the panel to slide it back again. The speed at which
the panel slides in and out is configured in the System View page of the Preferences dialog.

Panels placed in popout mode appear as


buttons along the
application border.

Panel that
has been
'popped-out'.

Figure 40. Dock the panels you use a lot, for easy access.
Altium Essentials_July2013_Colby
10-July-2013

55

Figure 41. Setting popup panel display attributes.

3.3.2.3

Floating Mode

In the Floating mode a panel can be placed anywhere within, or outside of, the Altium Designer
environment. This is the standard opening mode for panels that have not been previously placed
in docked or pop-out modes. A floating panel positioned over the editing area of the main design
window will be made transparent when carrying out an interactive operation in the main design
window, in accordance with options defined on the System - Transparency page of the
Preferences dialog (DXPPreferences)

Figure 42. Setting transparency display attributes.

Floating panel has been


made transparent to
not obscure editing
operation

Figure 43. Floating panels can be configured to become transparent when the cursor approaches during
editing operations.

3.3.3 Grouping Panels


Panels may be grouped by simply dragging and dropping one panel on top of another. Two
modes of grouping panels are supported:

Altium Essentials_July2013_Colby
10-July-2013

56

Tabbed grouping - This mode displays a set of panels as a tabbed group, with only one
panel in the group visible at any time.

Fractal grouping - This mode displays a set of panels as a fractal grouping, with multiple
panels in the group visible at the same time.

The resulting display of the group depends on where exactly one panel (the source panel) is
dropped onto another (the target panel). If the source panel is dropped onto the center of the
target panel, the two will become a tabbed grouped. If the source panel is dropped onto one of
the small arrows that appear on each edge of the target panel, they will become a fractal group.

3.3.3.1

Tabbed Panel Grouping

To group a panel with other panels, drag the source panel over the center of the target panel (or
existing group). The entire area of the target panel will become shaded blue to indicate that the
panels will become a single tabbed group. Releasing the left mouse button (i.e. dropping the the
source panel), will group the panels together.
During the above operation, a small yellow positional arrow will also appear to the right of the
target panels' tabs to indicate that the source panel will be added to the group as another tab.
The specific location of the source panel's tab can be controlled by moving the mouse near the
existing tabs.

Figure 44. Drag a panel onto a stationary panel to group them. Note the small arrow indicating where in the
set this panel will sit.

Use the small down-arrow at the top-right of the panel grouping to change the visible/active
panel. Alternatively, make another panel in the group the visible/active panel by clicking directly
on its tab. The order of the panels in a tabbed group of panels can be changed at any time, click
on a panel's tab and drag to the left or right as required. A positional arrow will appear marking
the position in the group order at which the panel will be placed when the mouse button is
released.

3.3.3.2

Fractal Panel Grouping

The Fractal grouping mode allows multiple panels in a group to be visible at the same time - i.e.
the panels are tiled within the body of the enclosing panel group. A fractal group can consist of
individual panels and/or standard tabbed panels.
To group panels in this fashion, drag the source panel towards the small arrow icon that appears
at the top , left , right , or bottom of the target panel, and drop. The area that the original
panel occupied will be split to become shared with the new panel. The icon you choose
determines where, in relation to the target, the new panel will appear. Ensure that no yellow
positional arrow is displayed when adding the panel, otherwise it will be added to the target as a
tabbed panel.

Altium Essentials_July2013_Colby
10-July-2013

57

Figure 45. The schematic List and Inspector panels arranged in a fractal group, with the Filter panel being
added, splitting the region occupied by the List panel.

Figure 46. The new fractal arrangement of the schematic List, Filter and Inspector panels.

To make a panel active in a fractal grouping, click on it. If the required panel is part of a tabbed
grouping within the overall fractal structure, make it visible/active by clicking on its corresponding
tab.

3.3.4 Moving Panels


A single floating or docked panel is moved by clicking within the panel's title bar and dragging it
to a new position. For a single panel that has been put in pop-out mode, it can also be moved by
clicking on its corresponding button in the application border and dragging the panel to the
required position.
When multiple panels have been grouped, clicking within a panel's caption bar and dragging it
will move all panels in that group. To move a single panel out of a group, click and drag the
panel name in the caption bar (or its tab if available).
Moving a panel to an application border that already contains one or more panels will result in
the panel being added in the same mode (docked or pop-out) as those already present.
To take a panel out of fractal grouping mode (where it has been tiled) and back into a standard
tabbed grouping, drag the tiled panel by its caption bar into free space or to a target panel or
existing tabbed group, until a yellow positional arrow appears (target becomes fully shaded) and
then release - the panel will be added to the tabbed grouping.
As panels are moved close to another floating panel, the edges will snap together. Similarly,
moving a panel towards the extremities of the desktop will snap the panel to the desktop's edge.

Altium Essentials_July2013_Colby
10-July-2013

58

This 'snap-attraction' feature allows for easier arrangement of floating panel sets within the
environment.
To prevent a moving panel from automatically docking, grouping or snapping, hold the
CTRL key.

3.3.4.1

Closing Panels

A panel can be closed by right-clicking in its title bar or on its tab, where available, and
choosing the Close entry from the subsequent pop-up menu. The close cross at the far
right of a panel's caption bar can also be clicked to close it, however if the panel is part of a
group, clicking this icon will also close all other panels in the group.

3.3.4.2

Maximizing/Restoring Panels

When in floating mode, a panel can be maximized by right-clicking in its caption bar (or on its
tab, where available) and choosing the Maximize entry from the subsequent pop-up menu. To
restore a maximized panel back to its original size, simply right-click in its caption bar or tab and
choose the Restore command from the pop-up menu. Alternatively, double-click in the title bar
to toggle between maximized and restored state.

3.4 Toolbars
Toolbars provide point and click access to commonly used commands and actions. In Altium
Designer, the toolbars are contextual and so they will display or hide according to which
document has the focus in the main editor. A range of standardized toolbars are included but
customized ones can also be created.
By default, most of the commonly used toolbars will be visible just below, or to the right of the
main menu, when a design document is opened.

Figure 47. Main Menu and default Toolbars displayed with a Schematic Sheet focused.

Figure 48. Main Menu and default Toolbars displayed with a PCB document focused.

When clicked, each button in the toolbar launches a command or process. If tool tips have been
enabled, hovering the mouse cursor over the top of a toolbar button will pop-up a tooltip
describing its associated command or process.

Figure 49. Place Wire toolbar button.

3.4.1 Expanding Tool Buttons


Some tool buttons will have a small down arrow beside their icon. This indicates that the tool
button is a place holder for several commands. To access the individual commands, click once
on the tool button and, once the tool button expands, click on a lower-level command to select it.

Figure 50. Expanding a tool button.

Altium Essentials_July2013_Colby
10-July-2013

59

3.4.2 Positioning & Reshaping Toolbars


Toolbars can be fixed to any side of the workspace or they can be floated. To move a toolbar,
click and drag the toolbar from somewhere within it but not actually on a button.
Toolbars can be reshaped by holding the cursor over the edge of the toolbar and, when the
resizing cursor appears, click and drag the cursor in the direction you wish to reshape it.

Figure 51. The Schematic Wiring Toolbar in various shapes including docked (top) and floating.

3.4.2.1

Locating Lost Toolbars

Because it is possible to hide floating toolbars by clicking the 'X' in the top right corner of their
window, it may be necessary at times to locate a lost toolbar. All standard toolbars can be
accessed (and reopened) from the View menu in the various editors.

Figure 52. Hide/Displaying toolbars through the View menu.

Altium Essentials_July2013_Colby
10-July-2013

60

3.5 Menus
In Altium Designer, the Main Menu is actually a type of Toolbar. This means it can be moved,
floated or docked, resized or customized the same as any other toolbar. Generally, however, it's
probably best to keep it in its default position in the top left of the workspace.

3.5.1 Right-click Popup Menus


Altium Designer makes extensive use of popup menus that are activated by right-clicking a
region within the workspace. These menus are commonly referred to as right-click menus.
Right-click menus are contextual and display different items depending on what is underneath
the cursor when it is activated. In general, the purpose of right-click menus is to give designers
speedy access to the most commonly used controls as and when they need them. Supported
right-click locations include:

in a document editor, on an object

in a document editor, in free space

in the different sections of a panel

on the Status bar

on a toolbar or menu bar

In dialogs, especially those with a grid of information.

Figure 53. Right-click menu activated over a schematic component.

3.5.2 Shortcut Keys


As designers become more proficient with Altium Designer's commands, they quickly reach a
state where they can work faster using shortcut keys on the keyboard rather by navigating with
the mouse through menus or toolbars. To this end, the observant designer will have noticed that
all items in the Main Menu and many of the Right-Click Popup menus include an underlined
letter (i.e. the F in the File menu). This underlined letter is the shortcut key that can be used to
access that menu directly. So, as an example, saving a document can be accomplished through
the menu as File Save, or via the keyboard shortcut sequence F, S.
There are a number of other shortcut key sequences that aren't tied to immediately visible menu
commands but these are all visible in the Shortcuts Panel (accessible from the Help panel tab in
the lower right of the workspace). The Shortcuts Panel is dynamic and will update automatically
with additional shortcuts relevant to whatever action is currently being performed.

Altium Essentials_July2013_Colby
10-July-2013

61

Figure 54. Displaying shortcut keys in the Shortcuts Panel while you work.

A list of every shortcut that is available in Altium Designer can be found online in the
wiki at http://wiki.altium.com/display/ADOH/Shortcut+Keys.

3.6 Status Bar & Command Status


The Command Status and Status Bar are located in the bottom right of the workspace and can
be enabled from the View menu. They provide helpful information during command operations
and tell the operator what Altium Designer is expecting next.
The Status Bar consists of three display fields divided by separators and a set of panel display
buttons. These three display fields are:

Cursor position

Prompt

Options.
The display fields can be re-sized by clicking and dragging on the separators.

Command
Status

Status Bar
regions

Figure 55. Command Status and Status Bar Information displayed during a Place Wire operation.

Altium Essentials_July2013_Colby
10-July-2013

62

The panel display buttons are located in the Status bar in the lower right of the
workspace. If they are not visible, check that the Status bar is enabled from the View
menu.

3.7 Dialogs
Dialogs are used to set the parameters for various commands and objects. They are common to
all Windows applications and probably require minimal explanation however the following tips
may be helpful.

To move from one field in a dialog to another, press the TAB key or use the mouse. To move
in the reverse direction use SHIFT+TAB.

Most fields will have an underlined character associated with them that can be pressed (in
combination with the ALT key) as an alternative to a mouse click.

When a field is highlighted, typing can overwrite it.

Nearly all dialogs will have a question mark icon in the top right hand corner.
Clicking on
this icon activates the Whats This Help (WTH) feature and will display a brief pop-up help
message from the next control that is clicked on. As an example, Figure 56 shows the WTH
for the Type control in the component properties dialog.

Figure 56. Using the Whats This Help icon to gain help in a dialog

3.8 Undo/Redo

Most commands can be undone or then redone using the Undo


and Redo
toolbar
buttons. The depth of the Undo stack can be set for the Schematic and PCB editors in the
Preferences dialog (DXP Preferences Schematic Graphical Editing or DXP
Preferences PCB General).

The shortcut keys for Undo are CTRL+Z or ALT+BACKSPACE, and CTRL+Y or
for Redo.

Altium Essentials_July2013_Colby
10-July-2013

63

3.9 Multi-Monitor Support


Altium Designer has been developed with the intention that it will be used on PCs connected to
multiple monitors. This expectation is built on the understanding that designers regularly need
access to multiple pieces of data at any one time and that enlarging the monitor space facilitates
designers to do their jobs more productively. The primary argument against multi-monitor setups
is one of cost but the proportional price of monitors and graphics hardware is a small fraction of
the overall employment costs of designers. So making designers more efficient through better
design equipment makes good business sense.
By default, Altium Designer will open in a single window. To span it across multiple monitors,
open a design document and then drag the document's tab into free space on one of your
additional monitors. Panels, dialog boxes, and design documents can all be freely moved
between multiple monitors.

Figure 57. Altium Designer has native support for multiple monitors.

3.10 Saving Desktop Layouts


As a further aid in setting up the workspace environment, Altium Designer supports the notion of
Desktop Layouts. This feature allows designers to save to file their preferred arrangement of
document windows, workspace panels and toolbars. In this way, multiple users can quickly
retrieve the workspace to suit their design habits by loading in their preferred layout. Commands
for saving and loading layouts, including the default layout shipped with the software, are
available from the View Desktop Layouts sub-menu.

3.11 Saving Preferences to a File or the Cloud


In addition to being able to save desktop layouts, Altium Designer also includes the ability to
save and retrieve Preference settings. These settings can be stored locally in a file, or they can
be saved as part of the designer's cloud profile. Preferences saved to the cloud can be retrieved
from any PC connected to the Internet and ensures the designer can maintain a consistent
operating environment regardless of which PC they happen to be using.
To use Cloud Preferences they must first be enabled from within the main Preferences dialog
(DXP Preferences) - see Figure 58. Once enabled, preferences can be saved using the
Save button and retrieved again using the Load button (Figure 59).

Altium Essentials_July2013_Colby
10-July-2013

64

Figure 58. Enabling cloud preferences from within the DXP Preferences dialog.

Figure 59. Saving preferences to a file or the Cloud.

Altium Essentials_July2013_Colby
10-July-2013

65

Module 4: Design Documents


Altium Designer stores all design data in design documents that persist as files on disk. Each
type of document is opened and edited in an associated editor so, for example, a schematic
document is opened and edited in the Schematic Editor, a PCB library document in the PCB
Library Editor, and so on. As existing documents are opened (or new ones created), the
associated editor for that document type will automatically become the active editor.

4.1 Creating a new Document


A new document can be created using one of the following methods:
1. By selecting one of the supported document types from the File New sub-menu (Figure
60).

Figure 60. Adding a new document using File New.

2. By clicking on one of the entries in the New section of the Files panel (Figure 61).

Figure 61. Adding a new document using the Files Panel.


Altium Essentials_July2013_Colby
10-July-2013

66

If the Files panel is not open, click on the System button at the bottom right of the
application window and choose Files from the pop-up menu that appears.
If one or more projects are open, the new document will be added to the currently active project.
Alternatively, to add a new document directly to an open project, irrespective of whether it is the
active project or not, right-click on the project's entry in the Projects panel and choose the
document type from the Add New to Project sub-menu. The menu will list the source
typically added for that project type (Figure 62).

Figure 62. Right-click on the Project to add a New document to the Project.

4.2 Opening and Displaying Documents


When a document is opened, it automatically becomes the active document in the main design
window. Multiple documents may be opened simultaneously but each open document will have
own tab at the top of the design window on the Document Bar. Only one document may be
active within the main design window. Figure 63 shows three documents open at the same time;
one PCB and two schematics. The PCB document is the active one.

Altium Essentials_July2013_Colby
10-July-2013

67

Figure 63. Each open document has a tab on the document bar. Note the active document's tab is brighter.

The active document is distinguished by a highlighted appearance to its tab in the Document
Bar. To make another open document the active document, click on its tab. Alternatively, use the
CTRL + TAB and CTRL + SHIFT + TAB keyboard shortcuts to cycle forward or backward through all
open documents. If a large number of documents are simultaneously open, they can be grouped
in the Documents Bar by enabling the Document Bar options in the System View page of
Preferences dialog. Documents can be grouped by their document type or by their parent
project. Figure 64 shows multiple tabbed documents grouped by project on the Documents Bar.

Figure 64. Document tabs grouped by project.

4.2.1 Document Insight


The Document Insight, which is part of the Design Insight system, provides an alternative way to
preview and open documents. When enabled (System Design Insight page of Preferences
dialog), a small preview of a document is displayed when the mouse cursor is hovered over the
document icon in the Projects panel. Clicking on the preview will proceed to open the document.
Document previews are stored in a __Previews folder along with the project and are
created when each document is first opened.

Altium Essentials_July2013_Colby
10-July-2013

68

Figure 65. Hover over the document icon to display a preview, click on the preview to open the document.

4.2.2 Hiding Documents


Various design tasks such as compilation require all source documents to be opened. For a
large project this could result in a large number of documents being opened as tabbed
documents in the main design window. To ensure the workspace does not get cluttered in this
situation, Altium Designer has the ability to hide documents. Hidden documents will remain open
but they do not display or present a document tab in the main design window.
Any open document can be placed in this hidden mode by:

right-clicking its document tab and selecting the Hide command

right-clicking its entry in the Projects panel and selecting the Hide command.

Hidden documents are listed in a drop-down at the far right of the Document Bar (Figure 66)
and can be restored to the open state by clicking its associated entry.

Figure 66. Accessing documents that are currently open, but hidden.

Altium Essentials_July2013_Colby
10-July-2013

69

4.2.3 Displaying a Document's Status

Figure 67. Setting display options for the Projects panel.

A number of options relating to the Projects panel are accessible from the System Projects
Panel section of the main Preferences dialog, or by clicking the small arrow in the Compile
Project button of the Projects panel (Figure 67).
If the Show open/modified status checkbox has been enabled in the General category, an icon
indicating the document's status will appear in the Projects panel beside each opened document.
This provides a quick visual summary of open, hidden or modified documents.

Icons show the state of


each document in the
project. Use them to
easily tell which
documents have been
modified.

Figure 68. Use the icons to quickly check the state of each document.
Altium Essentials_July2013_Colby
10-July-2013

70

Icon

Status

Description

Open

The document is open as a tabbed document in the main design


window

Hidden

The document is hidden

Open/Modified

The document is open and has been modified (yet to be saved)

Modified

This icon appears next to the main project document only, to


show that the project has been modified (yet to be saved)

Table 1. Use the document status icons to quickly gauge open, hidden and modified.

A modified document, project or design workspace that has yet to be saved is also distinguished
by an asterisk next to its name in the Projects panel, and its name on its document tab in the
main design window.

4.2.4 Document Window Management


One of the significant benefits of working with Altium Designer is the fact that multiple documents
from multiple design domains can all be opened and accessed from within a single editing
environment. At times, it may be necessary to adjust the simultaneous display of these
documents and so a number of commands have been provided to effectively manage the open
documents and tailor the display to the user's preferred working habits.
Right-click on a document tab to access the available commands for managing documents.
These commands including closing, saving and hiding the document, as well as commands
affecting the display of all open documents within the main design window (Figure 69).

Figure 69. Right-click on the document tab to access document management commands.

Commands for splitting the main design window horizontally or vertically are also very helpful
when performing cross-document tasks such as cross probing between a schematic and its PCB
(Figure 70). When split, the regions are treated as though they were individual windows. One
document may be active in each region, but only one document, across all regions, can have the
focus at any given time. When a new document is added, or an existing document opened, it will
be opened as part of the region in which the currently focused document resides. Commands
allow for documents to be tiled or merged back into a single, default design window. It is also
possible to drag documents from one split region to another.

Altium Essentials_July2013_Colby
10-July-2013

71

Figure 70. Split the main design window to work across multiple documents side-by-side.

If multiple monitors are present, document can also be opened in their own, separate design
window. Right-click on the document's tab and select Open In New Window to push the
document to a new window (and instance) of Altium Designer. Alternatively, clicking on a
document's tab and dragging it onto a vacant area of the main windows desktop will also launch
a new Altium Designer instance.

Figure 71. Working across multiple monitors is a great way to work across multiple documents.

4.2.5 Document Storage


Altium Designer stores all design documents and generated output files as individual files on the
hard disk. Windows Explorer can be used to search for them, or they can be located via the
Explore command in the Projects panel's right-click menu. Design documents will typically be
encapsulated into projects, both for management and to access certain design features such as
design verification, comparison and synchronization. A project file contains links to all of its
design documents as well as any other project-level definitions and settings.

4.3 Different Types of Design Documents


Design Document types can be identified by their file extensions. Altium Designer supports a
huge range of design documents and will automatically invoke the appropriate editor accordingly.
Altium Essentials_July2013_Colby
10-July-2013

72

Most of the management of how design data is stored on disk will be transparent to the user but
from time to time it may still be helpful to have a broad understanding of the different design
documents and file extensions that Altium Designer uses. To this end, the following table is
provided as a ready reference.
Altium Designer uses the files FileFilters.txt and FileExtensions.txt
(located in the \[Altium Designer]\System folder) to control how it
design files with various file extensions.

4.3.1 Project Files


Extension.

Type

Editor

Description

*.PrjPcb

text

Projects Panel

PCB Project file

*.PrjFpg

text

Projects Panel

FPGA Project file

*.PrjCor

text

Projects Panel

Core Project file

*.PrjEmb

text

Projects Panel

Embedded Project file

*.PrjScr

text

Projects Panel

Script Project

*.LibPkg

Text

Projects Panel

Integrated Library Project file

*.pjt

text

Projects Panel

Tasking Project file

4.3.2 Project Collection Files


Extension.

Type

Editor

Description

*.PrjGrp

text

Projects Panel

Project Group file

*.DsnWrk

text

Projects Panel

Design Workspace file

4.3.3 Common PCB Design Files


Extension.

Type

Editor

Description

*.sch; *.schdoc

binary

Schematic

Schematic Capture file

*.pcb; *.pcbdoc

binary

PCB

PCB Layout file

*.schdot

binary

Schematic

Schematic Capture Template

*.schlib; *.lib

binary

Schematic library

Component Symbol library

*.pcblib; *.lib

binary

PCB Library

PCB Footprint library

*.intlib;

binary

Compiled
Document

Integrated Library

*.net; *.edif;
*.edf; *.edn;
*.edi

text

Text

Netlist file

*.mdl; *.nsx;
*.ckt; *.lb

text

Text

Mixed-signal simulation file

*.OutJob

text

Output Job

Output Job Files

*.DbLink

text

Database Link

Database Link Files

*.DbLib

text

Database Link

Database Library Files

*.Constraint

text

Text

Constraint Files

Altium Essentials_July2013_Colby
10-July-2013

73

4.3.4 Common FPGA Design Files


Extension.

Type

Editor

Description

*.sch; *.schdoc;

binary

Schematic

Schematic file

*.OpenBus

binary

Open Bus

Open Bus file

*.vhd; *.vhdl;
*.vhdtst

text

Text

VHDL file

*.v; *.vertst

text

Text

Verilog file

*.vhdlib

text

Text

VHDL Library file

*.edif; *.edf;
*.edn; *.edi

text

Text

Netlist file

*.intlib; *.lib;
*.schlib

binary

Schematic library

FPGA IP Library

*.OutJob

text

Output Job

Output Job Files

*.Constraint

text

Text

Constraint Files

*.c; *.h

text

Text

C-Block Source Files

4.3.5 Common Embedded Design Files


Extension.

Type

Editor

Description

*.c

text

Text

C Source file

*.cpp

text

Text

C++ Source file

*.hpp; *.h

text

Text

Header file

*.asm; *.src

text

Text

Assembler file

*.Constraint

text

Text

Constraint Files

*.oil

text

Text

OSEK/VDX Implementation Language


file

*.SwPlatform

text

Software
Platform Builder

Software Platform Configuration file

4.3.6 Automation Script Files


Extension.

Type

Editor

Description

*.pas; *.inc

text

Text / Form Builder

Pascal Script Files

*.vbs

text

Text / Form Builder

VBScript Files

*.js

text

Text / Form Builder

JavaScript Files

*.tcl

text

Text / Form Builder

Tcl/Tk Script Files

*.bas

text

Text / Form Builder

Enable Basic Files

4.3.7 Miscellaneous Files


Extension.

Type

Editor

Description

*.rep; *.log;
*.rpt; *.drc;
*.erc; *.bom

text

Text

Report file

Altium Essentials_July2013_Colby
10-July-2013

74

Extension.

Type

Editor

Description

*.cam; *.g??;
*.drr; *.pik

text

CAM

Gerber, Drill, Pick and Place, etc files

4.3.8 Importable Binary Files


Extension.

Description

*.max

OrCAD Layout file

*.llb

OrCAD Max Library file

*.pcb

P-CAD V15, V16 or V17 file

*.asc

PADS PCB file

*.dsn

Specctra Design file

*.DDB

Protel 99SE Design Databases

*.DSN

OrCAD Capture Design

*.OLB

OrCAD Capture Library

*.DBC

OrCAD CIS Configuration file

*.SCH

P-CAD V16, V17 Schematic

*.LIA; *.LIB

P-CAD V16, V17 Schematic Library

*.CKT

CircuitMaker 2000 Design

*.LIB

CircuitMaker 2000 Binary USER Library

*.SXSCH

SIMetrix ASCII Schematic

*.SXSLB

SIMetrix ASCII Library

Altium Essentials_July2013_Colby
10-July-2013

75

Module 5: Design Projects


Design Documents contain the data used to create a design, but they are incomplete outside of
a Design Project. In Altium Designer, Design Projects are responsible for defining the
relationship between design documents and establishing the basis for building the Unified Data
Model of the design.
In simple terms, a Design Project is a set of documents that, together with settings stored in the
Design Project file, define all aspects of the design. Each document in the project is stored as a
separate file on the hard drive and the project file itself is also stored as an ASCII document that
includes links to the documents in the project as well as project-level settings. Design Projects
make no assumption about how design data is stored on disk so Design Projects can include
files from almost any source.
The use of Design Projects allows Altium Designer to build and manage the synchronization of
the Unified Data Model of the design. So when changes are made in one document in the
design, it can be compiled into the Unified Data Model and propagated to other parts of the
design. As such, Design Projects play a very important part in the creation of a new design.

5.1 Types of Design Projects


Each Design Project results in a single implementation and there are different types of design
projects depending on what the desired output is. For example, if the goal is to create a PCB, a
PCB project would be used to encapsulate all the schematics and PCB layout files together. If
the goal is to create an FPGA design, an FPGA project would be used. While there is almost no
limit to the different sorts of design documents that can be added to a project, the parent Design
Project will determine how those documents are interpreted and compiled.
When referring to projects, it's important to make a distinction between a Project as an abstract
collection of design files, and the Project File which stores all the settings and references
necessary to build a specific Project.

5.1.1 PCB Project (*.PrjPcb)


The set of design documents required to manufacture a printed circuit board.
The electronic circuit is captured as a schematic, built up from component symbols
which are placed and wired together. The design is transferred to the PCB editor
where each component is instantiated as a PCB component and the circuit wiring
translated into copper connections. A shape for the final PCB is defined, along with
the physical layers the board will include. Design rules specify the layout
requirements, such as routing widths and clearance. The components are positioned within the
board shape and the connection lines are then replaced by routing, either manually or
automatically. When the design is complete, standard format output files are generated which
be used to fabricate the blank board, configure an assembly machine, and so on.
A PCB Project is defined using a Project File with the extension *.PrjPcb.

5.1.2 FPGA Project (*.PrjFpg)


The set of design documents used for that can be processed to program an FPGA.
The design is captured using schematics and/or HDL code (VHDL or Verilog).
Constraint files are added to the project to specify design requirements such as the
target device, internal net-to-device pin mapping, net frequency requirements, clock
pin allocations, and so on. Design synthesis translates the source data into a lowlow-level gate form using a standard file format known as EDIF. Device vendor
then process the EDIF data and attempt to place and route the design in such a way that it will fit
in the specified target device. A successful build of an FPGA project will result in the creation of
device program file that can then be downloaded (programmed) and run on the target device.
An FPGA Project is defined using a Project File with the extension *.PrjFpg.
Altium Essentials_July2013_Colby
10-July-2013

76

5.1.3 Embedded Project (*.PrjEmb)


The set of design documents required to produce a software application that can be executed on
an embedded processor.
The source of the design is captured in C and/or assembly language source files.
These source files are compiled into individual assembly language files which are
then assembled and converted into an intermediate machine language (object
file. These object files are then linked together and mapped into a specified
space to become the final application executed by the target processor.
An Embedded Project is defined using Project File with the extension *.PrjEmb.

5.1.4 Core Project (*.PrjCor)


The set of design documents required to produce an EDIF representation (model) of a functional
component that can be implemented in an FPGA.
The design is captured using schematics and/or HDL code (VHDL or Verilog).
Constraint files are added to the project to specify the target FPGA device(s).
Design synthesis translates the source data into a low-level gate form using a
standard file format known as EDIF. A component symbol is also drawn to make it
easy to use the component in other FPGA designs.
A Core Project is defined using Project File with the extension *.PrjCor.

5.1.5 Integrated Library (*.LibPkg) & (*.IntLib)


The set of design documents required to produce an Integrated Library - i.e. a library that
includes Schematic, PCB, SI, and Simulation models for each component.
Schematic symbols are drawn in a schematic library (*.SchLib) file and contain
references to other models relevant to the component across different design
domains. These references can include PCB footprints, circuit simulation models,
signal integrity models and three-dimensional mechanical models. All the files that
contain the referenced models are added to the project and compiled into a single
file, referred to as an Integrated Library (*.IntLib).
An Integrated Library Project is defined using Project File with the extension *.LibPkg.
It is recommended that organizations use Vaults to manage their components at an
enterprise level since Vaults provide better visibility into the supply chain and greater
control over the integrity of design and component data than Integrated Libraries.

5.1.6 Script Project (*.PrjScr)


The set of design documents that stores one or more Altium Designer scripts.
A set of instructions that can be interpreted (run) to automate the execution of a
predefined set of commands in Altium Designer. The scripts are written and
debugged in the same environment. There are two types of scripts - Script Units
Script Forms. A Script Unit can use the DXP Application Programming Interface
(API) to modify design objects on a design document. A Script Form is used to
create a custom dialog box that users can interact with and control the functionality of an
executing script.
An Script Project is defined using Project File with the extension *.PrjScr.

5.2 Working with Projects


5.2.1 The Projects panel
The Projects panel (System tab Projects, or View Workspace Panels System
Projects) is the primary method for viewing, attaching, and reordering the contents of a project.
is important to appreciate that the presentation of documents in the Projects panel does not
Altium Essentials_July2013_Colby
10-July-2013

77

reflect how they are stored on the hard drive. One way to think of it is that the Projects panel
presents a logical representation of the project. The organization of the document storage is up
the designer so documents could be stored on a common company server, a local hard disk,
even a removable drive such as a USB key. Alternatively, Altium Designer can be used with a
version control system and project documents would be checked in and out from a central
repository.

Figure 72. The Projects panel lets designers control the


contents of their projects.

5.2.2 Creating a new Project


Projects can be created in several different ways:
3. By clicking on one of the Blank Projects in the New section of the Files panel (Figure 73).
4. From the File New Project menu (Figure 74).
5. By clicking on one of the Design Tasks in the Home Page (View Home) and then clicking
on one of the project related links in the ensuing page (
Figure 75).

Click on one of these


items to create a new
Project

Figure 73. Creating a New Project from the Files Panel


Altium Essentials_July2013_Colby
10-July-2013

78

Figure 74. Creating a new Project from the File Menu

If the Files panel is not open, click on the System button at the bottom right of the
application window and choose Files from the pop-up menu that appears.

Figure 75. Creating a New Project from the Design Tasks

Altium Essentials_July2013_Colby
10-July-2013

79

When an existing or new project is opened, an entry for it will appear in the Projects panel. Any
existing documents that are part of a project and any new ones that may be added will appear
under sub-folders according to their purpose and/or type.
When first created, the project file only exists in memory. Use the Save or Save As
commands to save it with a suitable name in the required location.

To ensures compatibility with some of the vendor FPGA build tools, FPGA, Core and
Embedded project filenames should not include spaces.

5.2.3 Adding Documents to a Project


Once a project has been created and saved, additional design documents can be added. The
easiest way to add new or existing design documents to a project is to right-click on the project
name in the Projects panel and use the Add New to Project or Add Existing to Project menu
options.
Click the Project button or right-click
the project name in the Projects panel
to display the popup menu for adding
new documents

Figure 76. Adding new documents to a project

5.2.3.1

Including other files in the Project

Other project-relevant documents such as Word files or Adobe PDFs can also be added to a
project. The process is virtually identical to adding any other design document except that the
File Type list in the Choose Document to Add dialog will need to be set to All Files (*.*)
to ensure the document is visible and can be selected for adding. The file will appear in the
Project structure in the Projects panel, under a folder icon titled Documentation.
Existing documents can alternatively be added to a project using a two step process;
first drag the document from the Windows File Explorer into the Altium Designer
Projects panel and then, when it appears as a Free Document, click and drag it into
project.

Altium Essentials_July2013_Colby
10-July-2013

80

5.2.4 Removing a Document from a project


To remove a document from a project, right-click on the document icon in the Project panel and
select Remove from Project. Removing a document from a project simply removes the project's
link to that document. The document itself remains in storage on the hard disk - i.e. it is not
deleted.

Figure 77. Removing documents from a project

5.2.5 Specifying the Order of Documents in a Project


Documents within a group, such as Source Documents, are displayed by default in the order that
they were added to the project (which is the order they are listed in the project file). To change
the order of documents within a display folder, drag and drop a document to its new location in
the Projects panel. Once a project has been compiled, the source documents are also displayed
showing the hierarchy of the design.
Do not attempt to build the project hierarchy by dragging documents in the Project
panel. The parent-child hierarchical relationship between documents in a project is
defined by the sheet symbol to sub-sheet definitions.

For more information about project hierarchy, see Connectivity and Multi-Sheet
in the Altium Wiki.

5.2.6 Sharing Documents between Projects


Because each document in a project exists as a standalone document on disk, and because
projects store links to the documents within them rather than actual copies of those documents, it
is possible to share documents across multiple projects. However while this is possible, it isn't
encouraged since each project will assume sole control over the document and may make
changes that will impact the way the document can be used in other projects.

Altium Essentials_July2013_Colby
10-July-2013

81

Extreme care should be exercised when using the same document across multiple
projects as any changes made to the document will affect all projects. If the intention
to reuse known-good circuitry then a much better option is to use a Managed Sheet.

5.2.7 Saving Project Documents with a New Name


The File Save As command can be used to save a document with a new name, but this does
not rename the underlying file. Rather it saves a copy of the original document under a new
name and leaves the original document on disk. If the document was a member of an open
project, that project will be updated to also point to the newly saved document.
If the intention is to take a back-up copy of a document without affecting the project that it
belongs to, a better command is the File Save Copy As command.
If a document that belongs to two open projects is saved with a new name, then both projects
will be updated to reflect the name change.

5.2.8 Making Changes to the Project


The document that is currently being edited is referred to as the active document and will be
highlighted in the Projects panel along with its parent project. By default, any change made via a
command in the Projects menu will be made to the active project.
When multiple projects are open for editing, a simple way to perform project related commands
on a specific project is to right-click on the target project's name in the Projects panel and use
the associated menu. In this case, project actions can be executed regardless of whether the
active document belongs to that project or not.
Figure 78 shows that a document in the embedded project is active, but the PCB project has
been right-clicked to display the context sensitive project menu.

Altium Essentials_July2013_Colby
10-July-2013

82

Figure 78. Right-click on the project name to access a set of project-related commands.

5.2.9 Renaming Projects - Save Project As


Recall that the Project is simply a file (like any other on disk) that maintains links to all
documents that combine to form the complete design. Just as documents can be saved with an
alternate name using the Save As command, so too can projects.
The Save Project As command simply saves the project file under a new name and leaves the
original project document on disk. All links to project documents remain intact - both within the
original project document and the newly created ('Saved As') document.
It is not possible to relocate a project by performing a Save Project As action on the
Project document and saving it to a new location. This will only save the project
document to that location. It will not affect the location of the project's linked
documents. The Projects panel is not intended for file management.

5.3 Transferring Projects - the Project Packager


In some situations a backup copy of the entire project may be required. Alternatively, the project
may need to be transferred to another location, such as a portable drive, that can be taken on
the road. The Project Packager (Project Project Packager) is designed for this scenario.

Altium Essentials_July2013_Colby
10-July-2013

83

Figure 79. Use the Project Packager to transfer an entire project (or tree of projects) and its linked
documents to an time stamped zip file.

The Project Packager zips the entire contents of a project (or tree of projects) and saves it as a
single, time-stamped file. It is driven via a wizard that lets the user nominate which of the
project's linked documents need to be included in the project archive, where the archive is to be
stored, and whether any generated or system files should be included in the package.

Altium Essentials_July2013_Colby
10-July-2013

84

5.4 Encapsulating Design Projects


One of the remarkable things about using a
unified design tool is the ability to bring together
design documents from a wide array of domains.
This is also true of design projects. As an
example, in Altium Designer it's possible to have a
hierarchy of design projects where design projects
are themselves children of higher level projects.
A good example of this is where a PCB design
includes an FPGA device which contains an
embedded processor running some software. In
this case, the top level project would be the PCB
Project that contains the design documents
needed to create the final PCB. Sitting as a child
within that PCB project would be an FPGA project
that encapsulates the design documents used to
define the FPGA circuitry. These design
documents would contain an instance of a soft
processor core and so sitting as a child within that
FPGA project would be an Embedded Project that
encapsulates the software sources that will run on
that processor. Figure 80 shows how these three
projects would be presented in the Projects panel.
Figure 80. Altium Designer supports design
project hierarchies

5.4.1 Linking Projects


Projects are linked using the Structure
Editor view of the Projects panel.
1. Open the two projects that are
intended to be linked.
2. Switch the Projects panel to the
Structure Editor view
3. Drag the child project over the parent
project. Valid drop locations will be
highlighted in blue.
4. Drop the project on a valid drop
location

5.4.2 Unlinking Projects


Projects can be unlinking by dragging the
child project away from the parent project
and into vacant space in the Structure
Editor view of the Projects panel.
Figure 81. Drag and drop projects to link them in the
Structure Editor view of the Projects panel.

5.5 Version Controlling Projects


Altium encourages the use of version control and Altium Designer includes support for a number
of version control packages. After enabling the relevant options in the Preferences panel (DXP
Altium Essentials_July2013_Colby
10-July-2013

85

Preferences Data Management Version Control ), designers can perform a number of


project and file oriented version control operations directly from within Altium Designer using the
right-click menu within the Projects panel.

Figure 82. Altium Designer supports interactions with a version control system from within the main editing
environment.

5.5.1 Adding a Project to Version Control


To add a project to version control:
1. Ensure a Design Repository has been added and enabled from within the main Preferences
(DXP Preferences Data Management Version Control )
2. From the Projects panel's right-click menu, select the Add Project Folder to Version
Control option.
3. In the Add to Version Control dialog box, select the folder (or create a new one) that you
wish the project to be located within the Design Repository.

Altium Essentials_July2013_Colby
10-July-2013

86

Figure 83. Creating a new folder for the project in the Designer Repository

4. Select all files that need to be included as part of the add. Include all source documents but it
is generally not necessary to include generated documents.

Figure 84. Selecting the files within a project that need be version controlled

Altium Essentials_July2013_Colby
10-July-2013

87

5. Click OK. The Projects panel will be updated with a symbol beside the newly added
documents. This indicates that the documents have been added but are yet to be committed
into the version control system.

Figure 85. The Projects panel with icons indicating the


documents that have been added to version control

5.5.2 Committing Changes to Version Control


1. With all documents in the project saved, right-click the project to be committed in the
panel and select the Version Control Commit Whole Project command.
2. Add a comment indicating the purpose of the commit and click the OK button.

Figure 86. Performing the Commit


Altium Essentials_July2013_Colby
10-July-2013

88

3. Once the project has been successfully committed, the version control icon will be updated
to a in the Projects panel to indicate the files are currently in sync with the Design
Repository.

Figure 87. The Projects panel with icons indicating that all
documents are current

Altium Essentials_July2013_Colby
10-July-2013

89

Module 6: The Schematic Editor


The Schematic Editor opens when an existing schematic document is accessed or a new one is
created. This editor makes use of all the workspace features in the Altium Designer environment
including multiple toolbars, resource editing, right-click menu, shortcut keys and Tool Tips.
This module explores the basics of working in the Schematic Editor.

6.1 The Schematic Editor User Interface

Docked
Main Menu

Toolbars
Floating
Toolbar

Panels

Hidden
The Main Schematic
Editor Workspace

Compiled
Documents Tabs

Panel
Tabs

Selection
Panel Buttons

Controls

Status Bar

Figure 88. Schematic Editor Workspace

One of the benefits of working in a unified design tool is the commonality of user interface
components that are maintained between the editors. The Schematic Editor makes use of
several of these common user interface components as well as adding a few more of its own.

The Main Menu


Altium Designer includes a range of pop-up and right-click menus for easy local control. However
just about every command is also available from the Main Menu.

Toolbars Docked / Floating


Toolbars provide a graphical means for initiating commands and can be quicker than navigating
through menu hierarchies. Toolbars can be made to float in a window of their own, or be docked
to an edge of the workspace.

Panels & Panel Tabs


Panels are used extensively in Altium Designer to display additional information about the
design. Panels can be pinned to a fixed location and made permanently visible, pinned to a
fixed location but only displayed when the mouse selects or hovers over its panel tab, or allowed
to float over the workspace.

Selection Controls
To help control visual clutter in the Schematic Editor's workspace, a range of selection and
masking options are available from the various selection controls.

Altium Essentials_July2013_Colby
10-July-2013

90

Panel Buttons
The Panel Buttons provide popup menu access to the various panels available in Altium
Designer. Panels specific to the Schematic Editor are located within the SCH Panel Button.

Compiled Documents Tabs


Because a single schematic document can be used (instantiated) multiple times within a design,
there is not always a 1:1 mapping between the logical component designations in the schematic
and physical component designations used on the final PCB. The Design Compiler deals with all
of this, but in order to give users visibility into how that mapping occurs, the Schematic Editor
displays both the original schematic source, as well as all compiled documents generated from
that source. These documents are all listed in the Compiled Documents Tabs.

Status Bar
The Status Bar indicates the cursor's current grid position as well as providing user guidance
about the next piece of information that Altium Designer needs to complete the current
command.

6.1.1 The Design Insight System

The Design Insight System is a configurable system of features designed to help users navigate
across complex project hierarchies. While a comprehensive explanation of the complete
capabilities of the Design Insight system are not warranted here, Figure 89 shows an example of
how hovering over a Sheet Symbol causes a popup to display with a previewed version of the
underlying schematic hierarchy. The designer can then click on the required child document to
jump directly to it.
The Design Insight System is configured from the Design Insight section of the main
Preferences dialog (DXP Preferences).

Figure 89. The Design Insight Panel provides a convenient means for navigating across large projects.

6.2 Navigating the Schematic Editor Workspace


Altium Designer offers a number of ways to navigate the Schematic Editor Workspace.

6.2.1 Navigating with the Mouse


The simplest way to navigate the Schematic Editor Workspace is with a mouse:

Altium Essentials_July2013_Colby
10-July-2013

91

Panning
Dragging the mouse with the right mouse button pressed will pan the screen.
With the mouse cursor currently over the Schematic Editor Workspace, click and hold down
the right mouse button (RMB). A hand-shaped cursor will appear to indicate that you are in
panning mode. With the right mouse button still held down, drag the mouse in any direction
and the schematic page will move with the mouse.
Release the right mouse button to stop panning.
Alternatively a combination of keyboard and mouse actions can also be used to pan the screen:

Roll the mouse wheel to pan the screen up or down - i.e. in the direction of the roll.

Press SHIFT and roll the mouse wheel up to pan left, or down to pan right.

Zoom In / Out
Press CTRL and roll the mouse wheel upwards to zoom in, or downwards to zoom out.

6.2.2 Navigating with the Keyboard


Shortcut keys are a useful alternative to manipulating the view of the workspace and can often
be used while executing other commands (such as when wiring or placing components).
Keystroke

Function

END

Redraws the view

PAGE DOWN

Zoom out (holds the current cursor position)

PAGE UP

Zoom in (holds the current cursor position)

CTRL+PAGE UP

Fit All Objects

HOME

View pan (pan to centre the current cursor position)

SPACE BAR

Stops screen redraw

ARROW KEYS

Moves the cursor by one snap grid point in direction of the arrow

SHIFT + ARROW KEYS

Moves the cursor by 10 snap grid points in the direction of the arrow

Table 2. Shortcut keys for view manipulation

6.2.3 Navigating via the View menu


View commands are accessible from the View menu in the main menu bar, or by pressing V to
popup the View menu.
A summary of View menu commands is listed below.
Command

Toolbar

Shortcut Key

Description

Fit Document

VD

Display entire document

Fit All Objects

VF

Fits all objects in the current document window

Area

VA

Display a rectangular area of document by


selecting diagonal vertices of the rectangle

Around Point

VP

Display a rectangular area of document by


selecting the centre and one vertex of the
rectangle

Selected
Objects

VE

Fits all selected objects in the current document


window

50%

V5

Set display magnification to 50%

100%

V1

Set display magnification to 100%

200%

V2

Set display magnification to 200%

Altium Essentials_July2013_Colby
10-July-2013

92

Command

Toolbar

Shortcut Key

Description

400%

V4

Set display magnification to 400%

Zoom In

VI

Zoom In around current cursor position

Zoom Out

VO

Zoom Out around current cursor position

Pan

VN

Re-centre the screen around current cursor


position

Refresh

VR

Update (redraw) the screen display

Table 3. View command summary

While executing a command (when a crosshair is attached to the cursor), auto panning becomes
active by touching any edge of the Design Window. Pressing the SHIFT key while auto panning
will increase its speed. Auto panning speed is configured in the Auto Pan Options section of the
Graphical Editing page in the Preferences dialog (Tools Schematic Preferences). Auto
panning can also be turned off here.
The auto pan options apply in both the schematic and the schematic library editors.
Since the schematic library editor works at a much higher zoom level, it may be that
auto panning moves the view too quickly. If this is the case, it may be desirable to
disable auto panning and instead, use the right mouse button to pan.

6.2.4 Using the Jump menu


The Jump menu is a popup that activates when the J key is pressed while the schematic editor
has the focus. It's commands are described as follows:
Menu
Command

Shortcut

Description

Origin

JO

Positions the cursor at the Origin of the schematic. CTRL+HOME


also does this.

New Location

JL

Positions the cursor at a specified coordinate.

Component

JC

Positions the cursor over the specified component. Check the


Physical checkbox to use physical designators if these differ
from logical designators.

Set Location
Mark

JK1...JK0

Saves the current location as a point to return to later.

Location Mark

JM1..JM0

Jumps to one of the locations saved using the previous


command.

Table 4. Jump menu commands

6.3 Schematic Preferences


As with all editors within Altium Designer, there are a number of preferences that users can
tweak to customize the display and operation in line with their needs and design practices.
These can be found under the main DXP Preferences dialog in the section labeled
Schematic, or from the Tools Schematic Preferences menu command.

Altium Essentials_July2013_Colby
10-July-2013

93

Figure 90. Configure schematic settings in Preferences Dialog.

Altium Essentials_July2013_Colby
10-July-2013

94

Module 7: Schematic Document Options


Altium Designer's settings are defined at three levels. Global settings apply to Altium Designer as
a whole, project settings define options at a project level and document settings apply to
individual documents.
The Preferences dialog (DXP Preferences) is used for Altium Designer's global settings and
the Options for Project dialog (Project Project Options) defines the settings at a project level.
For additional flexibility, users can define settings for a specific document, such as a schematic.
This might be schematic's page layout, its grid settings, measurement units or a range of other
parameters that relate to documents. The settings can be different for individual documents, and
are available through Altium Designer's Document Options dialog.

7.1 Document Options dialog


Click Design Document Options or double click the schematic's border to open the
Document Options dialog, and note the default parameters. The options dialog can also be
opened by right clicking the schematic and selecting Options Document Options, or Options
Document Parameters, or Options Sheet. The document settings are saved with the
schematic
The variousfile.
settings in the Document Options dialog are covered in detail in the following
sections.

7.2 Sheet Options tab


Figure 91 shows the Sheet Options tab in the Document Options dialog.

Figure 91. Document Options dialog with the Sheet Options tab selected.

7.2.1 Template
This section of the dialog shows the current document Template name and options. The pullpull-down template menu, Update From Template button and Clear Template button allow
Altium Essentials_July2013_Colby
10-July-2013

95

users to set, update or remove the active template. Set the default template from the Schematic
General page of the Preferences dialog, as shown below.

Figure 92. The default template can be set for new schematics.

7.2.1.1

Using Templates

Altium Designer provides a number of standard schematic templates (*.SchDot) located in the
\Users\Public\Documents\Altium\AD\Template directory. Custom templates can also
be created and saved in any location.
A number of commands are available from the Schematic editor's main Design menu, for
working with templates:

Design Project Templates Choose a File -- select a template to replace the template
currently in use.

Design General Templates replace the existing template with a general template.

Design Update Current Template update a template that has been modified.

Design Remove Current Template remove the current template but retain that
template's sheet size.
When using any of these commands, Altium Designer will open a confirmation dialog to
determine if the change will be applied to the current sheet, the open sheets or all sheets in the
project

7.2.2 Standard Style


Click the Standard Styles drop-down list to select from a series of standard sheet formats, such
as A4.

7.2.3 Options

Orientation: Select the sheet orientation; Landscape (horizontal) or Portrait (vertical).

Title Block: Check this box to attach a standard title block to the sheet. The drop-down list
defines the format of the title block. Note that this option is usually used when a template is
not linked.

Show Reference Zones: Check this option to include cross reference zones around
the sheet border. The ASME Y14.1 format is also supported in Altium Designer.

Show Border: Check this option to enable the sheet border.

Show Template Graphics: Check this option to enable all template objects to be shown in
the sheet. This can be unchecked when using a non-standard title block the Title Block
option should also be unchecked.

Border Color: Click to open the Choose Color dialog box to set the border color.

Sheet Color: Click to open the Choose Color dialog box to set the sheet background color.

7.2.4 Change System Font


The Change Systems Font button opens the Font dialog, where the font style can be changed
for system text such as pin and port designators or names, and sheet border characters.

7.2.5 Grids
The Grid options are used to enable/disable Snap and Visible grids, and set their intervals.

Snap: The Snap grid pulls the cursor to the nearest point on its defined grid. Use the check
box to enable or disable the grid, and set the grid interval in the associated value field. In the
editor, use the G shortcut key to cycle through the three preset grid interval settings.

Altium Essentials_July2013_Colby
10-July-2013

96

Visible: The Visible check box enables the sheet's visible guide grid. This grid is
independent from the snap grid, and can be enabled or disabled with the SHIFT+CTRL+G
shortcut, using the V,G,V shortcut sequence, or via the View Grids menu.

7.2.6 Electrical Grid


The Electrical Grid options in the Document Options dialog define the grid's interval and whether
it is active. The grid can also be toggled using the V,G,E shortcut or via the View menu. When
the Electrical Grid is enabled it acts with a higher priority than the snap grid, so when performing
a command that relates to electrical connectivity, the cursor will pull to the electrical grid in
preference to the snap grid. For example, when using the command Place Wire, the cursor will
automatically jump to a connection pin on the on the electrical grid.

7.2.7 Custom Style


The Custom Style options area allows users to define sheet size and border parameters, such as
a custom width and height, etc. These options are useful when a particular sheet style is not
available as a standard template option.

7.3 Parameters tab


The Parameters tab in the Document Options dialog is used for creating and editing parameters
for the current document. The parameters defined here are treated as special strings, where the
parameter Value is automatically linked to the special string on the sheet.
Special strings are text strings which are recognized and interpreted when the sheet is printed or
plotted, and are linked to a parameter using the "=" symbol prefix. For example, the document
parameter Address1 is linked to the special string "=Address1".
As shown in the Figure 93 below, the dialog is pre-populated with common company
parameters and typical sheet-specific information (such as sheet number, document title and
revision number) to be included in the sheet's title block, or elsewhere as text strings. New
parameters can be added, including special strings that provide current information such as date
and time, which are inserted at the time of printing.
While the special strings will be automatically replaced when printing a sheet, the conversion can
also be enabled and disabled on-screen with the Convert Special Strings option on the
Schematic Graphical Editing page of the Preferences dialog.

Figure 93. Document Options dialog -- Parameters tab.

Altium Essentials_July2013_Colby
10-July-2013

97

The default special strings provided by Altium Designer are listed below. Users can also create
their own parameters.
Special String

Description

Special String

Description

=Address1

Address 1

=Engineer

Engineer Name

=Address2

Address 2

=ImagePath

Image Path

=Address3

Address 3

=Modified Date

Latest Modified Date

=Address4

Address 4

=Organization

Organization Name

=ApprovedBy

Approver Name

=Revision

Revision

=Author

Author Name

=Rule

Rule description if
using Add as Rule
command

=Checked By

Checker Name

=SheetNumber

Sheet Number

=CompanyName

Company Name

=SheetTotal

Sheet Amount

=CurrentDate

System Date

=Time

Time (Doesn't update)

=CurrentTime

System Time

=Title

Schematic Title

=Date

Date (Doesn't Update)

=Engineer

Engineer Name

=DocumentFullPath
AndName

Document Path and


Name

=ImagePath

Image Path

=DocumentName

Document Name

=Modified Date

Latest Modified Date

=DocumentNumber

Document Number

=DrawnBy

Drafter's Name

Table 5. Default Parameter list when creating a new schematic

Figure 94 below shows how to add special strings in a title block. The equivalent Parameter
value, as defined on the Parameter tab, will be shown in the location of the special string. The
properties of the special string (Font, Color, etc) will determine the appearance of the text.
Use Place Text String to place special string on the sheet. Press the TAB key to open the
Annotation dialog, and click the Text properties drop-down list to select from the defined
parameters. Click OK to place the special string on the sheet, where it will show the parameter
value if Convert Special Strings has been enabled, as mentioned above.

Figure 94. Title block comparison where Convert Special Strings is unchecked (top) and checked (bottom).

Altium Essentials_July2013_Colby
10-July-2013

98

7.4 Units tab


The Units tab in the Document Options dialog allows users to define the grid size based on the
selected units. For example, when
printing at actual size (1:1) and using the DXP Default
units, one grid unit equals 10mils. Therefore if the snap grid is set to 5, the working snap grid is
at 50mils, or if the snap grid is 10, the actual grid size is 100mils.

Figure 95. Document Options dialog -- Units tab.

7.4.1 Imperial Unit System area

Use Imperial Unit System: Check this option to use imperial units in the schematic.

Imperial unit used: Select the type of imperial unit to be used from the drop-down list. The
options include mils, inches, DXP default (10mils) and auto imperial. The Auto imperial
option automatically switches the from mils to inches when the display value is greater than
500mils.

7.4.2 Metric Unit System area

Use Metric Unit System: Check this item to use metric units in the schematic.

Metric unit used: Select which metric units (millimeters, centimeters, meters, and AutoMetric) apply using the drop-down list. The Auto-Metric option will automatically switch from
mm to cm when the display value is greater than 100mm.
The units should only be changed in special circumstances. If altered, it will be
extremely difficult to connect schematic components that have been created and
placed using different grids.

7.5 Link to Vault


In-keeping with the concept of Design Reuse, a schematic sheet can be released into a vault,
from where it can be managed in a formal, controlled fashion, through revision-control and
Altium Essentials_July2013_Colby
10-July-2013

99

lifecycle management. This enables the designer to quickly build a collection of such Managed
Sheets for instantiation into other design projects, enabling design at a higher level of
Before a sheet can be released however, it must first be linked to the required Schematic Sheet
Item, and revision thereof. This is achieved by using the Link To Vault option, located at the
bottom of the Document Options dialog.
Simply enable this option, then click the Choose button to access the Choose Item dialog. Use
this dialog to choose the target vault and required Item (and revision).

Figure 96. Linking to the vault-based Item-Revision that will receive the data when the schematic sheet is
released to the target vault.

The Item may be created in the vault beforehand, or on-the-fly while defining the link.
Remember to link to a revision of the Item that is in the Planned state.

The Link To Vault option will automatically be enabled, and the Document Options
dialog opened, when using the File Link Sheet to Vault command.
Releasing a schematic sheet to a vault and use of Managed Sheets in designs, are discussed in
another training module.

Altium Essentials_July2013_Colby
10-July-2013

100

Module 8: Placing Schematic objects.


For PCB designs, the process begins with the schematic. This document captures both the
functional intent as well as the connectivity model to be used when laying out the resultant PCB,
and so it is important that it communicates both the functional and electrical purposes effectively.
Altium Designer's Schematic Editor makes a distinction between the different objects that can be
placed onto a schematic. Some objects are purely graphical and serve to assist with
communicating the purpose of the schematic to other human readers, while other objects are
electrical and are used to establish the connectivity model of the design - i.e. the netlist.
This module provides a brief description of the various objects that are typically used in the
creation of a schematic document.

8.1 Common Elements of Object Placement


In Altium Designer, the process of placing an object is roughly the same regardless of the type of
object being placed. At its simplest level, the process is as follows:
4. Select the object to be placed from one of the toolbars or the Place menu.
5. Use the mouse to define the location and size of the placed object on the schematic sheet.
6. Right-click (or press ESC) to terminate the command.

8.1.1 Object Editing Options


8.1.1.1

Editing During Placement

A number of attributes are available for editing at the time an Object is first placed. To access
these attributes, press the TAB key to bring up the object's Properties dialog. Attributes that are
set in this manner will become the default settings for further object placement.

8.1.1.2

Editing After Placement

Once an object has been placed, it can be edited a number of ways:


1. Select the object and use its handles to adjust its shape.
2. Select the object and press the ENTER key to access the object's Properties dialog.
3. Right click over the object and select the Properties item to access the object's Properties
dialog.

8.1.1.3

Re-entrant Editing

The Schematic Editor includes a powerful feature called re-entrant editing. This allows a second
operation to be executed using keyboard shortcuts without the current operation being
terminated. So, for example, pressing the SPACEBAR when placing a part will rotate the object but
will not disrupt the placement process. And once the part has been placed, the next part will
appear ready at the cursor in an already rotated state.
Another illustration of how re-entrant editing can be very useful is when placing a wire that needs
to be connected to a port that hasn't yet been placed. Rather than exiting from the wire Place
Wire mode, a new port can be placed (Place, Port) using the shortcut keys P, R. Once the port
has been placed, pressing the ESC key will back out of the Place Port mode and pack into the
Place Wire mode and the connection can be completed.

8.1.2 Using Over-scores


Text in electrical objects can be over-scored, typically to indicate an active low signal, by adding
\ after the character to be overscored, e.g. R\ESET would display Reset .

Altium Essentials_July2013_Colby
10-July-2013

101

To over-score the entire word with a single \ character, enable the Single \ Negation option in
the DXP Preferences Schematic Graphical Editing page of the Preferences dialog. In
that case, the text R\ESET would display Reset .

8.1.3 Getting Help when Placing Objects


When placing Schematic Objects, the Knowledge Center and Shortcuts panels can be very
helpful sources of help information. Enabling the Auto Update feature of the Knowledge Center
panel will dynamically update the information according to the current operation being executed.
And on top of information contained in the Shortcuts panel (which also dynamically updates by
default), pressing the ~ key during a command will open a popup menu with all available
shortcuts relevant to the current operation.

Figure 97. Using the Knowledge Center panel and shortcuts popup menu to get additional information
about specific objects during placement.

8.2 Schematic Grids and Cursors


Grids help to ensure easier placement of components and
connections in a schematic document. They are configured as
part of each schematic document's options so they are saved
with the individual file. But this gives rise to the possibility that
grid settings may differ between one design document and the
next, so before placing any objects, ensure that the grid
are set correctly.
Grid settings can be accessed:

from the View Grids menu

from the Grids item in the schematic right-click menu.

by clicking on the

Altium Essentials_July2013_Colby
10-July-2013

Figure 98. Accessing Grid


Settings from the Utilities Toolbar

icon in the Utilities Toolbar

102

By default, all the components supplied by Altium use a grid spacing of 10 so it is


recommended that designers set their grid to a similar setting when placing and wiring
components.

8.2.1 Different Types of Grids


Altium offers three grid types, each one targeted for a different purpose:

Visible grids for navigation

Snap grids for placement, and

Electrical grids for aiding the creation of connections.

Visible grids appear whenever the zoom level will allow them to be sufficiently spaced, displayed
as either lines or dots. The Snap grid is the grid that the cursor is locked to when placing or
moving schematic design objects. Overriding Snap grids are Electrical grids which allow
connections to be made to off-grid parts.
Electrical grids work a little like a magnet and only operate on electrical objects. When an
electrical object, such as a wire, is drawn or dragged within the grid range (radius) of a fixed
electrical object such as the connection point of a component pin, the cursor will snap to that
point and a hotspot (red cross) will appear. This makes it much easier to accurately complete the
schematic wiring but the Electrical grid should be set slightly lower than the current Snap grid or
else it becomes difficult to position electrical objects one snap grid apart.

8.2.2 Setting the Schematic Cursor Appearance


By default, the schematic cursor is set as a cross. This can be configured under the DXP
Preferences (T,P) Schematic Folder Graphical Editing tab. For example, a large 90
degree cross that extends to the edges of the design window (Large Cursor 90 option) can be
handy when placing and aligning design objects. Or alternatively a cross at 45 degrees might be
helpful if the 90 degree option is hard to see against the grid lines.

8.3 Graphic objects


A graphic object is a non-electrical drawing primitive that
can be used to enhance the human-readability of a
schematic document. Examples include lines, arcs,
polygons, and text annotation, etc. Graphic objects are
available for placement in both Schematic and
Library Editors and can be found in the drop down icon
the Utilities toolbar (View Toolbars Utilities), or
from the Place Drawing Tools menu. Depending on
Figure 99. Place graphic objects from the
the object, placement may require several mouse clicks
first button in the Utilities Toolbar
to define the object's appearance. The Status Bar will
indicate what information Altium Designer is expecting and will guide users through this process.
Designers should take care and only use graphical objects for non-electrical purposes.
Anything that requires an electrical connection to be established must use one of the
Electrical objects.

Altium Essentials_July2013_Colby
10-July-2013

103

Figure 100. Schematic graphical objects

The placement of each of the objects shown in Figure 100 is described in the following sections.

8.3.1 Lines <PDL>


To draw a line:
1. Select the Place Line toolbar button
Drawing Tools Line.
2. Click once to start the line.

or Place

3. Click to place each vertex. The BACKSPACE key deletes the last vertex placed.
4. Right-click once to end the line.
5. Loop back to Step 2 to continue placing additional lines or right-click again (or press the ESC
key) to end the command.
Be careful to use the Place Wire command for creating electrical connections, and
do not use the Place Line command by mistake.

8.3.2 Polygons <PDY>


To draw a polygon:
1. Select the Place Polygon toolbar button
Place Drawing Tools Polygon.

or Place

2. Click to place each vertex.


3. Right-click to end the polygon.
4. Loop back to Step 2 to continue placing additional polygons or right-click again (or press the
ESC key) to end the command.
Altium Essentials_July2013_Colby
10-July-2013

104

The fill color and border color of polygons are independent. To draw a polygon that is
not filled, turn the Draw Solid option off in the Polygon dialog.

8.3.3 Arcs <PDA>


To place a circular arc:
1. Select the Place Drawing Tools Arc menu command.
2. Click to place the arc centre.
3. Click to determine the arc radius.
4. Click to place the start of the arc and click to place the end of the arc.
5. Loop back to Step 2 to continue placing additional arcs or right-click (or press the ESC key)
to end the command.

8.3.4 Elliptical arcs <PDI>


To place an elliptical arc:
1. Select the Place Elliptical Arc toolbar button
Place Drawing Tools Elliptical Arc.

or

2. Click to place the arc centre.


3. Click to determine the arc X-radius.
4. Click to determine the arc Y-radius.
5. Click to place the first end of the arc and click to place the second end of the arc.
6. Loop back to Step 2 to continue placing additional elliptical arcs or right-click (or press the
ESC key) to end the command.

8.3.5 Bezier curves <PDB>


A Bezier curve is a curve of best fit between points
defined by mouse clicks.
To draw a Bezier curve:
1. Select the Place Bezier Curve toolbar button
or
Place Drawing Tools Bezier.
2. Click once to place the first control point at the start of the curve.
3. Click to place the second control point.
4. Click to place the third and fourth control points.
5. Continue to click to place further control points.
6. Loop back to Step 2 to continue placing additional bezier curves or right-click (or press the
ESC key) to end the command.
Curves that have already been placed can be reshaped by dragging their control points around.
To add new control points, click and hold the left mouse button on one end of the curve, then
press INSERT. Control points can also be deleted with the DELETE key. Note that 4 control points
points are used for each segment of the curve; control points between segments will be counted
once for each segment.
A Bezier must have at least four vertices to form a curve.

8.3.6 Text Strings <PT>


To place a line of text:
1. Select the Place Text String toolbar button
or
Place Text String.
2. Press TAB to edit the contents and the font of the
The text to be displayed can be entered directly into
Altium Essentials_July2013_Colby
10-July-2013

105

the Text drop-down list, or select a Special String such as the date and document
information. Special Strings are covered in more detail in a separate module.
3. Click to position the text.
4. Loop back to Step 2 to continue placing additional text strings or right-click (or press the ESC
key) to end the command.
Text strings can be edited inline by single-clicking the string to select it, and then single-clicking
again (or pressing the ENTER key) to enter the inline editing mode. Sufficient time between each
click should be given to ensure Altium Designer does not interpret the two single-clicks as one
double-click (which would open the Text String's Properties dialog).
To finish editing inline text, press the ENTER key, or use the mouse to click away from the Text
String.

8.3.7 Text frames <PF>


Text frames are used to place paragraphs of text on the
sheet. To place a text frame:
1. Select the Place Text Frame toolbar button
or
Place Text Frame.
2. Press TAB to edit the contents and properties for the
text frame and click OK.
3. Click to position the top left corner of the frame and then click to position the bottom right
corner of the frame.
4. Right-click to stop placing text frames.
5. Loop back to Step 2 to continue placing additional text frames or right- click (or press the
ESC key) to end the command.
The following keys apply when entering text into the frame:
Operation

Button

Insert tab

CTRL+TAB

Cut

SHIFT+DELETE or CTRL+X

Copy

CTRL+INS or CTRL+C

Paste

SHIFT+INSERT or CTRL+V

Table 6. Shortcut keys for use when editing Text Frames

Text Frames can be edited inline by single-clicking the Frame to select it, and then singleclicking again (or pressing the ENTER key) to enter the inline editing mode. Sufficient time
between each click should be given to ensure Altium Designer does not interpret the two singleclicks as one double-click (which would open the Text Frame's Properties dialog).
To finish editing inline text and apply the changes, click on the green tick mark ( ) at the bottom
right of the Frame. To finish editing inline text without applying the changes, click on the red
cross mark ( ) or press the ESC key.

8.3.8 Notes <PE>


Notes are used to place paragraphs of text on the sheet that can be collapsed and expanded at
will. To place a Note:
1. Select Place Notes Note or PEO shortcut.
2. Press TAB to edit the contents and properties for the Note and click OK.
3. Click to position the top left corner of the Note and then click to position the bottom right
corner of the frame.
4. Loop back to Step 2 to continue placing additional notes or right-click (or press the ESC key)
to end the command.

Altium Essentials_July2013_Colby
10-July-2013

106

Once placed, notes can be collapsed and expanded by clicking on the small up arrow that is in
the top left hand corner of the note. It may be necessary to zoom in on the note in order to see
the arrow.
The following keys apply when entering text into the frame:
Operation

Button

Insert tab

CTRL+TAB

Cut

SHIFT+DELETE or CTRL+X

Copy

CTRL+INS or CTRL+C

Paste

SHIFT+INSERT or CTRL+V

Table 7. Shortcut keys for use when editing Notes

When editing either Text Frames or Notes, the Cut, Copy and Paste commands apply
to the Windows clipboard. The clipboard can also be used to bring text in from other
applications.

8.3.9 Rectangles <PDR>


To place a rectangle:
1. Select the Place Rectangle toolbar button
Place Drawing Tools Rectangle.
2. Click to place top left corner.

or

3. Click to place bottom right corner.


4. Loop back to Step 2 to continue placing additional rectangles or right-click (or press the ESC
key) to end the command.

8.3.10

Rounded rectangles <PDO>

Rounded rectangles are rectangles with rounded


The radius of the arcs at the rectangle corners is set in
the X-Radius and Y-Radius fields in the Round
Rectangle dialog. To place a rounded rectangle:
1. Select the Place Rounded Rectangle toolbar button
or Place Drawing Tools Rounded Rectangle.
2. Press TAB to set the corner radii and click OK.
3. Click once to place the top left corner and click again to place the bottom right corner.
4. Loop back to Step 2 to continue placing additional rounded rectangles or right- click (or press
the ESC key) to end the command.

8.3.11

Ellipse <PDE>

To place an Ellipse:
1. Select the Place Ellipse toolbar button
Drawing Tools Ellipse.
2. Click to place the centre.

or Place

3. Click to determine the X-radius.


4. Click to determine the Y-radius.
5. Loop back to Step 2 to continue placing additional ellipses or right-click (or press the ESC
key) to end the command.

8.3.12

Pie charts <PDC>

To place a pie shape:

Altium Essentials_July2013_Colby
10-July-2013

107

1. Select the Place Pie Chart toolbar button

or Place Drawing Tools Pie Chart.

2. Click to place the pie centre.


3. Click to determine the pie radius.
4. Click to place the first edge of the pie and click to place the second edge.
5. Loop back to Step 2 to continue placing additional pie charts or right-click (or press the ESC
key) to end the command.

8.3.13

Graphic images <PDG>

Graphic images with the following formats can be added


to a schematic:

.bmp, .rle, .dib

.jpg, .tif (uncompressed)

.wmf, .pcx, .dcx, .tga.

The file containing the graphical image can be embedded into the sheet or linked. If the image
file is linked it must be transferred with the schematic file when moving the schematic from one
location to another.
To place a graphic image:
1. Select the Place Graphic Image icon
from the Utilities toolbar or the Place Drawing
Tools Graphic command from the main menu.
2. Click once to place the top left corner of the image and click again to place the bottom right
corner of the image.
3. Locate the file that contains the image and click OK.
4. Loop back to Step 2 to continue placing additional graphic images or right-click (or press the
ESC key) to end the command.
By default, graphic images will be stored within the schematic document as a link. To embed the
image into the schematic document, double click on the image to open the Graphic dialog and
enable the Embedded option.
The advantage of embedding the image into the schematic or schematic template is
that the image will still be visible if the file is moved. The disadvantage is that the
schematic file size will be larger.

8.4 Electrical objects


An Electrical object is used for
establishing electrical connections
between components in the design. They
Figure 101. Schematic electrical objects are placed from the
include components (parts) and
Wiring toolbar.
connective elements, such as wires,
buses and ports. These objects are used to create a connection model of the compiled
and create the PCB netlist.
Electrical objects are available for placement in both Schematic and Schematic Library Editors
and can be found in the Place menu or from the Wiring Toolbar. If this toolbar is currently not
visible, it can be enabled from the View Toolbars Wiring menu.
Before using electrical objects, it is advisable that Snap and Electrical grids have been
appropriately defined to ensure reliable connections are made between electrical
object endpoints (hotspots).

Altium Essentials_July2013_Colby
10-July-2013

108

Figure 102. Schematic electrical objects

Figure 102 is a schematic diagram showing a variety of different electrical objects. The following
sections briefly explains the placement of each of them.

8.4.1 Wires <PW>


Wires are the basic
building block for
establishing physical
connections between
electrical objects.
Be careful to use the Place Wire command for creating electrical connections, and
do not use the Place Line command by mistake.
To place a wire (electrical connection):
in the Wiring toolbar or select Place Wire from the main
1. Select the Place Wire icon
menu.
2. Start placing the wire by clicking once over the desired start point and then move the wire in
the direction of the connection. Use a combination of the following actions to mark the path
of the connection:
a) Click to add a vertex to the wire.
b) Use the SPACEBAR to change the current placement mode's start and end points (90 and
45 degree modes only).
c) Press the SHIFT + SPACEBAR to cycle between the four placement modes - 90 degree, 45
degree, any angle, and auto wire.
d) Use the BACKSPACE key to delete the last vertex placed while wiring.
3. Right click to terminate the current wire.
4. Loop back to Step 2 to continue placing additional wires or right-click (or press the ESC key)
to end the command.
To ensure that an electrical connection is made between a wire and a component pin, move the
mouse over the hot end of the component's pin and observe the cursor change to a red cross
before left clicking to complete the connection.
If a wire starts or ends on another wire, the Auto Junction feature will automatically insert a
Junction object at the point of intersection. The properties of the Auto Junction Feature can be
controlled from the Options section of the DXP Preferences Schematic General page of

Altium Essentials_July2013_Colby
10-July-2013

109

the Preferences dialog (Convert Cross-Junctions and Display Cross-Overs) as well as the
DXP Preferences Schematic Compiler page.

Figure 103. A visualization of the effects of setting the Display Cross-Overs (left) and Convert CrossJunctions (right) options.

To add additional vertices to a wire that has already been placed, click and hold the left mouse
button on the wire and press the INSERT key.
To remove a vertex from an existing wire, select the vertex, right click and select the Edit Wire
Vertex n command. The selected vertex will be highlighted from within the Wire Properties
dialog and can be removed by clicking the Remove button.

8.4.2 Buses <PB>


In Altium Designer, a
bus is a collection of
signals that begin with
the same name but only
differ in their numerical
suffix. An example might be a 4-bit data bus defined as Data[3..0] and containing nets
Data2, Data1, and Data0. By convention, buses are usually labeled from their highest index
down to their lowest index - i.e. Busname[HighIndex .. LowIndex].
Buses can only represent connections to ports and sheet entries and only at their end points.
To place a Bus Object:
1. select the Place Bus
icon from the Wiring toolbar, or use the Place Bus menu
command.
2. Route the Bus connection in much the same manner as placing wires, i.e. press SPACEBAR
to change placement mode and press the BACKSPACE key to delete the last vertex placed.
The same shortcut commands used for wire mode apply to the Bus placement mode.
3. Loop back to Step 2 to continue placing additional buses or right-click (or press the ESC key)
to end the command.

8.4.3 Bus Entries


<PU>
Bus entries are used to
represent a connection
between a wire and a bus.
To place a bus entry:
1. Select the Bus Entry icon
from the Wiring toolbar or Place Bus Entry from the main
menu.
2. Use the SPACEBAR to rotate the bus entry by 90 as necessary.
3. Click once to position the bus entry.
4. Loop back to Step 2 to continue placing additional bus entries or right-click (or press the ESC
key) to end the command.

Altium Essentials_July2013_Colby
10-July-2013

110

The use of bus entries is completely optional since bus connectivity is established by
net labels rather than through direct connections. Depending on user preference, a
wire can be used as a visual alternative to a Bus Entry.

8.4.4 Signal Harness <PHH>


Signal Harnesses enable
the logical grouping of
collection of signals
including buses and
wires.
Wires are used to
represent an electrical connection between points, buses are used to represent a group of
signals which are identified by a specific naming convention.
Signal Harnesses, on the other hand, involve the logical grouping of multiple signals including
both wires and buses. This group can be treated as a single entity across an entire project and
allows for the creation and manipulation of higher level abstract connections between subcircuits.
Signal Harnesses allow for a more complex design within the same schematic workspace
thereby increasing readability of designs and building potential for re-use.

Figure 104. Harnesses consist of multiple signals which can include both wires and buses, grouped and
then referenced as a single entity. The multi-wire connection is called a Signal Harness

There are 4 key elements to a Signal Harness system:

Signal Harness

Harness Connector

Harness Entry

Harness Definition File

Signal Harnesses are used to connect between Harness Objects such as Harness Connectors,
Sheet Entries, and Ports.

Altium Essentials_July2013_Colby
10-July-2013

111

Figure 105. A complete Signal Harness System is shown demonstrating how Signal Harnesses, Harness
Connectors and Harness Entries complete the big picture.

Hover the mouse over a harness to detail all contained nets, buses and subTo place a Signal Harness:
icon from the Wiring toolbar, or use the Place
1. select the Place Signal Harness
Harness Signal Harness menu command.
2. Route the Signal Harness in much the same manner as placing wires, i.e. press SPACEBAR
to change placement mode and press the BACKSPACE key to delete the last vertex placed.
The same shortcut commands used for wire mode apply to the Signal Harness placement
mode.back to Step 2 to continue placing additional Signal Harnesses or right-click (or press
3. Loop
the ESC key) to end the command.

8.4.5 Harness Connector <PHC>


Harness
Connectors are
used to group
together the
various signals
that form a Signal
Harness. The
Harness Connector will include a harness entry for each net, bus and sub-harness being
together to create the Signal Harness.

Altium Essentials_July2013_Colby
10-July-2013

112

Figure 106. The Harness Connector groups the signals in the Signal Harness. It is defined by the Harness
Type, which, in this example, is I2S

Use the Smart Paste command to rapidly convert selected Net Labels into Harness
Connectors.
To place a Harness Connector:
1. Select the Place Harness Connector
icon from the Wiring toolbar, or use the Place
Harness Harness Connector menu command.
2. Optionally press TAB to edit the contents and properties for the Harness Connector and click
OK.
3. Click once to position the Harness Connection Point and then click again to resize the
Harness Connector's height.
4. Loop back to Step 2 to continue placing additional Harness Connectors or right-click (or
press the ESC key) to end the command.

8.4.6 Harness Entry <PHE>


For a net, bus or
sub-harness to be
included in a Signal
Harness, it must be
connected through a
Harness Entry in a
Harness Connector.

Figure 107. Connectivity is established by connecting a Signal Harness and a Port to the Harness
Connector.

To place a Harness Entry:


1. Select the Place Harness Entry
icon from the Wiring toolbar, or use the Place
Harness Harness Entry menu command.
2. Optionally press TAB to edit the contents and properties for the Harness Entry and click OK.
3. Move the mouse cursor over the Harness Connector that the new Harness Entry is to be
added to and click once to place it.
4. Loop back to Step 2 to continue placing additional Harness Entries on the same Harness
Connector, or right-click (or press the ESC key) to end the command.

Altium Essentials_July2013_Colby
10-July-2013

113

8.4.6.1

Harness Definition

To keep track of signals present in a Signal Harness, a Harness Definition file will be created for
each Signal Harness present in the design and added to the project. Each Harness Definition
comprises of a Harness Type (I2S in the image below), and the related Harness Entries (in this
case: BCLK, DIN, DOUT, MCLK, WCLK).
The Harness Definition files (*.Harness) are created and managed automatically by Altium
Designer so there is generally no need to edit them directly. Harness Definition Files appear in
the Projects panel under the Settings\Harness Definition Files sub-folder.

Figure 108. The Harness Definition Files are text files that are located under Settings in the Projects Panel.
These contain textual representations of Signal Harnesses and their respective Harness Entries. They can
be identified by their extension *.Harness

It is possible to create a Signal Harness without the Harness connector. In this case
Harness Definition file must be created and managed manually.

8.4.7 Net Labels <PN>


Net Labels let designers
attach meaningful names
to signals in the design.
These names can help
with identifying the
purpose of signals on the
schematic as well as helping with signal (trace) navigation in the PCB.
Net Labels can also be used to establish logical connectivity between electrical objects. This is
particularly important for busses since there is no other way to define a net as being part of a bus
other than by Net Labels.
Nets that aren't explicitly given a Net label will be assigned a system-generated net name
To place a net label:
1. Select the Place Net Label
icon from the Wiring toolbar, or use the Place Net Label
menu command.
2. Optionally press TAB to edit the contents and properties for the Net Label.

Altium Essentials_July2013_Colby
10-July-2013

114

Figure 109. Net Label dialog

a) Click on the down arrow in the Net field to display the names of nets already defined on
the sheet, or type in a new net name.
b) Click OK to close the Net Label dialog and continue placement of the Net Label.
3. Press SPACEBAR to rotate the net label as necessary.
4. Position the electrical hotspot of the Net Label (centered on the cursor) over an electrical
object. The cursor will display a red cross when moved over another object's electrical
hotspot. Click once to place the Net Label.
5. Loop back to Step 2 to continue placing additional Net Labels or right-click (or press the ESC
key) to end the command.
During net label placement, hover the mouse over existing text on a schematic and
press the Insert shortcut key, the net label will pick up that string value.

8.4.8 Power Ports <PO>

A power port is an electrical design primitive that provides a direct connection, from anywhere in
the design, to the power net(s). All power ports with the same Net property in a project will be
connected. The style of the power port only changes its appearance; the actual Net that it
connects to is established through the Net property. Power ports will connect to hidden pins with
the same name throughout the design, regardless of the net identifier scope used.
To place a power port:
1. Select either the GND
or VCC
Power Port icon from the Wiring toolbar, or use the
Place Power Port menu command.
2. Press TAB to edit the power port properties for a net name other than GND or VCC.

Altium Essentials_July2013_Colby
10-July-2013

115

Figure 110. Power Port dialog

3. Click to position the port.


4. Loop back to Step 2 to continue placing additional Power Ports or right-click (or press the
ESC key) to end the command.

8.4.9 Parts <PP>


All designs, no matter
how trivial, will contain
components.
Components can be
placed directly from the
Vault or Library panels,
or they can be placed from the Wiring toolbar.
To place Parts in this manner:
1. Select the Place Part
icon from the Wiring toolbar, or use the Place Part menu
command. The Place Part dialog will immediately display.

Figure 111. Place Part dialog

2. Select the part:


a) directly from the Physical Component dropdown
b) from a History of previously placed components by clicking the History button,
c) or choose a new component and library by clicking the Choose button.
Altium Essentials_July2013_Colby
10-July-2013

116

3. Click OK to close the Place Part Dialog. The component will appear at the cursor.
4. Optionally press TAB to edit the component's local properties.
5. Position the component on the schematic and click once to place it.
6. Loop back to 4 to place additional parts of the same type, or right-click (or press the ESC
key) to return to the Place Part dialog and Step 2.
7. Click Cancel in the Place Part dialog (or press the ESC key) to end the command.
When placing parts, use a snap grid that will cause the pin ends to fall on a grid point,
e.g. 10. Press G to cycle through the snap grid settings of 1, 5 and 10.
The shift towards Vault content is slowly propagating through the features of Altium Designer.
Place Part command currently doesn't support direct placement from a Vault however it should
noted that the use of Vault components is fast-becoming the preferred option. Placing parts
directly from a Vault can be accomplished from the Vault panel's right-click menu (Figure 112).

Figure 112. Placing Parts directly from the Vault Panel's right-click menu.

8.4.10

Sheet Symbols <PS>

Sheet symbols are used


to indicate hierarchical
connections to child
documents in a design.
When changing the size
of the sheet symbol,
make sure the edges of the sheet symbol fall on the snap grid to ensure connection between
wires and sheet entries.
To place a sheet symbol:
1. Select the Sheet Symbol
icon from the Wiring toolbar, or use the Place Sheet
Symbol command from the main menu.
2. Optionally press TAB to edit the designator and sheet symbol filename. The designator is a
descriptive name for the sheet, and the filename will be the name of the schematic document
that the sheet symbol is linked to. Click OK to close the Sheet Symbol dialog.

Altium Essentials_July2013_Colby
10-July-2013

117

Figure 113. Sheet Symbol dialog

3. Click once to place the top left corner.


4. Click once to place the bottom right corner.
5. Loop back to Step 2 to continue placing additional Sheet Symbols or right-click (or press the
ESC key) to end the command.
Sheet symbols, complete with sheet entries, can be created using the Design
Sheet Symbol From Sheet or HDL menu command. The Design Synchronize
Sheet Entries and Ports command (or right-click a Sheet Symbol and select the
Sheet Symbol Actions Synchronize Sheet Entries and Ports command) can also
be used to synchronize the sheet entries on a sheet symbol with the corresponding
ports on the sheet below.

8.4.11

Sheet Entries <PA>

When creating a
hierarchical design, ports
on child documents are
matched (by name) to
Sheet Entries in the Sheet
Symbols of the parent
document.
To place a Sheet Entry:
1. Select the Place Sheet Entry
icon from the Wiring toolbar, or use the Place Add
Sheet Entry command from the main menu.
2. Move the cursor (with Sheet Entry attached) to the target Sheet Symbol. As the cursor
moves over the Sheet Symbol, the Sheet Entry will attempt to attach to its closest edge.
3. Optionally press TAB to edit the Sheet Entry properties. The TAB key is only enabled if the
cursor is positioned over a valid Sheet Symbol. Click on the down arrow in the Name field to
list all the Sheet Entry names used on the target Sheet Symbol.

Altium Essentials_July2013_Colby
10-July-2013

118

Figure 114. Sheet Entry dialog

4. Position the Sheet Entry at will on any side of the sheet symbol and click once to place it.
5. Loop back to Step 2 to continue placing additional Sheet Entries or right-click (or press the
ESC key) to end the command.
Altium Designer can insert sheet entries automatically, by enabling the Place Sheet
Entries automatically option in the Graphical Editing page of the Preferences
dialog. An entry is placed automatically when the wire is terminated on the edge of a
sheet symbol, if the net currently being wired can be identified.

8.4.12

Place Device Sheet <PI>

Device Sheets are


blocks of reusable
design content that
can be shared across
multiple projects.
Other than being
read-only when placed into a project, they operate much the same as Sheet Symbols. The
path used to locate Device Sheets can be set in the DXP Preferences Data Management
Device Sheets page of the main Preferences dialog.
To place a Device Sheet:
1. Select the Place Device Sheet Symbol
icon from the Wiring toolbar, or use the Place
Device Sheet Symbol command from the main menu.
2. The Select Device Sheet dialog will immediately display. Select a device sheet from the list,
or click the Device Sheet Folders button to add other folders to the list. Once a device
sheet has been selected, click OK to continue with the placement.

Altium Essentials_July2013_Colby
10-July-2013

119

Figure 115. The Select Device Sheet dialog.

3. Click once to place the Device Sheet on the schematic document. The command will
immediately terminate once the Device Sheet has been placed.
Once a Device Sheet has been placed, it can be resized and its sheet entries adjusted to
integrate with the rest of the schematic document.
The use of Device Sheets is being relegated in favor of Vault-based Managed Sheets
which offer superior data management capabilities.

8.4.13

Ports <PR>

Ports provide a method of


passing connections
between a child and
parent sheet in a project
hierarchy.
To place a port:
1. Select the Place Port
icon from the Wiring toolbar, or use the Place Port command
from the main menu.
2. Optionally press TAB to edit the Port properties.
a) Click on the down arrow in the Name field to list all other Port names defined on the
sheet, or type in a new name directly.
b) For creating Harness Ports, click on the Harness Type drop down to access a list of all
harnesses currently defined for the project, or type in a new name directly.
c) Use the port's I/O Type to specify the ports direction; the Port Style only changes the
port's appearance. Setting the I/O type correctly will help improve the quality of ERC.

Altium Essentials_July2013_Colby
10-July-2013

120

Figure 116. Port Properties dialog

3. Press the SPACEBAR to rotate, or X and Y to flip in the X or Y direction respectively.


4. Click to position one end of the port. Drag the mouse to set the port length and click to finish
the port.
5. Loop back to Step 2 to continue placing additional Ports or right-click (or press the ESC key)
to end the command.
The Port Direction can be set automatically, based on the Port I/O Type and where
wire touches the port. Enable the Port Direction option in the DXP Preferences
Schematic General page of the Preferences dialog.

8.4.14

Off Sheet Connectors <PC>

Off Sheet Connectors are a special type of Port used to connect nets across
multiple schematic sheets that are descended from the same parent sheet symbol.
To successfully connect a particular net across two or more sheets, the Off Sheet Connectors on
each sheet must be assigned to the same net.
1. Select Place Off Sheet Connector (PC).
2. Optionally press TAB to edit the Off Sheet Connector properties.
3. Click to place the Off Sheet Connector. Right-click to exit placement mode.
The primary function of Off Sheet connectors is for translation to and from OrCAD
Schematic Capture. In general, the use of Off Sheet connectors outside of interaction
with OrCAD is not recommended as best practice.

8.4.15

Junctions <PJ>

Altium Designer automatically adds junctions at valid connection points during wiring operations.
This includes T joins and when a wire crosses the end of a pin, but it does not include wire
crossovers.
In cases where it is necessary to manually add a junction:
1. Select Place Manual Junction (PJ).
2. The crosshair cursor appears with a junction marker (red dot) on it. Click to place the
junction marker as required.
3. Right-click (or press ESC) to end the command.
Altium Essentials_July2013_Colby
10-July-2013

121

The Auto-Junction display settings can be controlled from the DXP Preferences
Schematic Compiler page of the main Preferences dialog.
The way junctions are managed at crossovers can be set in the Options section of
the DXP Preferences Schematic General page of the Preferences dialog
(Convert Cross-Junctions and Display Cross-Overs)

Figure 117. The Display of crossovers can be configured from the main Preferences dialog.

8.4.16

Non-Specific No ERC Directive <PVN >

When placed on a net, the Non-Specific


No ERC directive will suppress all
warnings and/or errors from being
generated by the compiler for that net.
Use this directive to deliberately limit
error checking at a certain point in the circuit that is known to generate a warning (such as an
unconnected pin), while still performing a comprehensive check of the rest of the circuit.
To place a Non-Specific ERC directive:
1. Select the Place No ERC
icon from the Wiring toolbar, or use the Place Directives
Generic No ERC command from the main menu.
2. Optionally press TAB to edit the No ERC directive appearance before placement (Figure
118).
3. Click on an electrical object to attach the No ERC directive to that net.
4. Loop back to Step 2 to continue placing additional No ERC directives or right-click (or press
the ESC key) to end the command.

Figure 118. Specifying settings for a Generic No ERC directive.

8.4.17

No ERC Targeting a Specific Error Directive <PVE >

Altium Essentials_July2013_Colby
10-July-2013

122

When placed on a net, the No ERC Targeting a Specific Error directive will suppress all
warnings and/or errors from being generated by the compiler for that net. Use this directive to
deliberately limit error checking at a certain point in the circuit that is known to generate a
warning (such as an unconnected pin), while still performing a comprehensive check of the rest
of the circuit.
To place a No ERC Targeting a Specific Error directive:
1. Select the Place No ERC Targeting a Specific Error
icon from the Wiring toolbar, or
use the Place Directives Specific No ERC command from the main menu.
2. If errors are present, an interactive Place Specific NoERC dialog will be launched pre-loaded
with a list of all violations in the current schematic sheet. To be confident that it accurately
reflects the violations that currently exist, click the Recompile project button.

Figure 119. Configuring the Specific No ERC directive during placement.

3. If there are multiple violations detected, the Automatically recompile option should also be
enabled to ensure the list remains accurate as directives are placed.
4. Click on a violation in the list, the view of the schematic sheet will automatically change to
show the violating object. Note that each detected violation can be expanded to show details
of the error.
5. Click the Suppress checkbox that corresponds to the error of interest.
6. Click OK to close the dialog, a No ERC marker will appear on the cursor, ready for
placement on the point in the circuit that is creating the violation.
7. Place the directive on the point of violation in the circuit. After clicking to place, the Place
Specific NoERC dialog will automatically re-appear ready to resolve the next violation.
8. Continue to place directives to resolve all violations on the current schematic sheet, then
move to the next sheet in the project. The big advantage of this guided automatic process is
that each directive is automatically configured to only suppress specific errors/warnings.
Specific No ERC directives can be placed directly from the Right-Click menu that
appears over a node with an ERC error / warning, or by Right-Clicking an error /
warning in the Messages Panel.

Altium Essentials_July2013_Colby
10-July-2013

123

Module 9: Selecting and Editing Schematic


Objects
The process of schematic capturing is usually iterative and requires several cycles of adding
some content, deleting others, and editing the rest. This modules describes the editing paradigm
used within Altium Designer and some of the basic selection and editing commands that are
available.

9.1 Select then Edit


The editing paradigm in Altium Designer requires that objects are first selected before they can
be edited. This is true regardless of the means of editing - whether editing using an object's
properties dialog, or by one of the various panels. So before a discussion of editing can begin,
the process of selecting design objects must first be understood.

9.1.1 Selecting via Direct Object Selection


Design objects can be selected in a number of different ways but the most common is via Direct
Object Selection. This occurs within the main editor space and can be initiated directly from
mouse operations or via a menu command. The available operations can be summarized as
follows:
Action

Operation

Single Click over an object.

Toggle the selection state of the object under the mouse cursor at
the time of clicking the mouse.

Double-Click over an object.

Display the object's Properties dialog box.

Click in vacant space and


Drag a rectangle

Each object bounded completely by the dragged rectangle is


selected.

Edit Select menu (S)


Edit Deselect menu (X)

Inside Area: (De)Select all objects completely bounded by a


rectangular region.
Outside Area: (De)Select all objects outside a bounded
rectangular region.
Touching Area: (De)Select all objects at least partially bounded
by a rectangular region.
Touching Line: (De)Select all objects intersected by a line.
All: all
Connection: Select all electrically connected items for a given
connection.
Toggle Selection: Unselect those objects that are currently
selected, select those objects that are currently unselected.

The Standard Schematic


toolbar (part of it)

From left to right:


- Select object Inside the area,
- Move the selected Object
- Deselect all currently selected objects
- Clear any currently applied filter

Table 8. Direct Selection operations

Selection is not cumulative; if a new selection operation is initiated, all previously selected
will be automatically unselected. This functionality can be overridden by making a new selection
Altium Essentials_July2013_Colby
10-July-2013

124

while pressing the SHIFT Key to add objects to the existing selection, or by making a deselection
while pressing the CTRL key to remove objects from the current selection.
Pressing the DELETE key while objects are selected will cause them to be deleted.
Selection in earlier versions of Altium software differed from other Windows
applications in that selection was persistent selected objects always remained
selected until you deliberately de-selected them. Altium Designer includes an option to
mimic that behavior; if you disable the Click Clears Selection option in the
Schematic Graphical Editing page selected objects will remain selected until you
deliberately clear the selection. It is recommended you try the standard behavior first,
and if you need to hold the selection state of a set of objects, use the Selection
Memory feature.
When the object is selected directly in the schematic, the selected object will
appear highlighted, as shown. The color of the dashed box can be optionally
changed from the Color Options in the Schematic Graphical Editing section of
the DXP Preferences dialog.
If it is desirable to limit specific objects from being inadvertently selected, designers
optionally specify that certain objects can only be selected through SHIFT+click
operations. This setting can be found in the Schematic Graphical Editing page of
the DXP Preferences dialog. Click the Primitives button to configure which objects
require Shift to be held during selection.

Figure 120. Use the SHIFT+Click option to limit certain objects from selection unless the SHIFT key is
pressed during selection.

Altium Essentials_July2013_Colby
10-July-2013

125

9.1.2 Selecting Objects Indirectly


In some cases, it is more efficient to select (or filter) objects according to some specific criteria
rather than having to directly select each object individually. For this purpose, Altium Designer
includes a number of Indirect Object selection and filtering capabilities.

9.1.2.1

The Find Similar Objects (FSO) Dialog

The Find Similar Objects (FSO)


features lets the designer select (or
filter) many similar objects based on
the parameters of a reference object.
It can be launched by selecting Edit
Find Similar Objects from the main
menu, pressing CTRL+F, or by rightright-clicking over any object and
selecting Find Similar Objects from
the popup menu.
The FSO dialog has three columns;
first (left) column lists the object's
parameters, the second (middle)
column lists the parameter's current
value, and the third (right) column is
used to specify how that parameter
should be used to select additional
objects.
Below the three columns are a number
of checkboxes that can be set
according to the desired operation
once the find is executed.
To select objects according to filter
settings in the Find Similar Objects
dialog, ensure the Select Matching
checkbox is checked before clicking
the Apply or OK button to execute the
find. Also take note of the Clear
Existing checkbox and ensure it is
checked unless cumulative selection is
required.

Altium Essentials_July2013_Colby
10-July-2013

Figure 121. Use the Find Similar Objects feature to quickly


select multiple objects based on the parameters of a
reference object.

126

9.1.2.2

The Navigator Panel

The Navigator panel works on the unified data


model of a compiled design and allows users to
browse and hierarchically select electrical
objects throughout the entire project.
Objects in the design can be filtered based on
object selections made from within the panel, or
press the
button to update the panel
based on selections made within the schematic
editor window.
The
button to the right of the
button is used to control how the schematic
editor window is updated based on selections
made within the Navigator Panel.
The Navigator Panel is accessible from the
Workspace Panels Design Compiler
Navigator menu option, or from the Design
Compiler Panel button.

Figure 122. Accessing and using the Navigator Panel


to browse the compiled hierarchy of a design.

9.2 Editing Schematic Objects


Having first selected one or more objects, the most common editing operations can be initiated
as follows:
Operation

Command Initiator

Cut, copied, pasted or cleared

Using the Edit menu commands

Moved

Click-and-drag on any selected object

Moved or dragged

Using the Edit Move menu commands (M)

Aligned

Using the Edit Align menu commands (A)

Deleted

Using the DELETE Key

Table 9. Selected object command summary

9.2.1 Graphically Editing Placed Objects


In addition to editing the bulk characteristics of an object, such as if and where it exists in the
design, it is often desirable to edit specific graphical attributes of an object as well. The easiest
way to do this is through the main editor's GUI.
When an object is selected, a number of selection handles will be displayed
around it. As the mouse moves over the object or one of those handles, the
mouse cursor will change to indicate what will occur if a mouse drag operation
is executed from that position.

Altium Essentials_July2013_Colby
10-July-2013

127

Graphical objects are fundamentally different from Electrical objects and so the editing
operations that can be applied to them are different. But there is some commonality in how
editing operations can be controlled from within Altium Designer.

9.2.1.1

Common Move operations

When moving an object (either through mouse or keyboard operations)

Press SPACEBAR to rotate the object anti-clockwise or SHIFT + SPACEBAR to rotate the object
clockwise

Press the X or Y keys to flip the object along the X-axis or Y-axis respectively

Hold down the ALT key to constrain the direction of movement to the horizontal or vertical
axis, whichever movement is greater.

Hold down the Shift key to move using the arrow keys by large amounts (snap grid value by
a factor of 10).

9.2.1.2

Common Drag Operations

In some situations, it is desirable to move an electrical object while maintaining connectivity with
other electrical objects. This type of operation is called a Drag operation and is only available to
Electrical Objects.
By default, a Move operation is assumed when dragging the mouse over an electrical object - i.e.
connected electrical objects do not move with the target object. But this functionality can be
changed by default to a drag operation by checking the Always Drag option on the Schematic
Graphical Editing page of the DXP Preferences dialog.
Alternatively, a drag operation can be initiated from the Edit Move Drag menu (M, D).
When dragging an object (either through mouse or keyboard operations)

Press the SPACEBAR or SHIFT + SPACEBAR while dragging to change the wiring mode

Press CTRL + SPACEBAR while in movement mode to rotate the object anti-clockwise and in
steps of 90. CTRL + SHIFT + SPACEBAR rotates the object clockwise.

Press the X or Y keys while in movement mode to flip the object along the X-axis or Y-axis
respectively

Press SPACEBAR while moving to toggle the orthogonal wire mode for any wires connected to
the object

Hold the ALT key while moving to constrain the direction of movement to the horizontal or
vertical axis, depending on the initial direction of movement.

9.2.2 Editing Placed Wires


Wires, buses and harnesses can all be edited graphically but the result will vary depending on
what is first selected and where on the wire the drag operation begins.

9.2.2.1

Editing by Moving a Wire's Vertex

To edit a selected wire by moving a vertex, click on the wire to


select it. Hover the cursor over the vertex that needs to be
moved. When the cursor changes to a double arrow, click and
drag the vertex to its new location.

9.2.2.2

Moving a Wire Segment

Wire segments can be moved by first selecting the wire, then


hovering the cursor over the target segment until the cursor
to a 'quad' arrow. Click and drag the segment to its new location.

Altium Essentials_July2013_Colby
10-July-2013

128

9.2.2.3

Move the entire wire

To move the entire wire without modifying it, don't select it


beforehand. Instead initiate a drag operation from any location on
the wire and drag the entire wire to a new location.

9.2.2.4

Extending a Wire to a New Location

Placed wires can be extended or added to by first selecting the wire


and positioning the cursor over the end that needs to be moved or
extended. When the cursor changes to a double arrow, drag the
endpoint and 'look ahead' segment to the new location and release
the mouse to complete the extension. The placement mode can be
changed while moving the cursor by using SHIFT + SPACEBAR.

9.2.2.5

Breaking Wires

It is not possible to selectively delete segments within a placed wire.


Instead, the Edit Break Wire command can be used to break an
wire into multiple segments. Once split, the two wires can be edited as per
the previous set of instructions.

9.2.2.6

Multiple lines

The multi-wire editing mode in the Schematic


allows multiple wires to be extended at the same
time. If multiple parallel wires share a coordinate
their end vertex, then when the end point of one of
them is dragged, the end vertex of all other
wires will also move.

Figure 123. Simultaneously extending multiple wires


using a single drag operation.

9.2.3 Editing Using the Properties Dialog


All design objects have their own Properties dialog which can be accessed using any one of the
following methods:

When an object is 'floating' on the cursor during the placement procedure, press the TAB key
to open its Properties dialog. This is referred to as in place editing.

Double-click the mouse over a placed object.

Right-Click an object and select the Properties item from the popup menu.

Select an object and press the ENTER key.

Select Edit Change to enter the object change mode and click on a target object. Once
editing is complete, terminate the object change mode by right-clicking or pressing the ESC
key.

Altium Essentials_July2013_Colby
10-July-2013

129

Module 10: Schematic Object Reference


All objects within the Schematic editor have their own set of properties and attributes that can be
edited. This module summarizes the settings for each of the different objects.

10.1 Graphical Object Properties


10.1.1

Polylines

Start / End Line Shape:


Select between None,
Arrow, Solid Arrow, Tail,
Solid Tail, Circle or Square.

Line Shape Size: Select


between Smallest, Small,
Medium or Large start and
end line shapes.

Line Width: Select between


Smallest, Small, Medium or
Large line width.

Line Style: Select either


Solid, Dotted or Dashed line
style
Figure 124. The Polyline Properties Dialog
Color: Click on the color box
to invoke the Windows Color Picker dialog to set the color of the Polyline.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Polyline.

Polyline Vertices
The X and Y co-ordinates of
each vertex can be edited
individually, removed, or
additional vertices added.
This Vertices portion of the
Polyline Properties dialog is
shared across several other
line-based objects.

Figure 125. Use the Vertices section to control the position of individual
points along the Polyline.

Altium Essentials_July2013_Colby
10-July-2013

130

10.1.2

Polygon

Fill / Border Color: Click on the color


box to invoke the Windows Color
Picker dialog to set the fill / border
of the Polygon.

Border Width: Select between


Smallest, Small, Medium or Large
border width.

Draw Solid: Check this checkbox to fill


the inner section of the polygon with
the color specified by the Fill Color.
Transparent: If checked, the inner
section of the polygon will be seesee-through even if the Draw Solid
option is set.

Figure 126. The Polygon Properties Dialog.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Polygon.
Vertices Tab: The Vertices tab can be used to edit the Polygons individual vertices as previously
described in the Polyline Vertices section.

10.1.3

Elliptical Arc

Line Width: Select between Smallest,


Small, Medium or Large border width.

X / Y-Radius: Specify the Radius (in the


schematic measurement unit) in the X
and Y directions.

Start / End Angle: Specify the Start and


End angles (in degrees) referenced as
per the direction arrows given beside
the Start and End Angle controls.

Color: Click on the color box to invoke


the Windows Color Picker dialog to set
the color of the Elliptical Arc.

Location X / Y: Specify the X, Y co-

Figure 127. The Elliptical Arc Properties Dialog.

co-ordinates of the centre of the


Elliptical Arc.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Elliptical Arc.

10.1.4

Bezier

Curve Width: Select between Smallest, Small, Medium


or Large line width.

Color: Click on the color box to invoke the Windows


Color Picker dialog to set the color of the Bezier.

Locked: Check this box to cause a warning to be


displayed if any further graphical edits are attempted
on the Bezier.

Figure 128. The Bezier Properties Dialog


Altium Essentials_July2013_Colby
10-July-2013

131

10.1.5

Annotation

Color: Click on the color box to invoke the Windows


Color Picker dialog to set the color of the Text.

Location X / Y: Specify the X, Y co-ordinate for the text


objects reference point.

Orientation: Specify the rotation angle of the text in


increments of 90 around the objects reference point.

Horizontal Justification: Horizontally justify the text


object so that the reference point is on the Left, Center
or Right of the text string.

Vertical Justification: Vertically justify the text object so


that the reference point is on the Bottom, Center or Top
of the text string.

Mirror: When checked this has the effect of swapping


the Horizontal Justification from Left to Right (or Right
Left).
Text: The actual text string to be displayed. Figure 6
shows how a text string can be set to reference any
of Altium Designers Special Strings or a parameter
is within the scope of the Annotation object.
Font: Press the Change button to display the
Windows Font dialog and specify the font to be used
when rendering the Annotation object.

Figure 129. The Annotation Properties


Dialog

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Annotation object.
The text string within an Annotation Object can be edited inline by clicking the object
once to select it, and a second time (a short time after) to activate the inline editing
mode. When attempting to activate this mode, sufficient time must be given to ensure
that the two single clicks are not interpreted as a double-click.

10.1.6

Text Frame

Border Width: Select between


Smallest, Small, Medium or
Large border width.

Text Color: Click on the color


box to invoke the Windows
Color Picker dialog to set the
color of the text within the Text
Frame.

Alignment: Horizontally justify


the text within the frame as
Center or Right justified.

Location X1,Y1 / X2,Y2: Specify


the X, Y co-ordinates for the
Text Frames bottom left and
top right corners.

Show Border: Check this box to


include a border around the
Text Frame.

Figure 130. The Text Frame Properties Dialog.

Border Color: Click on the color


box to invoke the Windows Color Picker dialog to set the color of the border. This option only
takes effect if the Show Border option has been checked.
Altium Essentials_July2013_Colby
10-July-2013

132

Draw Solid: Check this box to fill the inner section of the Text Frame with the color specified by
the Fill Color.

Fill Color: Click on the color box to invoke the Windows Color Picker dialog to set the color of the
inner fill of the Text Frame. This option only takes effect if the Draw Solid option has been
checked.

Text: Click the Change button to insert / edit the text to be displayed within the Text Frame.
Font: Press the Change button to display the Windows Font dialog and specify the font to be
used when rendering the text within the Text Frame. Only one font can be used at any one time
within a single Text Frame i.e. it is not possible to italicize or bold some words but not others
within the Text Frame.

Word Wrap: Allow the text within the Text Frame to wrap to a newline if it exceeds the width of
the frame.

Clip to Area: If checked, text will be confined to only display within the area defined for the Text
Frame. If Unchecked, text can extend beyond the confines of the Text Frames border as
necessary i.e. if it is too long to fit within the Text Frame.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Text Frame.
The text within a Text Frame can be edited inline by clicking the object once to select
and a second time (a short time after) to activate the inline editing mode. When
attempting to activate this mode, sufficient time must be given to ensure that the two
single clicks are not interpreted as a double-click.

10.1.7

(Round) Rectangle

Border Width: Select between


Smallest, Small, Medium or Large
border width.

Draw Solid: Check this checkbox


to fill the inner section of the
Rectangle with the color specified
by the Fill Color.
Transparent: If checked, the inner
section of the Rectangle will be
see-through even if the Draw
Solid option is set.
Fill / Border Color: Click on the
color box to invoke the Windows
Color Picker dialog to set
the fill / border color of the
Rectangle.

Location X1,Y1 / X2,Y2:


Specify the X, Y coco-ordinates for the
Rectangles bottom left and
top right corners.

Locked: Check this box to


cause a warning to be
displayed if any further
graphical edits are
attempted on the Rectangle.

X / Y-Radius: Specify the X


Figure 131. The Rectangle Properties Dialog.
Y radii for the rounded
edges of the Round Rectangle.
Altium Essentials_July2013_Colby
10-July-2013

133

10.1.8

Ellipse

Border Width: Select between Smallest,


Small, Medium or Large border width.

X / Y-Radius: Specify the X & Y radii for the


rounded edges of the Ellipse.
Fill / Border Color: Click on the color box to
invoke the Windows Color Picker dialog to
set the fill / border color of the Ellipse.

Draw Solid: Check this checkbox to fill the


inner section of the Ellipse with the color
specified by the Fill Color.
Transparent: If checked, the inner section of
the Ellipse will be see-through even if the
Draw Solid option is set.

Figure 132. The Ellipse Properties Dialog.

Location X/Y: Specify the X, Y co-ordinates for the Ellipses bottom left and top right corners.
Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Ellipse.

10.1.9

Pie Chart

Border Width: Select between


Smallest, Small, Medium or
Large border width.

Radius: Specify the Radius (in


the schematic measurement
units).

Start / End Angle: Specify the


Start and End angles (in
degrees) referenced as per the
direction arrows given beside
the Start and End Angle
controls.

Location X / Y: Specify the X, Y


co-ordinates of the centre of
the Pie Chart.

Figure 133. The Ellipse Properties Dialog.

(Border) Color: Click on the


color box to invoke the Windows Color Picker dialog to set the border / fill color of the Pie Chart.

Draw Solid: Check this checkbox to fill the inner section of the Pie Chart with the color specified
by the Color.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Pie Chart.

Altium Essentials_July2013_Colby
10-July-2013

134

10.1.10 Graphic
Border Width: Select
between Smallest, Small,
Medium or Large border
width.

Border Color: Click on the


color box to invoke the
Windows Color Picker
dialog to set the border
color around the Graphic.

Location X1,Y1 / X2,Y2:


Specify the X, Y coco-ordinates for the
Graphics bottom left and
top right corners.

Filename: The path and


filename of the image to be
displayed.

Embedded: Check this

Figure 134. The Graphic Properties Dialog.

option to have Altium


Designer save the image as part of the schematic document, or leave it unchecked for Altium
Designer to refer to it on disk.

Border On: Check this box to include a border around the Graphic.
X:Y Ration 1:1: Check this box to maintain the original aspect ratio of the image during resizing
operations.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Rectangle.

10.2 Electrical Object Properties


10.2.1

Wire

Color: Click on the color box to invoke the


Color Picker dialog to set the color of the Wire.
Wire Width: Select between Smallest, Small,
Medium or Large Wire width.

Locked: Check this box to cause a warning to be


displayed if any further graphical edits are
attempted on the Wire.

Wire Vertices
The X and Y co-ordinates of each vertex of a Wire
can be edited individually, removed, or additional
vertices added. This Vertices portion of the Wire
Properties dialog is shared across several other
line-based objects.

Figure 135. The Wire Properties Dialog


Altium Essentials_July2013_Colby
10-July-2013

135

10.2.2

Bus

Bus Width: Select between Smallest, Small, Medium or


Large Bus width.

Color: Click on the color box to invoke the Windows


Color Picker dialog to set the color of the Bus.
Locked: Check this box to cause a warning to be
displayed if any further graphical edits are attempted on
the Bus.
Vertices Tab: The Vertices tab can be used to edit the
Buss individual vertices as previously described in the
Wire Vertices section.
Figure 136. The Bus Properties Dialog

While it is possible to set the width and color of bus objects to match those of the wire
object, it would be ill-advised to create a schematic document that causes confusion
between these two, very different electrical objects.

10.2.3

Signal Harness

Bus Width: Select between Smallest, Small, Medium


Large Bus width.

Color: Click on the color box to invoke the Windows


Color Picker dialog to set the color of the Signal
Harness.
Locked: Check this box to cause a warning to be
displayed if any further graphical edits are attempted
on the Bus.
Vertices Tab: The Vertices tab can be used to edit the
Signal Harnesss individual vertices as previously
described in the Wire Vertices section.

10.2.4

Bus Entry

Figure 137. The Signal Harness Properties


Dialog

Location X1,Y1 / X2,Y2: Specify the X, Y


co-ordinates for the Bus Entrys start
end points.

Color: Click on the color box to invoke


the Windows Color Picker dialog to set
the color of the Bus Entry.
Line Width: Select between Smallest,
Small, Medium or Large Bus Entry

Locked: Check this box to cause a


warning to be displayed if any further
graphical edits are attempted on the Bus
Entry.
Figure 138. The Bus Entry Properties Dialog

Altium Essentials_July2013_Colby
10-July-2013

136

10.2.5

Net Label

Color: Click on the color box to invoke the Windows


Color Picker dialog to set the color of the Net Label.

Location X / Y: Specify the X, Y co-ordinates of the


lower left corner of the Net Label.

Orientation: Specify the rotation angle of the text in


increments of 90 around the objects reference point
(lower left corner).

Net: Select the Net Name from the drop down list of
existing Net Names, or type an entirely new name
the edit control.

Font: Press the Change button to display the


Windows Font dialog and specify the font to be used
when rendering the text within the Net Label.

Locked: Check this box to cause a warning to be


displayed if any further graphical edits are attempted
on the Net Label.

10.2.6

Figure 139. The Net Lable Properties Dialog

Power Port

Color: Click on the color box to


invoke the Windows Color Picker
dialog to set the color of the Power
Port and Net Label.

Style: Select the style of the Power


Port object to be either a Circle,
Arrow, Bar, Wave, Power Ground,
Signal Ground or Earth symbol.

Location X / Y: Specify the X, Y coco-ordinates of the lower left corner


of the electrical hotspot of the
Power Port object.

Orientation: Specify the rotation


angle of the Power Port Object in
increments of 90 around the
objects Location X/Y.

Net: Select the Net Name to be

Figure 140. The Power Port Properties Dialog

associated with the Power Port object.


from the drop down list of existing Net Names, or type an entirely new name into the edit control.

Show Net Name: Check this box to enable the display of the Net Label alongside the Power Poer
object.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Power Port object.
While it is possible to use a Ground Power Port object that is connected to a Net other
than a GND one, it would be ill-advised to create a schematic document that causes
confusion between power and ground nets.

Altium Essentials_July2013_Colby
10-July-2013

137

10.2.7 Sheet
Symbol
Location: Specify the X, Y
co-ordinates of the upper
left corner of the Sheet
Symbol.
Fill / Border Color: Click on
the color box to invoke the
Windows Color Picker
dialog to set the fill / border
color of the Sheet Symbol.

Draw Solid: Check this


checkbox to fill the inner
section of the Sheet Symbol
with the color specified by
the Fill Color.
X / Y-Size: Specify the Width
(X-Size) and Height (Yof the Sheet Symbol.

Border Width: Select


between Smallest, Small,
Medium or Large border
width.

Designator: Specify a

Figure 141. The Sheet Symbol Properties Dialog

designator that can be used


to uniquely reference the
Sheet Symbol within the
entire project.

Filename: The name of the


document that this Sheet
Symbol links to at the next
level down in the project
hierarchy. Use the
button to select an alternate
document.

Unique ID: This is an autoauto-generated ID


reference used in project
level synchronization. In
general it should not need
to be edited - either directly
or using the Reset button.

Show Hidden Text Fields:


Check this option to display
the Designator and or
Filename even if they have
been set to be hidden.

Figure 142. Edit Parameters attached to a Sheet Symbol.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Device Sheet Symbol.

Altium Essentials_July2013_Colby
10-July-2013

138

Sheet Symbol Parameters (Figure 19)


Many of the electrical objects
in Altium Designer can have
Parameters attached to them.
Parameters have a Name, a
Value, and a Type. Almost
anything can be attached by
way of a parameter and
referenced at other places in
the design using the
=ParameterName notation.
The process of attaching and
editing parameters is the
same for all electrical objects
that can receive them. This
portion of the Sheet Symbol
Properties dialog box is
therefore common to several
other electrical objects.

10.2.8

Figure 143. Editing Parameter Properties.

Place Sheet Entry

Fill / Text / Border Color: Click


on the color box to invoke the
Windows Color Picker dialog
to set the fill / text / border
color of the Sheet Entry.
Text Font: Press the Change
button to display the
Windows Font dialog and
specify the font to be used
when rendering the Sheet
Entry text.

Text Style: Select between


Full 'A[7..0]' or Prefix 'A' text
notation for Sheet Entry
Busses. This option has no
effect on non-bus signals.
Side: Select which edge of
the enclosing Sheet Symbol
Figure 144. Editing Sheet Entry Properties.
that the Sheet Entry will
appear on: Left, Right, Top or Bottom.
Style: Select the Sheet Entry's directional style to be used; None (Horizontal), Left, Right, Left &
Right, None (Vertical), Top, Bottom, Top & Bottom.
Kind: Select the kind of Sheet Entry port to use: Block & Triangle, Triangle, Arrow, Arrow Tail.
Name: Select the Name of the Sheet Entry from the drop down list or type a new name in
directly. The Sheet Entry name must match the name of a port on the target Sheet.

Harness Type: If the Sheet Entry is a Harness, select the Harness Type from a list of predefined
harnesses in the project, or type in a new harness name directly.
Position: The distance along the Side that the Sheet Entry will display at.
I/O Type: Set the input/output type as either Unspecified, Output, Input or Bidirectional.
Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Sheet Entry.
Altium Essentials_July2013_Colby
10-July-2013

139

10.2.9

Device Sheet Symbol

Location: Specify the X, Y


co-ordinates of the upper
left corner of the Device
Sheet Symbol.
Fill / Border Color: Click on
the color box to invoke the
Windows Color Picker
dialog to set the fill / border
color of the Device Sheet
Symbol.

Draw Solid: Check this


checkbox to fill the inner
section of the Device Sheet
Symbol with the color
specified by the Fill Color.
X / Y-Size: Specify the Width
(X-Size) and Height (Y(Y-Size) of the Device
Sheet Symbol.

Border Width: Select


between Smallest, Small,
Medium or Large border
width.

Designator: Specify a

Figure 145. The Device Sheet Symbol Properties Dialog

designator that can be used to uniquely reference the Device Sheet Symbol within the entire
project.

Filename: The name of the Device Sheet that this Device Sheet Symbol links to at the next level
down in the project hierarchy. Use the
button to select an alternate Device Sheet.
Unique ID: This is an auto-generated ID reference used in project level synchronization. In
general it should not need to be edited - neither directly nor using the Reset button.

Show Hidden Text Fields: Check this option to display the Designator and or Filename even if
they have been set to be hidden.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Device Sheet Symbol.

Full Path: Supplied as a reference only, it lists the folder path to the referenced Device Sheet.

Altium Essentials_July2013_Colby
10-July-2013

140

10.2.10 Harness Connector:


Location: Specify the X, Y
co-ordinates of the upper left
corner of the Harness
Connector.
X / Y-Size: Specify the Width
(X-Size) and Height (Y-Size)
of the Harness Connector.

Primary Position: Specify the


position (in Grid Units) of the
point at which the Harness
Connector will attach to a
Signal Harness.

Border / Fill Color: Click on


the color box to invoke the
Windows Color Picker dialog
to set the border / fill color of
the Harness Connector.

Border Width: Select


between Smallest, Small,
Medium or Large border
width.

Figure 146. The Harness Connector Properties Dialog

Harness Type: Specify the


name of the Harness Type
that this Harness Connector
provides connection to.

Hide Harness Type: Check


this option to hide the
Harness Type from
displaying on the Schematic
Sheet alongside the
Connector.

Locked: Check this box to


cause a warning to be
displayed if any further
graphical edits are
attempted on the Harness
Connector.

Harness Entries
The Harness Entries tab can
be used to specify the
Figure 147. Edit Harness Entries for a specific Harness Connector.
Harness Entries and the
specific signals, busses or
harnesses that connect through the Harness Connector.
The Name of the Harness Entry is listed in the Entry column and any Harness Entry that is itself
a Harness should have its type specified in the Harness Type Column.

Altium Essentials_July2013_Colby
10-July-2013

141

10.2.11 Harness Entry


Text Color: Click on the color
box to invoke the Windows
Color Picker dialog to set the
color of the Harness Entry text.

Text Font: Press the Change


button to display the Windows
Font dialog and specify the
to be used when rendering the
text within the Net Label.

Text Style: Select between Full


'A[7..0]' or Prefix 'A' text
notation for Harness Entry
Busses. This option has no
effect on non-bus signals.
Name: Specify the Name of the

Figure 148. The Harness Entry Properties Dialog

Harness Entry. For existing


Harnesses, this name should match a Harness Entry name at the other end of the Harness.

Harness Type: If the Harness Entry is itself a Harness, select the Harness Type from a list of
predefined harnesses in the project, or type in a new harness name directly.

Position: The distance along the open end of the Harness Connector that the Harness Entry will
display at.

Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Harness Entry.

10.2.12 Port
Alignment: Select the
justification of text within
the Port as either Center,
Left, or Right.
Text / Fill / Border Color:
Click on the color box to
invoke the Windows Color
Picker dialog to set the
text / fill / border color of
the Port.

Width: Specify the overall


length of the Port (in Grid
Units).
Style: Select the Port's
directional style to be
used; None (Horizontal),
Left, Right, Left & Right,
None (Vertical), Top,
Bottom, Top & Bottom.

Location: Specify the X, Y

Figure 149. Editing Port Properties.

co-ordinates of the
electrical hotspot of the Port.

Name: Select the Name of the Port from the drop down list or type a new name in directly.
Harness Type: If the Port is a Harness, select the Harness Type from the dropdown list of
predefined harnesses in the project, or type in a new harness name directly.

Altium Essentials_July2013_Colby
10-July-2013

142

Unique ID: This is an auto-generated ID reference used in project level synchronization. In


general it should not need to be edited - neither directly nor using the Reset button.

I/O Type: Set the Port's input/output type as either Unspecified, Output, Input or Bidirectional.
Locked: Check this box to cause a warning to be displayed if any further graphical edits are
attempted on the Port.

10.2.13 No ERC
Orientation: Specify the
rotation angle of the No ERC
marker in increments of 90
around the objects electrical
hotspot (Location X / Y).

Symbol: Select the No ERC


marker to use as either Thin
Cross (default), Thick Cross,
Small Cross, Checkbox or
Triangle.

Color: Click on the color box


to invoke the Windows Color
Picker dialog to set the color
of the No ERC marker.

Location X / Y: Specify the X,


Y co-ordinates of the No
ERC marker's electrical
hotspot.

Locked: Check this box to


cause a warning to be
displayed if any further
graphical edits are attempted
on the No ERC object.

Active: Disable the No ERC


marker by un-checking this
check box.
Suppress all / specific
violations: Select between
applying a blanket No ERC
marker that suppresses all
violations, or only suppress
specific violations as
stipulated in the Table.

Show: When stipulating


specific ERC violations for
suppression, switch between
viewing the general
Violation Types (as
displayed in Figure 27), and
the Connection Matrix.

Altium Essentials_July2013_Colby
10-July-2013

Figure 150. The No ERC Properties Dialog

143

10.2.14 Components

Figure 151. The Component Properties Dialog

The Component Properties dialog is subdivided into five sections:


1. Component Properties: These are the primary identifying attributes of the component
including its Designator, Comment and Unique ID which is used in the creation of the
component's unified data model.
2. Link to Library Component: This describes the reference model (Vault or Library based) that
was used in the creation of the specific component instance.
3. Graphical: Specifies the visual attributes of the component and how it is oriented on a
schematic sheet.
4. Parameters: Any parameters that have been attached to the component instance will be
displayed in this section and can be optionally edited from here.
5. Models: The Schematic model is also the container for links to the domain specific models
that will be used to represent the component in other design domains.
A more detailed description of each of these areas will be covered in other modules that will
better describe their specific uses.

Altium Essentials_July2013_Colby
10-July-2013

144

Module 11: Schematic Placement and Wiring


A key part of the schematic capture process is placing components and wiring them up to build
the connectivity model of the design. Altium Designer offers a number of ways that components
can be placed as well as wired together.

11.1 Placing Components from a Vault


Vault based components represent the highest evolution of Altium's Unified Component model
because it allows designers to link components all the way through to the supply chain. From a
component placement point of view, Vaults represent a very convenient platform for quickly
locating the right component for the job.
To place a component into a design directly from a Vault:
6. Open the target Schematic Document.
7. Open the Vault Explorer panel (View Workspace Panels System Vault Explorer) and
locate the component to be placed.
8. Right click the component item in the Vault Explorer and select the Place item from the
popup menu.
9. Move the mouse cursor over the schematic document to see the component attached to the
mouse cursor. Position the component within the document and click once to complete the
placement.

Figure 152. Placing a component directly from a Vault.

11.2 Placing Components From the Library Panel


Prior to the introduction of Vaults, most components were placed from the Libraries panel. This
panel is accessible from the View Workspace Panels System Libraries menu item or by
selecting the Libraries item from the System Workspace Panel tab.
Altium Essentials_July2013_Colby
10-July-2013

145

11.2.1

The Libraries Panel

The Libraries panel has a number of sections to


display different pieces of model information.
can be optionally enabled by
clicking the control to reveal the
Component
the model chooser popup, or by
List
clicking on one of the arrow
markers ( ) in the right margin of
the panel.

11.2.1.1 Placing a Component


Components that are available for placement are
listed in the Component List region of the
panel. A component can be
Component
placed by
Models

directly dragging the


component from the list and
onto the schematic document,

by double-clicking the component in the list to


attach it to the cursor and then clicking the
desired location within the schematic
document, or

by selecting the component in the list and then


clicking the Place button in the upper right
corner of the Libraries panel to attach it to the
cursor and then clicking the desired location
within the schematic document.

While several different libraries can be


simultaneously loaded, the Libraries panel will only
show a list of components from one library at a
time. The currently visible library can be selected
from the drop down list at the top of the panel.
To load additional libraries, click the Libraries
button to open the Available Libraries dialog.

11.2.1.2 Locating Components


Sitting below the drop down list of loaded libraries
Figure 153. The Libraries panel
the Filter field. This can be used to filter the panel
only show a subset of available components - i.e.
Res* will only display. components with names starting with
Res.
Alternatively, if the focus is on the component list, the typetype-ahead feature will automatically jump through the list as
keyboard keys are pressed (Use the ESC key to jump out of
this mode).
The list of columns displayed in the component list can be
configured by right-clicking the list and selecting the Select
Columns menu item to activate the Select Parameter
Columns dialog. Components within the list can also be
by clicking on the column headings.
If the current library is a Database Library (.DBLib or
.SVNDBLib), more advanced sort options are available when
Altium Essentials_July2013_Colby
10-July-2013

Figure 154. Using a database


library and the sort by column
feature to sort by Value.

146

the column headings are dragged to the upper area of the component list.
Clicking on the name of a component in the Components region will bring that component into
focus and display any of its associated models in the Model region. If a component has several
parts, the sub-parts will be shown in the symbol mini-viewer.
The Search button will invoke the Libraries Search dialog for performing more powerful searches
across libraries. This search can even be configured to work across libraries that haven't been
loaded.

11.3 Placing Components using Place Part (P,P)


If the exact name of the component is known
prior to placement, some designers may find it
useful to place the component directly from the
Place Part (P,P) menu command. When
invoked, the Place Part dialog will appear and
the component name can be entered directly.
the same component has already been placed
at least once in the current editing session, its
name will exist in the Physical Component
down list and the type-ahead feature will
attempt to auto-complete the name as it is
entered.
Alternatively, clicking the choose button will
invoke the Browse Libraries dialog. Although
the layout of this dialog is slightly different from
that of the Libraries panel, the functionality is
virtually identical so a further description of its
Figure 155. The Place Part dialog.
operation is not really warranted.

Figure 156. Choosing a component to place using the Browse Libraries dialog.

Altium Essentials_July2013_Colby
10-July-2013

147

11.4 Wiring the Design


Every electrical object has an electrical hotspot which acts as a connection point. When the
electrical hotspots of two electrical objects come in contact with one another, a connection
between them is established. Making that connection by using a Wire, Bus or Signal Harness
object will establish a physical connection. Making that connection using a Net Label or Power
Object will establish a logical connection.
The specifics of placing electrical objects is covered in detail in another module however the finer
points of establishing logical connectivity will be discussed here.

11.4.1

Using Net Labels to Establish Connectivity

Whenever the electrical hotspot of a Net Label or Power Port object is placed onto any other
electrical object's hotspot, a connection will be established. Using this feature allows a
connection to be established between two components (for example) using nothing more than
net labels.

Figure 157. Establishing Physical and Logical Connectivity

With reference to Figure 157, the following statements can be made:

Pin 2 of HDR1 is connected to Pin 1 of HDR2 via a physical connection. The name that has
been given to the net making the connection is Physical. This connection would have been
established whether the Net Label had been attached or not.

Pin 4 of HDR1 is connected to Pin 3 of HDR2 via a logical connection. The name that has
been given to the net making the connection is Logical. This connection would not have
been established without the identical Net Label present on the wires extending from Pin 4 of
HDR1 and Pin 3 of HDR2.

Pins 6, 8 & 10 of HDR1, and pins 5, 7 & 9 are part of a Bus called Bus. This bus has a total
of 6 unique nets and is wired to a port called External. The final net name given to each of
the individual nets in the bus will be determined by the Project Option settings.

11.4.2

Using Signal Harnesses

Signal Harnesses offer the ability to collect a group of logically related signals into a single entity.
Often, when creating a large project, designers think in terms of the collections of signals that
must be routed between sub-systems. So rather than thinking of a memory interface purely in
terms of its Address and Data buses, all control signals should also be included. Buses are too
restrictive in that they require signals to have a common prefix. Signal Harnesses overcome this
short coming by not imposing any naming restrictions on the signals within the harness.
It is important to understand that a signal harness collects groups of signals together in much the
same way as a cable-tie might. It has no knowledge of the specific properties of the signals that
it has been attached to and so it has very little ability to check the validity of signals within it.
Instead, signal harnesses are exploded at compile time and the individual nets within the
are electrically rule checked.
As part of the compilation process, a hierarchical model of the harness is created to assist with
referencing signals within a harness. So while a number of objects have been made available to
assist with the graphical definition of signal harnesses, it is also possible to reference signals
within a signal harness using a the period '.' character as a separator between the Harness
Altium Essentials_July2013_Colby
10-July-2013

148

Name and the Nets within it. Figure 158, Figure 159, and Figure 160 provide an illustration of the
same schematic drawn in multiple ways. Figure 158 expands the Signal Harness explicitly to
reference signals within it while Figure 160 references the signals directly using the '.' notation.

Figure 158. Referencing harness signals using explicit expansion of the sub-harnesses.

Figure 159. Referencing signals within a hierarchical Harness through partial expansion of the subharnesses.

Figure 160. Referencing signals within a hierarchical Harness using '.' notation and net names.

Altium Essentials_July2013_Colby
10-July-2013

149

Figure 161 provides a further example (taken from the NB3000 reference design) of how nets
within a signal harness can be referenced. Based on that design, the following statements can
made:

The ATE Signal Harness has a Signal Harness channel within it called HOST_JTAG.

The HOST_JTAG Signal Harness channel is connected through the ATEINTERFACE Harness
Connector and HOST_JTAG Harness Entry to a Signal Harness called HOST_JTAG. Please
note that there is no requirement for a Harness Entry point to share the same name as the
Signal Harness that is connected to it. The only requirement is that the Harness Type of the
Harness Entry be the same as the Harness Type of the Signal Harness connected to it.

The HOST_JTAG Signal Harness has the Harness Type of HARDSOFT_JTAG (not illustrated).

The Harness Type HARDSOFT_JTAG has been defined within the HOST_JTAG.Harness file to
have two child Signal Harnesses; HARD and SOFT. Both of these child Signal Harnesses
have the Harness Type of JTAG.

The Harness Type JTAG has been defined within the HOST_JTAG.Harness file to have four
signals; TDI, TCK, TMS, and TDO.

Pin A41 of J33 is connected to HOST_JTAG.SOFT.TMS. This means that Pin A41 of J33 is
connected to the TMS signal within the SOFT Signal Harness within the HOST_JTAG signal
Harness.

While this may seem like an overly complicated example, it demonstrates how signals within a
complex Signal Harness hierarchy can be referenced without needing to expand the Signal
Harnesses out using Harness Connectors etc.

Figure 161. An illustration of referencing Harness signals via their hierarchical net name.

Altium Essentials_July2013_Colby
10-July-2013

150

11.4.3

Establishing the Scope of Net Identifiers

Figure 162. Specifying the Net Identifier Scope for a PCB Project.

In most situations, the scope of Net Labels can be inferred by Altium Designer based on a
project's contents. But if that is not enough, or the designer wishes to apply different scoping
rules, the Net Identifier Scope can be set from the Options tab of the Options for PCB Project
dialog.
This dialog also offers options to control how nets that traverse across the hierarchy of a design
should be named. For example, it is not uncommon for signals of one name to be channeled
through ports of a different name, and this creates the ambiguous situation of which name the
signal should ultimately adopt. A range of options that can be used individually or collectively to
deliver precise control over the name of nets on the design are given in the Netlist Options
section under the Options tab of the Options for PCB Project dialog.

Altium Essentials_July2013_Colby
10-July-2013

151

Module 12: Multi-Sheet Design & Design


Hierarchy
Designers turn to multi-sheet design for various reasons, the primary one being project size;
some projects are too large or complex to fit on a single sheet. Even when the design is not
particularly complicated, there can be advantages in organizing the project across multiple
sheets. For example, the design may include various modular elements and maintaining these
modules as individual documents allows several engineers to simultaneously work on the same
project. Another reason is that segmenting a design into a series of smaller sheets allows for
easier printing on standard A4/A3 printers.
There are two decisions to make for each multi-sheet project the structural relationship of the
sheets and the method employed for establishing connectivity between them. The choices will
vary according to the size and type of each project and the designer's personal preferences.

12.1 Defining Sheet Structure


While the project file links the various source documents into a single project, the document-todocument and net connective relationships are defined by information in the documents
themselves. A multi-sheet design project is arranged as a hierarchical structure of logical blocks,
where each block can be either a schematic sheet or a HDL file (VHDL or Verilog) in the case of
FPGA designs. At the head of this structure is a single master schematic sheet which is
commonly referred to as the project's Top Sheet.
The sheet structure itself is formed through the use of a special symbol called a Sheet Symbol.
Each of the source documents that constitute the design are represented on the Top Sheet by a
Sheet Symbol. The Filename property of each sheet symbol references the schematic subsheet (or HDL file) that it graphically represents. In turn, a schematic sub-sheet can also contain
further sheet symbols referencing lower schematic sheets or HDL files. In this way designers can
define a structural hierarchy of source documents that can be as simple or complex as their
needs require.
When a multi-sheet project is compiled, the logical relationship of the design is realized and a
structural framework is created. This is a tree structure, beginning with the Top Sheet and
branching down to include all other schematic sub-sheets and HDL files at one level or another.
Figure 11 shows two examples of compiled design hierarchy. On the left, the structural hierarchy
for a compiled PCB design project (*.PrjPcb). On the right, the structural hierarchy for a
compiled FPGA design project (*.PrjFpg).

Figure 163. Compiled multi-sheet design projects showing the hierarchical relationship between
source documents.

Altium Essentials_July2013_Colby
10-July-2013

152

12.2 Structuring a Multi-Sheet Design


All but the smallest designs will need to be laid out over multiple schematic sheets. There are
essentially two approaches to structuring a multi-sheet design; flat, or hierarchical. A flat design
is one where the connectivity between nets that span sheets is made directly from one sheet to
the other (or many others).
While a flat design is acceptable for a design with a small number of sheets and nets, perhaps 6
sheets, it becomes unwieldy when the design is larger. Since a net can go to any of the other
sheets, a larger flat design needs navigation instructions to guide the reader as they attempt to
find that net on the other sheets. The advantage of the flat design is that there are normally
fewer sheets, and less wiring to draw.
A hierarchical design is one where the structure or sheet-to-sheet relationships in the design
is represented. This is done by symbols, known as sheet symbols, which represent lower sheets
in the design hierarchy. The symbol represents the sheet below, and the sheet entries in it
represent (or connect to) the ports on the sheet below. The advantage of the hierarchical design
is that it shows the reader the structure of the design, and that the connectivity is completely
predictable and easily traced since it is always from the child sheet up to the sheet symbol on the
parent sheet.

Sheet symbols
reference the
underlying child sheets.

The Projects panel


reflects the design
hierarchy.

Ports connect to the


sheet entries above in
the hierarchy.

Figure 164. An example of a multi-sheet design. Sheet Entries associated with a Sheet Symbol on a parent
sheet (in this case the Top Sheet) map to Ports with the same name on an underlying child Sheet.

12.2.1

Mixed Schematic/HDL Document Hierarchy

When creating the design hierarchy, a sheet symbol on a parent schematic sheet can quite
easily be used to reference a schematic sub-sheet below. This can be extended when capturing
the design using a mixture of schematic sheets and HDL code. The VHDL or Verilog subdocuments are referenced in the same way as schematic sub-sheets, by specifying the subdocument filename in the sheet symbol that represents it.
When referencing a VHDL sub-document, the connectivity is from the sheet symbol to an entity
declaration in the VHDL file. To reference an entity with a name that is different from the VHDL
filename, include the VHDLEntity parameter in the sheet symbol, whose value is the name of
Altium Essentials_July2013_Colby
10-July-2013

153

the Entity declared in the VHDL file. The process is similar when referencing a Verilog subsub-document, where the connectivity is from the sheet symbol to a module declaration in the
Verilog file. To reference a module with a name that is different from the Verilog filename,
the VerilogModule parameter in the sheet symbol, whose value is the name of the Module
declared in the Verilog file.
Figure 165 illustrates an example of this mixed hierarchy, whereby the same sheet symbol has
been used to reference a schematic sub-sheet in one instance of a design and an entity in a
VHDL sub-document in another. In both cases, the sub-document implements the same circuitry
(a BCD Counter).

Figure 165. Example document hierarchy. Left: A sheet symbol references an underlying schematic sheet.
Right: The same sheet symbol now references a specific entity within an underlying VHDL file.

12.2.2

Building Hierarchical Structure

The process of creating a top sheet can be done in a manual fashion, where the sheet symbols
are placed, the filename attribute for each is set to point to the correct sub-sheet and the sheet
entries are added to correspond to each port on the sub-sheet.
There are also commands to speed the process of creating a multi-sheet hierarchical design
structure quickly and efficiently. The exact features employed depend on personal design
methodology top-down or bottom-up.
The following commands are available that allow the hierarchy of the design to be built in a topdown fashion:

Design Create Sheet From Sheet Symbol use this command to create a sheet below
the nominated sheet symbol. Matching ports will be added to the sub-sheet, ready to wire.

Design Create HDL File From Sheet Symbol Create VHDL File From Sheet Symbol
use this command to create a shell VHDL file, with an entity declared that includes port
definitions to match the sheet entries in the nominated symbol.

Design Create HDL File From Sheet Symbol Create Verilog File From Sheet
Symbol use this command to create a Verilog file, with a module declared that includes
port definitions to match the sheet entries in the nominated symbol.

Tools Convert Push Part to Sheet use this command to "push" a placed part onto a
new schematic sub-sheet, replacing the original part on the parent sheet with a sheet symbol
pointing to the new sub-sheet. Matching ports will be added and wired to the part on the subsheet.

The following commands are available that allow the hierarchy of the design to be built in a
bottom-up fashion:

Altium Essentials_July2013_Colby
10-July-2013

154

Design Create Sheet Symbol From Sheet or HDL use this command to create a
symbol from the nominated schematic sheet, VHDL file or Verilog file. Make the sheet that is
to include the sheet symbol the active document before launching this command.

Tools Convert Convert Part To Sheet Symbol use this command to convert a
chosen part into a sheet symbol. The symbol's Designator field will initially be set to the
part's designator, with the Filename field set to the part's comment text. Change the
filename to point to the required sub-sheet; change the sheet entries in accordance with the
ports defined on that sub-sheet.
A project can contain only one top sheet; all other source documents must be
referenced by sheet symbols. No sheet symbol may reference the sheet it's on, or any
sheet higher up the ladder, as this will create an irresolvable loop in the structure.

Sheets with no ports (and even blank sheets if they are to be included in the
require a sheet symbol to be created; otherwise the compile process fails to see these
sheets.

When using Device Sheets, or Managed Sheets placed from an Altium Vault, a
different form of Sheet Symbol is placed/used on the parent sheet often referred to
a Device Sheet Symbol. Functionally similar to a standard Sheet Symbol, it references
the reusable design block (device sheet, managed sheet), with its sheet entries
connecting to the ports on that referenced sheet.

12.3 Multi-Sheet Design Connectivity


Multi-sheet designs are defined at the electrical (or connective) level by Net Identifiers which
provide the glue between nets in schematic sheets.

12.3.1

Net Identifiers

Net identifiers create logical connections between


points in the same net. This can be within a sheet,
or across multiple sheets. Physical connections
exist when one object is attached directly to
another electrical object by a wire. Logical
connections are created when 2 net identifiers of
the same type (e.g. two net labels) have the same
Net property.

power
port

sheet
entries

net label

VCC
RESET

RESET
ENABLE

ENABLE

port
Figure 166. Net identifiers

Net identifiers include:

Net Label use a net label to uniquely identify a net. This net will connect to other nets of
the same name on the same sheet, and can also connect to nets of the same name on
different sheets, depending on the connectivity mode defined for the design (referred to as
the Net Identifier Scope). Net labels are attached to individual wires, part pins and buses.

Port depending on the method of connectivity, a port can connect to other ports with the
same name, or up a hierarchy to a sheet entry with the same name.

Sheet Entry when the connectivity is vertical, a sheet entry can be used to connect to a
port of the same name on the sheet below. A sheet entry is added to a sheet using the Place
Add Sheet Entry command.

Power Port depending on the method of connectivity, all power ports with the same name
can connect throughout the entire design, or they may be made local to the sheet on which
they are defined.

Hidden Pin a hidden pin connects globally to all hidden pins in the design that have a
matching value for their Connect To property.

Altium Essentials_July2013_Colby
10-July-2013

155

Note that logical connections are not created between different net identifiers, for
example a port and a net label. The only exception to this is when a port connects to a
sheet entry of the same name, in the sheet symbol that represents the sheet the port
on.

12.3.2

Net Identifier Scope

When the connectivity model of the design is created, the designer must define how they want
net identifiers to connect to each other this is known as setting the Net Identifier Scope. The
scope of net identifiers is specified on the Options tab of the Project Options dialog. The scope
of net identifiers should be determined at the beginning of the design process.

Figure 167. Net Identifier Scope.

There are essentially two ways of connecting sheets in a multi-sheet design: either horizontally,
directly from one sheet, to another sheet, to another sheet, and so on; or vertically, from a subsheet to the sheet symbol that represents it on the parent sheet. In horizontal connectivity, the
connections are from port to port (net label to net label is also available). In vertical connectivity,
the connections are from sheet entry to port.
The Net Identifier Scope specifies how the net identifiers are to connect:

Flat (Only ports global) ports connect globally across all sheets throughout the design.
With this option, net labels are local to each sheet; they will not connect across sheets. All
ports with the same name will be connected, on all sheets. This option can be used for flat
multi-sheet designs. It is not recommended for large designs as it can be difficult to trace a
net through the sheets.

Altium Essentials_July2013_Colby
10-July-2013

156

Figure 168. Connectivity when scope is set to Flat.

Global (Net labels and ports global) ports and net labels connect across all sheets
throughout the design. With this option, all nets with the same net label will be connected
together, on all sheets. Also, all ports with the same name will be connected, on all sheets. If
a net connected to a port also has a net label, its net name will be the name of the net label.
This option can also be used for flat multi-sheet designs, however it is difficult to trace from
one sheet to another, since visually locating net names on the schematic is not always easy.

Figure 169. Connectivity when scope is set to Global.

Hierarchical (Sheet entry <-> port connections, power ports global) connect vertically
between a port and the matching sheet entry. This option makes inter-sheet connections
through sheet symbol entries and matching sub-sheet ports. It uses ports on sheets to take
nets or buses up to sheet entries in corresponding sheet symbols on the parent sheet. Ports

Altium Essentials_July2013_Colby
10-July-2013

157

without a matching sheet entry will not be connected, even if a port with the same name exits
on another sheet. Net labels are local to each sheet; they will not connect across sheets.
Power ports are global however all power ports with the same name are connected
throughout the entire design. This option can be used to create designs of any depth or
hierarchy and allows a net to be traced throughout a design on the printed schematic.

Figure 170. Connectivity when scope is set to Hierarchical.

Strict Hierarchical (Sheet entry <-> port connections, power ports local) this mode of
connectivity behaves in the same way as the Hierarchical mode, with the only difference
being that power ports are kept local to each sheet; they will not connect across sheets to
power ports of the same name.

Automatic (Based on project contents) this mode automatically selects which of the net
identifier modes to use based on the following criteria: if there are sheet entries on the top
sheet, then Hierarchical is used; if there are no sheet entries, but there are ports present,
then Flat is used; if there are no sheet entries and no ports, then Global is used.
The Automatic mode defaults to use the standard Hierarchical mode if need be, with
power ports connecting globally. To use Strict Hierarchical, manually set the Net
Identifier Scope accordingly. Hidden pins are always deemed to be global.

Summary

If the design uses sheet symbols with sheet entries, the Net Identifier Scope should be set
to Hierarchical or Strict Hierarchical. In either of these modes, the top sheet must be
wired.
If not using sheet symbols with sheet entries, connectivity can be established via Ports
and/or Net labels, so one of the other two net identifier scopes (Flat or Global) should be
used accordingly.

Remember that net labels do not connect to ports of the same name.

12.4 Assigning Sheet Numbers


Sheet numbering is performed using document parameters linked to special strings that can be
placed on the schematics. Sheets can be automatically numbered by selecting the Tools
Number Schematic Sheets command.
Altium Essentials_July2013_Colby
10-July-2013

158

The Sheet Numbering dialog can be used to


a) Number the sheets (SheetNumber parameter).
b) Set the document number (DocumentNumber parameter).
c) Set the total number of sheets (SheetTotal parameter).

The sheets and documents can be numbered in a variety of ways, to do this click the arrow
to the right of the Auto Sheet Number or Auto Document Number buttons respectively,
then set the required numbering scheme as required.
If numbering based on Display Order, use the Move Up and Move Down buttons to
adjust the display order of the sheets in the dialog.

Cells can be edited manually, select the target cell(s), then right-click and select edit (or
press the SPACEBAR).

Figure 171. Use the Sheet Numbering feature to review and update sheet numbers.

Schematics appear in the Projects panel in the order they were added to the project.
This order can be changed if required by simply dragging the files to re-order them
within the panel.

12.5 Checking Sheet Synchronization


Typically the design hierarchy is not developed in a purely top-down or bottom-up fashion, the
reality is that the design will evolve. This means that there will be modifications to the design that
affect the net connectivity established between the sheet entries in the sheet symbol and the
ports on the sub sheet below.

Altium Essentials_July2013_Colby
10-July-2013

159

To manage the sheet entry to port relationships, use the Synchronize Ports To Sheet Entries
dialog accessed from the Design Synchronize Sheet Entries and Ports menu command.

Figure 172. Use the Synchronize Ports To Sheet Entries dialog to ensure that sheet entries match with
ports. Uncheck the checkbox down the bottom left to show all sub-sheets in the entire design.

The dialog can be used to:

Match any selected Entry to any selected Port (name and IO type will be changed).

Add or remove Entries or Ports to either the sheet symbol or the sub sheet.

Edit the name or IO direction of a matched Entry / Port (done in the Links column on the
right).
Remember that changes made in the Synchronize Ports To Sheet Entries dialog are
performed immediately; use the Undo command on each affected sheet to undo any
updates.

Altium Essentials_July2013_Colby
10-July-2013

160

Module 13: Schematic Annotation


Design Annotation is the systematic and methodical process for ensuring that each component
in the design can be individually identified by means of a unique designator. While Altium
Designer is able to maintain the identity of components using Globally Unique IDs (GUIDs), most
designers will historically use the component's designator as the primary means of referencing
the component across the Schematic (logical) and PCB (physical) domains, as well as in outputs
such as the Bill of Materials (BOM).
This module provides a brief overview of the various types of annotation on offer and details the
mechanics of the Schematic Annotation process.

13.1 Annotation Overview


There are three approaches to annotating a design. The choice of Annotation Tool depends on a
number of factors including the type of design, personal preference, and company policy and
procedures:

Schematic Level Annotation


Schematic Level Annotation uses a purely logical view of the design to determine component
designators. It is most useful for simple designs that do not use Device Sheets but because it
allows the order of processing to be specified as well as the option to complete existing
packages for multi-part components, it is also a pre-requisite to Board Level Annotation.
In summary, use Schematic Level Annotation to:

Package Multi-Part Components

Annotate components based on their position in the Schematic Design

Annotate Multi-Channel designs using the default naming scheme as specified in the Project
Options

Prepare a design for additional annotation.

PCB Annotation
PCB Annotation uses the physical location of components on the PCB to determine their
designation. This allows positional information to be effectively encoded into a component's
designator and can be very helpful when debugging an assembled PCB.
In summary, use PCB Annotation to:

Annotate components based on their position on the board in the PCB Design.

Board Level Annotation


Board Level Annotation provides a mapping between designators used in the Schematic
(Logical) Design and their real world counterparts on the PCB (Physical) Design. While Board
Level Annotation can be used in any design, it is especially useful for multi-channel designs and
/ or designs that incorporate Device Sheets where the designators cannot be edited on the
Device Sheet itself. In this way, the entire design can be re-annotated without actually modifying
the original Device Sheet(s).
Board Level Annotation resolves any conflicting annotation problems that may occur due to
duplicate designators across a project and stores its changes in a *.Annotation text file. It
includes additional keywords for customizing naming schemes and allows them to be applied to
all or only a select range of parts.
In summary, use Board Level Annotation to:

Annotate the compiled components in Device Sheets

Uniquely name all components across several channels using naming schemes which
include positional annotation, global indexing, and other configurable options

Altium Essentials_July2013_Colby
10-July-2013

161

Manually name components

Figure 173. Schematic Level Annotation is required before performing either Board Level or PCB
Annotation. The choice of Annotation Tool is driven by aspects of the design and personal preferences.

The rest of this module will focus on the details of Schematic Annotation. The other forms of
annotation will be addressed separately in other modules.

13.2 Schematic Level Annotation


The Annotate Schematics command will systematically assign designators to all or selected
parts in selected sheets of a project and ensures that designators are unique and ordered based
on their position. Annotation options can be configured to package multi-part components, set
Index and Suffix options, Reset Schematic Designators including any duplicate designators and
Back Annotate from PCB.
The Annotate Schematics command is accessible from the Tools Annotate Schematics
menu item.

Altium Essentials_July2013_Colby
10-July-2013

162

Figure 174. Annotate Schematics.

The Annotate Schematics dialog box is partitioned into two primary sides:
1. The left side is for configuring the Order of Processing, setting Matching Options for multipart components and setting the scope of annotation; including setting an Index and adding
a Suffix for designators per Schematic Sheet
2. The right side lists the proposed changes that will occur once the Accept button is clicked. It
includes the Current and Proposed designators along with the option to lock (exclude)
specific designators and / or sub-parts from annotation.

13.2.1

Order of Processing

Positional annotation is directed through the Order of Processing control. Four options are
available to control how schematic documents will be scanned:

Figure 175. Specifying the order that components will be processed.

When Altium Designer processes components for annotation, it applies a bounding


rectangle that encompasses the complete component and all visible parameters. If the
order of processing does not seem to be correct, check the position of component
parameters to ensure they are not adversely impacting the result.

Altium Essentials_July2013_Colby
10-July-2013

163

13.2.2

Matching Options

Figure 176. Matching components into multi-part packages.

When using multi-part packages, it is often desirable to pack as many parts into the minimum
number of physical parts since this minimizes the overall BOM cost of the design. Primary
considerations for annotating multi-part components are how those components will be matched
and grouped together, and the criteria used for determine valid groupings.

13.2.2.1 Complete Existing Packages


In order for multi-part packing to be included as part of the annotation process, the Complete
Existing Packages drop down must be set to something other than None.

None - existing packages will not be completed and all new parts will be placed into new
packages

Per Sheet - existing packages will only include new parts from the same Schematic Sheet

Whole Project - existing packages will include new parts from any of the Schematic Sheets
in your project.
When Completing Existing Packages, some consideration should be given to how
power pins have been specified on active components. For example, many designers
include VCC / GND pins on the first part of a multi-part component but then don't
include those pins on subsequent parts. If the first part in a multi-part component is
packed into an alternate package and has its sub-part updated, it can lead to
unconnected (or floating) Power connections.

Check the Locked attribute


to prevent part changes
during annotation.

Figure 177. Locking parts to prevent packing changes.

13.2.2.2 Component Parameters


The Component Parameters list includes all parameters found within components in the current
design. If multi-part components share the same enabled parameters and a common value,
then they will be packaged together (assuming the Complete Existing Packages option is not
None).
The default settings in the Annotate dialog are to complete existing packages by Library
Reference and Comment, however any combination of parameters can be selected by the
designer.

13.2.2.3 Strictly
If the Strictly checkbox is enabled for a Component Parameter, all components must have that
parameter to be matched into a package. Components that do not have this parameter are
annotated as individual components and are not packaged.
Altium Essentials_July2013_Colby
10-July-2013

164

The following example illustrates how these options combine to give a specific result.
Consider a design with 8 OR Gates and 8 resistors (Figure 178). The OR gates contain a
parameter called QuadOrGate, with one group of 4 OR gates having the parameter value
Package1 and the other group of 4 OR Gates having the parameter value Package2. The
resistors have no such parameter. Enabling the checkbox for QuadOrGate in the Component
Parameter control will ensure that this parameter is used to control how components are
packaged; in this case, the Strictly check box is not enabled.
After launching Tools Annotate Schematics, parts with the parameter QuadOrGate =
Package1 will be packaged into the same physical component and those that have the
parameter QuadOrGate = Package2 will be packaged together separately. Any remaining
components which do not have the QuadOrGate parameter will be packaged together. In this
case, the resistors are packaged together as their common attribute is that they do not contain
QuadOrGate parameter.

Figure 178. Example of packaged components when the Strictly option is unchecked.

If the same design is annotated but this time with the Strictly option checked, only those
components that have the QuadOrGate parameter will be packed. So in this case (), the OR
gates will be packed but the resistors left unpacked. So while the Strictly option provides
extremely fine control over the packing process, most situations will have it left unchecked.

Figure 179. Example of packaged components when the Strictly option is checked.

Multi-part components can use either an alpha or numeric part identifier suffix - i.e.
U1:1, U1:2 or U1:A, U1:B. Control over the style of suffix is specified under the
tab of the Tools Schematic Preferences dialog.
Note that Preferences are global and apply to all currently open Schematic Sheets.

13.2.3

Schematic Sheets to Annotate

A high degree of control is provided over which Schematic sheets and components will be
effected by annotation, and the specifics of how those changes will be calculated.
Altium Essentials_July2013_Colby
10-July-2013

165

Figure 180. Specifying the scope of annotation.

A tick in the checkbox to the left of the Schematic Sheet indicates that it will be processed as
part of the annotation command.

The scope of annotation is determined by the Annotation Scope drop down list and can be
expanded to include the entire schematic sheet, or limited to (un)selected components.
Using the Ignore Selected Parts or Only Selected Parts options requires that the
components were selected in the design prior to running the Annotation command.

Configure the order in which the Schematic Sheets are to be annotated using the Order
field. Type a value directly into the field or use the arrows which appear once you click in the
field to set the desired value..

If the Designator Index Control checkbox is ticked, the designator value will begin from the
Start Index value. The Start Index has no effect if the Designator Index Control checkbox
is not ticked.

An additional suffix can be added to the end of each designator by specifying a string / value
in the associated Suffix column. Avoid using single character suffixes such as 'A' or '1' as
these can be easily confused with sub-parts and / or other designator values.

13.2.4

Proposed Change List

Clicking the Update Changes List button will update the Proposed Change List so that all
designator changes can be reviewed prior to being applied. Only designators that have not
previously been set (i.e. R?, C?, etc) will be effected by the changes so if the intention is to
update all designators in the design, they should be first reset by pressing the Reset All button

Figure 181. Resetting designators prior to applying the annotation settings.

The Reset All dropdown button can also be used to Reset Duplicates. This is similar
to the Tools Reset Duplicate Schematic Designators option.

Altium Essentials_July2013_Colby
10-July-2013

166

The Proposed Change List lists all designators for the parts contained within the sheets
selected for annotation. For each entry, details of the Current and Proposed Designator values
are included along with the component's Sub (part) and the source Location of Part.
Checking the box adjacent to a Designator will lock that specific designator from any changes.
Similarly, checking the Sub box will prevent that specific multi-part component from being
updated. This option can be used as an alternative to setting the Lock attribute in the
Properties dialog (Figure 177).
After reviewing the list of proposed changes, clicking the Accept Changes (Create ECO) button
will launch the Engineering Change Order dialog and a final layer of validation and reporting can
be applied. Once the ECO is executed, the annotation changes will be applied to the design.

13.3 Additional Schematic Annotation Commands


The Tools menu contains a number of targeted Schematic Annotation commands. The first item
in the group, Annotate Schematics, has already been discussed.

Figure 182. Various Annotation commands available from the Tools Menu.

13.3.1

Reset Schematic Designators

If large portions of content have been cut and pasted from different sources into a new design, it
may be necessary to reset all designators. Because this command uses settings taken from the
Annotate Schematics dialog, it will be applied to items previously set within that dialog. For
instance, if all Schematic Sheets to Annotate were previously checked, then the Reset
Schematic Designator command will apply to the entire project, whether the sheets are
currently opened in the editor or not. If only a few Schematic Sheets to Annotate were
previously checked then the Reset Schematic Designator command will only affect those
sheets.
Any designators with a locked status are not reset or changed in any way.

13.3.2

Reset Duplicate Schematic Designators

When duplicating portions of a design, the newly copied components will still hold the same
designator values as those that they were copied from. The Reset Duplicate Schematic
Designators command provides a fast way to reset duplicate designators to '?'.
Once again, because this command uses settings taken from the Annotate dialog, it will be
applied to items previously set within that dialog. For instance, if all Schematic Sheets to
Annotate were previously checked, then the Reset Duplicate Schematic Designator
command will apply to the entire project, whether the sheets are currently opened in the editor or
not. If only a few Schematic Sheets to Annotate were previously checked then the Reset
Schematic Designator command will only affect those sheets.
Any designators with a locked status are not reset or changed in any way.

13.3.3

Annotate Schematics Quietly

The Annotate Schematics Quietly command makes it possible to apply all of the previous
settings of the Annotate dialog without needing to reopen the main dialog. So if the design is
going through a rapid phase of development and the designer wants to quickly annotate prior to
compiling the design, the Annotate Schematics Quietly command is the quickest way to do
this.

Altium Essentials_July2013_Colby
10-July-2013

167

13.3.4

Force Annotate All Schematics

Running the Force Annotate All Schematics command is equivalent to running the Reset
Schematic Designators command followed immediately by the Annotate Schematics Quietly
command. Consequently, the Force Annotate All Schematics uses settings that were
previously set within the Annotate dialog when determining which components and sheets can
be updated.
After launching this command, a request for confirmation will appear that details the number of
designators that will be updated if accepted.

Figure 183. Confirming Designator Changes.

13.3.5

Back Annotate Schematics

Prior to the introduction of Altium's Design Compiler and Synchronizer, annotation changes were
historically passed form the Schematic to the PCB via a netlist (*.net) file. Annotation changes
that needed to propagate in the reverse direction - from PCB to Schematic - were handled via a
Back Annotation process. This process uses a Was-Is (*.WAS) file or Engineering Change Order
(*.ECO) file to direct the changes to be applied to schematic designators.
The Back Annotate Schematics command is largely superfluous since the Design Compiler
and Synchronizer are far more effective tools for managing design synchronization (Design
Update to). But for legacy purposes and for designers who use alternate PCB layout tools
(such as Specctra), the Back Annotate Schematics command remains available in Altium
Designer's menu system.

13.3.6

Number Schematic Sheets

The Number Schematic Sheets does not alter component designators but rather Schematic
Sheet Designators (numbers). Conceptually, it is therefore related to the general concept of
design annotation.
Sheet and Document Numbering allows designers to take control over the sheet designation and
store them as parameters within the respective schematic documents. Altium Designer's special
string feature (=SheetNumber, =DocumentNumber, =SheetTotal) can then be used to
expose these values on the sheet (in the sheet footer for example) as text objects.

Figure 184. Numbering Schematic Sheets.

The process of numbering sheets is as follows:


Altium Essentials_July2013_Colby
10-July-2013

168

13.3.6.1 Auto Sheet Number


Click on the Auto Sheet Number drop down button to expose the sheet numbering options.

Figure 185. Auto Sheet Numbering Options.

The Select Numbering Scheme options are as follows:

Display Order: The sheets are numbered in the order they are displayed

Sheets Hierarchical Structure - Depth First: The sheets are numbered from the top level
into each branch. The top level is numbered first and then the first branch under the top level
is numbered completely, the second branch and so on.

Sheets Hierarchical Structure - Breadth First: The sheets are numbered according to
their level in the hierarchy. Top level is numbered first, all second levels are numbered next
and so on.

The Select Numbering Method allows for Increasing or Decreasing sequential values to be
selected.

13.3.6.2 Auto Document Number


Click on the Auto Document Number drop down button to expose the document numbering
options. They are essentially the same as the Auto Sheet Number options but with the addition
of Prefix and Postfix values.

Figure 186. Auto Document Numbering Options.

The Parameters options are as follows:

Prefix: choose a prefix to affix in front of your Document Number. Alpha (A, B, C,)
numerical (1, 2, 3,...) and non numerical (_,*,.,%,...) prefixes are supported including
combinations of all of them.

Start: choose a numerical value to begin Document Numbering from.

Postfix: choose a postfix to append to the Document Number. Alpha (A, B, C,) numerical
(1, 2, 3,...) and non numerical (_,*,.,%,...) postfixes are supported including combinations of
all of them.

Altium Essentials_July2013_Colby
10-July-2013

169

Step: choose a value to increment each Document Number by. For example, if the Start
index is set to 1 and the Step value set to 100, the first Document Number will be 1 and the
next Document Number will be 101 (Start + Step), the next one will be 201 and so on.

13.3.6.3 Update Sheet Count


Clicking on the Update Sheet Count button will simply tally up the number of sheets in the
current project and place the result in the SheetTotal column. The sheet count will be the total
number of sheets in the project regardless of the numbering scheme selected in either of the
previous controls.

13.3.6.4 Move Up / Down


Use the Move Up or Move Down buttons to move a selected Schematic Document up or down
respectively in the list. This is relevant when using the Display Order numbering scheme to
specify Sheet or Document Numbers.

13.3.6.5 Custom Numbering / Naming


If an organization has a specific number or naming system that can't be automated through
either the Auto Sheet Numbering or Auto Document Numbering commands, custom sheet
names and numbers can be written directly into the SheetNumber or DocumentNumber fields.

Figure 187. Applying custom Sheet Numbers.

13.3.7

Schematic Sheet Numbering and Device Sheets

Sheet or Document Numbers cannot be configured for Device Sheets when they are read-only
(default state) and will be cross hatched in the Sheet Numbering dialog to indicate they cannot
be updated. When Device Sheets are set as editable, the cross hatching is removed and Sheet
and Document Numbering can be configured as normal.

Figure 188. Device Sheets cannot be renumbered if they are set as read-only.

Altium Essentials_July2013_Colby
10-July-2013

170

Module 14: Compile and Verify the PCB


project
Before the design data is transferred to PCB layout, the design must first be verified. In Altium
Designer, checking the design is done by compiling the project. The compiling process performs
four functions:

Instantiates the design hierarchy

Establishes net connectivity between all the design sheets

Builds an internal Unified Data Model (UDM) of the design

Checks for logical, electrical and drawing errors between the UDM and compiler settings

The UDM allows users to navigate or browse the connective structure of the entire design via the
Navigator Panel.
Once the design is compiled (Project Compile PCB Project), the user can click an
object in the Navigator panel and view the target object.

14.1 Compiler settings


Compiler settings allow users to modify electrical rules that will be checked and are defined in
tabs of the Project Options dialog as shown in Figure 189. Access the Project Options dialog
from the Project menu (Project Project Options).

Figure 189. Access the Project Options dialog from the Project menu.

14.1.1

Error Reporting tab

Error reporting options are configured in the Error Reporting tab as shown in Figure 190. There
is an extensive array of error reporting options organized in groups (e.g. Violations Associated
with Buses, Violations Associated with Code Symbols, Violations Associated with Components).
The Report Mode of each violation can be changed to one of four values by clicking on it and
selecting the desired drop-down value: Fatal Error, Error, Warning, No Report.
Generally it is better to first compile the design and examine the warnings with the default
settings. For those warnings that are not an issue for the current design, the reporting level can
be changed.
One option of interest is Nets with only one pin. This can be used to detect single node nets,
where a pin has been connected to a Port or Net Label, but does not connect to another pin.
This is set to No Report by default and can be changed to Warning to help detect broken nets.

Altium Essentials_July2013_Colby
10-July-2013

171

Figure 190. Set the error reporting options in the Error Reporting tab of the Project Options dialog.

14.1.2

Connection Matrix tab

The Connection Matrix tab in the Options for Project dialog is shown in Figure 191. This matrix
provides a mechanism to establish connectivity rules between component pins and net
such as Ports and Sheet Entries. It defines the logical or electrical conditions that are to be
reported as warnings or errors. For example, an output pin connected to another output pin
normally be regarded as an error condition, but two connected passive pins would not.
Click on the small square in the matrix to change a particular rule. Each rule determines the
reporting level for a given pin/net identifier combination. There are four possible values for each
rule: Fatal Error, Error, Warning and No Report.

Altium Essentials_July2013_Colby
10-July-2013

172

Figure 191. Set the connectivity rules in the Connection Matrix tab.

The Error Reporting and Connection Matrix settings must be examined and set to suit
the requirements of the current project.

Altium Essentials_July2013_Colby
10-July-2013

173

14.2 Interpreting messages and locating errors


When the project is compiled, any conditions which generate a warning or error are listed in the
Messages panel as shown in Figure 192. Note that the Messages panel will only open
automatically if there is an error condition. If the Messages panel is not displayed, click System
Messages in the panel display controls at the bottom right of the Altium Designer workspace.
You can click on any of the Messages headings (e.g. Class, Document, Message) to assist in
sorting the errors and warnings.

Figure 192. Messages Panel shows the result of compiling the design.

14.2.1

Getting More Error/Warning Information

Double-clicking on a warning/error in the Messages panel will pop up the Compile Errors panel,
jump to and highlight the item in the schematic as shown in Figure 193. The added information
in the Compile Errors panel will help you debug the issue. It is important to examine each
warning/error and then resolve them, change the error checking Report Mode, or mark them with
a No ERC marker. This should always be done prior to transferring the design to PCB layout.

Figure 193. Specific error described in Compile Errors Panel and highlighted in schematic.

14.2.2

Clearing Messages

Right-click on a particular Warning/Error in the Messages panel and choose Clear Selected or
Clear All to clear messages. Click on the column headings to sort by that column. Subsequent
compilations will remove warning/error messages once the error conditions have been corrected.
To remove the masking of components in the schematic after highlighting an item via the
Messages panel, click on the Clear button in the bottom right corner of the schematic editor.

Altium Essentials_July2013_Colby
10-July-2013

174

14.2.3

Allocating No ERC Directive

After examining a warning you may determine that there is no concern and the message for this
particular instance can be ignored. To produce a clean ERC report and allow easy viewing of
future warnings you can remove the instance from the Messages panel. Right click on the
relevant message and choose Place Specific No ERC for this violation. The item will be
highlighted in the schematic and a red X will be attached to your cursor. Click on the affected
or pin to assign the No ERC directive as shown In
Figure 194.

Figure 194. Add No ERC directive to unconnected pin.

14.2.4

Project Compiler Error Reference

For a full list of compiler warnings and errors view the Project Compiler Error Reference found on
wiki.altium.com and shown in Figure 195.

Figure 195. View the Project Compiler Error Reference in wiki.altium.com for more details.

Altium Essentials_July2013_Colby
10-July-2013

175

Module 15: The PCB Editor


The PCB Editor opens when an existing PCB document is accessed or a new one is created.
This editor makes use of all the workspace features in the Altium Designer environment including
multiple toolbars, resource editing, right-click menu, shortcut keys and Tool Tips.
This module explores the basics of working in the PCB Editor.

15.1 The PCB Editor User Interface

Docked
Main Menu

Toolbars
Floating
Toolbar

Panels

Hidden
The Main PCB
Editor Workspace

Panel
Tabs

Layer Set
Manager

Selection
Layer Tabs

Panel Buttons

Controls

Status Bar

Figure 196. The PCB Editor Workspace

One of the benefits of working in a unified design tool is the commonality of user interface
components that are maintained between the editors. The PCB Editor makes use of several of
these common user interface components as well as adding a few more of its own.

The Main Menu


Altium Designer includes a range of pop-up and right-click menus for easy local control. However
just about every command is also available from the Main Menu.

Toolbars Docked / Floating


Toolbars provide a graphical means for initiating commands and can be quicker than navigating
through menu hierarchies. Toolbars can be made to float in a window of their own, or be docked
to an edge of the workspace.

Panels & Panel Tabs


Panels are used extensively in Altium Designer to display additional information about the
design. Panels can be pinned to a fixed location and made permanently visible, pinned to a
fixed location but only displayed when the mouse selects or hovers over its panel tab, or allowed
to float over the workspace.

Selection Controls
To help control visual clutter in the PCB Editor's workspace, a range of selection and masking
options are available from the various selection controls.

Altium Essentials_July2013_Colby
10-July-2013

176

Panel Buttons
The Panel Buttons provide popup menu access to the various panels available in Altium
Designer. Panels specific to the PCB Editor are located within the PCB Panel Button.

Layer Tabs
The PCB Editor uses colored layers to represent the different layers of a PCB. The layer tabs
allow the designer to select the PCB layer that they want their next set of edits to apply to.

Layer Set Manager


The Layer Set Manager controls how different collections of layers are simultaneously displayed.
This helps achieve the right balance between having sufficient information to guide edits without
the screen becoming overwhelmingly cluttered.

Status Bar
The Status Bar indicates the cursor's current grid position as well as providing user guidance
about the next piece of information that Altium Designer needs to complete the current
command.

15.1.1

Board Insight System

The Board Insight System is a configurable system of features designed to give users complete
control over the PCB view as well as bringing relevant information to where it is most accessible.
While a comprehensive explanation of the complete capabilities of the Board Insight system are
not warranted here, Figure 89 demonstrates the sorts of dynamic visual and textual information
available from the Board Insight Panel, the Heads Up Display, and the Board Insight Lens.
The Board Insight System is configured from a number of different pages within the PCB Editor
section of the main Preferences dialog (DXP Preferences)

Figure 197. The Board Insight Panel, Heads Up Display and Lens mode are all features of the Board
Insight system designed to make navigating the PCB design much more fluid.

15.2 Navigating the PCB Editor Workspace


There are a number of ways that the main PCB Editor Workspace can be manipulated in order to
move around the design.

15.2.1

Navigating with the Mouse

The simplest way to navigate the PCB Editor Workspace is with a mouse:
Altium Essentials_July2013_Colby
10-July-2013

177

Panning
Dragging the mouse with the right mouse button pressed will pan the screen.
With the mouse cursor currently over the PCB Editor Workspace, click and hold down the
right mouse button (RMB). A hand-shaped cursor will appear to indicate that panning mode
is active. With the right mouse button still held down, drag the mouse in any direction and the
PCB view will move with the mouse. Release the right mouse button to stop panning.
Alternatively a combination of keyboard and mouse actions can also be used to pan the screen:

Roll the mouse wheel to pan the screen up or down - i.e. in the direction of the roll.

Press SHIFT and roll the mouse wheel up to pan left, or down to pan right.

Automatic Panning
During the execution of a command that requires the user to select a point within the main editor
workspace, the mouse cursor will appear as a large crosshair and the automatic panning feature
will be automatically activated. So as the cursor is moved to any side of the editor window, the
PCB view will pan in that direction. Autopan options can be set within the DXP Preferences
PCB Editor General page of the main Preferences dialog.

Figure 8.Setting Autopan Options from the main Preferences dialog.

Zoom In / Out
Press CTRL and roll the mouse wheel upwards to incrementally zoom in, or downwards to
incrementally zoom out.
Press CTRL and right-drag the mouse upwards to smoothly zoom in, or downwards to smoothly
zoom out.

3D Operations
While a mouse is essentially a 2D only device, it is possible to navigate in 3D with the assistance
of the keyboard. Pressing the Shift key will reveal a direction orb that can be used to control 3D
motion.

Altium Essentials_July2013_Colby
10-July-2013

178

Figure 198. The PCB Editor in 3D mode with 3D orb displayed after pressing the SHIFT key.

With the 3D orb displayed (Shift key pressed), right-drag one of the orange elements of the orb
to move in that orientation. Assuming the X-axis runs left to right, the Y-axis runs top to bottom,
and the Z-axis runs in and out of the page, the following table details how to control 3D motion.
Right-Drag Orb Region

Result
With the SHIFT key pressed, right-drag the up or down arrow to
rotate around the X-axis.

With the SHIFT key pressed, right-drag the left or right arrow to
rotate around the Y-axis.
With the SHIFT key pressed, right-drag one of the arcs to rotate
around the Z-axis.

With the SHIFT key pressed, right-drag the centre point to spin the
orb around its centre point.
Right-dragging any other point on the display while the SHIFT key
is pressed will spin the display as if the drag had begun on the
centre point of the orb.
Table 10. Shortcut keys for 3D view manipulation

The use of 3D in Altium Designer requires DirectX 9.0 (or greater), Shader Model 3.0,
and a suitably powerful graphics card. While most modern PCs will include these
capabilities as standard, some older PCs and laptops may not. The specific
of a system can be tested by pressing the Test DirectX button in the PCB Editor Display section of the main Preferences dialog (DXP Preferences).

Altium Essentials_July2013_Colby
10-July-2013

179

15.2.2

Navigating with a 3D Mouse

Altium Designer's PCB editor is a truly 3D editor and has been designed to work with 3D user
interface controllers such as 3DConnexion's Space Navigator. More information about these
devices is available from the 3DConnexion website: http://www.3dconnexion.com/index.php

Figure 199. Altium Designer's PCB editor is designed to work with 3D navigation devices such as those
available from 3DConnexion.

15.2.3

Navigating with a Keyboard

Shortcut keys are a useful alternative to manipulating the view of the workspace and can often
be used while executing other commands (such as when routing or moving components).
Keystroke

Function

END

Redraws the view

PAGE DOWN

Zoom out (holds the current cursor position)

PAGE UP

Zoom in (holds the current cursor position)

CTRL+PAGE UP

Zoom to 400%

CTRL+PAGE DOWN

Fit All Objects

HOME

View pan (pan to centre the current cursor position)

ARROW KEYS

Moves the cursor by one snap grid point in direction of the arrow

SHIFT + ARROW KEYS

Moves the cursor by 10 snap grid points in the direction of the arrow

Switch to 3D view

Switch to 2D view

Set camera rotation perpendicular to the board (3D view only)

Set camera rotation perpendicular to the board, rotated 90 (3D


view only)

Table 11. Shortcut keys for view manipulation (not exhaustive).

Altium Essentials_July2013_Colby
10-July-2013

180

15.2.4

Navigating via the View or Zoom menu

View/Zoom commands are accessible from both the main View menu as well as the Zoom
popup menu.
A summary of View/Zoom commands is listed below.
Command

Toolbar

Shortcut Key

Fit Document

VD, ZA,
CTRL+PGDN

Description
Display entire document

Fit Sheet

VH, ZS

Zoom to display the Document Sheet

Fit Board

VF, ZB

Zoom to display the entire Board

Area

VA, ZW

Display a rectangular area of document by


selecting diagonal vertices of the rectangle

Around Point

VP, ZP

Display a rectangular area of document by


selecting the centre and one vertex of the
rectangle

Selected
Objects

VE

Fits all selected objects in the current document


window

Filtered
Objects

VJ

Fits all objects that are included in current filter


settings.

Zoom In

VI, ZI, PGUP

Zoom Out

VO, ZO, PGDN

Zoom Last

VZ, ZL

Zoom To

ZC

Pan

VN, ZN, HOME

Refresh

VR, ZR, END

Flip Board

VB

Full Screen

ALT+F5

Zoom In around current cursor position


Zoom Out around current cursor position
Zoom to the previous zoom setting
Zoom to a specified Zoom Value
Re-centre the screen around current cursor
position
Update (redraw) the screen display
Flip the board over
Swap from/to full screen mode

Table 12. View/Zoom command summary

While executing a command (when a crosshair is attached to the cursor), auto panning becomes
active by touching any edge of the Design Window. Pressing the SHIFT key while auto panning
will increase its speed. By default, Auto panning uses and adaptive pan rate that is dependent on
the zoom level, but it can be configured in the Autopan Options section of the DXP
Preferences PCB Editor General page in the Preferences dialog (Tools Preferences).
Auto panning can also be turned off here.

15.2.5

Using the Jump menu

The Jump menu is a popup that activates when the J key is pressed while the PCB editor has
the focus. It's commands are described as follows:
Menu
Command

Shortcut

Description

Absolute
Origin

JA,
CTRL+HOME

Position cursor to the absolute origin (0,0).

Origin

JO,
CTRL+END

Altium Essentials_July2013_Colby
10-July-2013

Position the cursor at the User specified origin. Edit Origin


Set / Reset will set/reset the location of the user origin.
181

New Location

JL

Position the cursor at a specified X,Y coordinate.

Component

JC

Position the cursor over a component specified by its


designator.

Net

JN

Position the cursor over a specified net.

Pad

JP

Position the cursor over a specified pad using the syntax


designator-pad_number.

String

JS

Position the cursor over a specified string.

Error Marker

JE

Zoom and position the cursor over the next error marker.

Selection

JT

Zoom and position the cursor over the current selection.

Set Location
Mark

JK1...JK0

Saves the current location as a point to return to later.

Location Mark

JM1..JM0

Jumps to one of the locations saved using the previous


command.

Table 13. Jump menu commands

15.3 PCB Preferences


As with all other editors in Altium Designer, the PCB Editor contains its own set of preferences
that can be used to tune the operation and appearance of the display. These preferences are
found within the PCB Editor section of the main Preferences dialog (DXP Preferences).

Figure 5. Use the PCB Editor section of the main Preferences dialog to tune the operation and appearance
of the PCB editor.

Altium Essentials_July2013_Colby
10-July-2013

182

Module 16: Footprint Manager


Altium Designer's Schematic Editor includes a powerful Footprint Manager that enables a
designer to review all footprints associated with each and every component in the active project.
The Footprint Manager makes it easy to review and detect problems with footprint assignments
across the entire design, particularly useful when you are working on a legacy design or one
from another organization.
Multi-select support makes it easy to edit the footprint assignment for multiple components,
change how the footprint is linked, or change the current footprint assignment for components
that have multiple footprints assigned. Design changes are applied through Altium Designer's
standard ECO system, updating the affected schematic document(s) accordingly.

16.1 Accessing the Footprint Manager


With a schematic document for the required design project open and active, access to the
Footprint Manager dialog is made through the Tools Footprint Manager command.

Figure 200. The Footprint Manager dialog.

The Component List region on the left-hand side of the dialog presents a listing of all
components across all source design schematics in the project.
For a design containing device sheets, the components on those sheets will only be
listed provided the sheets are not marked as being Read-only. Toggle the Read-only
state for device sheets in projects from the Data Management -- Device Sheets page
of the Preferences dialog.
For each component, the following information is presented:

Selected -- whether or not the component is currently selected on the sheet. If selected, this
field will contain a green tick icon ( ), otherwise it will remain empty.

Designator -- the logical designator for the component, as viewed from the Editor tab view
of the schematic sheet.

Comment -- the component's comment.

Altium Essentials_July2013_Colby
10-July-2013

183

Current Footprint -- the footprint model currently assigned to represent the component in
the PCB design domain.

Design Item ID -- the component's unique identifier, as it is named in the source library from
which it was placed.

Part Count -- the number of parts that the component contains.

Sheet Name -- the schematic source document on which the component can be found.

Initially, every component is listed individually, but can be grouped by a specific column simply
by dragging a column heading to the area above the list. For example dragging the Current
Footprint column to this area will cluster all components that share the same footprint.

Figure 201. Group components by any of the information columns.

By dragging additional column headers, components can be further sub-grouped as


required. To remove a particular grouping element, simply click on its entry within the
grouping area and drag back to the column header area.

Altium Essentials_July2013_Colby
10-July-2013

184

16.2 Viewing & Editing Footprints


The right-hand side of the Footprint Manager dialog provides all controls necessary to manage
the footprints available to, and in current use by, the design's components.

16.2.1

Viewing Currently Linked Footprint Models

When a single component is selected within the Component List, the footprints available to it
added as linked models to the component are listed. The footprint currently used is indicated
by a green tick icon ( ). Clicking on a footprint will load a visual preview of it, where available, in
the region below.

Figure 202. Viewing the footprint models available (referenced by) a selected schematic component.

For each footprint, the following information is presented:

Footprint Name the name of the footprint, as it appears in the source PCB library.

Current whether or not the footprint is currently being used (referenced by) the selected
component. If it is the current footprint, this field will contain a green tick icon ( ), otherwise
it will remain empty.

PCB Library this is the chosen search scope used to locate the footprint model and
corresponds to the PCB Library option enabled in the PCB Model dialog when adding/editing
the model.

Found In the library in which the footprint model has been found. This field will initially
contain the entry Not Validated, changing only after validation has been performed.
Successful validation will result in the source library entered here. If the model cannot be
found at all, this will be reflected by the entry Footprint Not Found (validation failure!).
If a multi-part component is selected, an additional column of information is presented
In All Parts. If the footprint is used in all parts of the component then a green tick
( ) will be displayed here, otherwise the field will remain empty.

When multiple components are selected within the Component List, all available footprints,
across all selected components, are listed. Those footprints currently used by the components
are indicated by a purple tick icon ( ).

Altium Essentials_July2013_Colby
10-July-2013

185

Figure 203. Reflecting the current footprints for multiple selected components.

For multiple selected components, the behavior of the In All Parts field reflects which footprints
are common to all components in the selection.

Figure 204. The In All Parts field reflects that, in this case, all footprint models are common to both of the
selected components.

16.2.2

Adding a Footprint Model

To add a new footprint model link to the currently selected component(s), simply click the Add
button. The PCB Model dialog will appear.

Altium Essentials_July2013_Colby
10-July-2013

186

Figure 205. Adding a new footprint model to a selected component.

If the name of the required model is known, simply enter it in the Name field, then specify how
the software is to locate the model, using the controls in the PCB Library region:

Any all Available Libraries (project libraries, installed libraries and libraries found along
defined search paths) are used to look for the footprint model.

Library Name enter the full library name in which the model resides (e.g.
ThisLibrary.PcbLib). All Available Libraries are used to look for the footprint model. If
not found here, the default library path (Library Path field on the System Default
Locations page of the Preferences dialog) will be interrogated to see if the named library
can be found there.

Library Path enter the full path/name of the library. Click the Choose button to browse to
the library. This option will always finds the footprint, since it is explicit (provided of course
the library remains in that directory!).

Integrated/Database Library if the component was placed from an integrated or database


library, the model can be sourced directly from that same library, provided the library is part
of the Available Libraries set.

Alternatively, click the Browse button, to the right of the Name field, to access the Browse
Libraries dialog. Use this dialog to browse footprint models across all currently Available
Libraries.

Altium Essentials_July2013_Colby
10-July-2013

187

Figure 206. Browse through Available Libraries for a suitable new footprint model.

Having determined the model and the method by which to find it, the mapping of schematic
component pins to PCB footprint model pads can also be defined. To do this, click the Pin Map
button in the PCB Model dialog, to access the Model Map dialog.

Figure 207. Access and configure pin mapping for the model.

Altium Essentials_July2013_Colby
10-July-2013

188

With the link to the new footprint model fully defined, clicking OK in the PCB Model dialog will
result in that model being added to the list of footprints available to the component.

Figure 208. New footprint model linked and available to represent the component.

Commands to add a footprint model are also available from the area's context menu,
accessed by clicking the Menu button or by right-clicking. Alternatively, use the INSERT
keyboard shortcut.

16.2.3

Editing a Footprint Model

To edit an existing linked footprint model in essence changing it for a different model simply
select the model in the list and click the Edit button. The PCB Model dialog will appear. Use this
to define the replacement footprint to be used.
Commands to edit a footprint model are also available from the area's context menu,
accessed by clicking the Menu button or by right-clicking.

16.2.4

Changing PCB Library

There may be occasions where the footprint model name is the one required, but a different
instance of that model is required, from a different library. Remember, when using the Any
option to seek out a model, the library containing the first matching instance of that model's
name will be the one used. This may not always be the most appropriate one, where such a
model lives across multiple different libraries.
To change the library used, select the footprint model in the list and use the Change PCB
Library command on the area's context menu, accessed by clicking the Menu button or by rightclicking. This will give access to the Edit PCB Library dialog, in which to modify the library search
method as required.

Altium Essentials_July2013_Colby
10-July-2013

189

Figure 209. Change how the library is searched for, to ensure the right footprint model is found.

16.2.5

Copying Footprints Between Components

A new footprint model can be added directly to one or more components at the same time, at the
time of its addition. However, the Footprint Manager also facilitates copying existing footprint
models between one or more components in a streamlined, expedient manner. Two methods
can be employed to perform this action.

16.2.5.1 Copy and Paste


The following steps are involved using this method:
3. First select the component(s) possessing the required footprint(s) to be copied, from the
Component List.
4. Select the required footprint(s) standard multi-select features are available, as well as a
Select All command, available from the context menu (shortcut CTRL+A).
5. Use the Copy command from the context menu (shortcut CTRL+C).
6. Select the component(s) to which the footprint(s) are to be copied, from the Component
List. within the footprints area and use the Paste command from the context menu (shortcut
7. Click
CTRL+V).

16.2.5.2 Addition to Selected Components


The following steps are involved using this method:
1. Select the required components from the Component List.
2. Select the required footprint(s) to be copied to all of these selected components.
3. Use the Add to All Parts command, available from the context menu.
This method is very useful when wanting to make the same footprints available to all
components of a particular type (designator type), such as a group of capacitors,
resistors, or LEDs. After running the command, a green tick icon ( ) will appear in
the In All Parts field for those footprints visual verification that the copy has been
effected.

Altium Essentials_July2013_Colby
10-July-2013

190

16.2.6

Setting a Different Footprint to be the Current Footprint

To make a different footprint model the current footprint model for a selected component, simply
select the required footprint in the list and use the Set As Current command from the context
menu. Visual indication of the change is provided courtesy of the green tick icon ( ) in the
Current column moving from the previous footprint to the new footprint.

Figure 210. Changing the current footprint for a selected component.

The Set As Current command can be used to quickly change the current footprint
model for a group of components of the same type (same designator). Simply ensure
all required components are in the selection. If components of a different type are
included in the component selection (i.e. differ by designator type), the command will
be unavailable.

16.2.7

Validating Footprint Paths

Crafting which footprint models are available to which components is one thing, but ensuring
those footprints are truly available is quite another. Different methods of locating a model may
have been employed, and even if the full library path is defined, there is no guarantee that the
model, or rather the file in which it resides, is still at the end of that path.
To ensure that footprint models are truly available and especially those set to be the current
model the Footprint Manager provides the ability to validate the footprint paths.
To validate the existence of footprint models for one or more selected components, simply select
the models in the list of footprints and click the Validate button, or run the Validate Footprint
Paths command from the context menu.
If a footprint model is successfully found, the icon to the left of the footprint's name will have a
green tick added to it and the path to the library file containing the model will be presented
in the Found In field. If a footprint model could not be found, the icon will have a red cross added
to it
and the entry Footprint Not Found will be displayed.
Footprint models are not validated on a per-component basis. So if there are three
capacitors that have access to the same footprint model for example, that model
only be validated once, for just one of those three components they do not all have
be selected.
The quickest way to validate all footprint models is to first select all components in the
Component List, then select all footprints and run the validation.
Altium Essentials_July2013_Colby
10-July-2013

191

Figure 211. Validate that footprint models are truly available!

16.3 Implementing the Changes


Once all changes to footprint model assignments have been made as required, those changes
are then implemented through a standard Engineering Change Order (ECO). To do this, simply
click on the Accept Changes (Create ECO) button, at the bottom right of the Footprint Manager.

Figure 212. Generate an ECO that is used to implement the changes made within the Footprint Manager.
Altium Essentials_July2013_Colby
10-July-2013

192

With the ECO generated, browse through the actions involved and then validate and execute
those changes, using the Validate Changes and Execute Changes buttons respectively. Click
on the Report Changes button to preview a report of the changes involved, generating a
suitably-formatted report if required.

Figure 213. Validate and execute the ECO, and preview/generate a report of the changes as required.

Altium Essentials_July2013_Colby
10-July-2013

193

Module 17: Defining the Board Shape


The board shape, also referred to as the board outline, is a closed polygon that defines the
boundary, or extents, of the PCB. The board shape is used to determine the extents of the power
planes when calculating plane edge pull back, used when defining split planes on internal plane
layers and also for calculating the board edge when exporting design data to other tools.

17.1 The Board Shape


Once a blank board has been created in the PCB Editor, the next step is to define the shape of
the board (typically this is the final finished board shape), and the routing and placement
boundary.

The board shape can be defined manually using the commands in the Board Shape subsub-menu, or by getting the software to define it
automatically from a set of selected objects. Defining
it from selected objects is typically done when the
board shape has been defined and imported from
another tool, such as a mechanical CAD package.

The placement and routing boundary is defined by


placing a continuous barrier on the Keep out layer.
Any object placed on the keep out layer is
an obstacle to objects on all the signal layers.
Typically the keep out boundary is defined along, or
slightly in from the board outline, taking into
consideration any mechanical clearance
requirements, such as brackets, card guides, and so
on.

Figure 214. The default Board Shape.

17.2 Defining the Board Shape


A default Board Shape is defined for every new PCB document so the process of first creating a
Board Shape is actually one of redefining the existing default one.

17.2.1

Defining the Board Shape Using a 3D Body

The best, and preferred, way to define the Board Shape is using a 3D body imported as a STEP
model from the MCAD designer. The MCAD designer understands the confines and assembly
of the enclosure and is the one who is best equipped to stipulate the geometry of the PCB
shape. So at the same time as the enclosure is being designed, the MCAD designer should also
include a solid model of the raw PCB which can then be referenced directly by Altium Designer
to define the Board Shape.
This feature is accessed by selecting Design Board Shape Define from 3D body from the
main menus [shortcut: D , S , S ] when in 3D mode. Prior to launching this command, a 3D body
must have already been placed in the workspace.
After launching the command, click the 3D body to select it. The cursor will change to a crosshair
ready to select the desired surface. Click on a flat surface of the STEP model - this surface will
become the new board shape. As the cursor is moved around the model, any surfaces that are
found under the cursor will stand out while the rest of the model will be made somewhat
transparent.
Only surfaces aligned with the X-Y plane can be used to create the board shape. If a model
surface that requires alignment in the X-Y plane is selected, the initial Define from 3D body
command will effectively terminate and a new alignment command will begin with a Confirmation
dialog requesting permission to align the surface before continuing. This dialog not only allows
Altium Essentials_July2013_Colby
10-July-2013

194

the model to be aligned with the X-Y plane but it also allows the model to be vertically positioned
in relation to either the top or bottom surface of the board.
Because the original Define from 3D body command terminated mid-stream, once the
alignment has been correctly established, the Design Board Shape Define from 3D Body
command will need to be run again to update the Board Shape.
After the board shape has been redefined, the 3D Body used to define it will be optionally
hidden.

Figure 215. Using a 3D Body to define the Board Shape.

17.2.2

Defining the Board Shape as a Polygon

This feature is accessed by selecting Design Board Shape Redefine Board Shape from
the menu.
After launching the command, the existing board shape will be displayed, green over a black
background, and the cursor will change to a crosshair, ready to define the outline of the new
board shape.
Placement of the new outline is made by performing the following actions:
4. Position the cursor and click to anchor a starting point for the polygon
5. Position the cursor and click to anchor a series of vertices that define the polygonal outline of
the board shape. While defining the shape;
a) Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Arcs can be increased or decreased in
radius using SHIFT + . (period or full stop) or SHIFT + , (comma) respectively.
b) Use SPACEBAR to toggle the direction of the corner.
c) Use the BACKSPACE key while in placement mode, to remove the last placed vertex
point. Repeatedly use this key to unwind the outline for the polygon, right back to the
initial starting point.
6. after placing the final vertex point, right-click or press Esc to complete placement of the
board shape. There is no need to manually close the polygon as the software will
automatically complete the shape by connecting the start point to the final point placed.
7. Upon closing the polygon, the existing board shape will be updated.
The Jump Location command [shortcut: J , L ] is an effective way to quickly and
accurately position board vertices.

17.2.3

Defining the Board Shape from Existing Primitives

This method of redefining the board shape allows designers to define the required outline for the
board using standard track and arc objects. The track and arc segments must be placed to form
a closed boundary.
Once the outline is the required shape, select all objects that define it then select the Design
Board Shape Define from selected objects menu command. The existing board shape will
be modified to fill the area defined by the new boundary.

Altium Essentials_July2013_Colby
10-July-2013

195

To edit an existing Board Shape, the Design Board Shape Create Primitives from Board
Shape command can be used to explode the board shape into individual primitives. These can
then be edited as necessary and, once completed, the Design Board Shape Define from
selected objects command can be used again to apply the new Board Shape.

Figure 216. Selecting a closed region to be used as the Board Shape.

17.2.4

Defining the Board Shape from a DXF File

Designers can import the board


shape directly from third-party
tools such as AutoCAD (*.dxf,
*.dwg). Altium Designer support
all vesions of files from AutoCAD
2.5 to 14.
To import a DXF file, selecting
the File Import command and
select the AutoCAD (*.DXF;
*.DWG) filter from the Import File
dialog.
Once a valid file has been
selected, the Import from
AutoCAD dialog will display. The
designer can then specify the
scale, location, and layer
mapping for the data to be
imported.
Some consultation with the
MCAD designer who created the
file may be necessary to ensure
the right scaling units are used.

Figure 217. Importing the board shape from a DXF file.

If the AutoCAD importer is not available, ensure the Importer - DXF plug-in has been
installed from the Importers and Exporters group in the Altium Plug-ins page (DXP
Plug-ins and Updates).

Altium Essentials_July2013_Colby
10-July-2013

196

17.3 Editing the Board Shape


The board shape object cannot be edited in the same
manner as other polygons. Non-graphical editing does
not apply as the board does not have an associated
properties dialog. Although it can be selected, it does
not appear as an object in either the PCB List or PCB
Inspector panels. When selected, the editing handles
that appear cannot be used to graphically modify its
shape. Modification is possible however, with respect
to location, orientation and shape, using commands
from the Design Board Shape sub-menu.

17.3.1 Editing the Board Shape


Vertices

Figure 218. Editing the Board Shape


Vertices.

This feature allows the existing board shape to be edited without having to completely redefine it.
The pertinent command is Design Board Shape Move Board Vertices.
After launching the command, the existing board shape will be displayed green on a black
background, the vertices will become handles and the cursor will change to a crosshair, ready to
define the outline of the new board shape.
1. click A then move to reposition an existing vertex and click again to place
2. click B to add a new vertex points (between selected vertex and nearest vertices) and
reposition as required
3. click on the outline (between vertices) then move to reposition a section of outline.
4. After modifying the board shape as required, right-click or press ESC to exit.

17.4 Creating a Keepout from the Board Shape


The Board Shape defines the edges of the board but for component and routing rules, a Keepout
needs to be defined too. A Keepout can be created from the Board Shape as follows:
1. Select Design Board Shape Create Primitives From Board Shape.
2. When the Line / Arc Primitives From Board Shape dialog displays, set the Layer to Keep-Out
Layer and enable the Include Cutouts option as well.
3. Click OK to complete the command and create the Keepout.

Figure 219. Creating a Keepout from the Board Shape.

Altium Essentials_July2013_Colby
10-July-2013

197

17.5 Adding Cutouts to the Board Shape


Cutout regions can be added to the PCB Board Shape through the Design Board Shape
Define Board Cutout command. When launched, the command will prompt for a polygon to be
defined to serve as the boundary for the cutout:
1. Position the cursor and click to anchor a starting point for the polygon
2. Position the cursor and click to anchor a series of vertices that define the polygonal outline of
the board shape. While defining the shape;
a) Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Arcs can be increased or decreased in
radius using SHIFT + . (period or full stop) or SHIFT + , (comma) respectively.
b) Use SPACEBAR to toggle the direction of the corner.
c) Use the BACKSPACE key while in placement mode, to remove the last placed vertex
point. Repeatedly use this key to unwind the outline for the polygon, right back to the
initial starting point.
3. after placing the final vertex point, right-click or press Esc to complete placement of the
board shape. There is no need to manually close the polygon as the software will
automatically complete the shape by connecting the start point to the final point placed.
4. Upon closing the polygon, the cutout will be applied to the Board Shape.
Cutouts, unlike Keepouts, will appear as see through sections of the PCB when viewed in 3D
mode.

Board Shape Cutouts

Figure 220. Using Cutouts to define voids in the PCB Shape.

Altium Essentials_July2013_Colby
10-July-2013

198

Module 18: Design Transfer


Having captured the design, and ensured its error-free compilation, it now needs to be
transferred to the PCB domain. Altium Designer provides a powerful design synchronization
feature that enables streamlined design transfer in an expedient manner.

18.1 Synchronization - Overview


Before diving into the mechanics of how to get the captured design initially transferred across to
a blank PCB document, it is worth taking a look at how this process is handled within Altium
Designer at a conceptual level. The synchronization process can essentially be broken down into
three steps:
1. Compare design documents (e.g. compare project source documents to the target PCB).
2. List the results of that comparison (the differences detected between the compared
documents).
3. Implement changes to resolve those differences.
At the heart of the synchronization process is a user-configurable Comparator (or difference
engine). It is this Comparator that is used to implement Step 1 above comparing the nominated
design documents and compiling a list of differences.
Step 2 is the provision of a dialog that lists the results of the comparison and offers full control
over the direction in which design updates are made when resolving the differences.
Step 3 is the execution step actions to be implemented in order to bring the designs back into
sync. Each action is actually a macro command, with the collective actions represented as an
Engineering Change Order (ECO).
Figure 221 illustrates the overall flow for the synchronization process.

Figure 221. Flow of the synchronization process in Altium Designer.

Altium Essentials_July2013_Colby
10-July-2013

199

Taking a closer look at Figure 1, the core features of the Synchronizer are:

Difference engine compares the schematic project to the PCB. The difference engine can
compare the component and connective information between almost all kinds of documents.
It can compare a schematic project to a PCB, one PCB to another PCB, a netlist to a PCB, a
netlist to a netlist, and so on. Use the Project Show Differences command to access the
Choose Documents To Compare dialog, to fully control which documents are involved in the
comparison.

Figure 222. Control over selection of which documents to compare.

Difference dialog lists all differences detected between the compared documents. The
designer can then define which document should be updated to synchronize the documents.
This approach allows changes to be made in both directions in a single update process,
giving truly bi-directional synchronization. Right-click in the dialog for direction options. The
designer has the ability to explore and report differences, prior to creating an Engineering
Change Order (ECO). Note that this dialog is only seen when running the Project Show
Differences command.

Figure 223. The Differences dialog allows the user to view differences and control in which direction
changes are passed in order to synchronize the compared documents.

Altium Essentials_July2013_Colby
10-July-2013

200

Engineering Change Order dialog lists all modifications (actions) required to implement the
changes necessary to synchronize the documents being compared. Typically, these are the
actions to facilitate the synchronization of the source documents of the captured design and
the target PCB implementation of that design. Full control is provided over which
modifications get implemented, with the ability to verify changes before execution, and also
to generate a report of those changes.

Figure 224. Example modifications contained within an Engineering Change Order (ECO).

18.2 Transferring the Design


Armed with knowledge of how the synchronization process actually works, the captured design
can now be transferred to the target PCB document.

18.2.1

Pre-transfer Checks

Prior to initiating the transfer, the following items should be addressed in preparation:

Ensure that a new PCB document has been created and is added to the same PCB project
as the schematic source documents. It is also a good idea to have a board shape defined
ready.
If a component in the schematic source has been placed from an Altium Vault, the PCB
Component Item (the 2D footprint model and any associated 3D body) will already be
referenced and available in the vault for representation of that component in the PCB
domain. However, if there are any non-vault components, ensure that the applicable libraries
containing the PCB domain models are added into the Available Libraries list accessible by
the project.

Ensure all schematic components reference a PCB footprint model, and that it is a valid
model in a library available to the project. Again, this will only be a cause for concern when
using non-vault components.

Compile the project and fix any errors as necessary.


There are a number of settings that control what data is transferred between the
schematic design and PCB layout, in terms of which differences are detected by the
Comparator (difference engine) and which modification actions are generated for
inclusion in an ECO. These are defined on the Comparator and ECO Generation
respectively, of the Options for Project dialog (Project Project Options). For an
initial transfer of the design to a blank PCB document, these settings can be left in
default state.

Altium Essentials_July2013_Colby
10-July-2013

201

18.2.2

Proceeding with the Transfer

Since the design does not yet exist in the PCB domain, use of the Design Synchronizer's bidirectional ability is not required. The designer simply needs to push the design 'one way' as it
were.
In answer to this fundamental requirement, Altium Designer's Schematic and PCB Editors
provide direct synchronization commands. These commands are direct in the sense that the
update direction for any differences is fully one way or the other. The Differences dialog will not
appear. Instead, where differences are detected, the Engineering Change Order dialog will be
presented directly loaded with the modifications needed to push the design changes from the
schematic to the PCB or vice-versa.
Initial transfer of a design from the Schematic to PCB domains can be preformed from either one
of the project's source schematic documents, or from the PCB document itself:

From a source schematic use the Design Update PCB Document command.

From the PCB document use the Design Import Changes From command.
For initial transfer, use of a direct synchronization command is by far the most
expedient method. For more low-level control, run the Project Show Differences
command then, in the Differences dialog, set the direction of transfer for all listed
modifications toward the PCB only. Once done, click the Create Engineering Change
Order button. Although all differences can be viewed and a report generated, this path
is not so desirable when the PCB has no information in it to begin with. Viewing
differences and utilizing the Synchronizer's bidirectional transfer technology really only
comes into play when synchronizing with an existing, established PCB document.

The project's source documents will be compared with the target PCB document and the
Engineering Change Order dialog will appear, listing all modifications required to bring the two
into a fully synchronized state.
By default, all modifications are enabled for inclusion when the ECO is executed. For an initial
transfer of the design to the PCB, leaving these in their default state is fine, but the ability to
control which actions are performed (and which are not) is there should it be needed.

Figure 225. Proposed modifications listed in an ECO - the means by which to achieve synchronization.

It is particularly important to validate the proposed modification actions before executing them.
this by clicking the Validate Changes button. Not only will the logic of the proposed changes be
tested, but libraries will be searched to ensure that the models are available. Validation results
appear in the Check column of the dialog. A green tick ( ) means that the proposed change is
Altium Essentials_July2013_Colby
10-July-2013

202

supported and will be carried out upon execution of the ECO. A red cross ( ) means that the
proposed change is invalid and will not be carried out when the ECO is executed.
If any modification entries fail the validation stage, an entry will appear in the
corresponding Message column of the dialog (and also in the Messages panel), giving
an indication as to why it failed (e.g. Footprint Not Found). Close out of the
at any stage, in order to investigate why certain changes are failing and make any
design changes as necessary.
After the proposed changes validate successfully, click the Execute Changes button to execute
the ECO and effect the valid changes contained therein.
When the ECO has been fully executed, a green tick ( ) will appear in the Done column for
each modification carried out. Remember, only changes that pass the validation stage will be
successfully executed.

Figure 226. Successful validation and execution of the modifications in the ECO.

Click the Report Changes button to set up and print/export a report for the modifications
contained within the ECO. Bear in mind that the report will list all modification entries,
irrespective of whether they validate and execute successfully.
When component information is transferred for the first time between schematic
documents and a blank PCB design document, using the Synchronizer, all
will automatically be linked by unique ID the ID information from each schematic
component being assigned to the corresponding component footprint. It is this
component linking, through unique IDs, that enables the documents to be rere-synchronized at any stage, even after a re-annotation of designators has been
performed.
After execution of the ECO, the PCB document will become the active document (if not already)
and the component footprints, complete with logical connections, will be placed to the right-hand
side of the board shape, ready for layout.

Altium Essentials_July2013_Colby
10-July-2013

203

Figure 227. Captured design intelligence transferred to the PCB domain, ready for layout to commence.

Altium Essentials_July2013_Colby
10-July-2013

204

Module 19: Working with the PCB Panel


While working in the PCB editor the designer often needs to locate or edit a specific object or set
of objects in the design workspace. The PCB Panel is built specifically for this, as it allows
browsing the PCB workspace in a number of different ways.

19.1 Navigate using the PCB panel


This section will show how to use the PCB panel
for navigation. To display the PCB panel click
PCB PCB in the panel display controls at the
bottom right of the Altium Designer workspace.
Note that the PCB panel can only be displayed
when a PCB is the active document.
The PCB panel provides a powerful method of
examining the contents of the PCB workspace.
Clicking on an entry in the panel will filter the
workspace to highlight that object the
highlighting style will depend on the settings of
the options at the top of the panel. To begin with,
enable all the highlight options and set the drop
down to Dim.

19.1.1 Browse mode selection


list
The drop down list at the top of the PCB panel
allows the designer to list, locate or edit the
following PCB object types in the active PCB
document:

Nets and Net Classes

Components and Component Classes

From-To Editor

Split Plane Editor

Differential Pair Editor

Polygons

Hole Size Editor

3D Models

Structure Classes
When the designer selects an object in the panel
it will be highlighted in the workspace, according
to the options at the top of the panel. Each
Browse mode is described in the following
sections.
Figure 228. PCB Editor panel, currently set to
display Nets, with the highlight controls also circled.

Altium Essentials_July2013_Colby
10-July-2013

205

19.2 Browsing nets and net classes

To browse by nets or net classes, select


Nets in the PCB panel drop-down list.

Click on All Nets in the Net Classes region


of the panel to browse all nets on the PCB.
The nets are listed in the region below, and
they are also highlighted on the PCB.

If the design includes Net Classes these


are also listed. Net classes such as
have been generated automatically from
busses in the design.

Click on a net name in the Nets region to


choose it all the objects that belong to
that net are listed in the Primitives region of
the panel, and the entire net is highlighted
on the PCB.

Double-click on a net name to open the


Net dialog. Here you can change the net
name, add or remove nodes from the net
and define the color of the connection lines
for this net.

Click on an item in the Primitives region


and note that it is highlighted on the PCB,
accordance with the highlighting options at
the top of the panel.

Right-click in the Primitives section and


note that you can control which net items
are displayed.

Multi-select keys are supported. Hold SHIFT


or CTRL while clicking on entries in the list.

The Nets and the Primitives regions have


multiple columns. Note that these regions
can be sorted by clicking the heading on a
column.

Type-ahead list searching is supported.


Type on the keyboard to jump through the
list. Press ESC to abort the current typetype-ahead search and start another.
Type-ahead is always performed on the
left-most column, drag any column to make
it the left-most and search in that column.

Altium Essentials_July2013_Colby
10-July-2013

Figure 229. Browsing Nets and Net Classes in the


PCB panel.

206

19.3 Browsing components and component classes

To browse components, select


Components from the drop-down list.

Click on All Components in the


Component Classes region of the panel to
browse all components on the PCB.
Components are listed in the Components
region, and also be highlighted on the

If the design contains Component Classes,


these are also listed. When the designer
clicks on a component class, only the
components in that class are listed below
and highlighted on the PCB.

In the Components list, click a component


name to jump to and highlight that
component. All of the primitives belonging
to that component are listed in the
Component Primitives region.

Double-click a component name to open


the Component dialog, where any
component property can be edited.

Multi-select keys are supported. Hold SHIFT


or CTRL while clicking on entries in the list.

In the Component Primitives list, click on a


primitive to jump to and highlight just that
primitive.

Right-click in the Component Primitives list


to configure which primitive types are to be
displayed.

The Components and Component


Primitives regions have multiple columns.
Note that these regions can be sorted by
clicking the heading on a column.

Type-ahead list searching is supported.


Type on the keyboard to jump through the
list. Press ESC to abort the current typetype-ahead search and start another.
Type-ahead is always performed on the
left-most column, drag any column to make
it the left-most and search in that column.
Figure 230. Browsing components from the PCB
panel.

Altium Essentials_July2013_Colby
10-July-2013

207

19.4 From-To Editor


A From-To is the name given to a user-defined
pin-to-pin connection within a net. By default,
Altium Designer configures the pin-to-pin
connections in each net to give the shortest
overall connection distance (a net topology
known as Shortest), which is reflected in the
connection lines, or ratsnset. Note that the
default system-defined connection lines are
shown when the From-To Editor is used to
browse the design, only user-defined FromFrom-Tos.

To browse and edit From-Tos, choose


From-To Editor from the drop-down list.

The Nets region lists all nets in the design,


click on a net to highlight the pads in that
net.

The Nodes on Net section of the panel


all nodes in the selected Net, and the
From-Tos on Net section in the panel
details any user-defined From-Tos.

To define a From-To, first select any 2


nodes in the net in the Nodes on Net
section. The Add From-To button
becomes active, click it to create a FromFrom-To between the selected nodes.
Note that From-Tos are shown with a
dashed connection line (ratsnest).

The user-defined From-To then appears in


the From-To on Net section of the panel,
select it to display the From-To. Click the
Remove button to remove it.

To apply a set of From-Tos based on a


standard topology, such as Daisy
or Starburst, click the Generate button in
the From-To on Net section of the panel,
then select the required topology. Note
most topologies require the pads to have
properties such as Source or Terminator,
double-click on a pad to edit the Electrical
Type and set this.

From-Tos and From-To Classes can be


used in Filters and as a query in a Design Rule, they have the form
(<FirstNode> : <SecondNode>)')or InFromToClass('<FromToClassName>').
An example would be InFromTo('TEST (R16-2 : U1-27)').

Altium Essentials_July2013_Colby
10-July-2013

Figure 231. The From-To Editor in the PCB panel.

208

19.5 Split Plane Editor


Power planes can be divided, or split into
separate regions, sharing that plane between
multiple nets. A plane is split by placing lines,
arcs or fills to separate off the required area.

To browse and edit Split Planes, choose


Plane Editor from the drop-down list.

The Layers region at the top of the panel lists


all power planes in the design, click on a
plane to examine which net(s) are assigned
to that plane. Use the Layer tabs along the
bottom of the PCB editor workspace to make
that plane layer the active layer.

The Split Plane region of the panel lists all


nets assigned to that plane, if a plane shows
only 1 net assigned then that plane layer is
not currently split.

If the selected plane layer is split, multiple


nets are listed in the Split Planes region.
on a net to highlight that split region in the
workspace (ensure the correct plane layer is
the currently active layer in the PCB
workspace).

Split regions are identified by the net name


that is assigned to that split, double-click on a
split to change the net assignment.

Connected pads and vias are listed in the


Pads/Vias on Split Plane region of the panel,
click on a pad or via to highlight that object.

Figure 232. The Split Plane Editor in the PCB


panel.

Altium Essentials_July2013_Colby
10-July-2013

209

19.6 Differential Pair Editor


Differential pairs are used in differential
signaling, a signaling technology where
complementary signals are transmitted over a
pair of PCB conductors. Differential signaling
reduces emitted radiation and improves noise
immunity, giving twice the noise immunity of a
single-ended system. To be effective
differential signaling requires the signal pair to
be routed using balanced lines which are
referred to as differential pairs where the pair
of signals are routed with the same length and
impedance (within an acceptable design
tolerance). The de-facto naming standard for
differential pairs is to identify one net as
positive(+), and the other as negative(-).

To browse and edit Differential Pairs,


choose Differential Pairs Editor from the
drop-down list.

Click on All Differential Pairs in the


Differential Pair Class region of the panel
browse all differential pairs defined in the
PCB. All differential pairs are highlighted
the PCB.

If the design includes differential pairs they


are listed in the Differential Pairs region of
the panel click on a pair to highlight that
pair on the PCB, double-click on a pair to
edit the name or the nets assigned to the
pair.

The nets in the selected differential pair are


listed in the Nets region of the panel, click
on a net to highlight all objects in that net.

Right-click on an entry in each section of


the panel to access relevant commands,
double-click on an entry to edit it.

Figure 233. The Differential Pairs Editor in the PCB


panel.

Altium Essentials_July2013_Colby
10-July-2013

210

19.7 Browsing Polygons


Polygons are continuous regions of copper
defined to carry higher current, or act as a
signal shield. Polygons automatically connect
to objects in a net if configured to connect to
that net, and remain clear of all objects that
belong to other nets. Polygons can be created
from region type objects (multi-sided polygonal
objects), or from tracks and arcs. When a
polygon is defined Altium Designer calculates
those areas of the PCB that should be covered
by polygon copper and those areas that should
not be. This process is referred to as pouring
the polygon.

To browse Polygons, choose Polygons


from the drop-down list.

Click on All Polygons in the Polygon


region of the panel to browse all polygons
defined in the PCB. All polygons are
highlighted on the PCB.

If the design includes polygons they are


listed in the Polygons region of the panel
click on a polygon to highlight that polygon
on the PCB, double-click on a polygon to
edit any of the attributes of the polygon.

The primitives in the selected polygon are


listed in the Polygon Primitives section of
the panel, right-click to configure which
primitive types are to be displayed, doubledouble-click to edit a primitive.

Right-click on an entry in each section of


the panel to access relevant commands,
double-click on an entry to edit it.
The Polygon Manager can also be used to view,
edit and manage all polygons in the PCB. It also
supports configuring the order that polygons are
poured, an important step when a polygon is
completely enclosed by another polygon.

Figure 234. Browsing polygons in the PCB panel.

Altium Essentials_July2013_Colby
10-July-2013

211

19.8 Hole Size Editor


The PCB Hole Size Editor is used to view and
manage different hole sizes across the entire
PCB. Standard conditions can be defined, and
selected hole sizes can be edited.

To browse and edit holes by their size,


choose Hole Size Editor from the dropdrop-down list.

The Conditions region of the panel is used


to filter down the displayed set of objects
with holes in them based on the following
criteria:
a) Hole owner is a pad or via.
b) Hole is a Plated Through Hole (PTH)
Non-Plated Through Hole (NPTH)
c) Hole owner belongs to a component
d) Hole is round, square or slotted
e) Hole owner is currently selected

If the PCB design includes blind and


vias, the Layer Pairs region of the panel
list all layer pairs, with checkboxes to
include/exclude based on this criteria.

Based on the current settings defined in


the Conditions region of the panel, all
different hole sizes are listed in the Unique
Holes region of the panel

Click to select a unique hole size, all hole


owner-objects with a hole of that size are
listed in the Pads/Vias region of the panel.

Click once in the ToolSize column for a


given hole size, to edit that hole size. A
confirmation dialog will appear, once
confirmed all affected objects are changed.

If the selected hole size includes pads, the


Type field can be edited to change the
shape of the hole (Round, Square, Slot).

The selected holes can be toggled


between plated and non-plated using the
Plated checkbox.

Double-click on an individual pad or via in


the Pads/Vias region to edit the properties
of that pad/via.

Altium Essentials_July2013_Colby
10-July-2013

Figure 235. The Hole Size Editor in the PCB panel.

212

19.9 Browsing 3D Models


Altium Designers PCB editor supports creating
and included 3 dimensional objects in the PCB
design. Typically 3D objects are used to
represent: components; mechanical objects
such as brackets or other mounting hardware;
or the enclosure that the PCB mounts in. 3
dimensional objects are defined using Altium
Designers 3D Body objects, or imported STEPSTEP-format objects.
To display the 3D models change the
PCB workspace to 3D mode, to
switch press the 3 shortcut to switch
to 3D, press the 2 shortcut to switch
back to 2D.

To browse 3D Models, select 3D Models


from the drop-down list.

Click on All Components in the


Component Classes region of the panel to
browse all components on the PCB.
Components are listed in the Components
region, and also be highlighted on the PCB.

If the design contains Component Classes,


these are also listed. When the designer
clicks on a component class, only the
components in that class are listed below
and highlighted on the PCB.

In the Components list, click a component


name to jump to and highlight that
component. All of the models belonging to
that component are listed in the Models
region of the panel.

At the top of the Models region all Free


Models are listed. Free Models are 3D
models that have been placed directly in
PCB editor, rather than belonging to a
component footprint.

If a Model includes sub-parts, these are


listed individually in the Models region. If
Model is an imported STEP format model,
the sub-parts are presented in a treetree-structure.

Figure 236. Browsing 3D models in the PCB panel.

Each model (or sub-part) can be displayed at various levels of Opacity, cycle through the
levels by clicking the small blue cone to the right of the model, or use the Highlighted
Models dropdown to select the level.

Use the 3D Bodies Display Options check boxes to control the display of models built from:
3D Body objects, and STEP models.

Altium Essentials_July2013_Colby
10-July-2013

213

19.10

Browsing Structure Classes

Altium Designer supports defining classes of


objects within the design, allowing the designer to
work with groups or sets of objects. Classes can
be defined for a variety of object kinds, including:
Nets, Components, Layers, Pads, as well as a
number of other object kinds.
Structure Classes then allow the designer to
create a class of those object classes. For
example, a structure class could include a
component class and a number of net classes
giving a structure class for all the components
nets on a specific schematic sheet. Note that a
class can belong to more than one structure

Structure classes can be defined


automatically (based on design content),
during design transfer from schematic to
using options in the Class Generation tab of
the Options for Project dialog.

Structure classes are manually defined and


managed in the Object Class Explorer dialog
(Design menu).

To browse structure classes in the PCB


select Structure Classes from the droplist.

Existing structure classes are listed in the


Structure Classes region of the panel, click
a class to highlight all objects in that class.
Member classes of that structure class are
listed in the Classes region of the PCB panel.

Click on a class in the Classes region of the


panel to highlight all objects that are
of that class in the workspace. Member
objects are also listed in the Class Members
region of the PCB panel.

Click on an object in the Class Members


region of the panel to highlight the design
objects that make up that class member.

Structure Classes can be used to scope


design rules or to filter design objects in the
PCB workspace. For example a structure
class can be created and used to filter and
select all components and nets on a specific
schematic sheet.
Figure 237. Browsing Structure Classes in the PCB
panel.

Altium Essentials_July2013_Colby
10-July-2013

214

Module 20: PCB Layers


Altium Designer's PCB Editor is a 'layered' environment. The designer creates their board design
by placing objects on these layers. These layers are either physical layers, from which the
fabrication information is created, or system layers, such as the DRC Error Markers layer, which
displays an overlay for design rule violations. Physical layers include the signal layers, internal
plane layers, silkscreen, solder mask and paste mask layers.
While the finished board is a three-dimensional object, it is effectively designed and fabricated as
a set of flat, two-dimensional layers. To manufacture the board these layers are 'sandwiched'
together (with layers of insulation separating them), to create the thee-dimensional PCB. The
PCB Editor enables the designer to define the set of electrical layers used in this sandwich
referred to as the layer stack.

20.1 Defining the Electrical Layer Stackup


The number and order of electrical layers is defined in the Layer Stack Manager dialog.

Figure 238. Layer Stack Manager dialog.

The Layer Stack Manager allows the designer to visualize the stack up of their PCB, i.e. the
relationship between copper (signal and internal plane layers) and insulation (Core and Prepreg
layers). A picture of the layer stack can be copied to the Windows clipboard and pasted into
project documentation by right-clicking and selecting Copy to Clipboard.

20.1.1

Adding Layers

20.1.1.1 Adding a Signal or Plane Layer


Use the buttons on the right-hand side of the dialog to add signal and plane layers to the board.
The new layer is added below the layer selected in the dialog (unless the selected layer is the
Bottom Layer). Commands for adding new layers can also be found on the dialog's right-click
menu. Typically PCBs are fabricated from an even number of layers; these can be any mix of
signal and plane layers. Double-click on the layer name to define the layer name, the copper
thickness and assign the net name for plane layers.

20.1.1.2 Adding Insulation Layers


As additional layers are added to the PCB, insulation layers are automatically added. The
insulation layer can be either Core or Prepreg and this is determined by the Stack Up style
setting.
Altium Essentials_July2013_Colby
10-July-2013

215

20.1.2

Working with Layers

20.1.2.1 Editing Layer Properties


Double click on a layer name to edit the layer properties, including the name and the physical
properties.
An internal plane layer has two additional properties Net name and Pullback. The
former is the name of the net that is primarily connected to the plane. The latter
specifies the extent of copper-pullback from the edge of the board essentially a
copper void margin.

20.1.2.2 Deleting a Layer


To delete a layer, click on the name text of an existing layer and then click on the Delete button,
or right-click and choose Delete.

20.1.2.3 Editing the Stack Up Order


To change the order in which layers are defined in the PCB, click on the name of the layer and
click on the Move Up or Move Down buttons, or right-click and choose Move Up or Move
Down.

20.1.2.4 Editing the Stack Up Style


The Stack Up style defines the order in which the PCB substrate, copper and prepreg insulation
layers are fabricated as well as the finish on the PCB. The style is selected in drop down list in
the top right corner of the dialog. The choices are:

Layer Pairs

Internal Layer Pairs

Build Up.

The board finish is defined by clicking the buttons next to the Top Dielectric and Bottom
Dielectric options. Set the material, thickness and dielectric constant for the finish in the
Dielectric Properties dialog accordingly.

20.1.3

Where the Physical Properties are Used

The physical properties that are defined in the different layer dialogs, including insulation type,
thickness and dielectric constant, and the copper thickness, is used by the signal integrity
analysis feature.

20.2 Layer Display


The PCB Editor can display the PCB in 2D or 3D modes with definitions for layers, surfaces,
colors, visibility and other items known as View Configurations presented in the View
Configurations dialog (Figure 239). Access this dialog using the Design Board Layers &
Colors command, or by using the L keyboard shortcut.
The 2D viewing mode is a multi-layered environment, traditionally used for PCB
design. The 3D viewing mode is useful for examining a design both inside and out as
realistic 3D model. Note however that the 3D mode does not provide the full range of
editing functionality available in the 2D mode. Switch between 2D and 3D modes
the 2 (2D) and 3 (3D) keyboard shortcuts.

Altium Essentials_July2013_Colby
10-July-2013

216

Figure 239. Control the display of layers in the workspace, and additional object-related display options,
using defined View Configurations configurable for viewing the board in both 2D and 3D.

In the standard 2D view configuration, layer visibility and color schema are defined on the Board
Layers And Colors tab. All physical and system layers are listed according to their category
signal layers, internal planes, mechanical layers, and so on. Determine whether to enable all
layers for visibility in the workspace, or only those layers that are actually being used.
Any 2D or 3D view configurations can be saved for reuse time and again. Saved view
configurations can even be ported to another installation of Altium Designer, using the
Load view configuration command.

20.2.1

Changing the Current Layer

When placing objects using the PCB Editor, the designer needs to consider which layer they are
to be placed on. One workspace layer is current at any given time. Some design objects, such as
tracks, fills, text or single layer pads are placed on the current layer. Other design objects, such
components, multi-layer pads and vias, can be placed without regard to the current layer.
Altium Essentials_July2013_Colby
10-July-2013

217

Selection (for moving, deleting, etc) is layer-independent these operations can be performed
any primitives without having to change the current layer.
At the bottom of the main design window there is a tab for each layer that is enabled with respect
to its visibility in the workspace (in accordance with the currently-active view configuration). Each
tab also shows the color of its associated layer.

Figure 240. Each enabled layer has its own tab.

A layer can be made current by clicking on its corresponding tab. The tab will subsequently
become more 'pronounced' and the text on the tab the name of the layer will become bold.
The color swatch, to the left of the layer tabs will also change to reflect the color of the
current layer. Clicking this color swatch will give access to the View Configurations
dialog.
Use the + and - keys on the numeric keypad to cycle forward and backward through all visible
layers in the workspace. Alternatively, hold the CTRL+SHIFT keys while using the mouse wheel.
Pressing the * key on the numeric keypad will cycle forward through visible signal layers for the
design (SHIFT+* for cycling back).
Right-click on a layer tab to access a menu of layer-related commands, including the ability to
hide or highlight the layer, and change the display type for the layer name text on the tab Long
(e.g. Top Layer), Medium (e.g. Top), or Short (e.g. TL).

Figure 241. Layer-based commands from a layer tab's right-click menu.

20.2.2

Layer Sets

A typical board design could include 8 signal layers, 4 plane layers and 10 mechanical layers, as
well as the top and bottom silkscreen and ancillary layers, such as solder and paste masks.
Layer sets are an ideal way of managing the display of this large number of layers.
Layer sets are managed using the Layer Sets Manager dialog (Figure 242). Access this dialog
using the Design Manage Layer Sets Board Layer Sets command.

Altium Essentials_July2013_Colby
10-July-2013

218

Figure 242. Define sets of layers using the Layer Sets Manager dialog.

A variety of predefined, non-editable system layer sets are available &All Layers, &Signal
Layers, &Plane Layers, &NonSignal Layers and &Mechanical Layers. Alternatively,
the designer can create their own customized layer sets. To create a new layer set simply click
on New Set, give the set a name and pick the layers to include in the set. Layer sets can also be
imported and exported to and from PCB designs.
To toggle the display between different layer sets that have been defined for the active PCB
document, use the Layer Set control, to the left of the layer tabs. The popup menu will
automatically present the defined list of layer sets from which to choose.

Figure 243. Change layers using a different layer set.


Altium Essentials_July2013_Colby
10-July-2013

219

20.2.3

Layer Colors

The color assigned to any given layer can be changed at the individual layer level, simply by
clicking the color swatch associated to that layer. Color assignment is performed from within the
2D System Colors dialog.

Figure 244. Define layer colors and create color profiles in the 2D System Colors dialog.

Alternatively, the designer can define a color profile determining the colors assigned to each
and every layer. Color profiles can be saved and loaded and enable the quick application of
favorite/desired color schemes. Three predefined profiles are provided:

Default

DXP 2004

Classic
To apply a saved color profile, rather than changing just the color of the selected layer,
access the 2D System Colors dialog using the 2D Color Profiles button at the bottom
left of the View Configurations dialog (with a 2D configuration active). Then select the
profile required and click OK. The predefined profiles can also be applied from the
Board Layers And Colors tab's right-click menu.

20.3 Layer Definitions


The following sections collectively summarize the different physical layers available within the
PCB workspace.

Altium Essentials_July2013_Colby
10-July-2013

220

20.3.1

Signal Layers

There are thirty-two signal layers that can be used for track placement. Anything placed on these
layers will be plotted as solid (copper) areas on the PCB. As well as tracks, other objects (e.g.
fills, text, polygons, etc.) can be placed on these layers. The signal layers are named as follows:

Top Layer top signal layer.

MidLayer1 to MidLayer30 inner signal layers.

Bottom Layer bottom signal layer.

Signal layer names are user-definable.

20.3.2

Internal Plane Layers

There are sixteen layers available for use as power planes (named InternalPlane1 to
InternalPlane16). Nets can be assigned to these layers and multi-layer pads and vias
automatically connect to these planes. Plane layers can be split into any number of regions, with
each region being assigned to a different net. Nested split planes are supported. Internal Plane
layer names are user-definable. Internal planes are designed and output in the negative, objects
that are placed on the plane define regions of no copper.

20.3.3

Silkscreen Layers

Top Overlay and Bottom Overlay (silkscreen) layers are typically used to display
component outlines and component text (designator and comment fields that are part of the
component description).

20.3.4

Mechanical Layers

Thirty-two mechanical drawing layers (named Mechanical1 to Mechanical32) are provided


for fabrication and assembly details, such as dimensions, alignment targets, annotation or other
details. Mechanical layer items can be automatically added to other layers when printing or
plotting artwork. Mechanical layer names are user-definable. Mechanical layers can also be
paired; use this when creating library components that require side-of-board layer-related
information, such as glue dots.

20.3.5

Solder Mask Layers

Top and bottom Solder Mask layers (Top Solder, Bottom Solder) are provided for creating
the artwork used to make the solder masks. These automatically generated layers are used to
create masks for soldering, usually covering everything except component pins and vias. The
expansions for these masks can be controlled when printing/plotting by including a Solder Mask
Expansion rule, or by using the manual override feature in the pad/via dialogs. User-defined
openings in the mask can also be created by placing design objects directly on the mask layer.
These layers are designed in the negative, the visible objects become openings in the mask.

20.3.6

Paste Mask Layers

Top and bottom Paste Mask layers (Top Paste, Bottom Paste) are provided to generate the
artwork which is used to manufacture stencils to deposit solder paste onto surface mount pads
on PCBs with surface mount devices (SMDs). The size of the paste deposit is controlled by a
Paste Mask Expansion rule. It can also be defined using the manual override in the pad/via
dialogs, or by placing objects manually on the paste mask layer.

20.3.7

Drill Drawing Layer

Coded plots of board hole locations are typically used to create a drilling drawing that shows a
unique symbol for each hole size at each hole location. Individual layer pair plots are provided
when blind/buried vias are specified. Three symbol styles are available: coded symbol;
alphabetical codes (A, B, C etc.) or the assigned size.

Altium Essentials_July2013_Colby
10-July-2013

221

20.3.8

Drill Guide Layer

A drill guide plots all holes in the layout. Drill guides are sometimes called pad masters.
Individual layer pair plots are provided when blind/buried vias are specified. These plots include
all pads and vias with holes greater than zero (0) size.

20.3.9

Keep Out Layer

This layer is used to define the regions where components and routes can validly be placed. For
example, the board boundary can be defined by placing a perimeter of tracks and arcs, defining
the region within which all components and tracks must be placed. No-go areas for components
and tracks can be created inside this boundary by blocking off regions with tracks, arcs and fills.
Keepouts apply to all copper layers. The basic rule is that components cannot be placed over an
object on the Keep Out layer and routes cannot cross an object on the Keep Out layer.
There are also layer-specific keepouts, each standard design object has a keepout
attribute, and when this is enabled the object behaves as a layer-specific keepout and
is automatically excluded from Gerber and ODB++ output generation.

20.3.10 Multi Layer


Objects placed on this layer will appear on all copper layers. This is typically used for throughhole pads and vias, but other objects can be placed on this layer.

20.4 Drill Pairs


The term drill pairs refers to the two layers that a drilling operation starts from and finishes at. By
default, one Top-Bottom drill pair is defined. If blind or buried vias are to be used on the PCB,
layer pairs must be defined for these.
Management of drill pairs is performed from the Drill-Pair Manager dialog. Access this dialog
either by clicking the Configure Drill Pairs button in the Layer Stack Manager dialog, or by
using the command of the same name available from a layer tab's right-click menu.

Figure 245. Define the drill pairs if the board uses blind/buried vias.

If the design includes blind and buried vias then the drill pairs must be defined to suit
the layer stack-up style. This should be done in consultation with the board
manufacturer to ensure that the design matches their fabrication technology.

Altium Essentials_July2013_Colby
10-July-2013

222

20.5 Placing a Stackup Legend


A legend that details the current layer stackup and individual layer properties can be placed
anywhere in the workspace (typically on a mechanical layer). To do so, use the Tools Layer
Stackup Legend command.
A Layer Stackup Legend can also be placed by clicking the Place Stackup Legend
button in the Layer Stack Manager dialog.
The cursor will change to a cross-hair and legend placement mode will be entered. After clicking
once to define the first corner of the legend, press TAB to access the Layer Stackup Analyzer
Setup dialog, in which to determine the type of information to include in the legend.

Figure 246. Choose the information to include in the legend.

After enabling the required options, click OK and proceed to size the legend within the
workspace as required.

Figure 247. Stackup legend placed on a mechanical layer.

The detail in the legend is automatically determined from the current board
configuration, if the configuration changes the designer will need to re-place the
legend.

Altium Essentials_July2013_Colby
10-July-2013

223

20.6 Defining Mechanical Layers


Mechanical layers are added to the PCB workspace on the Board Layers And Colors tab of the
View Configurations dialog (for an active 2D configuration). Before a mechanical layer can be
used, it must be enabled.
To enable a new mechanical layer:
1. First disable the Only show enabled mechanical layers option, located below the list of
mechanical layers. This will result in all 32 mechanical layers being listed.
2. Scroll to the required layer and check its associated Enable option.
3. Enable the Only show enabled mechanical layers option again to remove the
clutter/noise of mechanical layers that are not being used.

Figure 248. Setting up mechanical layers in the View Configurations dialog.

The name of a layer can be changed from the default naming scheme (Mechanical
Mechanical 2, etc) to a more meaningful name, reflective of what the layer is being
used for. To do so, click to select the name, then either click again or press F2 to edit.
Use the associated Show option to control visibility of the layer in the workspace.
Enable the associated Single Layer Mode option to display design objects on the layer when
viewing in single layer mode (SHIFT+S). This option works in conjunction with the Single Layer
Mode option on the View Options tab of the dialog.
Enable the associated Linked To Sheet option for the layer to be linked to the PCB sheet. By
placing objects on mechanical layers and then linking those layers to the sheet, the designer can
create their own drawing templates that can be displayed or hidden as required, such as a
border, grid reference and title block.
The PCB sheet can be resized automatically to fit the objects on linked mechanical
layer(s) by enabling the Auto-size to linked layers command in the Board Options
dialog (Design Board Options) and using the View Fit Sheet command.
Alternatively, use the Design Board Shape Auto-Position Sheet command to
recalculate it when the contents of the linked mechanical layers change. Note that if
display of the sheet is disabled by disabling the Display Sheet option in the Board
Options dialog, then the linked mechanical layer(s) will also be hidden.

20.6.1

Mechanical Layer Pairs

Mechanical layers can be paired. Use this feature when extra detail is needed in the component
footprint, and that detail needs to change to another layer when the component is moved from
the top side of the board to the bottom side. An example of this is glue dot information.
Altium Essentials_July2013_Colby
10-July-2013

224

Mechanical pairs are configured in the Mechanical Layer Pairs dialog. Access this dialog by
either clicking the Layer Pairs button at the bottom left of the View Configurations dialog (with a
2D configuration active), or right-clicking on a layer tab and choosing the Configure Mechanical
Pairs command.

Figure 249. Defining mechanical layer pairs.

The objects placed on a mechanical layer in the PCB library will flip to its paired layer when the
component is switched to the bottom of the board.

20.7 Internal Power Planes


The PCB Editor supports up to sixteen power planes. These planes are defined in the negative
objects placed on a plane layer become regions of no copper.

20.7.1

Defining an Internal Power Plane

An internal power plane is added, named and assigned to a net from the Layer Stack Manager
dialog. When a net has been assigned to an internal plane layer, pins in that net automatically
connect to that plane layer using thermal relief connections.
The style of plane connections is defined in the Power Plane Connect Style design rule. Nets
that are not connected to the plane are isolated from it by a clearance that is defined in the
Power Plane Clearance rule.
The pullback, or region of no-copper required around the edge of the PCB, is defined in the Edit
Layer dialog. Double-click on the plane in the Layer Stack Manager dialog to display this dialog.

20.7.2

Defining a Split Power Plane

A split plane is an enclosed region on an internal plane that divides the plane into separate
electrically isolated areas. Each region is defined by placing boundary lines to encompass all the
pins on that net. Each area is then assigned to a different net which creates two or more split
planes on the one internal power plane layer.
A plane is split by placing objects (typically lines) to divide it into separate regions (select Place
Line). After stopping placement of lines on a plane, the layer is analyzed and each separate split
region detected.
The width of the placed lines defines the clearance between the split regions. Press the TAB key
during line placement to change this width.
Splits can also be created completely within another split region.
Double-click on a split region to assign it to a net using the Split Plane dialog.

Altium Essentials_July2013_Colby
10-July-2013

225

Figure 250. Split planes on an internal plane layer with the Split Plane dialog showing the net assignment
for the large split region.

Split planes can be viewed and edited using the PCB panel configured in Split Plane
Editor mode. Select the plane to display by clicking on the plane name, which then
any split planes and their nets on that power plane.

20.7.3

Re-defining a Split Plane

A split plane is defined by the set of objects that make up its boundary. Move and modify these
to redefine the split plane.
After editing split planes, recalculate and redraw internal planes using the Tools Split Planes
Rebuild Split Planes on Current Layer and Tools Split Planes Rebuild Split Planes on
All Layers commands.

20.7.4

Deleting a Split Plane

Since a split is formed when a region on a plane is isolated, removing any object that forms the
split boundary will remove that split. So, to delete split planes, delete the bounding primitives,
e.g. the lines or other primitives creating the outline of the split plane. Remember that pullback
tracks can only be deleted by removing the internal plane from the layer stack.

Altium Essentials_July2013_Colby
10-July-2013

226

Module 21: PCB Objects


A variety of objects are available for use in designing a PCB. Most objects placed in a PCB
document will define copper areas or voids. This applies to both electrical objects, such as tracks
and pads, and non-electrical objects, such as text and dimensioning. It is therefore important to
keep in mind the width of the lines used to define each object and the layer on which the object
is placed.
There are two types of objects in the PCB Editor Primitive Objects and Group Objects.
Primitive objects are the most basic elements, and include; tracks, pads, vias, fills, arcs and
strings. Anything that is made up of primitives and identified as a design object is a group object.
Examples of group objects include; components, dimensions, coordinates and polygon pours.
This module provides a brief description of the various objects that are typically used in PCB
design.

21.1 Object Placement and Editing Commonality


In Altium Designer, the process of placing an object is roughly the same regardless of the object
being placed. At its simplest level, the process is as follows:
1. Select the object to be placed from one of the toolbars or the Place menu.
2. Use the mouse to define the location of the placed object in the PCB workspace, and its size
(where applicable).
3. Right-click (or press ESC) to terminate the command and exit placement mode.

21.1.1

Editing Prior to Placement

The default properties for an object can be changed at any time from the PCB Editor Defaults
page of the Preferences dialog (Tools Preferences). These properties will be applied when
placing subsequent objects.

Access properties dialogs for


objects and edit default
values as required.

Save and load sets of


preferred/favorite object
default values.

Figure 251. Define default properties for PCB design objects.


Altium Essentials_July2013_Colby
10-July-2013

227

Default values for the objects are saved, by default, in the file ADVPCB.dft.
values can be saved in a .dft file with a different name. Controls are available to
and load .dft files, enabling the designer to create favorite default object value 'sets'.
All settings saved in, and loaded from .dft files, are user-defined defaults. Should it
be necessary, original default values can be brought back at any time using the Reset
or Reset All controls. These original default values are hard-coded.

21.1.2

Editing During Placement

A number of attributes are available for editing at the time an object is first placed. To access
these attributes, press the TAB key to bring up the object's associated Properties dialog.

Figure 252. Example properties dialog for a Fill object.

Attributes that are set in this manner will become the default settings for further object
placement unless the Permanent option on the PCB Editor Defaults page of the
Preferences dialog is enabled. When this option is enabled, changes made will affect
only the object being placed and subsequent objects placed during the same
placement session.

21.1.3

Editing After Placement

Once an object has been placed, there are a number of ways in which it can be edited.

21.1.3.1 Via an Associated Properties Dialog


The associated properties dialog for an object can be accessed after placement in one of the
following ways:

By double-clicking on the object.

By right-clicking over the object and choosing the Properties command from the context
menu.

By selecting the Edit Change command, then clicking once over the object.

21.1.3.2 Graphical Editing


This method of editing allows the designer to select a placed object directly in the workspace and
change its size, shape or location, graphically. Modification of shape and/or size (where
applicable) is performed through the use of editing 'handles', which appear once the object is
selected.
Altium Essentials_July2013_Colby
10-July-2013

228

Figure 253. Example editing handles for a selected Fill.

Clicking anywhere on an object and away from editing handles where they exist the object
can be dragged to reposition it. Depending on the type of object, it may be rotated and/or flipped
while dragging:

Press SPACEBAR to rotate the object anti-clockwise, or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the X or Y keys to flip the object along the X-axis or Y-axis respectively, and where
applicable.
Attempting to graphically modify an object with its Locked property enabled, causes a
dialog to appear asking for confirmation to proceed with the edit. Additionally, if the
Protect Locked Objects option is enabled on the PCB Editor General page of the
Preferences dialog, the object cannot be selected for graphical editing.

21.1.3.3 Via the PCB Inspector Panel


The PCB Inspector panel enables the designer to interrogate and edit the properties of one or
more design objects in the active document. Used in conjunction with appropriate filtering, the
panel can be used to make changes to multiple objects of the same kind, from one convenient
location.

21.1.3.4 Via the PCB List Panel


The PCB List panel allows the designer to display design objects in tabular format, enabling
quickly inspection and modification of object attributes. When used in conjunction with the PCB
Filter panel, it enables the designer to display just those objects falling under the scope of the
active filter allowing the targeting and editing of multiple design objects with greater accuracy
and efficiency.

21.1.4

Re-entrant Editing

The PCB Editor includes a powerful feature called re-entrant editing. This allows a second
operation to be executed using keyboard shortcuts without the current operation being
terminated. Re-entrant editing allows the designer to work more flexibly and intuitively. For
example, consider starting to place a track and then realizing that another track segment must
be deleted. There is no need to drop out of Interactive Routing mode. Press the E, D shortcut
keys, delete the required track segment then press the ESC key to return to interactively routing
the design.

21.1.5

Getting Help when Placing Objects

When placing PCB objects, the Knowledge Center and Shortcuts panels can be very helpful
sources of help information. Enabling the Auto Update feature of the Knowledge Center panel
will dynamically update the information according to the current operation being executed. And
on top of information contained in the Shortcuts panel (which also dynamically updates by
default), pressing the ~ key during a command will open a popup menu with all available
shortcuts relevant to the current operation.

Altium Essentials_July2013_Colby
10-July-2013

229

Figure 254. Using the Knowledge Center panel, Shortcuts panel, and shortcuts pop-up menu to get
additional information about specific objects during placement.

21.2 PCB Grids and Cursors


The PCB Editor incorporates a Unified Cursor-Snap System. 'Cursor-snap' is the process
whereby the physical mouse cursor's pixel position on the screen drives the position of a 'logical
cursor' in the coordinate space of a
document such as a PCB. The objective
for the system to be able to place the
logical cursor onto sensible and useful
coordinates without the user needing to
specify these in a high resolution way.
This system brings together three
sub-systems to collectively drive the way
that the cursor snaps onto given sets of
preferred coordinates: User-Definable
Grids, available in both Cartesian and
Polar flavors; Snap Guides, that can be
freely placed and provide a handy visual
cue for object alignment; and enhanced
object Snap-Points, enabling placed
objects to pull the cursor into position
Figure 255. The Snap button provides menu access to
based on cursor proximity to an object's
commands relating to all aspects of the Unified CursorSnap System.
hotspot(s). Use a combination of these
features to ensuring streamlined
placement and alignment of objects in the
PCB workspace.
Access to the Unified Cursor-Snap System as a whole, in terms of all of its constituent subsystems and controls, is made from the dedicated Snap button, located at the bottom-right of the
main workspace.

Altium Essentials_July2013_Colby
10-July-2013

230

21.2.1

User-Definable Grids

Any number of user-defined grids can be defined for the workspace, with all grid management
performed from within the Grid Manager dialog. Use this dialog to define Cartesian or Polarbased local grids by which to place design objects especially components with greater
precision. Each grid-type is fully customizable using a dedicated editing dialog. Define where in
the workspace the grid is to be located, the step size of the grid, the extent of the grid and two
levels of visual display for the grid.

Figure 256. Example Polar and Cartesian grids, summarized in the Grid Manager dialog.

Grids can be nested, allowing grids to be stacked over each other and providing the ability to
build grid hierarchy. Where, in a particular region of the workspace, a number of local placement
grids have been defined in a nested fashion, a priority level can be assigned ensuring the grid
needed is the one actually used!
A predefined, default snap grid is available Global Board Snap Grid which is
grid used in all areas of the board where a specific custom grid has not been defined.
The snapping priority of this grid is lower than any of the custom grids defined. In other
words, a custom grid will always be snapped to first, where defined. Quickly access
controls for changing the step size of the default grid by pressing G.

The cursor will only snap to a defined grid (including the default snap grid), provided
the option Snap To Grids is enabled, in the Snap Options region of the Board
dialog (Design Board Options).

21.2.2

Snap Guides

Snap Guides are special objects that are manually placed specifically for the purpose of driving
the cursor-snap on a certain axis or point assisting in object/component placement. They can
also serve as a visual indicator for general layout or alignment purposes.
A variety of different Snap Guides are available for placement directly from the Place Work
Guides sub-menu. Full configuration and management of Snap Guides is performed from within
the Snap Guide Manager dialog (Figure 257).
During an interactive process such as placing or moving, the cursor will snap to a
placed guide, at the point where that guide intersects a defined grid. Using a guide,
objects can quickly be aligned simply by dragging them until they 'snap' against the
guideline.

Altium Essentials_July2013_Colby
10-July-2013

231

Snap Guides can be one of two types Linear Guides or Point Guides. Linear Guides are just
that linear. They can be horizontal, vertical or +/- 45 Degrees. A Point Guide offers finer control
over object placement. It is simply a hotspot that is manually marked within the confines of a
defined grid. During an interactive process, such as placing or moving an object, that object's
hotspot will 'snap' to a Point Guide, when it passes into close proximity with it.

Figure 257. Examples of the various Snap Guides available to assist object placement.

The cursor will only snap to a placed linear Snap Guide provided the option Snap To
Linear Guides is enabled, in the Snap Options region of the Board Options dialog.
The cursor will only snap to a placed point Snap Guide provided the option Snap To
Point Guides is enabled.

21.2.3

Snap-Points

Every object in the PCB design space is considered to have a number of important points such
as the center of a pad, ends of tracks etc. These hot-spots are considered as Snap-Points and
are different for different types and sizes of objects. Every object generates a series of these
Snap-Points, with different Snap-Points having different attractive forces for the cursor. For
example, the endpoints and mid-points of tracks should have a higher pull than other points
along the track.
In terms of cursor-snap, there are essentially two flavors of use of these object Snap-Points:

Snap To Object Hotspots this is the same legacy Electrical Grid system found in all
previous releases of Altium Designer. It is a dual-axis system, where the mouse cursor must
be simultaneously close (on both the x and y axis) to an object's Snap-Point in order for the
object to pull the cursor towards that Snap-Point.

Altium Essentials_July2013_Colby
10-July-2013

232

Snap To Object Hotspots is only available when the Snap To Object Hotspots option
is enabled, in the Snap Options region of the Board Options dialog. The extent of
attraction (range) can be specified the distance from an object's hotspot, within
the cursor will be snapped to that hotspot.

Snap To Object Axis as an object is moved in the workspace, guides are automatically
generated by the system (dynamic alignment guides), based on the Snap-Points of existing
placed objects, within the vicinity of the cursor. The cursor can pulled into alignment with
either the horizontal or vertical position of an object's Snap-Point. This allows an object
Snap-Point that is close to the mouse cursor on one axis, but distant on the other axis, to
drive the cursor position.
Snap To Object Axis is only available provided the option Snap To Object Axis is
enabled, in the Snap Options region of the Board Options dialog. Advanced options
are available to control how different types of objects are used as Snap-Point sources.

21.2.4

Setting the PCB Cursor Appearance

By default, the PCB cursor is set as a small 90 Degree cross. This can be configured using the
Cursor Type setting, on the PCB Editor General page of the Preferences dialog (DXP
Preferences or T,P). For example, a large 90 degree cross that extends to the edges of the
design window (Large 90 option) can be handy when placing and aligning design objects. Or
alternatively a cross at 45 degrees (Small 45 option) might be helpful if the 90 degree options
are hard to see against grid lines.

21.3 True Type Font Support


The PCB Editor offers the ability to use Stroke-based or TrueType fonts for text-related objects in
a design (string, coordinate and dimension text). Choice of font is made from within the
associated properties dialog for an object.
Three Stroke-based fonts are available
Default, Sans Serif and Serif . The Default
style is a simple vector font which
pen plotting and vector photoplotting. The
Sans Serif and Serif fonts are more
complex and will slow down vector output
generation, such as Gerber. The StrokeStroke-based fonts are built into the
Figure 258. TrueType font preferences.
software and cannot be changed. All three
fonts have the full IBM extended ASCII
character set that supports English and other European languages.
When using TrueType fonts, TrueType and OpenType (a superset of TrueType) fonts found in
the \Windows\Fonts folder will be available for use. The feature also offers full Unicode
support.
The PCB Editor TrueType Fonts page of the Preferences dialog provides options for
embedding TrueType fonts when saving a design, and for applying font substitution when
loading a design.
Embedding fonts is useful when text is required to be displayed in a font that may or
may not be available on a target computer upon which the design is loaded. Font
substitution enables specification of a TrueType font to be used as a replacement
loading a design where fonts have not been embedded and where fonts may not be
available on the computer upon which the design is currently loaded.

Altium Essentials_July2013_Colby
10-July-2013

233

21.4 Primitive Objects


Primitive objects in the PCB Editor are
fundamental elements of design. They
called 'primitive' due to their raw, or most
basic nature. Certain primitive objects are
used as building blocks to create more
advanced design objects, such as arcs,
fills and tracks to create PCB 2D
component models.
Primitive objects are available for
placement in the PCB Editor, with many
object types also supported for placement
in the PCB Library Editor. Commands for
Figure 259. Certain PCB primitive objects can be placed
placement can be found in the main
from the Wiring and Utilities toolbars.
menu, as well as the Wiring toolbar, and
various drop-downs of the Utilities
toolbar. Depending on the object, placement may require several mouse clicks to define the
object's appearance.
Objects are placed on the current layer ensure the correct layer has been made the
current layer before effecting placement. An object can however be changed with
respect to the layer on which it resides after placement.

21.4.1

Track <PT>

A track is a straight solid-filled line with a defined width. Tracks are generally placed on a signal
layer, while using the Interactive Routing tool, to form the electrical interconnection between
component pads on a PCB.
To place track:
1. Click the Interactively Route Connections icon ( ) on the Wiring toolbar, or use the
Interactive Routing command.
2. Click or press ENTER to anchor the starting point for the first track segment.
3. Move the cursor to size the track and click or press ENTER to anchor the end point for this
first segment, which is also the start point for the next connected segment.
4. Position the cursor and click or press ENTER to anchor a series of vertex points that define
the series of connected track segments
5. Right-click or press ESC to end the current series of connected track segments.
6. Continue placing further tracks, or right-click or press ESC to exit placement mode.
The PCB Editor incorporates a sophisticated "look-ahead" feature that operates as
track is placed (applicable in all modes except Any Angle). The track segment that is
connected to the cursor is called a look-ahead segment and is shown in outline/draft
mode as the cursor is moved. The segment between this look-ahead segment and the
last-placed segment is the current track being placed. Use the look-ahead segment to
work out where to place the next segment and to determine where to terminate the
current segment.
While placing tracks:

Press SHIFT+SPACEBAR to cycle through various track placement modes. Each mode defines
a different corner style check the Status Bar to see which mode is active. Five modes are
available:
a) Any Angle
b) 45 Degree

Altium Essentials_July2013_Colby
10-July-2013

234

c) 45 Degree with Arc


d) 90 Degree
e) 90 Degree with Arc
The two arc in corner modes use the Routing Corners design rule to define the arc
size. If the rule includes a range in the setback size then the arc can be adjusted
this range during track placement by holding the comma key (,) to make it smaller, or
the full stop key (.) to make it bigger.

Press SPACEBAR to toggle the direction of the corner. Each placement mode (with the
exception of Any Angle) has a Start Mode and a Finish Mode.

Press the TAB key to access the Interactive Routing dialog, from where the track width and
routing via parameters can be changed on-the-fly. Values will be clipped if necessary to keep
them within the maximum and minimum constraints of the applicable rules. The dialog also
offers quick access to an assortment of other interactive routing options.

Figure 260. Change properties of the track being placed, along with other routing-based options, using
the Interactive Routing dialog.

Use the BACKSPACE key to remove the last placed track segment.

Press the * key (on the numeric keypad) to cycle through the available signal layers. A via
will be automatically added and routing will continue on the new active layer.
If a track starts at an object with a net assigned to it, the track will also be assigned to
the net. The Interactive Routing command will adhere to any rules assigned to that

Tracks can be placed as layer-specific keepout objects to act, for example, as routing
barriers. Objects defined as keepouts are ignored by output operations, such as photo
plotting and printing. A keepout track is simply a track object with its Keepout property
enabled. Either place a standard track and then enable this property, or use the
predefined keepout track placement command (Place Keepout Track).

Altium Essentials_July2013_Colby
10-July-2013

235

21.4.2

Line <PL>

On non-electrical layers, tracks are used as general-purpose line drawing elements to create
board outlines, component outlines, polygon planes, keepout boundaries, etc. A line is the same
track object that is placed during interactive routing, the difference is that lines are not "netaware". Lines do not adopt a net name when clicking on a pad or existing routing when
commencing placement of a line, and their placement is not regulated by design rules.
To place a line:
1. Click the Place Line icon ( ) from the Utility Tools drop-down of the Utilities toolbar, or use
the Place Line command.
2. Click or press ENTER to anchor the starting point for the first line segment.
3. Move the cursor to size the line and click or press ENTER to anchor the end point for this first
segment, which is also the start point for the next connected segment.
4. Position the cursor and click or press ENTER to anchor a series of vertex points that define
the series of connected line segments
5. Right-click or press ESC to end the current series of connected line segments.
6. Continue placing further lines, or right-click or press ESC to exit placement mode.
While placing lines:

Press SHIFT+SPACEBAR to cycle through various line placement modes. Each mode defines
a different corner style check the Status Bar to see which mode is active. Five modes are
available:
a) Any Angle
b) 45 Degree
c) 45 Degree with Arc
d) 90 Degree
e) 90 Degree with Arc
Since line placement is not constrained by design rules, arc sizing for the arc corner
modes is fixed the size of the arc cannot be adjusted using the , and . keys, as it can
for track placement.

Press SPACEBAR to toggle the direction of the


corner. Each placement mode (with the
exception of Any Angle) has a Start Mode and a
Finish Mode.

Press the TAB key to access the Line


dialog (Figure 11), from where the line width and
current layer can be changed on-the-fly.

Use the BACKSPACE key to remove the last


placed line segment.

Press the + and - keys (on the numeric keypad)


to cycle forward and backward through all visible
Figure 261. Change properties of the line
layers in the design respectively.
being placed using the Line Constraints

21.4.3

Pad <PP>

dialog.

Pads are typically incorporated as part of a component footprint to create the interconnection
points from component pins to the routing on the board. They can also be used as individual
objects, such as testpoints and mounting holes.
Pads can be multi-layer (appearing on all signal and plane layers), or single layer and can also
be connected to a net. Multi-layer pads can have a different shape defined on each layer and
require a drill hole to connect the various layers. Single layer pads do not include a drill hole.
To place a pad:
1. Click the Place Pad icon (
Altium Essentials_July2013_Colby
10-July-2013

) on the Wiring toolbar, or use the Place Pad command.


236

2. Position the cursor and click or press ENTER to place a pad.


3. Continue placing further pads, or right-click or press ESC to exit placement mode.
While placing pads:

If placing single layer pads, use the * key (on the numeric keypad) to cycle through enabled
signal layers. Use the + and - keys (on the numeric keypad) to cycle forward and backward
through all visible layers in the design respectively.

Press the TAB key to access the Pad dialog, from where properties for the pad can be
changed on-the-fly. The dialog provides a dynamic view of the pad, which updates in realtime as changes are made to pad properties.

Figure 262. Change properties for a pad using the Pad dialog.

a) Use the Size and Shape region to define the appearance of the pad. Choose Simple to
define a singular size and shape that is used for the pad on all affected layers in the pad
stack. Choose Top-Middle-Bottom to define a different size and shape for the pad on
the top, mid and bottom layers of the pad stack respectively. Choose Full Stack to
define the pad's appearance on a layer-by-layer basis. Editing of the full pad stack is
performed in the Pad Layer Editor dialog, accessed by clicking the Edit Full Pad Layer
Definition button.
Altium Essentials_July2013_Colby
10-July-2013

237

Figure 263. Use the Pad Layer Editor to define pad size and shape for each layer in the pad stack.

Choose from four supported pad shapes Round, Rectangular, Octagonal and
Rounded Rectangle. For the Rounded Rectangle shape, a definable corner radius can
be set anywhere in the range 0% (rectangular pad shape) to 100% (round pad shape).
b) Use the Hole Information region to specify the size of the drill hole used for a multilayer pad. Holes can be round, square, or slotted. Separate drill files are generated for
each hole kind, as well as for plated and non-plated (up to six different drill files).
The shape of the pad can be offset from the center of the defined hole using the
From Hole Center (X/Y) controls.
c) Use the Properties region to assign a net to the pad, and define the pad's electrical type
either Load, Terminator, or Source. Set also whether the hole for the pad (if applicable)
is to be plated or not.
Pads automatically connect to an internal power plane layer that is assigned the same
net name. The pad will connect in accordance with the applicable Power Plane
Connect Style design rule. If connection to power planes is not required, add another
Power Plane Connect Style design rule targeting the specific pads that are not to
connect, and set the connection style to No Connect.

21.4.3.1 Pad Designators


Pads can be labeled with a designator (usually representing a component pin number) of up to
20 alphanumeric characters in length. Pad designators will auto-increment by 1 during
placement if the initial pad has a designator ending with a numeric character. Change the
designator of the first pad, prior to placement, from the Pad dialog.
To achieve alpha or numeric designator increments other than 1, use the Paste Array
feature. Controls for this feature are provided in the Setup Paste Array dialog,
accessed by pressing the Paste Array button in the Paste Special dialog (Edit
Special).

21.4.3.2 Jumper Connections


Jumper connections define electrical connections between component pads that are not
physically routed with primitives on the PCB. These are especially useful on single layer boards,
where a wire is used to jump over tracks on the one physical layer.
Pads within a component can be labeled with a Jumper ID value from within the Pad dialog.
Pads that share the same Jumper ID and electrical net tell the system that there is a legitimate,
although physically unconnected, connection between them.

Altium Essentials_July2013_Colby
10-July-2013

238

Jumper connections are shown as curved connection lines in the PCB Editor. The
Design Rules Checker will not report jumper connections as unrouted nets.

21.4.3.3 Testpoints
Altium Designer provides full support for testpoints, allowing pads (thru-hole or SMD) to be
specified for use as testpoint locations in fabrication and/or assembly testing. A pad is nominated
for use as a testpoint by setting its relevant testpoint properties should it be a fabrication or
assembly testpoint, and on which side of the board should it be used as a testpoint. These
properties can be found in the Testpoint Settings region of the Pad dialog.
To streamline the process and alleviate the need for setting the testpoint properties of
pads manually, Altium Designer provides a method to automatically assign testpoints
based on defined design rules and using the Testpoint Manager (Tools Testpoint
Manager). This automated assignment simply sets the relevant testpoint properties for
the pad in each case.

21.4.3.4 Solder and Paste Mask Expansions


Solder and paste mask expansion values for a pad can either come directly from applicable
design rules, or can be entered in the Pad dialog. In the latter case, the values specified will
override those defined for the rule.
Partial and complete tenting of pads can be achieved by defining an appropriate value for Solder
Mask Expansion:

To partially tent a pad covering the land area only set the expansion to a negative value
that will close the mask right up to the pad hole.

To completely tent a pad covering the land and hole set the expansion to a negative
value equal to, or greater than, the radius of the pad.
Options are provided at the individual pad level, through the Pad dialog, to force
complete tenting of the pad on the top and/or bottom of the board.

21.4.4

Via <PV>

A via is used to form an electrical connection between two signal layers of a PCB. Vias are like
round pads, which are drilled and usually through-plated when the board is fabricated.
Vias can be one of the following types:

Multi-layer (Thru-Hole) this type of via passes from the Top layer to the Bottom layer and
allows connections to all internal signal layers.

Blind this type of via connects from the surface of the board to an internal signal layer.

Buried this type of via connects from one internal signal layer to another internal signal
layer.

Vias are typically placed automatically during the interactive or automatic routing processes, but
can be placed manually if required. Manually placed vias are referred to as 'free' vias.
To place a free via:
4. Click the Place Via icon ( ) on the Wiring toolbar, or use the Place Via command.
5. Position the cursor and click or press ENTER to place a via.
6. Continue placing further vias, or right-click or press ESC to exit placement mode.
While placing free vias:

Use the * key (on the numeric keypad) to cycle through enabled signal layers.

Press the TAB key to access the Via dialog, from where properties for the via can be
changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

239

Figure 264. Change properties for a via using the Via dialog.

a) Use the Diameters region to define the size of the via. Choose Simple to define a
singular size for the via on all layers in the stack. Choose Top-Middle-Bottom to define
a different size for the via on the top, mid and bottom layers of the stack. Choose Full
Stack to define the via's sizing on a layer-by-layer basis. Editing is performed in the Via
Layer Editor dialog, accessed by clicking the Edit Full Stack Via Sizes button.

Figure 265. Use the Via Layer Editor to define via size for each layer in the stack.

b) Change the drill hole size for the via as required, assign the via to a specific net, and
specify the via's Start and End layers in accordance with design requirements. By
default, the latter are set to Top Layer and Bottom Layer, giving a multi-layer via.
Change these to create a blind or buried via as necessary.
Vias automatically connect to an internal power plane layer that is assigned the same
net name, in accordance with the applicable Power Plane Connect Style design rule. If
connection to power planes is not required, add another rule of this type targeting the
specific vias that are not to connect, and set the connection style to No Connect.

Altium Essentials_July2013_Colby
10-July-2013

240

21.4.4.1 Vias and Routing


While interactively routing a connection, change routing (signal) layer using the * key (on the
numeric keypad) a via will automatically be inserted to preserve the electrical conductivity. The
via is placed in accordance with the applicable Routing Via Style design rule and drill pair
definitions.
If the net being routed is to connect to an internal power plane, press the / key (on the numeric
keypad) to place a via connecting to the appropriate power plane. This will work in all track
placement modes except 'Any Angle' mode.
When routing the design using the Situs Autorouter, vias will be placed as necessary
and in accordance with the defined (and applicable) Routing Via Style design rules.

21.4.4.2 Blind and Buried Vias


Before using blind or buried vias it is important to establish the level of support provided by the
manufacturer. Most manufacturers support blind and buried vias between what are termed 'layer
pairs'. Using this technology, a multi-layer board is fabricated as a set of thin double-sided
boards which are then 'sandwiched' together. This allows blind and buried vias to connect
between the surfaces of these boards, which become the layer pairs.
The layer pairs are defined by the layer stack configured in the Layer Stack Manager dialog
(Design Layer Stack Manager).
It is important to note that the layer pairs are dependent on the layer stack-up style.
Check with the manufacturer to ensure selection of the correct stack-up style before
designing with blind and buried vias.
With the correct stack-up style established, define the valid drill pairs. Drill pairs are set up in the
Drill-Pair Manager dialog, accessed by clicking on the Configure Drill Pairs button in the Layer
Stack Manager dialog.

Figure 266. Configure drill pairs in the Drill-Pair Manager dialog.

If a drill pair is defined for each layer pair in the design, the PCB Editor will automatically insert
the correct via type (thru-hole, blind, or buried) as the routing layer is changed while interactively
routing.

Altium Essentials_July2013_Colby
10-July-2013

241

21.4.4.3 Testpoints
Altium Designer provides full support for testpoints, allowing vias to be specified for use as
testpoint locations in fabrication and/or assembly testing. A via is nominated for use as a
testpoint by setting its relevant testpoint properties should it be a fabrication or assembly
testpoint, and on which side of the board should it be used as a testpoint. These properties can
be found in the Testpoint Settings region of the Via dialog
As with pads, via testpoints can automatically be assigned based on defined design
rules and using the Testpoint Manager (Tools Testpoint Manager).

21.4.4.4 Solder Mask Expansion


Solder mask expansion values for a via can either come directly from applicable design rules, or
can be entered in the Via dialog. In the latter case, the values specified will override those
defined for the rule.
Partial and complete tenting of vias can be achieved by defining an appropriate value for Solder
Mask Expansion:

To partially tent a via covering the land area only set the expansion to a negative value
that will close the mask right up to the via hole.

To completely tent a via covering the land and hole set the expansion to a negative value
equal to, or greater than, the radius of the via.
As with pads, options are provided at the individual via level, through the Via dialog, to
force complete tenting of the via on the top and/or bottom of the board.

21.4.5

Arc <PA> <PE> <PN> <PU>

An arc is essentially a circular track segment that can be placed on any layer. Arcs can have a
variety of uses in PCB layout. For example, they can be used when defining component outlines
on the overlay layers, or on a mechanical layer to indicate the board outline, cut outs, and so on.
They can also be used to produce curved paths while interactively routing. Arcs can be open, or
closed to create a circle (often referred to as a full circle arc).
Four different methods of arc placement are supported:

Place arc by center this method enables placement using the arc center as the starting
point.

Place arc by edge this method enables placement using the edge of the arc as the starting
point. The arc angle is fixed at 90.

Place arc by edge (any angle) this method enables placement using the edge of the arc as
the starting point. The angle of the arc can be any value.

Place full circle arc this method enables placement of a 360 (full circle) arc.
To place an arc starting at the center:
1. Click the Place Arc by Center icon ( ) from the Utility Tools drop-down of the Utilities
toolbar, or use the Place Arc (Center) command.
2. Click or press ENTER to anchor the center point of the arc.
3. Move the cursor to adjust the radius of the arc, then click or press ENTER to set it.
4. Move the cursor to adjust the start point for the arc, then click or press ENTER to anchor it.
5. Move the cursor to change the position of the arc's end point, then click or press ENTER to
anchor it and complete placement of the arc.
6. Continue placing further arcs, or right-click or press ESC to exit placement mode.
To place an arc starting at the edge:
1. Click the Place Arc by Edge icon ( ) on the Wiring toolbar, or use the Place Arc (Edge)
command.
2. Click or press ENTER to anchor the start point for the arc.
Altium Essentials_July2013_Colby
10-July-2013

242

3. Move the cursor to change the position of the arc's end point, then click or press ENTER to
anchor it and complete placement of the arc.
4. Continue placing further arcs, or right-click or press ESC to exit placement mode.
To place an arc starting at the edge (any angle):
1. Click the Place Arc by Edge (Any Angle) icon ( ) from the Utility Tools drop-down of the
Utilities toolbar, or use the Place Arc (Any Angle) command.
2. Click or press ENTER to anchor the start point for the arc.
3. Move the cursor to adjust the radius of the arc, then click or press ENTER to anchor the
center point.
4. Move the cursor to change the position of the arc's end point, then click or press ENTER to
anchor it and complete placement of the arc.
5. Continue placing further arcs, or right-click or press ESC to exit placement mode.
To place a full circle arc:
1. Click the Place Full Circle Arc icon ( ) from the Utility Tools drop-down of the Utilities
toolbar, or use the Place Full Circle command.
2. Click or press ENTER to anchor the center point of the arc.
3. Move the cursor to adjust the radius of the arc, then click or press ENTER to set it and
complete placement of the arc.
4. Continue placing further arcs, or right-click or press ESC to exit placement mode.
While placing an arc:

For all methods (excluding full circle arcs), press the SPACEBAR before defining the arc's end
point, to render the arc in the opposite direction.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Arc dialog, from where properties for the arc can be
changed on-the-fly.

Figure 267. Change properties for an arc using the Arc dialog.

Arcs can be placed as layer-specific keepout objects to act, for example, as routing
barriers. Objects defined as keepouts are ignored by output operations, such as photo
plotting and printing. A keepout arc is simply an arc object with its Keepout property
enabled. Either place a standard arc and then enable this property, or use the
predefined keepout arc placement commands, available from the Place Keepout
sub-menu.

Altium Essentials_July2013_Colby
10-July-2013

243

21.4.6

String

A string places text on the selected layer in a variety of display styles and formats, including
popular barcoding standards. As well as user-defined text, "special strings" can be used to place
board or system information on the PCB.
To place a string:
1. Click the Place String icon (

) on the Wiring toolbar, or use the Place String command.

2. Position the cursor and click or press ENTER to place a string.


3. Continue placing further strings, or right-click or press ESC to exit placement mode.
While placing a string:

Press the SPACEBAR to rotate the string anti-clockwise or SHIFT+SPACEBAR for clockwise
rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the X or Y keys to mirror the string along the X-axis or Y-axis respectively.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the String dialog, from where properties for the string can be
changed on-the-fly.

Figure 268. Change properties through the String dialog.

Enter the text to be displayed in the Text field. Text can be rendered using a Stroke or
TrueType font, or in BarCode format. Formatting options become available depending on the
font format chosen.

Altium Essentials_July2013_Colby
10-July-2013

244

When using a TrueType font, text can be displayed as inverted, with control over the
size of the border around the text. Furthermore, enabling the Use Inverted Rectangle
option provides control over the bounding rectangle for the text, including justification
and margins.

21.4.6.1 BarCode Text


Barcodes are commonly used to tag and identify PCBs. Altium Designer allows the designer to
place barcode symbols directly onto a PCB on any layer, allowing barcodes to be easily
imprinted on a PCB as part of the manufacturing process.
In the String dialog, simply enter the text required, enable the BarCode font format, and set the
related options as required.
BarCode ISO Code 39 (US Dept of Defense standard) and Code 128 (global trade identification
standard) are supported.

Figure 269. Example BarCode text.

Specify the height and width of the barcode using either a desired overall width or a
minimum barcode element width to control sizing. Whichever method is used, be sure
to use sizing that will render the barcode readable to the appropriate scanners!

The actual text string that the barcode is derived from can also be displayed by
enabling the Show Text option.

21.4.6.2 Special Strings


To assist in producing manufacturing documentation, special strings are provided. These include
strings, such as .Arc_Count and .Component_Count, that display the number of objects in
Altium Essentials_July2013_Colby
10-July-2013

245

the PCB file when the PCB document is printed or plotted. Other special strings relate to layer
names, file names and printing options. The .Comment and .Designator strings are used
when creating component footprints. The .Legend string shows a drill symbol legend when the
string is placed on the Drill Drawing layer.
To use a special string on a PCB, place a string
object and set its text to be one of the special string
names. Special string names begin with the period
full stop character '.'. The Text field (in the String
dialog) provides a drop-down listing of all special
strings both system based and those sourced from
defined project-level parameters.
The values of some special strings can only be
viewed when the relevant output is generated.
Figure 270. Access a listing of special strings
include the .Legend, .Plot_File_Name, and
from the Text field in the String dialog.
.Printout_Name, to name a few. Most special
strings can be viewed on-screen however, by
enabling the Convert Special Strings option on the View Options page of the View
Configurations dialog (Design Board Layers & Colors). For example, the special string
placed on the Top Layer of a PCB document would display on the screen as
.
When generating documentation for a PCB project and releasing into an Altium Vault,
there needs to be some way of indicating which Item and revision the documentation
relates to, as well as the configuration of the design project used in the release, and
any applicable driving variant. A set of special strings are available to manage this,
including .PCBConfigurationName, .ItemAndRevision, and .VariantName.
These special strings are not interpreted until the time the output is generated (unless
viewing the PCB in 3D, which itself is considered an output). The information supplied
by using these strings can be seen on generated output, including Gerber/ODB++
Final Artwork prints, PCB prints, PCB 3D prints, PCB 3D Video, and Assembly
drawings.

21.4.7

Fill <PF>

A fill is a rectangular object that can be placed on any layer. When placed on a signal layer, a fill
becomes an area of solid copper that can be used to provide shielding or to carry large currents.
Fills of varying size can be combined to cover irregularly shaped areas and can also be
combined with track or arc segments and be connected to a net.
Fills can also be placed on non-electrical layers. For example, place a fill on the Keep-Out layer
to designate a 'no-go' area for both autorouting and autoplacement. Place a fill on a Power
Plane, Solder Mask, or Paste Mask layer, to create a void on that layer. In the PCB Library
Editor, fills can be used to define component footprints.
To place a fill:
1. Click the Place Fill icon ( ) on the Wiring toolbar, or use the Place Fill command.
2. Click or press ENTER to anchor the first corner of the fill.
3. Move the cursor to adjust the size of the fill, then click or press ENTER to anchor the
diagonally-opposite corner and complete placement of the fill.
4. Continue placing further fills, or right-click or press ESC to exit placement mode.
A fill will 'adopt' a net name if the first corner is placed on an object which has a net
name.
While placing a fill:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Altium Essentials_July2013_Colby
10-July-2013

246

Press the TAB key to access the Fill dialog (Figure 271), from where properties for the fill can
be changed on-the-fly.

Figure 271. Change properties of the fill through the Fill dialog.

Fills can be placed as layer-specific keepout objects to act, for example, as routing
barriers. Objects defined as keepouts are ignored by output operations, such as photo
plotting and printing. A keepout fill is simply a fill object with its Keepout property
enabled. Either place a standard fill and then enable this property, or use the
predefined keepout fill placement command (Place Keepout Fill).

21.4.8

Region <PR>

A region is a polygon-type object that can be placed on any layer. It can be configured to be
positive (placed as a copper region) or negative (placed as a polygon pour cutout) or be multilayer (placed as a board cutout).
When using it as a positive region, it is similar in nature to its rectangular-based fill counterpart.
When placed on a signal layer a positive region becomes an area of solid copper that can be
used to provide shielding or to carry large currents. Positive regions can be combined with track
or arc segments and be connected to a net. Positive regions can also be placed on non-electrical
layers. For example, place a region on the Keep-Out layer to designate a 'no-go' area for both
autorouting and autoplacement. Place a region on a Power Plane, Solder Mask, or Paste Mask
layer, to create a void on that layer.
In the PCB Library Editor, positive regions can be used to create polygonal-shaped
for use in defining component footprints.
When used as a negative copper region (polygon pour cutout) it provides a polygonal void area
for use within solid polygon pours. Such a region/cutout will not be filled with copper when the
pour is flooded.
When used as a board cutout it defines areas that are actual holes through the PCB and are
independent of board layers. Board cutout regions are transferred to Gerber and ODB++ files for
manufacturing purposes. Regardless of which layer is current when creating a board cutout, it
will remain multi-layer.
To place a positive copper region:
1. Use the Place Solid Region command.
2. Position the cursor and click to anchor the starting point for the region.

Altium Essentials_July2013_Colby
10-July-2013

247

3. Position the cursor and click to anchor a series of vertex points that define the polygonal
shape of the region.
4. After placing the final vertex point, right-click or press ESC to complete placement of the
region. There is no need to "close" the polygon as the software will automatically complete
the shape by connecting the start point to the final point placed.
5. Continue placing further regions, or right-click or press ESC to exit placement mode.
To directly place a negative copper region (cutout), use the Place Polygon Pour
Cutout command. To directly place a board cutout (aperture in the board shape), use
the Design Board Shape Define Board Cutout command. The placement
process is identical to that described above. Alternatively, place a positive copper
region and then enable the Polygon Cutout or Board Cutout property as required.

If placing a negative region (polygon pour cutout) inside a solid polygon pour, ensure
repour the polygon pour afterwards.
While placing a region:

Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Use SPACEBAR to toggle direction of the corner
(start/end modes).

When using an arc corner mode, increase or decrease the arc radius using SHIFT+. (period
or full stop) or SHIFT+, (comma) respectively.

Use BACKSPACE to remove the last placed vertex point. Repeatedly use this key to 'unwind'
the outline for the polygon, right back to the initial starting point.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Region dialog, from where properties for the region can be
changed on-the-fly.

Figure 272. Change region properties through the Region dialog.

The Polygon Cutout property distinguishes a positive copper region (disabled) from a
negative copper region (enabled).

Altium Essentials_July2013_Colby
10-July-2013

248

Unlike a fill, a positive copper region will not automatically 'adopt' the net name of a
net-object it connects to. Connect to a net specifically using the Net property in the
Region dialog.

Positive copper regions can be placed as layer-specific keepout objects to act, for
example, as routing barriers. Objects defined as keepouts are ignored by output
operations, such as photo plotting and printing. A keepout region is simply a positive
region object with its Keepout property enabled. Either place a solid (positive) region
and then enable this property, or use the predefined keepout region placement
command (Place Keepout Solid Region).

21.4.9

3D Body <PB>

A 3D body is a polygon-type design object that can be placed into a library component footprint
or PCB document, on any enabled mechanical layer. It can be used to specifically define the
physical size and shape of a component both in the horizontal and vertical planes enabling
more precise and controlled component clearance checking by the Design Rule Checker. 3D
bodies are used when viewing the PCB in 3D to render a three-dimensional shape for the
component or object.
When creating 3D bodies, multiple individual 3D bodies may be used to define
relatively complex shapes. This can prove especially useful in the vertical plane, as it
allows the height of a component to be varied in different regions of that component.
The 3D body object also acts as a placeholder for embedded or linked 3D STEP model files. The
ability to handle STEP file imports in this way improves ECAD-MCAD compatibility in that it is
possible for mechanical models representing non-board mounted, free-floating design objects,
such as housings or enclosures, to be brought into Altium Designer and accurately assembled in
the 3D workspace. The benefits to this being the ability to visually and accurately verify designs,
including clearance checking between all types of 3D bodies, from directly within Altium
Designer.
To place a simple extruded 3D body in either the 2D or 3D PCB workspace:
1. Use the Place 3D Body command.
2. In the 3D Body dialog (Figure 273) that appears:
a) Ensure the Extruded option is enabled in the 3D Model Type region.
b) Use the controls in the Properties region to give the 3D body object an identifying name
(Identifier), select which side of the board the 3D body is to project from in the vertical
sense (Body Side) and select a mechanical layer on which to place it (Layer).
c) Define the Overall Height this is the distance between the surface of the board to the
top surface of the 3D body.
d) Optionally define the Standoff Height this is the distance between the surface of the
board to the bottom surface of the 3D body. In effect, the gap between 3D body and
board.
3. Click OK to close the 3D Body dialog. The cursor will change to a crosshair in 2D mode, or a
blue-cone cursor in 3D mode.
4. Position the cursor and click to anchor the starting point for the body.
5. Continue to anchor a series of vertex points that define the polygonal shape of the body.
6. After placing the final vertex point, right-click or press ESC to complete placement of the
body. There is no need to "close" the polygon as the software will automatically complete the
shape by connecting the start point to the final point placed.
7. After finishing the 3D body, the 3D Body dialog will appear again. Continue placing further
3D bodies, or click Cancel or press ESC to close the dialog and exit placement mode.
While defining body shape:

Altium Essentials_July2013_Colby
10-July-2013

249

Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Use SPACEBAR to toggle direction of the corner
(start/end modes).

When using an arc corner mode, increase or decrease the arc radius using SHIFT+. (period
or full stop) or SHIFT+, (comma) respectively.

Use BACKSPACE to remove the last placed vertex point. Repeatedly use this key to 'unwind'
the outline for the polygon, right back to the initial starting point.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the 3D Body dialog, from where properties for the 3D body can
be changed on-the-fly.

Figure 273. Change 3D body properties through the 3D Body dialog.

Use of other 3D model types, including STEP models, as well as tools available for 3D
Body management, are considered in additional and separate training modules.

21.4.10 Embedded Board Array


An embedded board array allows the designer to create a PCB panel (representing the physical
board that the PCB is to be manufactured from) as part of their PCB design project. This is also
known as panelization. This panel can accommodate an array of PCBs, linking the panel to the
original PCB design file, stepping it out the specified number of times.

Altium Essentials_July2013_Colby
10-July-2013

250

Multiple embedded board arrays can be placed and each can reference a different PCB file. By
spacing out the boards in each array and then overlaying, rotating and flipping the different
embedded arrays, any panelization arrangement can be created. This can be used to reduce
manufacturing costs by maximizing the number of PCBs per panel of PCB material.
The embedded board array(s) used to create a representation of the manufacturing
panel should be placed on a separate PCB document within the existing or alternate
PCB project. This document should be considered as the manufacturing 'hub' for other
PCB documents that contain the actual designs.
To place an embedded board array:
1. Use the Place Embedded Board Array/Panelize command.
2. In the Embedded Board Array dialog (Figure 274) that appears:
a) Browse to, and select the PCB Document to reference.
b) Use the Column Count and Row Count fields to control how many instances of the
referenced board are included in the panel.
c) Use the width and height fields to control horizontal and vertical spacing between board
instances respectively.
d) Specify a rotation (0, 90, 180, 270) and/or mirroring as required.
3. Position the lower-left corner of the array at the required location and click or press ENTER to
complete placement.
4. The Embedded Board Array dialog will appear again. Continue placing further embedded
board arrays, or click Cancel or press ESC to close the dialog and exit placement mode.
A 'placeholder' embedded board array can be placed without choosing a reference
PCB design and configuring options. Simply click OK when the dialog appears a
generic rectangular outline for the array will appear ready for placement.
While placing an embedded board array:

Press the SPACEBAR to rotate the embedded board array. Rotation is anti-clockwise and in
steps of 90.

Press the L key to flip the embedded board array to the other side of the board.

Press the TAB key to access the Embedded Board Array dialog, from where properties for
the array can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

251

Figure 274. The Embedded Board Array dialog.

When building a panel using multiple embedded board arrays each referencing a
different PCB design file the layer stackup for each board must be the same.

Embedded board arrays are examined in greater detail in an additional and separate
training module.

21.4.11 Room <DMR> <DMM>


A room is a region that assists in the placement of components. Rectangular or polygonal rooms
can be placed on either the top or bottom layer of the board and can either be placed empty
associating components at a later stage or placed around components in the design,
automatically associating them to the room.
A Room Definition rule will automatically be created and assigned to a room when
placed. If placed away from components, the initial scope of the rule will be set to All.
To place a rectangular room:
1. Click the Place Rectangular Room icon ( ) from the Place Room drop-down of the
toolbar, or use the Design Rooms Place Rectangular Room command.
2. Click or press ENTER to anchor the first corner of the room.
3. Move the cursor to adjust the size of the room, then click or press ENTER to anchor the
diagonally-opposite corner and complete placement.
4. Continue placing further rooms, or right-click or press ESC to exit placement mode.
To place a polygonal room:
1. Click the Place Polygonal Room icon ( ) from the Place Room drop-down of the Utilities
toolbar, or use the Design Rooms Place Polygonal Room command.
2. Position the cursor and click to anchor the starting point for the room.
3. Position the cursor and click to anchor a series of vertex points that define the polygonal
shape of the room.
Altium Essentials_July2013_Colby
10-July-2013

252

4. After placing the final vertex point, right-click or press ESC to complete placement of the
room. There is no need to "close" the polygon as the software will automatically complete the
shape by connecting the start point to the final point placed.
5. Continue placing further polygonal rooms, or right-click or press ESC to exit placement mode.
By placing a room rectangular or polygonal around one or more components, so
that they fall completely within its boundaries, the components will automatically be
associated to the room. The scope or query created for the room's definition rule
depends on whether all components are part of an existing component class or not. If
they are, then this component class will be used. If not, a new component class is
created, with these components as its members. It is therefore possible to have
multiple rooms, each with a scope that targets a particular component class, and have
one or more mutual component members between those classes.
While placing a room:

For a polygonal room:


a) Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Use SPACEBAR to toggle direction of the
corner (start/end modes).
b) When using an arc corner mode, increase or decrease the arc radius using SHIFT+.
(period or full stop) or SHIFT+, (comma) respectively.
c) Use BACKSPACE to remove the last placed vertex point. Repeatedly use this key to
'unwind' the outline for the polygon, right back to the initial starting point.

For either type of room, press the TAB key to access the Edit Room Definition dialog, from
where the associated Room Definition rule for the room object can be changed on-the-fly.

Figure 275. Edit the Room Definition rule associated to the room.

Use the dialog to change the room's scope and related constraints such as upon which layer
the room is placed and whether it exists to keep objects inside or outside its boundaries.

Altium Essentials_July2013_Colby
10-July-2013

253

Rooms are examined in greater detail in an additional and separate training module,
including automatic creation of rooms from selected components, room slicing and
room wrapping.

21.5 Group Objects


A group object is any set of primitives
which has been defined to behave as an
object. These may be user-defined, such
as components and polygon pours, or
system-defined, such as coordinates and
dimensions. A group object can be
manipulated as a single object within the
workspace, for example it can be placed,
selected, copied, changed, moved and
deleted.
Group objects are available for placement
in the PCB Editor, with the coordinate
object also supported for placement in the
PCB Library Editor. Commands for
placement can be found in the main
menu, as well as the Wiring toolbar, and
various drop-downs of the Utilities
toolbar. Depending on the object,
placement may require several mouse
clicks to define the object's appearance.

Figure 276. Certain PCB group objects can be placed


from the Wiring and Utilities toolbars.

Objects are placed on the current layer ensure the correct layer has been made the
current layer before effecting placement. An object can however be changed with
respect to the layer on which it resides after placement.

21.5.1

Component <PC>

A PCB 2D/3D component model represents the physical component in the PCB domain. The
component consists of a 2D footprint and any additional 3D body information. The 2D footprint
may include such items as pads for connecting to the pins of a device, a physical outline of the
package and device mounting features.
Depending on the component management methodology in use, placement of PCB
2D/3D component models can be performed in different ways. For a PCB 2D/3D
component stored in a PcbLib, IntLib, DbLib, or SVNDbLib, the component can be
placed from a library panel, or by using the menu/toolbar command. When using vaultvault-based components, a PCB Component Item (the child PCB 2D/3D domain
used by a parent Component Item) cannot be placed directly on the PCB document. In
this case, placement of the required Component Items is made from the Vault
Explorer panel onto the relevant schematic document(s), then the design brought
across to the PCB domain using the design Synchronizer.
To place a PCB 2D/3D component from the menu/toolbar:
1. Click the Place Component icon ( ) on the Wiring toolbar, or use the Place Component
command.
2. The Place Component dialog immediately appears.

Altium Essentials_July2013_Colby
10-July-2013

254

Figure 277. Place Component dialog.

a) Specify the PCB component to place. The component itself can be specified directly by
setting the Placement Type to Footprint and entering the name of the component in
the Footprint field. To browse PCB components, click the button to access the
Browse Libraries dialog PcbLib and IntLib (footprint view) Available Libraries will be
listed for browsing.
Alternatively, set the Placement Type to Component, and enter/search for the
schematic component to which the required PCB component model is linked. When
using the Browse Libraries dialog, SchLib, IntLib, DbLib and SVNDbLib Available
Libraries will be listed for browsing.
b) Set the appropriate designator and any comment text.
3. Click OK to close the dialog the component will appear floating on the cursor.
4. Position the component at the location required and click or press ENTER to effect placement.
5. Continue placing further instances of the same component or right-click or press ESC to exit.
6. The Place Component dialog will reappear. Either browse for a different component footprint
to place or click Cancel or press ESC to exit placement mode.
While placing a PCB 2D/3D component:

Press SPACEBAR to rotate the component anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the X or Y keys to flip the component along the X-axis or Y-axis respectively.

Press the L key to flip the component to the other side of the board.

Press the TAB key to access the Component dialog, from where the component's local
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

255

Figure 278. Modify local properties for the component being placed through its associated Component
dialog.

21.5.1.1 Component Designators


PCB 2D/3D component designators will auto-increment by 1 during placement if the initial
component has a designator ending with a numeric character. Change the designator of the first
component, prior to placement, from the Place Component dialog, or during placement from the
Component dialog (press TAB).
To achieve alpha or numeric designator increments other than 1, use the Paste Array
feature. Controls for this feature are provided in the Setup Paste Array dialog,
accessed by pressing the Paste Array button in the Paste Special dialog (Edit
Special).

A component can be converted to its constituent primitive objects using the Tools
Convert Explode Component to Free Primitives command.

Altium Essentials_July2013_Colby
10-July-2013

256

21.5.2

Coordinate <PO>

A coordinate is used to mark the X (horizontal) and Y (vertical) distance of a point in the design
workspace with respect to the current origin. Coordinates can be placed on any layer.
The current origin can be set to be any point in the PCB workspace by selecting Edit
Origin Set, and clicking on the location for the new origin. To set the current origin
back to the absolute origin ((0,0) in the lower-left corner of the workspace), select Edit
Origin Reset.
To place a coordinate:
1. Click the Place Coordinate icon ( ) from the Utility Tools drop-down of the Utilities
or use the Place Coordinate command.
2. Position the cursor and click or press ENTER to place a coordinate.
3. Continue placing further coordinates, or right-click or press ESC to exit placement mode.
While placing a coordinate:

Press the L key to flip the coordinate to the other side of the board.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Coordinate dialog, from where the coordinate's properties
can be changed on-the-fly.

Figure 279. Coordinate dialog.

The coordinate group object is comprised of a string specifying the actual X,Y position
and a point marker (small cross of two tracks). A coordinate can be converted to its
constituent primitive objects using the Tools Convert Explode Coordinate to
Free Primitives command. Explode a coordinate to reposition the position string
without changing the location of the marker.

21.5.3

Dimension <PD>

A dimension object is used to add valuable dimensioning information to a board design. Such
objects can be placed on any layer, but are typically placed on a particular mechanical layer.
A variety of dimension objects are supported, to cater for different design requirements.

Altium Essentials_July2013_Colby
10-July-2013

257

A dimension object is comprised of one or more string and track segments. A


dimension can be converted to its constituent primitive objects using the Tools
Convert Explode Dimension to Free Primitives command.

A dimension's value (where applicable) automatically updates as its start or end points
are moved. Likewise, if the position of an object that a reference point of the
is anchored to is changed, the dimension will update and expand/contract to reflect
this. For a radius/diameter-based dimension, the value automatically updates as the
diameter of the reference arc or circle changes.

21.5.3.1 Angular dimension <PDA>


An angular dimension allows for the dimensioning of angular distances.
To place an angular dimension:
1. Click the Place Angular Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Angular command.
2. Position the cursor over the first reference object and click or press ENTER to anchor the first
dimension reference (the inside reference).
3. Move the cursor to the next required position associated with the first object being
dimensioned and click or press ENTER to anchor the second dimension reference (the
outside reference).
4. Position the cursor over the second reference object and click or press ENTER to anchor the
third dimension reference (the inside reference).
5. Move the cursor to the next required position associated with the second object being
dimensioned and click or press ENTER to anchor the fourth dimension reference (the outside
reference).
6. Place the dimension text for the angle as desired and then click or press ENTER to complete
placement.
7. Continue placing further angular dimensions, or right-click or press ESC to exit placement
mode.
While placing the dimension:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Angular Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

258

Figure 280. Angular Dimension dialog.

21.5.3.2 Baseline dimension <PDB>


A baseline dimension allows for the dimensioning of a linear distance of a collection of
references, relative to a single base reference. The first point chosen is the 'base'. All
subsequent points are relative to this first point. The dimension value in each case is therefore
the distance between each reference point and the 'base', measured in the default units. The
references may be objects (tracks, arcs, pads, vias, text, fills, polygons or components) or points
in free
space.
To
place
a baseline dimension:
1. Click the Place Baseline Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Baseline command.
2. Position the cursor and click or press ENTER to anchor the dimension start point (this is the
first reference point or 'base').
3. Move the cursor to the required end point and click or press ENTER to anchor the dimension
end point (this is the second reference point).
4. The text can now be initially positioned. Click or press ENTER when the text is in the desired
position to effect placement.
5. Move the cursor to subsequent reference points and click or press ENTER twice to effect
placement (first click to anchor to a reference and second click after positioning the text).
6. When all required references in the baseline dimension have been covered, right-click or
press ESC to exit placement mode.
While placing the dimension:

Press SPACEBAR to rotate the dimension anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Baseline Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

259

Figure 281. Baseline Dimension dialog.

21.5.3.3 Center dimension <PDC>


A center dimension allows for the center of an arc or circle to be marked.
To place a center dimension:
1. Click the Place Center Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Center command.
2. Position the cursor and click or press ENTER to anchor the dimension to the desired arc or
circle.
3. Move the dimension until the desired sizing is achieved then click or press ENTER to
complete placement.
4. Continue placing further center dimensions, or right-click or press ESC to exit placement
mode.
While placing the dimension:

Press SPACEBAR to rotate the dimension anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Center Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

260

Figure 282. Center Dimension dialog.

21.5.3.4 Datum dimension <PDT>


A datum dimension allows for the dimensioning of a linear distance of a collection of objects,
relative to a single reference object. The first object chosen is the 'base'. All subsequent objects
are relative to this first object. The dimension value in each case is therefore the distance
between each reference object and the 'base', measured in the default units. The references
may be tracks, arcs, pads, vias, text, fills, polygons or components.
To place a datum dimension:
1. Click the Place Datum Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Datum command.
2. Position the cursor and click or press ENTER to anchor the dimension start point (this is the
first reference object or 'base').
3. Move the cursor to the next required object and click or press ENTER to anchor the
dimension end point (this is the second reference object).
4. Move the cursor to subsequent reference objects and click or press ENTER. When all desired
objects have been selected, right-click or press ESC.
5. The text can now be initially positioned. Click or press ENTER when the text is in the desired
position to complete placement and exit placement mode.
While placing the dimension:

Press SPACEBAR to rotate the dimension anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Datum Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

261

Figure 283. Datum Dimension dialog.

21.5.3.5 Leader dimension <PDE>


A leader dimension allows for the labeling of an object, point or area. There are three types of
leader available: Standard, Round and Square, which reflect the label text either being
encapsulated in a circle or square or not at all. The pointer can be an arrow or a dot.
To place a leader dimension:
1. Click the Place Leader Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Leader command.
2. Position the cursor and click or press ENTER to anchor the dimension start point (this is the
location of the arrowhead or dot).
3. Move the cursor and click or press ENTER to anchor a series of vertex points that define the
shape of the leader.
4. After placing the final required vertex point, right-click or press ESC to effect placement of the
text label and exit placement mode.
While placing the dimension:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Leader Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

262

Figure 284. Leader Dimension dialog.

21.5.3.6 Linear dimension <PDL>


A linear dimension places dimensioning information on the current PCB layer, with respect to a
linear distance. The dimension value is the distance between the start and end markers
(reference points selected by the user) measured in the default units. The references may be
objects (tracks, arcs, pads, vias, text, fills, polygons or components) or points in free space.
To place a linear dimension:
1. Click the Place Linear Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Linear command.
2. Position the cursor and click or press ENTER to anchor the dimension start point (this is the
first reference point).
3. Move the cursor and click or press ENTER to anchor the dimension end point (this is the
second reference point).
4. The text can now be initially positioned. Move the cursor and click or press ENTER when the
text is in the desired position, to complete dimension placement.
5. Continue placing further linear dimensions, or right-click or press ESC to exit placement
mode.
While
placing the dimension:

Press SPACEBAR to rotate the dimension anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Linear Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

263

Figure 285. Linear Dimension dialog.

21.5.3.7 Linear diameter dimension <PDI>


A linear diameter dimension allows for the dimensioning of an arc or circle with respect to the
diameter, rather than the radius. The dimension can be placed either internally or externally.
To place a linear diameter dimension:
1. Click the Place Linear Diameter Dimension icon ( ) from the Place Dimension drop-down
of the Utilities toolbar, or use the Place Dimension Linear Diameter command.
2. Position the cursor and click or press ENTER to anchor the dimension to the desired arc or
circle. The position of the dimension is determined by the alignment angle for the dimension.
3. Move the dimension text to the desired position (either internal or external) and click or press
ENTER to complete placement.
4. Continue placing further linear diameter dimensions, or right-click or press ESC to exit
placement mode.
While placing the dimension:

Press SPACEBAR to rotate the dimension anti-clockwise or SHIFT+SPACEBAR for clockwise


rotation. Rotation is in accordance with the value for the Rotation Step, defined on the PCB
Editor General page of the Preferences dialog.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Linear Diameter Dimension dialog, from where the
dimension's properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

264

Figure 286. Linear Diameter Dimension dialog.

21.5.3.8 Radial dimension <PDR>


A radial dimension allows for the dimensioning of a radius with respect to an arc or circle. The
dimension can be placed either internally or externally.
To place a radial dimension:
1. Click the Place Radial Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Radial command.
2. Position the cursor and click or press ENTER to anchor the dimension to the desired arc or
circle.
3. Move the dimension's arrow pointer to the desired location around the arc or circle. The
can be placed either inside or outside and movement is in accordance with the Angular
value in the Radial Dimension dialog (Figure 287). When the required position has been
attained, click or press ENTER to lock the arrow in place.
4. The text can now be initially positioned in relation to the tail of the arrow pointer. Move the
text into the required position and click or press ENTER to complete placement.
5. Continue placing further radial dimensions, or right-click or press ESC to exit dimension
placement mode.
While placing the dimension:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Radial Dimension dialog, from where the dimension's
properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

265

Figure 287. Radial Dimension dialog.

21.5.3.9 Radial diameter dimension <PDM>


A radial diameter dimension allows for the dimensioning of an arc or circle with respect to the
diameter, rather than the radius. The dimension can be placed either internally or externally.
To place a radial diameter dimension:
1. Click the Place Radial Diameter Dimension icon ( ) from the Place Dimension drop-down
of the Utilities toolbar, or use the Place Dimension Radial Diameter command.
2. Position the cursor and click or press ENTER to anchor the dimension to the desired arc or
circle.
3. Move the dimension's arrow pointer to the desired location around the arc or circle. The
can be placed either inside or outside and movement is in accordance with the Angular
value in the Radial Diameter Dimension dialog (Figure 288). When the required position has
been attained, click or press ENTER to lock the arrow in place.
4. The text can now be initially positioned in relation to the tail of the arrow pointer. Move the
text into the required position and click or press ENTER to complete placement.
5. Continue placing further radial diameter dimensions, or right-click or press ESC to exit
placement mode.
While placing the dimension:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Radial Diameter Dimension dialog, from where the
dimension's properties can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

266

Figure 288. Radial Diameter Dimension dialog.

21.5.3.10 Standard dimension <PDD>


A standard dimension places dimensioning information on the current PCB layer. The dimension
value is the distance between the start and end markers, measured in the default units.
The standard dimension is considered more of a legacy dimensioning tool,
with the enhanced functionality provided by the linear, and other dimension objects.
To place a standard dimension:
1. Click the Place Standard Dimension icon ( ) from the Place Dimension drop-down of the
Utilities toolbar, or use the Place Dimension Dimension command.
2. Position the cursor and click or press ENTER to anchor the dimension start point.
3. Move the cursor to the required end point, then click or press ENTER to anchor this point and
complete placement.
4. Continue placing further standard dimensions, or right-click or press ESC to exit placement
mode.
While placing the dimension:

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Dimension dialog, from where the dimension's properties
can be changed on-the-fly.

Altium Essentials_July2013_Colby
10-July-2013

267

Figure 289. Dimension dialog.

21.5.4

Polygon Pour <PG>

A polygon pour creates a solid, hatch-filled (lattice) or outline-only area on the selected PCB
layer. Also referred to as copper pours, they are similar to area fills, except that they can fill
irregularly shaped areas of a board and can connect to a specified net as they are poured.
On a signal layer, a solid polygon pour might be placed to define an area for carrying large
power supply currents, or as a ground-connected area for providing electro-magnetic shielding.
Hatched polygon pours are commonly used for ground purposes in analog designs.
On a non-signal layer, solid or outline-only polygon pours might be used to distinguish between
specific functional areas of a board.
To place a polygon pour:
1. Click the Place Polygon Plane icon ( ) on the Wiring toolbar, or use the Place Polygon
Pour command. The Polygon Pour dialog will immediately appear.

Figure 290. Polygon Pour dialog.


Altium Essentials_July2013_Colby
10-July-2013

268

2. From the dialog, choose which Fill Mode to use:


a) Solid (Copper Regions) this mode fills the inside of the polygon boundary with one or
more solid copper regions. The number of copper regions used depends on the number
of individual areas created inside the polygon by existing net objects, such as tracks and
pads.
b) Hatched (Tracks/Arcs) this mode fills the inside of the polygon boundary using tracks,
arranged horizontally, vertically, or in a hatched/lattice fashion (45 or 90). Pads within
the boundary can be surrounded using arcs (arranged in circular fashion) or tracks
(arranged in octagonal fashion).
c) None (Outlines Only) this mode leaves only the outline track of a placed polygon pour
displayed. The interior of the pour is not filled. This is a useful mode during the design
phase, as system performance is not degraded by having to wait for polygons to be
repoured. Prior to generation of manufacturing output, the polygons can be repoured
with the desired fill type.
As the Fill Mode is changed, the dialog will dynamically update to show a graphical
example of pouring with that mode and the options applicable to that mode.
3. Define pour options as required, then click OK to close the dialog.
4. Position the cursor and click to anchor the starting point for the polygon pour.
5. Position the cursor and click to anchor a series of vertex points that define the polygonal
shape of the pour.
6. After placing the final vertex point, right-click or press ESC to complete placement of the
polygon pour. There is no need to "close" the polygon as the software will automatically
complete the shape by connecting the start point to the final point placed.
A polygon pour can also be created from selected track and arc primitives using the
Tools Convert Create Polygon from Selected Primitives and Tools Polygon
Pours Define from selected objects commands. The primitives must be on the
same layer and form a closed boundary.
While defining the shape of the pour:

Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Use SPACEBAR to toggle direction of the corner
(start/end modes).

When using an arc corner mode, increase or decrease the arc radius using SHIFT+. (period
or full stop) or SHIFT+, (comma) respectively.

Use BACKSPACE to remove the last placed vertex point. Repeatedly use this key to 'unwind'
the outline for the polygon, right back to the initial starting point.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Polygon Pour dialog, from where properties for the pour can
be changed on-the-fly.
When placed in occupied board space on a signal layer, polygon pours will automatically pour
copper around any existing electrical objects (tracks, pads, vias, fills, etc) belonging to one or
more different nets, while maintaining the clearances specified in pertinent design rules. The Net
Options region of the Polygon Pour dialog provides a drop-down field with options that
determine pour behavior when poured over net objects belonging to the same net as the copper
pour.
If a polygon is placed on a non-signal layer it will not be poured around existing
as these objects are not assigned to a net and therefore do not belong to anything.

Altium Essentials_July2013_Colby
10-July-2013

269

To control how a polygon pour connects to component pads when the Connect to Net
option is used, include a Polygon Connect Style design rule. Via connections to both
hatched and solid signal layer polygon pours are also controlled by the Polygon
Connect Style design rule.

If a pour does not enclose any pads on the selected net, it is viewed as being entirely
dead copper. Dead copper is the term used to define an area of a polygon pour that
does not connect to the specified net due to objects belonging to different nets
(tracks, pads and vias) preventing the polygon from pouring as one continuous area.

Polygon pours are examined in greater detail in an additional and separate training
module, including slicing, shelving, and management using the Polygon Pour

Altium Essentials_July2013_Colby
10-July-2013

270

Module 22: Introduction to Classes and


Rooms
22.1 Object Classes
When writing DRC rules, or even just attempting to select a specific group of common objects, A
very convenient approach is to use a class. For example, when specifying a Width constraint for
power and ground nets, you could call out the individual nets with a rule such as:
(InNet('GND') OR InNet('5V0') OR InNet('3V3'))
And this will properly scope the nets, but you will need to type this each time if you need to use
this grouping in other rules. Alternatively you can combine these nets into a class named Power
and target the same group of nets with a rule such as:
(InNetClass('Power'))
This simplifies DRC rule creation by scoping a rule to a single class name. The results in an
efficient and structured approach to DRC rule creation and maintenance.
If an object class has been defined, it can be used as a query within a DRC rule's object match
(or rule scope). Object classes are defined in the Object Class Explorer dialog where all existing
classes can be viewed, modified, or renamed, and new classes can be added.
Classes can be created for:

Nets

Components

Layers

Pads

From-Tos

Differential Pairs

Design Channels

Polygons

Structures

Using Net Classes, it becomes easy to constrain a common group of Nets for Clearance and
Width. Likewise, Component Classes can be used for specifying special Clearance rules for a
group of fine pitch components. A Pad Class can be a convenient way to target mounting holes
for a special Clearance rule or Hole Size. Similarly Polygon Classes can be used to specify a
special Connect Style rule for a sub-set of all Polygons in the layout.
Classes simplify DRC rule creation by scoping a rule to a single class name rather
several individual object names. Classes also provide a convenient means of
grouping items together for quick filtering and selection.

22.1.1

Object Class Explorer

To create a new object class, access the command Design Classes to open and display the
Object Class Explorer dialog as shown in Figure 291

Altium Essentials_July2013_Colby
10-July-2013

271

Figure 291 Object Class Explorer

To make use of the Object Class Explorer, Right Click on a specific class type (i.e., Net
Classes, Component Classes, etc...) in the left frame of the Object Class Explorer and
choose Add Class from the resulting popup menu. Next, Right Click on the resulting New
Class and choose Rename Class from the resulting popup menu, then enter a descriptive
name for the new class. The new class is created and named, but has no member yet.

Note that the Members column is blank, and the Non Members column contains all
objects of a specific type.

In order to assign a specific set of objects to the new class, select them individually using the left
mouse button and continuously holding down the Ctrl key. Then click the
button as seen in
Figure 292 to transfer the highlighted nets over to the Members column. Click the Close button
in the lower right corner of the panel to exit the Object Class Explorer.

Altium Essentials_July2013_Colby
10-July-2013

272

Figure 292 Transferring Non Members over to the Members column

Alternatively, objects which are actively selected in the PCB editor can be added to a respective
class type. For example, in Figure 293 all capacitors have been selected in the PCB editor, and
are ready to transfer to the Members column by clicking the
button. This can be far more
convenient than individually selecting objects from the Non Members column in situations where
it is easier to navigate the design graphically or parametrically within the PCB Editor and select
multiple objects prior to opening the Object Class Explorer dialog

Altium Essentials_July2013_Colby
10-July-2013

273

Figure 293 Transferring Selected Objects in PCB Editor to Members Column

22.1.1.1 Component Class Generator


When viewing Component Classes within the Object Class Explorer dialog, the Class
Generator button in the lower left corner becomes active. When clicked, the Class Generator
button displays the Component Class Generator dialog as shown in Figure 294. This allows you
to quickly create a component class containing components based on selected criteria.

Figure 294 Component Class Generator

Altium Essentials_July2013_Colby
10-July-2013

274

22.2 Rooms
A room is an object used to graphically define a physical region on the PCB, typically to
constrain the physical location of a specific group of components. Components can be
constrained to either be kept within, or kept out of, a room. When a room is moved, all
components assigned to the room can move with it.
When a design update is performed and design objects are transferred from the Schematic to
the PCB, by default, a room is automatically created for the components of each individual
Schematic Sheet. The intent being that all components of an individual Schematic Sheet can
conveniently moved together as a group. The automatic creation of rooms can be controlled
within the Project Options.
Rooms can also be used to define a physical region on the board where only specific DRC rules
are active. This can be useful when fine pitch component packages such as a BGA require a
smaller routing Clearance, Width, and Via Size constraints relative to the rest of the board area.
In the context of this course, Rooms will only be discussed and explored on a basic level. The
full capabilities and power of rooms are covered more in-depth in later courses.

Figure 295 Rectangular Room containing a group of Components

22.2.1

Defining Rooms

Rooms are placed using the commands in the Design Rooms sub-menu, or using the
Room tools on the Utilities toolbar.

A Room Definition design rule is created for each room that is placed.

Once a room is placed you define the components associated with it (and whether they are
to be kept in or kept out), as the scope, or query, for that rule.

Altium Essentials_July2013_Colby
10-July-2013

275

To define the components associated with a room, double-click on the room to display the
Room Definition dialog. This dialog can also be accessed in the Placement region of the
Rules dialog. Set the scope of the rule to the required component, component class or
footprint.

22.2.1.1 Moving components into a room

Components that have been assigned to a room can be automatically moved into it by
selecting the Tools Component Placement Arrange Within Room command, or
clicking the Arrange Components Within Room button in the Alignment tools in the Utilities
toolbar. You will be prompted to click on the room.

22.2.1.2 Moving rooms

Once component(s) have been assigned to a room, they move when the room is moved. To
move a room without moving the components, temporarily disable the Room Definition rule
in the Placement section of the PCB Rules& Constraints dialog.

If a component is moved such that it is in violation of the Room Definition rule, it is displayed
with a Design Rule Check (DRC) error marker.

22.2.1.3 Using a Room to scope a DRC Rule

Rooms have a dual nature in that they are defined as a rule themselves, but they can also
be used as the scope of other design rules.

To use a room as the scope of another rule, for example to define a region where you
require larger or tighter routing clearances, you first set the Room rule to target nothing by
setting its rule Query to something like: (False).

You can then define a Routing Clearance design rule that uses a Query such as:
(WithinRoom(MyRoomDefinition)).

Examples of where you might use the query (WithinRoom()) include Width, Clearance
and Via Style design rules, defining exactly the area of the PCB were that rule is to be
applied.

22.2.1.4 Polygon Rooms


As well as rectangular shaped rooms, polygonal rooms can also be placed. To place a
polygonal room, access the command Design Rooms Place Polygon Room

As with rectangular rooms, the room can either be placed empty and components associated
at a later stage, or it can be placed around components in the design, automatically
associating them to the room.

While defining the shape of the room, use the SPACEBAR to cycle through various corner
modes. Modes available are: 90 Degrees, 45 Degrees and Any Angle.

Press TAB during placement to open the Edit Room Definition dialog, from where you can
define the scope and constraints of the room.

Double-click on a placed room to open the Edit Room Definition dialog, in order to edit its
rule properties. Alternatively, use the PCB Rules and Violations panel to gain access to a
particular room definition.

Altium Essentials_July2013_Colby
10-July-2013

276

Module 23: Introduction to PCB Design Rules


Altium Designer's PCB Editor uses the concept of Design Rules to define the requirements of a
design. These rules collectively form an 'instruction set' for the PCB Editor to follow. They cover
every aspect of the design from routing widths, clearances, plane connection styles, routing via
styles, and so on, and many of the rules can be monitored in real-time by the online Design Rule
Checker (DRC).
Design rules target specific objects and are applied in a hierarchical fashion, for example, there
is a clearance rule for the entire board, then perhaps a clearance rule for a class of nets, then
perhaps another for one of the pads in a class. Using the rule priority and the scope, the PCB
Editor can determine which rule applies to each object in the design.
With a well-defined set of design rules, the designer can successfully complete board designs
with varying and often stringent design requirements. And as the PCB Editor is rules-driven,
taking the time to set up the rules at the outset of the design will enable the designer to
effectively get on with the job of designing, safe in the knowledge that the rules system is
working hard to ensure that success.

23.1 PCB Rules System - Fundamentals


The rules system built into Altium Designer's PCB Editor has several fundamental features that
set it apart from most other design rule systems employed by other PCB editing environments:

Rules are separate from the objects a rule is not added as an attribute of an object, but
is rather added to the overall rule set and then scoped to apply to that object. This allows
rules to be applied to multiple objects, modified, or applied to different objects, which would
otherwise be painful to do if having to change rule attributes at the individual object level.

Rules are targeted (scoped) by writing a query instead of using a set of fixed,
predefined rule scopes, a flexible query system is used to define the objects that a rule is
applied to. This gives precise control over the target of each and every design rule.

Rules for any design situation multiple rules of the same type can be defined and
targeted to different sets of objects, allowing complete control over the definition of board
constraints. For example, different width rules can be defined to route nets at different widths
on different layers.

Each rule has a priority any design object can be targeted by multiple rules of the same
type, catering for general and more specific situations. To resolve any rule contention, the
rule priority is used. The system simply goes through the rules from highest to lowest priority
and picks the first one whose scope expression(s) match the object(s) being checked.

There are two types of rules unary rules, or rules that define the required behavior of an
object, and binary rules, rules that define the interaction between two objects.

23.2 Defining and Managing Design Rules


Design rules are defined and managed from within the PCB Rules and Constraints Editor dialog
(Figure 296). The dialog has two sections:

The tree on the left lists the different rule categories. Expand a category to display the
individual rule types available. Expand a rule type to display all rules of that type that are
currently defined.

The right-hand side of the dialog presents information in relation to what is currently selected
in the tree either a summary of defined rules of the selected rule type or category, all
defined rules for the entire system or, if an actual rule is selected, the constraints for that
rule.

Altium Essentials_July2013_Colby
10-July-2013

277

Figure 296. The PCB Rules and Constraints Editor dialog - command central for managing design rules.

23.2.1

Creating a New Rule

To add a new design rule from within the PCB Rules and Constraints Editor dialog, simply
navigate in the tree on the left to the required rule type, right-click and select New Rule from the
context menu. The new rule will be added to the folder-tree and will also appear in the summary
list for that rule type.

A newly created Width rule,


with default name 'Width'.
The rule name appears bold,
to distinguish it as being new
and yet to be 'applied'.

Figure 297. Example creation of a new PCB design rule.

To access the scope and constraint attributes for the rule, either click on the entry for the rule in
the folder-tree pane or double-click on its entry in a summary list. The main editing window of the

Altium Essentials_July2013_Colby
10-July-2013

278

dialog will change to give access to the controls for defining the scope and constraint attributes
that rule.

Figure 298. Accessing the detailed controls for the rule, including scope and constraints.

To fully define the new rule, the designer should:

Give the rule a meaningful name to make it identifiable.

Set the constraints of the rule.

Define the scope of the rule by entering a query (or queries for a binary rule).

Set the priority of the rule.

23.2.1.1 Creating a New Rule with the Rule Wizard


A new rule can also be created using the New Rule Wizard. Access is made directly using the
Design Rule Wizard command, or by clicking the Rule Wizard button, to the lower-left of the
PCB Rules and Constraints Editor dialog.

Figure 299. Use the New Rule Wizard to streamline rule creation.
Altium Essentials_July2013_Colby
10-July-2013

279

23.2.2

Scoping a Rule

For the PCB rules system to know what objects a given rule applies to, it needs to know the
scope of that rule the extent of its application. Scoping, or targeting the rule, is done in the PCB
Rules and Constraints Editor dialog.
Rather than being restricted to a predefined list of possible target options, each design rule is
scoped by writing what is called a query. A query is essentially an instruction to the software that
defines the set of design objects to be targeted. Queries are written using query keywords. In the
same way that a query can be written in a Filter panel to find a specific set of objects, so to a
query is written to define the objects that each rule targets. An example might be:
InNet('GND') And OnLayer('TopLayer')
If this query were to be used as the scope for a width rule, whenever the designer routed the
GND net and switched to the top layer, the track width would automatically change to the width
specified as part of that rule's constraints. Also, upon running a design rule check, any GND net
routing on the top layer would have to have the specified width, or it would be flagged as a
violation.
Use the options available in the PCB Rules and Constraints Editor dialog to build the
query as required. Depending on whether the rule is unary or binary, the designer will
need to define one or two scopes respectively.

23.2.2.1 Scoping Options


Simple scoping options are provided that allow the designer to quickly generate scope queries
targeting:

All design objects.

All objects in a specific net.

All objects in a specific net class.

All objects on a specific layer.

All objects in a specific net and on a specific layer.


Simply select one of the options and, if required, use the applicable drop-down list(s) to select
the appropriate target, such as a Net or Layer. The query string will appear in the Full Query
region to the right.

Figure 300. Quickly create a query using the simple scoping options.

The Advanced (Query) option enables the designer to write their own, maybe more complex,
but also more specific query. The designer can type their own specific query for the rule scope
directly into the Full Query region. Alternatively, two features are available to help in the creation
of queries the Query Builder and the Query Helper. These can be very useful when unsure of
the syntax of a query, or the possible keywords available for use.
The Query Builder is a simpler method of constructing a query, using sensitive
condition types and values that only allow the designer to build using relevant 'building
blocks'. For advanced query construction, with full keyword specification and operator
syntax, use the Query Helper.

Altium Essentials_July2013_Colby
10-July-2013

280

23.2.2.2 Scoping a Rule with the Query Builder


Click the Query Builder button to open the Building Query from Board dialog, which enables the
designer to create a query for targeting specific objects in the design document, by simple
construction of a string of ANDed and/or ORed conditions.
The left-hand section of the dialog is used to specify the conditions required to target the set of
objects needed. As a condition is defined, a preview of the currently built query is displayed in
the right-hand section. Add more conditions to narrow-down the target set of objects.

Figure 301. Use the Query Builder to build a logical query expression through a series of conditional
statements.

23.2.2.3 Getting Help with the Query Helper


With the Advanced (Query) option enabled, click the Query Helper button to access the Query
Helper dialog. The underlying Query Engine analyzes the PCB design and lists all available
objects, along with generic keywords for use in queries.

Figure 302. The Query Helper, a valuable aid when writing the most complex of query expressions.
Altium Essentials_July2013_Colby
10-July-2013

281

Use the Query region of the dialog to compose a query expression. The expression currently ineffect for the rule scope will be made available in this region, by default, when the dialog is
accessed. The designer can type directly within the region a context-sensitive 'prompt list' of
possible keywords or objects will appear as an aid.
The Categories region of the dialog provides access to available PCB Functions, PCB Object
Lists and System Functions, which can be used to create the query expression. Clicking on a
sub-category within each of these three areas, will display a list of corresponding keywords or
objects in the region to the right. Simply locate the keyword or object to be used in the query
string, then double-click on its entry the entry will be inserted at the current cursor location
within the query expression in the region above.

Use these buttons to add a range of


mathematical and logical operators to
the expression.

Add required keywords and/or


objects to the expression from
these various lists.

Use this button to ensure that the


expression is syntactically correct.

Figure 303. Example complex query defined using the Query Helper.

It is highly advisable to use brackets whenever there is any possibility whatsoever that
the query may not be correctly interpreted. If in doubt, 'bracket it'!

If there is a syntax error with the query, the rule will be highlighted in red in the tree on
the left side of the PCB Rules and Constraints Editor dialog. A warning message will
also appear should the designer attempt to close this dialog. A rule scope that has a
syntax error can greatly slow the Online and Batch DRC analysis process be sure to
resolve any rule scopes that are not syntactically correct.

23.2.3

Prioritizing the Rules

To simplify the process of defining and managing rules, the idea is to define general rules that
cover broad requirements and then override these with specific rules in specific situations. For
this to be possible the designer needs to be able to prioritize the rules, to indicate which one to
use when an object is targeted by multiple rules of the same type.
For example, to specify the most commonly used routing width on the board, the designer
a single rule that applies to every net on the board. This rule can then be overridden for a
Altium Essentials_July2013_Colby
10-July-2013

282

net (or a class of nets for that matter) by adding another rule of the same type, but with a higher
priority.
Another example could be the solder mask requirements here the designer would define one
mask rule that targeted every pad and via on the board, which could then be overridden for the
pads in a specific footprint-kind. This footprint-specific rule could further be overridden for a
specific pad in that footprint, if required.
An important aspect of managing the rules is ensuring that all the priorities are set appropriately.
When a new rule is created, it defaults to the highest priority. Use the Priorities button at the
bottom of the PCB Rules and Constraints Editor dialog to configure the priorities in the Edit Rule
Priorities dialog.

Priority is reflected at the


summary list level.

Use these controls to


change a rule's priority.

Figure 304. Change rule priorities in the Edit Rule Priorities dialog.

Initially, the dialog will list all rule instances for the rule type that is currently selected in the PCB
Rules and Constraints Editor dialog. Use the Rule Type field to change the rule type and hence
list the specific rules defined for that type. The defined rules are listed in order of current priority
from 1 (highest priority) downwards. Select a rule entry and use the Increase Priority and
Decrease Priority buttons to move it up or down in the priority order respectively.
Multiple rules of the same type can be set up. It may arise that a design object is
covered by more than one rule with the same scope. In this instance, a contention
exists. All contentions are resolved by the priority setting. The system goes through
rules from highest to lowest priority and picks the first one whose scope expression(s)
match the object(s) being checked.

23.2.4

Modifying Existing Rules

Rules of course can be modified at any time. Indeed, to arrive at the final working set of rules
often involves a few key refinements here and there, typically to rule scopes to ensure the target
design objects are being 'picked up' by the respective rule(s) as required. Simply select an
existing rule in the PCB Rules and Constraints Editor dialog and make changes as necessary to
its scoping and constraint attributes.
Changes made to existing rule definitions are highlighted in both the folder-tree pane and the
applicable summary lists. Such entries are distinguished by the rule name becoming bold and an
asterisk displayed to the right of the name. The asterisk is used to reflect that the rule is an
Altium Essentials_July2013_Colby
10-July-2013

283

existing rule that has been modified, rather than a newly created rule (which is displayed bold
without an asterisk).

An asterisk is used to flag a


modified existing rule.

Figure 305. Example modified existing rule.

When a new rule is created for a particular rule type, it is automatically given priority 1.
If any other rules of that type exist, their priorities will be shifted (lowered), by one,
accordingly. They are then considered to be modified even though they may not
been specifically modified at the scope/constraint level. All such existing rules of that
type will therefore be displayed in the modified state (bold with asterisk).

23.2.5

Deleting Rules

To delete a design rule, right-click on its entry in the folder-tree pane of the PCB Rules and
Constraints Editor dialog and choose the Delete Rule command from the context menu. The rule
name will appear bold with strike-through highlighting to distinguish it as being a deletion that is
yet to be 'applied'.

A strikethrough is used to
flag a rule for deletion.

Figure 306. Deleting a rule.

If a particular design rule is no longer required but may be used again in the future,
rather than delete it, it can simply be disabled. Do this by toggling the corresponding
Enable option for the rule in one of the relevant summary lists, on the right-hand side
the PCB Rules and Constraints Editor dialog.

Altium Essentials_July2013_Colby
10-July-2013

284

23.3 Checking Rule Application


Depending on the board design, a fair number of design rules may need to be defined, with
scopes that range from the very simple to the very complex. It is a good idea to check that the
rules defined do indeed target their intended objects. Care at the rule definition stage can save
wasted time and effort tracing violations caused through incorrect rule scoping.
There are essentially two methods for verifying rule scopes either by selecting design objects
and interrogating the rules that currently apply to them, or by taking a rule and observing which
objects fall under its scope.

23.3.1

From an Object's Perspective

For any placed object in the current design, the designer can quickly access information about
which unary design rules apply to that object. Simply position the cursor over the object, rightclick and select Applicable Unary Rules. All defined design rules that could be applied to the
selected object are analyzed and listed in the Applicable Rules dialog.

Figure 307. Design rules applicable to a single example design object unary rules.

Each rule listed in the dialog will have either a tick ( ) or a cross ( ) next to it. A tick indicates
the rule with the highest priority out of all applicable rules of the same type this is the rule
currently applied. Lower priority rules of the same type are listed with a cross next to them,
indicating that they are applicable but, as they are not the highest priority rule, they are not
currently applied.
Any rules that would apply to the object but are currently disabled would also have a
cross next to them and would appear using strikethrough highlighting.
In a similar fashion, the designer can also access information about the binary design rules that
apply between two placed objects in a design. Simply position the cursor over any object, rightclick and select Applicable Binary Rules. Follow the prompts to select two objects in the
design. The Applicable Rules dialog will then appear, displaying all binary design rules that apply
between those objects.

Altium Essentials_July2013_Colby
10-July-2013

285

Figure 308. Design rules applicable between two example design objects binary rules.

23.3.2

From a Rule's Perspective

If, rather than seeing which rules apply to


object (or between two objects) the
designer would prefer to pick a rule and see
which objects that rule applies to, this can
be achieved from the PCB Rules And
Violations panel.
The panel lists all currently defined rules for
the design. All rules can be viewed, or the
designer can browse specifically by rule
type provided at least one rule of any
given type has been defined for the active
design.
As the designer clicks on a specific rule in
the Rules region of the panel, filtering will
be applied, using the rule as the scope of
the filter. Only those design objects that fall
under the scope of the rule will be filtered.
By employing the mask highlighting feature,
the designer can quickly see the resulting
Figure 309. PCB Rules And Violations panel.
objects targeted by the rule.

Altium Essentials_July2013_Colby
10-July-2013

286

Figure 310. Viewing which objects a particular rule applies to, using the PCB Rules And Violations panel.

Using the PCB Rules And Violations panel to interrogate which objects a rule applies to is
particularly useful when creating a query for a rules scope(s), since a rule can be edited directly
from the panel and therefore the query can be 'massaged' until the desired objects are captured
by the scope(s).
To edit the scope(s) for the rule, as well as specific rule constraints, either double-click on the
rule's entry in the panel, or right-click and choose Properties from the context menu. The
relevant Edit PCB Rule dialog will appear, from where the changes can be made.

Figure 311. Rules can be edited directly from the panel, allowing the designer to further refine rule scoping
and/or constraints, on-the-fly.

Rules can also be disabled/enabled directly from the panel. Simply toggle the rule's
associated On option. This is reflected in the rule's Enable option, back in the PCB
Rules and Constraints Editor dialog.

Altium Essentials_July2013_Colby
10-July-2013

287

23.4 Exporting and Importing Rules


Design rules can be exported from, and imported to, the PCB Rules and Constraints Editor
dialog. This allows the designer to save and load favorite rule definitions between different
designs. To export, right-click anywhere within the tree on the left of the dialog and select Export
Rules. Exported rules are stored in a PCB Rule file (*.Rul).
To import, select Import Rules from the same right-click menu, then browse to and open, the
required PCB Rule file.
In both cases, the designer can choose which types of design rules to export/import.
When importing, if rules of a chosen type already exist, the option will be given to clear
the existing rules prior to import. Clicking Yes results in all existing rules of that type
being deleted, subsequently replaced with those in the .rul file. Clicking No will keep
the existing rules. However, if existing rules and imported rules have the same name,
the imported rules will overwrite the existing ones.

23.5 Design Rule Reports


A report of currently defined design rules can be generated from within the PCB Rules and
Constraints Editor dialog. The report can cater for all rule categories, a specific rule category or a
specific rule type. Simply right-click in the respective summary list, or over the respective entry in
the folder-tree and select Report. The Report Preview dialog will appear, with the appropriate
report already loaded.
Use this dialog to inspect the report using various page/zoom controls, before ultimately
exporting it to file or printing it.

Figure 312. Generate a PCB Rules Report.

Altium Essentials_July2013_Colby
10-July-2013

288

23.6 Defining Rules on the Schematic


Design constraints (rules) can be defined prior to PCB layout, by adding parameters that are
configured as design rule directives to the schematic source document(s). The scope of the
corresponding PCB design rule, created when the design is transferred to the PCB document, is
determined by the nature of the object to which the parameter (added as a rule) is assigned. The
following table summarizes the schematic parameter-to-PCB rule scope options that are
supported:
Add a Parameter
(as a rule) to a

From

For a PCB rule


scope of

Pin

the Parameters tab of the Pin Properties dialog.

Pad

Port

the Parameters tab of the Port Properties dialog.

Net

Wire

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the wire using
the Place Directives PCB Layout command.

Net

Bus

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the bus using
the Place Directives PCB Layout command.

Net Class

Harness

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the harness
using the Place Directives PCB Layout
command.

Net Class

Blanket

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the edge of
the Blanket using the Place Directives PCB
Layout command. Include a ClassName
parameter to create a net class for all nets
covered by the blanket, which will then be used
for the rule scope.

Net Class

Component

the Parameters region of the Component


Properties dialog.

Component

Sheet Symbol

the Parameters tab of the Sheet Symbol dialog.

Component Class

Sheet

the Parameters tab of the Document Options


dialog (Design Document Options).

All Objects

Table 14. PCB rule scopes obtained when adding parameters (as rules) to schematic design objects.

In each case, the method of adding a rule-based parameter is the same. From the respective tab
or dialog, simply perform the following:

Add a parameter as a rule.

Select which rule type to use.

Configure the constraints for the chosen rule type.


When adding design rule parameters to objects on a schematic, a unique ID is given
each rule parameter. The same IDs are given to the corresponding design rules that
are created in the PCB. With this Unique ID, the constraints of a rule can be edited on
either the schematic or PCB side and the changes pushed through upon
synchronization.

Altium Essentials_July2013_Colby
10-July-2013

289

Module 24: PCB Grids, Guides & Options


Altium Designer's PCB Editor incorporates a Unified Cursor-Snap System. 'Cursor-snap' is the
process whereby the physical mouse cursor's pixel position on the screen drives the position of a
'logical cursor' in the coordinate space of a design document such as a PCB. The objective is for
the system to be able to place the logical cursor onto sensible and useful coordinates without the
user needing to specify these in a high resolution way.
This system brings together three different sub-systems to collectively drive the way that the
cursor snaps onto given sets of preferred coordinates: User-Definable Grids, available in both
Cartesian and Polar flavors; Snap Guides, that can be freely placed and provide a handy visual
cue for object alignment; and enhanced object Snap-Points, enabling placed objects to pull the
cursor into position based on cursor proximity to an object's hotspot(s). Use a combination of
these features to ensure streamlined placement and alignment of objects in the PCB workspace.
This module takes a closer look at these, and other board-level options for the active PCB
document.

24.1 Accessing the Unified Cursor-Snap System


Access to the Unified Cursor-Snap System as a whole, in terms of all of its constituent subsystems and controls, is made from the dedicated Snap button, located at the bottom-right of the
main workspace. Alternatively, interaction with each sub-system can also be made as part of the
board-level options, through the Board Options dialog (Design Board Options).

Figure 313. Access commands and controls for the Unified Cursor-Snap System from the Snap menu and
the Board Options dialog.

Altium Essentials_July2013_Colby
10-July-2013

290

The following is a summary of the various commands available from the Snap menu, with an
indication of how they relate to the options available in the Board Options dialog.

Grids this command opens the Grid Manager dialog, from where local customized grids
can be defined and managed, as well as the default snap grid for the board. (Corresponds to
clicking the Grids button in the Board Options dialog).

Guides this command opens the Snap Guide Manager dialog, from where a range of
manual snap guides and snap points for the board can be defined and managed.
(Corresponds to clicking the Guides button in the Board Options dialog).

Snap To Linear Guides this command is used to toggle whether the cursor can snap to
manually placed linear Snap Guides. The command is checked when this particular subsystem is enabled. (Corresponds to the option of the same name in the Board Options
dialog).

Snap To Point Guides this command is used to toggle whether the cursor can snap to
manually placed point Snap Guides. The command is checked when this particular subsystem is enabled. (Corresponds to the option of the same name in the Board Options
dialog).

Snap To Grids this command is used to toggle whether the cursor can snap to grids
defined for the board. The command is checked when this particular sub-system is enabled.
(Corresponds to the option of the same name in the Board Options dialog).

Snap To Object Axis this command is used to toggle whether the cursor can snap to
dynamic alignment guides created through proximity to the hotspot(s) of placed objects. The
command is checked when this particular sub-system is enabled. (Corresponds to the option
of the same name in the Board Options dialog).

Snap To Object Hotspots this command, which is essentially the legacy Electrical Grid, is
used to toggle whether the cursor can snap to the hotspot(s) of placed objects when it is
simultaneously close (on both the x and y axis) to such a hotspot. The command is checked
when this particular sub-system is enabled. (Corresponds to the option of the same name in
the Board Options dialog).

Include Near Aligned Objects this command toggles the use of near objects when
aligning the cursor to the horizontal or vertical axis of an enabled object's hotspot(s). This is
single-axis object snap, with the cursor aligned using a system-generated dynamic alignment
guide. (Corresponds to the Near Objects option in the Board Options dialog)

Include Far Aligned Objects this command toggles the use of far objects when aligning
the cursor to the horizontal or vertical axis of an enabled object's hotspot(s). This is singleaxis object snap, with the cursor aligned using a system-generated dynamic alignment
guide. (Corresponds to the Far Objects option in the Board Options dialog).
The Advanced Snap Options command simply gives access to the Board Options dialog, and
the options to control use of the various cursor-snap sub-systems contained therein. For singleaxis object snap, the dialog also provides advanced options to control how different types of
objects are used as Snap-Point sources.

Additional board-level options available in the Board Options dialog are discussed
in this module see section 24.5 Additional Board Options.

24.2 User-Definable Grids


Any number of user-defined grids can be defined for the workspace, with all grid management
performed from within the Grid Manager dialog. Use this dialog to define Cartesian and/or Polarbased local grids by which to place design objects especially components with greater
precision. Each grid-type is fully customizable using a dedicated editing dialog. Define where in
the workspace the grid is to be located, the step size of the grid, the extent of the grid and two
levels of visual display for the grid. In addition, a grid can be made available for use with
component and/or non-component objects.

Altium Essentials_July2013_Colby
10-July-2013

291

Figure 314. Example Polar and Cartesian grids, summarized in the Grid Manager dialog.

The cursor will only snap to a defined grid provided the option Snap To Grids is
enabled, in the Snap Options region of the Board Options dialog.

24.2.1

Accessing the Grid Manager

The Grid Manager dialog can be accessed from a PCB document (or PCB Library document) in
the following ways:

Using the Grids command on the menu associated to the Snap button, at the bottom-right of
the main design window.

Using the G,M shortcuts.

Using the Tools Grid Manager command.

Clicking the Grids button in the Board Options dialog.

Using the View Grids Grid Manager command.

Right-clicking in the workspace and using the Snap Grid Grid Manager command.

24.2.2

Creating and Defining a Cartesian Grid

To create a new Cartesian-type grid use the Add Cartesian Grid command available from the
dialog's main menu or right-click menu or press the R key. A new grid entry will appear in the
list, initially with the default name New Cartesian Grid.

Altium Essentials_July2013_Colby
10-July-2013

292

Figure 315. Example addition of a new Cartesian grid.

A Cartesian grid is distinguished in the list of existing grids by the letter C, to the left of
the grid name field.
To edit the grid, simply double-click on its entry, or select its entry and use the Properties
command accessible through the dialog's menus. The Cartesian Grid Editor dialog will appear
presenting options with which to define the grid (Figure 316).

Altium Essentials_July2013_Colby
10-July-2013

293

Figure 316. Example Cartesian grid definition, using the Cartesian Grid Editor dialog, and resulting
appearance in the workspace.

The following sections take a closer look at the options available in each of the distinct regions of
the dialog.

24.2.2.1 Settings
Use the Name field to give the grid a more meaningful name. For example, a grid that reflects its
purpose (e.g. Grid for Component-Side Memory).
Use the Unit field to specify the measurement units used for the grid Imperial or Metric.
Use the Rotation field to specify whether the grid is to be rotated (about the specified origin
point), and by how much.

24.2.2.2 Steps
Use the options in this region to specify the sizing of the grid.
The Step X and Step Y fields define the distance between grid lines in the x and y planes
respectively. By default, the two fields are linked, as indicated by the continuous chain depicted
on the button to the right of the fields. In this state, whatever is specified for the Step X field will
be copied and used for the Step Y field.
To break this link and enter step sizes individually, simply click this button. The button will now
depict a broken chain, and the Step Y field will become available for editing in its own right.

Altium Essentials_July2013_Colby
10-July-2013

294

Figure 317. Click the 'chain button' to toggle between Step Y following Step X (linked), or Step Y defined
separately (not linked).

Type the required step size directly in each case, or select from a range of common sizes
available in the associated drop-down list.
Controls are also available that allow definition of the x and/or y step sizes directly from within
the PCB workspace. In each case, the designer will be taken to the workspace to specify two
'calculating' locations, and the resulting step size will be calculated accordingly.
When setting the step size(s) using the Delta value(s), it can be very useful to have
Heads-Up Delta Origin Display enabled, if not already (SHIFT+D). Use this display to
quickly achieve the required sizing when specifying the second 'calculating' location.

24.2.2.3 Origin
Use this region to define the origin for the grid. Use the Origin X and Origin Y fields to specify
the x and y coordinates for the center point of the grid in the workspace. Either enter the values
for these coordinates directly, or click the Set Origin in PCB View link and physically click at the
desired location in the workspace (the resultant coordinate values will be entered into the fields).

24.2.2.4 Display
Use the options in this region to define the visual appearance of the grid in the workspace. Two
levels can be defined Fine and Coarse. The former is a display of the grid markers using the
defined step sizes. The latter is simply a display of grid markers spaced at a multiple of the
defined step sizes.
For further, more detailed information, see section Defining Grid Display, later in this
document.

24.2.2.5 Extents
Use the options in this region to specify the extents of the grid, in terms of Width and Height. By
default, the two fields are linked, as indicated by the continuous chain depicted on the button to
the right of the fields. In this state, whatever is specified for the Width field will be copied and
used for the Height field giving a square grid. To break this link and enter width and height
individually, simply click this button.
Type the required width and/or height directly in each case. Controls are also available that allow
definition of the width and/or height directly from within the PCB workspace. In each case, the
designer will be taken to the workspace to specify two 'calculating' locations, and the resulting
width and/or height will be calculated accordingly.
Since the width and height are calculated using the Delta X and/or Delta Y values, it
can be very useful to have the Heads-Up Delta Origin Display enabled, if not already
(SHIFT+D). Use this display to quickly achieve the required extent(s) when specifying
the second 'calculating' location.

Altium Essentials_July2013_Colby
10-July-2013

295

24.2.2.6 Quadrants
Use this region to specify which quadrants the grid is to occupy. The grid area is the same for all
enabled quadrants, as defined by the setting for Width and Height in the Extents region of the
dialog.

24.2.3

Creating and Defining a Polar Grid

To create a new Polar-type grid use the Add Polar Grid command available from the Grid
Manager dialog's main menu or right-click menu or press the P key. A new grid entry will
appear in the list, initially with the default name New Polar Grid.

Figure 318. Example addition of a new Polar grid.

A Polar grid is distinguished in the list of existing grids by the letter P, to the left of the
grid name field.
To edit the grid, simply double-click on its entry, or select its entry and use the Properties
command accessible through the dialog's menus. The Polar Grid Editor dialog will appear
presenting options with which to define the grid (Figure 319).

Altium Essentials_July2013_Colby
10-July-2013

296

Figure 319. Example Polar grid definition, using the Polar Grid Editor dialog, and resulting appearance in
the workspace.

In terms of definition, several regions of options are the same as those when defining a
Cartesian grid Settings (without the Rotation option for obvious reasons!), Origin and
Display.
The following sections take a closer look at the options available in those regions of the dialog
that are specific to defining a Polar grid.

24.2.3.1 Steps
Use the options in this region to specify the sizing of the grid.
The Angular Step field defines the distance, in Degrees, between the angular grid lines. This
value is used to equally space the angular grid lines over the defined angular range.

Altium Essentials_July2013_Colby
10-July-2013

297

The Radial Step field defines the distance between the radial grid lines. Type the required step
size directly, or select from a range of common sizes available in the associated drop-down list.
The radial step can also be defined directly from within the PCB workspace, by clicking the Set
Radial Step in PCB View control. The designer will be taken to the workspace to specify two
'calculating' locations the resulting step size is taken as the hypotenuse of the triangle formed
by the chosen points in the workspace.

24.2.3.2 Angular Range


Use the options in this region to define the angular extents of the grid:

Start Angle determines the angle of the grid's first angular grid line.

End Angle determines the angle of the grid's last angular grid line.

24.2.3.3 Radial Range


Use the options in this region to specify the radial extents of the grid:

Min determines the distance from the origin point to the grid's first radial grid line.

Max determines the distance from the origin point to the grid's last radial grid line.

24.2.4

Default Snap Grid

A default snap grid is defined for the board, named Global Board Snap Grid. This is the
grid that is used for object placement and movement in any area of the board not covered by a
dedicated local grid.

Figure 320. Global Board Snap Grid used by default wherever no customized local grid is present.

The default grid is a Cartesian-type grid. The step size and/or display for the grid can be
modified, but the grid cannot be renamed, disabled, or deleted.
Quickly shift focus to the default snap grid, within the list of defined grids, using the 0
(zero) key.

24.2.5

Duplicating a Grid

To aid the designer in quickly building a set of local grids, the Grid Manager dialog supports the
ability to duplicate grids. Simply select one or more custom grids in the existing list of grids and
use the Duplicate Selected Grids command from the dialog's menus. Exact copies of those
grids are created and added to the list, distinguished by the suffix (Copied) in their name.
Altium Essentials_July2013_Colby
10-July-2013

298

The default snap grid (Global Board Snap Grid) cannot be used as a source of
duplication.

24.2.6

Defining Grid Purpose

A defined local grid can be used in a variety of situations:

In the placement of non-component objects only.

In the placement of components only.

In the placement of both non-component objects and components.

Definition of how a grid can be used its purpose or application is performed using the Non
Comp and Comp checkboxes, associated with that grid's entry in the Grid Manager dialog.

Use these checkboxes to


determine how a custom
local grid is to be used, for
non-components and/or
components, as required.

Figure 321. Use the Non Comp and Comp checkboxes to determine local grid application.

The default snap grid is always enabled for use with components and non(both checkboxes checked).

When specifying a component-only grid (Non Comp unchecked, Comp checked), the
grid will only display when performing a component-based action, such as moving a
component for example.

24.2.7

Defining Grid Display

For any custom grid defined, as well as the Global Board Snap Grid, options are provided
to control how the grid is presented visually in the workspace. Two levels can be defined Fine
and Coarse. The fine-level display grid is used when zoomed-in. The grid markers for this level
of grid display follow directly the defined step sizes for the grid.
The optional coarse-level display grid comes into play when zooming out. The grid markers for
this level of grid display are based on a specified multiple of the defined step sizes.

Figure 322. Options for controlling grid display in the workspace.


Altium Essentials_July2013_Colby
10-July-2013

299

Fine use the associated drop-down to define the style of marker used for the fine-level
display of the grid in the workspace, either Lines or Dots. Click on the associated color
swatch to access the standard Choose Color dialog, and choose a color for this level of grid.
The color can always be reset back to its default using the Reset to Default link.

Coarse use the associated drop-down to define the style of marker used for the coarselevel display of the grid in the workspace. Again, choose from either Lines or Dots. The
coarse-level display grid is simply the fine-level display grid with an increased step size. Use
the Multiplier field to specify the required multiple of the grid's step size, either 2x, 5x, or
10x.
When choosing a color for this level of grid, a completely different color to that used for the
fine-level display grid can be used. Alternatively, quickly employ a lighter or darker shade of
the color currently used for the fine-level display grid, using the available Lighter or Darker
links respectively.
Grid colors can be reset back to their defaults using the Reset to Default link. To
effectively disable display of a grid, simply choose the option Do Not Draw.

Figure 323. Example Cartesian grid with fine- and coarse-level display grids presented in the workspace.
Left: Fine-level displayed using Dots, coarse level using Lines. Right: Both fine- and coarse-level grids
displayed using Lines.

Although individual grid display coloring is defined when editing a grid in the specific
grid editor, a single nominated color can quickly be assigned for the fine- or coarsecoarse-level display grids on a global level to all defined grids, including the default
grid from within the Grid Manager dialog. To do this, simply use the Set Fine Color
for All or Set Coarse Color for All commands from the dialog's menus, then choose
the required color from the subsequent Choose Color dialog.

The default display colors assigned to Fine and Coarse display grids when the
Reset to Default link is clicked in a grid editor, or the Reset All To System Grid
Colors command is issued from the Grid Manager dialog are defined in the System
Colors region, on the Board Layers And Colors tab of the View Configurations
dialog. Specifically, the default fine-level display grid color is specified using the
Default Grid Color - Small option, and the default coarse-level display grid color is
specified using the Default Grid Color - Large option.

Altium Essentials_July2013_Colby
10-July-2013

300

24.2.8

Nesting and Grid Priority

Grids defined in the Grid Manager dialog can be freely stacked within the board area. By
specifying origin coordinates accordingly grids can be overlapped, creating a nested hierarchy of
grids, with which to fine tune placement of design objects during board layout.
Grid contention which grid in an overlapping stackup of grids should a design object snap to
is resolved using a priority system. Each local placement grid created and defined is given a
numbered priority. By default, each new grid is given the highest priority of 1, with all existing
grids moved down in priority accordingly.
The Global Board Snap Grid is an exception. As it is the default grid that is used
all areas of the board that are not 'covered' by defined custom grids, it is given the
priority setting of Default. It has the lowest 'snapping priority' of all defined grids.
In the workspace, priority is distinguished by drawing order. The highest priority grid (priority 1)
will be drawn in front of all other grids, then the grid with priority level 2, and so on, down to the
default Global Board Snap Grid, which is drawn behind all other custom grids.

Figure 324. An example of three nested Polar grids. The Yellow Polar Grid has the highest priority and
appears on top. The Red Polar Grid is next priority, appearing behind the yellow grid, but in front of the
aqua grid. The default grid appears behind all of these grids, as all custom grids take precedence over it in
the priority stakes.

Change the priority for a grid by selecting it in the list and using the Increment Priority and
Decrement Priority commands (available from the dialog's menus) as required. A number of
keyboard shortcuts are also available for setting the priority:

U or CTRL+UP ARROW increase the priority of the focused grid.

D or CTRL+DOWN ARROW decrease the priority of the focused grid.

H or B make the currently focused grid the highest priority (i.e. 1).

The priority of the Global Board Snap Grid cannot be changed it is fixed to always have
lowest priority.
Altium Essentials_July2013_Colby
10-July-2013

301

The number keys 1-9 can be used to quickly focus the grid with the corresponding
numeric priority.

24.2.9

Disabling a Grid

There may be occasion where a grid isn't needed while placing or moving a particular design
object. Rather than deleting the grid it may be needed again later, in the same or different area
of the board it can simply be 'hidden' from the workspace. This can be achieved by unchecking the grid's associated Non Comp and Comp attributes in the Grid Manager dialog.
The default Global Board Snap Grid is permanently enabled, as this is the
grid that is used when no local grid has been defined for an area of the board.
it, and all defined grids, can be hidden from within the View Configurations dialog, by
disabling the Show option for the Default Grid Color - Small and Default Grid Color
Large options.
The Non Comp attribute can be quickly toggled for the focused grid using the SPACEBAR. In
addition, commands available from the dialog's menus allow the designer to quickly Enable All
Custom Grids or Disable All Custom Grids respectively.
The Enable All Custom Grids and Disable All Custom Grids commands act on the
Non Comp attribute only. If a grid is set for use as a component grid also (Comp
attribute checked), this setting will remain unchanged by use of these commands.
Manually uncheck this attribute to fully disable ('hide') a grid.

24.2.10 Exporting and Importing Grids


The Grid Manager dialog provides controls for exporting and importing defined grids, so that
preferred grids can always be accessed and used across different designs. Grid information is
stored in a PCB Grid file (*.PCBGrid).
To export specific grids, select the grids and use the Export Selected command from the
dialog's menus. To export all grids, use the Export All command. Use the subsequent Save
PCBGrid dialog to determine where, and under what name, the file is to be saved.

Figure 325. Example PCB Grid file, containing definitions for exported grids.

Altium Essentials_July2013_Colby
10-July-2013

302

The default grid (Global Board Snap Grid) can be exported and imported, just
any other defined custom grid.
To import grids, simply use the Import Grids command from the Grid Manager dialog's menus.
Use the Load Custom Grid dialog to browse to, and open, the required PCB Grid file. The grids
will be added to the list of existing grids.
Importing grids with the same name as any existing grids will not overwrite those
existing grids. The imported grids will simply be added to the list. The exception is the
Default grid. The existing Default grid will be overwritten with the definition for it in an
imported PCB Grid file.

The ability to export and import grid definitions plays a valuable role in the PCB Library
Editor domain, since grids defined in the Editor only apply to the current component.
Simply define grids once, for a single component, then export them and import them to
all other components as required.

24.2.11 Deleting a Grid


Custom grids can be deleted simply by selecting their corresponding entry in the Grid Manager
dialog and using the Delete command from the dialog's menus. Remember that the default
Global Board Snap Grid cannot be deleted.

24.3 Snap Guides


Snap Guides are special objects that are manually placed specifically for the purpose of driving
the cursor-snap on a certain axis or point assisting in object/component placement. They can
also serve as a visual indicator for general layout or alignment purposes.
Snap Guides can be one of two types Linear Guides or Point Guides. Linear Guides are just
that linear. They can be horizontal, vertical or +/- 45 Degrees. A Point Guide offers finer control
over object placement. It is simply a hotspot that is manually marked within the confines of a
defined grid.
Commands for placement of Snap Guides are available from the Place Work Guides submenu.

Figure 326. Examples of the various Snap Guides available to assist object placement.
Altium Essentials_July2013_Colby
10-July-2013

303

During an interactive process such as placing or moving, the cursor will snap to a
placed Linear Guide, at the point where that guide intersects a defined grid. Using a
Linear Guide, objects can quickly be aligned simply by dragging them until they 'snap'
against the guideline. For a Point Guide, the hotspot for the object being moved will
'snap' to the guide when it passes into close proximity with it.

Visually, Point Guides are particularly beneficial when the grid marker type is set to
Dots.

The cursor will only snap to a placed Linear Guide provided the option Snap To
Guides is enabled, in the Snap Options region of the Board Options dialog. The
cursor will only snap to a placed Point Guide provided the option Snap To Point
Guides is enabled.

24.3.1

Defining a Snap Guide

Full configuration and management of Snap Guides is performed from within the Snap Guide
Manager dialog, accessed by:

Using the Guides command on the Snap menu.

Using the Tools Guide Manager command.

Clicking the Guides button in the Board Options dialog.

Figure 327. The Snap Guide Manager - command central for Snap Guide management.

Once a Snap Guide has been created, it can be managed only through the Snap
Manager dialog.
Use the X and Y Coordinate fields (as applicable) to fine-tune where in the workspace the guide
is to pass through (Linear Guide), or point is to be located at (Point Guide).
Click on the color swatch in the associated Color field to access the standard Choose Color
dialog, from where any color may be assigned to the guide as required. To apply the same color
to all existing guides in 'one shot', use the Set Color for All command, available from the
dialog's main and right-click menus.
Although controls are available for adding new snap guides from within the Snap
Manager dialog, it is far easier to visually add them directly in the workspace, then use
the dialog to fine-tune them as required.

Altium Essentials_July2013_Colby
10-July-2013

304

24.3.2

Duplicating a Snap Guide

To aid the designer in quickly building a set of snap guides, the Snap Guide Manager dialog
supports the ability to duplicate guides. Simply select one or more existing guides and use the
Duplicate Selected command from the dialog's menus. Exact copies of those guides are
created and added to the list.

24.3.3

Disabling a Snap Guide

There may be occasion where a guide isn't needed while placing or moving a particular design
object. Rather than deleting the guide it may be needed again later, in the same or different
area of the board it can simply be 'hidden' from the workspace. This can be achieved by unchecking the guide's associated Enabled attribute in the Snap Guide Manager dialog.

24.3.4

Exporting and Importing Snap Guides

The Snap Guide Manager dialog provides controls for exporting and importing defined guides, so
that preferred guides can always be accessed and used across different designs. Guide
information is stored in a PCB Guide file (*.PCBGuide).
To export specific guides, select the guides and use the Export Selected command from the
dialog's menus. To export all guides, use the Export All command. Use the subsequent Save
PCBGuides dialog to determine where, and under what name, the file is to be saved.

Figure 328. Example PCB Guide file, containing definitions for exported guides.

To import guides, simply use the Import command from the Snap Guide Manager dialog's
menus. Use the Load Guides dialog to browse to, and open, the required PCB Guide file. The
guides will be added to the list of existing guides.

24.3.5

Deleting a Snap Guide

To delete a Snap Guide, simply select its entry in the Snap Guide Manager dialog and use the
Delete Selected command, available from the dialog's main and right-click menus. To delete all
existing guides, use the Delete All command.

Altium Essentials_July2013_Colby
10-July-2013

305

24.4 Object Snap-Points


Every object in the PCB design space is considered to have a number of important points such
as the center of a pad, ends of tracks etc. These hot-spots are considered as Snap-Points and
are different for different types and sizes of objects. Every object generates a series of these
Snap-Points, with different Snap-Points having different attractive forces for the cursor. For
example, the endpoints and mid-points of tracks should have a higher pull than other points
along the track.
In terms of cursor-snap, there are essentially two flavors of use of these object Snap-Points
Snap to Object Hotspots and Snap to Object Axis.

24.4.1

Snap to Object Hotspots

This is the same legacy Electrical Grid system found in all previous releases of Altium Designer.
It is a dual-axis system, where the mouse cursor must be simultaneously close (on both the x
and y axis) to an object's Snap-Point in order for the object to pull the cursor towards that SnapPoint
Snap To Object Hotspots is only available when the Snap To Object Hotspots option
is enabled, in the Snap Options region of the Board Options dialog. The extent of
attraction (range) can be specified the distance from an object's hotspot, within
the cursor will be snapped to that hotspot.

24.4.2

Snap to Object Axis

Wouldn't it be great if some kind of pop-up guideline automatically appeared while placing,
moving or dragging a design object a guide that was there when needed, but then just as
quickly disappeared when the action being performed is completed? And wouldn't it be great if
these guides were available based on where the cursor was in relation to an object's hotspot?
Altium Designer provides this elegant functionality with its Snap To Object Axis feature.
As an object is moved in the workspace, guides are automatically generated by the system
(dynamic alignment guides), based on the Snap-Points of existing placed objects, within the
vicinity of the cursor. The cursor can pulled into alignment with either the horizontal or vertical
position of an object's Snap-Point. This allows an object Snap-Point that is close to the mouse
cursor on one axis, but distant on the other axis, to drive the cursor position.

Altium Essentials_July2013_Colby
10-July-2013

306

Figure 329. With the Snap To Object Axis option, dynamic alignment guides appear in the workspace,
generated through vertical or horizontal proximity of the cursor in relation to Snap-Points of existing placed
objects.

Snap To Object Axis is only available provided the option Snap To Object Axis is
enabled, in the Snap Options region of the Board Options dialog..
Use options available in the Advanced Options - Snap To Object Axis region of the Board
Options dialog accessed by clicking on the Advanced link to the right to control how different
types of objects are used as Snap-Point sources.

Altium Essentials_July2013_Colby
10-July-2013

307

Figure 330. The Board Options dialog provides advanced options for controlling single-axis object snap.

Near Objects enable those design objects to be used as snap point sources as the cursor
is moved near to them. Use the associated Near Range field to specify the distance the
cursor can be from an enabled object, inside which that object's hotspot will cause the cursor
to snap to a system-generated dynamic alignment guide.

Far Objects enable those design objects to be used as snap point sources when the
cursor is further away from an object, beyond the specified Near Range. An enabled object's
hotspot will continue to cause the cursor to snap to a system-generated dynamic alignment
guide, at this greater distance.
By default, all objects (Pads, Vias, Tracks, Arcs, Fills, Regions, Texts) are enabled as
Near Objects and only Pads and Vias enabled as Far Objects. The Near Range is set
to 1000mil.

24.5 Additional Board Options


In addition to providing options and controls associated with the Unified Cursor-Snap System,
the Board Options dialog also provides various other regions of options/controls.

Altium Essentials_July2013_Colby
10-July-2013

308

Figure 331. The Board Options dialog - additional controls.

24.5.1

Measurement Unit

Use the Unit field in this region of the dialog to determine the units of measurement to be used
for the workspace, either Metric or Imperial.
Toggling units at any time does not affect system accuracy as all numerical
calculations are carried out at system resolution.

Control metric display precision between three and five digits on the PCB Editor General page of the Preferences dialog.

24.5.2

Designator Display

From the PCB perspective, it can be difficult positioning the designator strings in a multi-channel
design, as they can end up being quite long. As well as choosing a naming option that results in
a short name, another option is to display just the original, logical component designation
instead. For example, C30_CIN1 would display as C30. This would of course necessitate some
other notation being added to the board to indicate the separate channels, such as a box being
drawn around each channel on the component overlay.
Use the drop-down field in this region to select between Logical and Physical designator display
on the PCB.
When choosing to display the logical designators for components in a multi-channel
design, these will be displayed on the PCB and in any output generated such as prints
and Gerber's. The unique physical designators, however, are always used when
generating a Bill of Materials.

Altium Essentials_July2013_Colby
10-July-2013

309

24.5.3

Route Tool Path

This region of the dialog controls visualization of the route tool path on a PCB panel when
viewed in 3D. Use the Layer drop-down field to choose the mechanical layer on which the rout
paths have been defined.

24.5.4

Sheet Position

This region of the dialog provides options for controlling the display of the PCB (back) sheet in
the workspace, and also the size and location of that sheet.
The sheet can be also be resized automatically to fit the objects on linked mechanical layer(s),
when using the View Fit Sheet or Design Board Shape Auto-Position Sheet commands.
Do this by enabling the Auto-size to linked layers option.

Altium Essentials_July2013_Colby
10-July-2013

310

Module 25: Positioning components on the


PCB
An important part of the board layout process is positioning and aligning the components. How
the components are placed has a strong influence on the overall complexity of the routing, so an
essential part of the layout process is to optimize the component placement.
For many components there is a strong correlation between where components are positioned
relative to each other on the schematic, to their final placement on the PCB. Altium Designer
includes features for working from the schematic component(s) across to the PCB component(s).
How tightly a component connects to other components is reflected in the connection lines.
Observing the flow of connection lines is a valuable guide during the placement process.

25.1 Placing Components into the Workspace


The most common way that components are placed into the workspace is during the initial
schematic-to-PCB design transfer, or during a schematic-to-PCB design update. Component
footprints can also be manually placed into the PCB workspace from the available PCB libraries.
Once the component footprints have been placed in the PCB workspace, they can be positioned
in a location that is suitable for the design.
For components to be placed into the workspace, they must exist in a currently available
footprint library. Footprint libraries can be made available by:

including them in the project,

installing them in the Libraries panel,

defining a search path to their location.


Libraries are searched in the order listed above. Within the set of installed libraries and search
path libraries, a search order can be defined. Click the Libraries button at the top of the Libraries
panel to install a footprint library, define a search path, or configure the search order.

25.2 Initial Component Placement


For most designs, there is a strong correlation between how the components are clustered on
the schematic sheets, and how they will ultimately be positioned on the PCB. Altium Designer
includes features and tools to help use the schematic clustering during schematic-to-PCB design
transfer.

25.2.1

Cluster Components by Schematic Sheet

The PCB Editor supports component placement rooms a polygonal region (defined as a design
rule) that holds the specified set of components, typically a component class.
As part of the PCB design process the designer can create component placement rooms, and
then associate a class of components to each room. These rooms can be defined manually in
the PCB Editor, or they can be created automatically during design transfer one room for each
schematic sheet. Even if the design does not suit using rooms they can be a great feature to
help with the initial component placement.
The options to control component class and room creation during design transfer are configured
in the Class Generation tab of the Options for PCB Project dialog, as shown in Figure 332.

Altium Essentials_July2013_Colby
10-July-2013

311

Figure 332. Create a component class for each sheet and a PCB room for that class of components.

When the design is transferred to the PCB Editor each component class is placed in a horizontal
row to the right of the board shape, and a room defined to enclose those components, as shown
in the example in Figure 333. In this design there are 5 rooms, one for each of the 5 schematic
sheets in this project.

Figure 333. Each class of components is placed in its own placement room.

A good strategy is to then place the rooms around the edge of the board, close to where that set
of components might ultimately be positioned. This process is discussed in more detail later in
this module.

Altium Essentials_July2013_Colby
10-July-2013

312

25.3 Finding a Component for Placement


Once the design has been transferred from the schematic Editor to the PCB Editor, the process
becomes one of first locating the required component, then positioning it.

25.3.1

Working from the Schematic to the PCB

To cross probe from the component on the schematic to the component on the PCB, click
the cross probe button
in the Schematic editor, then hold CTRL and click on the
schematic component to display the same component on the PCB.

To browse for a component in both the schematic and the PCB, hold the ALT key and click on
the component in the Navigator panel (note that the project must be compiled).

To select a PCB component from the schematic, enable cross-selection (Tools Cross
Select Mode) from the menus, then select the required component(s) on the schematics.
The component(s) will be selected on the PCB, click and hold on a selected component to
move all of the selected components.

Alternatively, once the components are selected on the schematic, switch to the PCB and
the Reposition Selected Components command (Tools Component Placement menu)
to position them one-by-one, in the same order they were
selected on the schematic.

25.3.2

Working in the PCB Editor

To position a component that can be visually located, click


and hold to move it.

Otherwise, select Edit Move Component (M, C) and


click where there are no objects. This displays the Choose
Component dialog.

From this list, select the component to be placed.

At the bottom of the dialog the Movement is defined,


select Jump to component to move the cursor to the
component, select Move component to cursor to move
the component to the cursor.

To browse to a component on the PCB, set the PCB panel


to Components in the dropdown at the top, select All
Components in the Component Classes region of the
panel, then locate and select the required component in
the Components region of the panel.

25.4 Moving a Component


25.4.1

Figure 334. Choose Component


dialog.

Moving Basics

If the exact component location is pre-defined,


for example a connector that passes through
opening in the case, double-click on the
component and edit the X Location and Y
Location values. Note that the values are
relative to the current user-defined origin,
enable the display of this in the View Options
tab of the View Configurations dialog (Design
Board Layers and Colors) and define the
origin location using the Edit Origin Set
command.
Figure 335. The Origin Marker, showing that the

Altium Essentials_July2013_Colby
10-July-2013

user-definable origin is set to the bottom left of


the board shape for this design.
313

Click and hold on a component to move it. As the component moves the connection lines
directly connected to it move with it, while all other connection lines are temporarily hidden.

Alternatively, select Edit Move Component (M, C), then click on the required component.
If the component is known but not currently visible, click where there are no objects to open
the Choose Component dialog, where the required component can be selected.

As the component moves the connection lines are dynamically optimized so that each
connection line follows the shortest path to the nearest object on the same net

While the component is moving, press the N key to toggle the display of connection lines.

While the component is moving, press the L key to flip the component between the top and
the bottom sides of the PCB.

While the component is moving, press the SPACEBAR to rotate it anti-clockwise. The
Rotation Step angle is defined in the PCB General page of the Preferences dialog, the
default is 90 degrees. Press SHIFT+SPACEBAR to rotate the moving component clockwise.

Use the connection lines as a guide to help position connected components close to each
other, orient the component during positioning to give the minimum amount of cross-overs in
the connection lines, as shown in Figure 336.

Figure 336. Using the connection lines to explore possible placement options while moving a
component.

25.4.2

Drag Tracks while Moving a Component

The default behavior when moving a component is to leave the routing (tracks) unmodified. To
move a component and keep the tracks attached as the component is moved, the Comp Drag
option must be set to Connected Tracks. Configure this option in the PCB Editor General
page of the Preferences dialog. To move a component while dragging connected tracks, run the
Edit Move Drag or the Edit Move Component command, then click once on the
component to move it while dragging connected tracks. Note that routing orthogonality is not
maintained during dragging.

Altium Essentials_July2013_Colby
10-July-2013

314

Figure 337. Drag the component (left) and Move the component (right)

Figure 338. Configuring the Comp Drag option to drag connected tracks.

25.4.3

Component Unions

The Union feature allows the designer to cluster components together so that they can be moved
as a group, as if they were a single component.

To create a union of components, first select the components, then right click on any
selected component and run the Unions Create Union from selected objects command.

To remove a component from a union (or to remove the union), right-click on the component
and choose the Unions Break objects from Union command. The Confirm Break
Objects Union dialog appears, select which objects are to be removed from the Union and
click OK. Selecting all components removes the union.

To move a union of components, click and hold on any component in the union and move
the mouse.

Multiple unions can be defined.

Altium Essentials_July2013_Colby
10-July-2013

315

25.4.4

Component Grids

Altium Designers PCB Editor is a grid-based environment, all object are placed on the currently
applicable grid.

Grids are defined in the Grid Manager dialog (Tools Grid Manager, or G, M shortcut).

The default Global Board Snap Grid is always enabled, and extends over the entire PCB
workspace.

Multiple grids can be defined, both Cartesian and polar styles are supported.

As well as defining the grid step increments, for user-defined Cartesian or polar grids the
extents, or area of the grid is also defined.

Figure 339. Grid Manager dialog box

Grids can apply to just components (only Comp checkbox enabled), to all non-component
objects (only Non Comp checkbox enabled), or all objects (both checkboxes enabled), as
shown in Figure 339, where the Default and Polar grids apply to all objects, and the grid
named Component Grid only applies to Components.

The highest priority grid under the current cursor location is displayed and used. For a
component-only grid, it will only be displayed while a component is being moved, as shown
in Figure 341.

Altium Essentials_July2013_Colby
10-July-2013

316

Figure 340. The default and Polar grids are visible, as they apply to both Comp and Non Comp objects.

Figure 341. When a component is being moved the component-only grid appears and is used.

Use different colors for each grid to make it easy to see which is grid currently being used.

The Heads Up Display indicates which grid is currently being applied, as shown in the
Figures below.

Altium Essentials_July2013_Colby
10-July-2013

317

Figure 342. HUD showing the Default grid as the currently active grid

Figure 343. HUD showing the Polar custom grid as the currently active grid

Figure 344. HUD showing the Component-only custom grid as the currently active grid

When working with Polar grids, change the Rotation Step angle to allow objects to be
rotated to align with the Polar grid (PCB Editor General page of the Preferences dialog).

Altium Essentials_July2013_Colby
10-July-2013

318

25.5 Interactive Placement Commands


Altium Designer provides a number of semi-automated tools to help the designer position the
components on the board. Some of these are generic commands that can be used for any type
of object, so are located in the Edit Align submenu, others are component-specific commands
so are located in the Tools Component Placement submenu. They are also available in the
Alignment tools in the Utilities toolbar.

25.5.1

Align Commands

The positioning commands (Edit Align and Tools Component Placement) operate on
selected objects.

Commands that move components to a grid, or in grid increments, always use the Global
Board Snap Grid.

Use the Distribute and Spacing commands in the Alignment tools to make the horizontal
and vertical spacing between selected components equal, less or more.

Increasing and decreasing the horizontal (or vertical) spacing means the horizontal (or
vertical) distance between the component reference points is increased (or decreased) by
the current Global Board Snap Grid.

Distribute commands divide the distance between the first and last selected components by
the number of spaces required to equally space the selected components. This means
components between the first and last components can end up off-grid.

25.5.2

Component Placement Commands

Use the interactive component placement commands (Tools Component Placement) to:

Arrange Within Room - Components assigned to the nominated room are quickly placed
within that room. Note that this is a simple pre-placement tool, there is no analysis of
component connectivity during the process.

Arrange Selected Components Within Rectangle - Selected components are placed


within a user-defined area.

Arrange Outside Board - Selected components are moved to the right and above the board
shape.

Reposition Selected Components - Enable Cross Select Mode in the Schematic editor
(Tools menu), select multiple schematic components, switch to the PCB editor, then run this
command to reposition each component in the same order they were selected in the
schematic. Alternatively, select the components in the PCB panel (with the Select option
enabled in the panel), then run the command.

25.5.2.1 Working with Component Classes and Rooms

Click and hold on a room to move it and the associated


class of components.

To resize a room click once to select it, then click and


to move one of the resizing handles.

After the room has been resized, re-cluster the


components back into their room by selecting the Edit
Align Arrange Components Within Room command,
or use the button on the Utilities toolbar, as shown in
Figure 14.
Figure 345. Re-cluster the
components in their room, using the
button on the Utilities toolbar.

Altium Essentials_July2013_Colby
10-July-2013

319

Module 26: Interactive Routing


Routing is the process of defining a connective path between the nodes in each net. This path is
defined by placing PCB design objects such as tracks, arcs and vias on the copper layers to
create a continuous connection between the nodes. Rather than placing these objects one by
one to build up the connective path, in Altium Designer you interactively route the connection.
Interactive routing is an intelligent process. The designer clicks on a pad to select a connection
to be routed, Altium Designer then attempts to define a route path from that pad all the way to
the current cursor location. How the interactive router responds to existing objects, such as pads
on other nets, depends on the current Routing Conflict Resolution mode. When it encounters
an object, the Interactive Router supports the following conflict resolution modes: Walkaround,
Hug and Push, Push, Ignore, or Stop.
Interactive routing can be performed on a single net (Place Interactive Routing), on a
differential pair of nets (Place Interactive Differential Pair Routing), or on a set of selected
nets (Place Interactive Multi-Routing).

26.1 Interactively Routing a Net

Select the Place Interactive Routing command, then click on an object that has a net
attribute to start routing. This can be a pad, a connection line, an existing via, a track end on
a partially routed net, in fact any object that belongs to the net. Altium Designer will jump to
the nearest electrical object on that net, and then attempt to define a route path from there to
the current cursor location.

The ability of the Interactive Router to reach the current cursor location depends on the
Routing Conflict Resolution mode, which is displayed on the Status bar when the
Interactive Routing command is running. If the mode is set to Walkaround, Push and Hug or
Push, the Interactive Router will attempt to find a path around and between existing objects,
as shown in Figure 346.

Potential route path segments are displayed as hatched, or hollow (empty). Clicking the
mouse button will place all hatched segments.

If the current route path is not suitable, move the mouse closer to the start to remove
unwanted segments, then click to retain the required segments.

Press BACKSPACE to rip up already placed segments from the net currently being routed.

Figure 346. Interactively routing a connection, after launching the command and clicking on a connection
line the Interactive Router finds a path from the pad to the current cursor location, weaving around existing
objects. In this example the conflict resolution mode is Walkaround. A click of the mouse button will place
all hatched track segments.

Altium Essentials_July2013_Colby
10-July-2013

320

26.1.1

Auto-complete the Current Route

At any stage during interactive routing, the designer can instruct the interactive router to attempt
to automatically complete the current route by holding the CTRL key and clicking the mouse
button.

26.2 Understanding Connectivity


An important part of understanding the interactive router is to first understand how connectivity is
managed in Altium Designers PCB Editor. Once the components have been placed into the
PCB workspace connection lines are displayed, indicating which pads connect to each other, in
each net.

Figure 347. Connection lines are automatically created between each pad in the net, in accordance with the
applicable Routing Topology rule. In this design the GND and 5V nets use a different color for the
connection lines.

The arrangement or pattern of the connection lines in a net is called the topology. The
default topology for all nets in a board is Shortest, as determined by the applicable Routing
Topology design rule.

The PCB Editor includes a net analyzer that constantly monitors the location of all objects in
the workspace and updates the connection lines when any net-type object is edited
an object being moved). For example, when a component is moved the connection lines can
jump from one pad in the net to another pad in the net, as they are adjusted to maintain the
shortest possible length of connection lines for that net, as shown in Figure 348.

Altium Essentials_July2013_Colby
10-July-2013

321

Figure 348. In the top image the top pad in R7 connects to the pad on its right. In the bottom image the
component has been moved, note how the top pad in R7 now connects to the bottom pad in R6, as it is
now the nearest pad on that net.

The net analyzer monitors all the objects attached to a net, for example when a connection is
routed (2 pads are joined by track segments on a copper layer), the connection line between
those 2 pads is automatically removed by the net analyzer. Also, if a net is partially routed a
shorter connection line is displayed. It does not matter if the designer chooses to ignore the
connection line and route the net in a different location, as soon as routing is terminated the
net analyzer will run and remove the connection line if it is no longer required, as shown in
Figure 349.

Altium Essentials_July2013_Colby
10-July-2013

322

Figure 349. Even though the connection line connects the pads, the designer is free to route wherever
they choose. The net analyzer will detect that the connection is complete and remove the connection
line.

Because the arrangement of connection lines is determined by the routing topology design
rule, it is possible that the connection line will not attach to the end of the track, instead
attaching to some other point in the net that is closer to another point in the net. If preferred,
connection lines can be forced to the track ends by enabling the Smart Track Ends option in
the PCB Editing General page of the Preferences dialog.

Figure 350. Note how the GND net connection line in the left image is attached to pad 1 instead of the
end of the route, once Smart Track ends has been enabled the connection line jumps to the end of the
route.

Note: to force the net analyzer to run and update the connection lines, an object on
that net must be edited. Edit actions include moving a component, or editing a pad or
track segment.

26.2.1

Controlling the Color of Connection Lines

The connection lines that join the various nodes in each net are invaluable during the routing
process, to help guide the designer as they route across and through the board. When the
design is initially transferred all connection lines are given a default color, which can then be
edited.

26.2.1.1 Changing the Connection Line Color


An easy way to make important nets stand out during the routing process is to change the color
of their connection lines. The actual colors Connection Colors are assigned from the PCB
panel, with its browsing mode set to Nets.

Altium Essentials_July2013_Colby
10-July-2013

323

The Connection Color for a net is used to color the connection lines for that net, and is
also used by the PCB Editor's Net Color Override feature.
Set the connection color for an individual net in one of the following ways:

Double-click on a net in the Nets region of the PCB panel to access the Edit Net dialog. Click
on the Connection Color field (color swatch) to access the Choose Color dialog, and
specify the color required for that net.

Figure 351. Defining the Connection Color for an individual net through its associated edit dialog.

Right-click on a net in the Nets region of the PCB panel and choose the Change Net Color
command from the context menu that appears. Again, use the Choose Color dialog to
specify the color required.

Altium Essentials_July2013_Colby
10-July-2013

324

Figure 352. Changing the Connection Color for an individual net using the Change
Net Color command.

To change the color for multiple nets, first select the required nets in the PCB panel then either:

Right-click and use the Change Net Color command, or

Edit the Color attribute for those nets, in the Graphical region of the PCB Inspector panel
(set to include only nets).
The Change Net Color command can also be used to quickly assign a single color to
member nets in one or more selected net classes simply select the classes in the
Classes region of the PCB panel.

The current Connection Color for a net is reflected in the far left field in the Nets region of the
PCB panel.

Currently assigned
connection colors reflected
in the PCB panel.

Figure 353. The PCB panel reflects the chosen


connection color for nets.

Altium Essentials_July2013_Colby
10-July-2013

325

26.2.1.2 Displaying Connection Lines using the Layer Colors


As well as setting the connection line color for individual nets, the connection lines can also be
displayed using the colors of the start and end layers that each connection line travels between.
These connection lines are displayed as dashed lines, using the colors of both the start and end
layers. This feature is ideal when routing a multi-layer board, as it provides indication of the
target layer that a connection being routed must get to.
Note that this dashed color override is only applied to nets that travel from one layer to
another if the connection starts and ends on the same layer it retains its defined
color.
To use this color-by-layer feature, enable the Use Layer Colors For Connection Drawing
option, on the View Options tab of the View Configurations dialog (for the active 2D
configuration).

Figure 354. An example of connection lines that connect between different layers in a multi-layer board
the dashed coloring depicts the start and end layers involved in each case.

26.2.2

Displaying Connection Lines in Single Layer Mode

A multi-layer board is visually dense, making it difficult to interpret what is going on. To help with
this, the designer can easily switch the layer display from the chosen Layers to Single Layer
mode, by pressing the SHIFT+S shortcut. Normally, when this is done, all connection lines that do
not either start or end on the current layer are also hidden, as it is assumed that they are not
relevant. To always display the connection lines, enable the Show All Connections in Single
Layer Mode option on the View Options tab of the View Configurations dialog (for the active 2D
configuration).

Altium Essentials_July2013_Colby
10-July-2013

326

26.3 Controlling the Routing Width and Via Size


When the designer runs the Interactive Routing
command and clicks to start routing, a series of
track objects are created from the nearest pad up
the current cursor location. The width of these
tracks is either taken from: the designer's preferred
width; or the applicable routing width design rule.
The selection of User Choice (designer's preferred
width) or Rule (min/preferred/max) is made by
setting the Track Width Mode in the PCB Editor Interactive Routing page of the Preferences
dialog.
Figure 355. Configure what should be used for
the interactive routing track width and via size.

26.3.1

Changing the Width While Routing

To change the width while routing, the following shortcuts are used. Note that if the Interactive
Routing Width / Via Size Sources was set to one of the Rule-based width options, it is changed
to User Choice whenever one of these shortcuts is used.

SHIFT+W - use this shortcut during routing to pop up the Choose Width dialog. Click on a
new width to close the dialog and continue routing at the chosen width. Available widths can
be edited by clicking the Favorite Interactive Routing Widths button in the PCB Editor Interactive Routing page of the Preferences dialog.

Figure 356. Click to choose a new routing width.

TAB - use this shortcut to pop up the Interactive Routing for Net dialog
. The dialog
opens with the current width selected, simply type in a new value and press ENTER to close
the dialog and continue routing at the new width. Use this approach if the required width is
not defined as a favorite.

Altium Essentials_July2013_Colby
10-July-2013

327

Figure 357. Press Tab to edit the routing width and via properties while routing.

Note: the routing track width must be between the minimum and maximum values
specified in the applicable routing width design rule. If the designer attempts to change
the width as they work to a value that is outside the range defined by the rule's
Minimum and Maximum settings, Altium Designer will automatically clip it back to
within this range.

26.3.2

Changing the Via Size While Routing

As well as changing the track width during routing, the designer can also change the via size.
The folliwing shortcuts are used to do this:

SHIFT+V while routing to open the Choose Via Sizes dialog. Select the new via size from the
pre-defined list and click OK to continue routing. To switch to the next available copper layer
and place a via, press the * key on the numeric keypad. Via sizes are defined by clicking the
Favorite Interactive Via Sizes button in the PCB Editor - Interactive Routing page of the
Preferences dialog.

Altium Essentials_July2013_Colby
10-July-2013

328

Figure 358. Select a new via size, click OK to continue routing, then press * to switch layers and place
the via.

TAB - use this shortcut to pop up the Interactive Routing for Net dialog
size as required then click OK to return to routing.

. Edit the via

26.4 The Routing Conflict Resolution Mode


As mentioned, how the interactive router responds to objects already in the PCB workspace,
such as pads on other nets, depends on the current Routing Conflict Resolution mode.
Configure which conflict resolution modes are available during routing in the PCB Editor Interactive Routing page of the Preferences dialog.
Conflict resolution modes include:

Ignore Obstacles ignore existing objects (routing


can be freely placed). Violations are highlighted.

Push Obstacles push existing tracks and vias to


make room for the new route.

Walkaround Obstacles attempt to find a path


around existing objects. The clearance to other
objects is defined by the applicable Clearance design
rule.

Stop At First Obstacle in this mode the routing


engine will stop at the first obstacle that gets in the
way.

Hug And Push Obstacles in this mode the routing


engine will closely follow existing objects, and only
push them when there is insufficient room for the track being routed.

Figure 359. Define how interactive


routing conflicts are handled.

The current mode is displayed on the Status bar at the bottom of Altium Designer. Use the
SHIFT+R shortcut keys to cycle through the available modes during interactive routing.

Figure 360. The Status bar reports the current Interactive Routing mode, press Shift+R to change modes.

Altium Essentials_July2013_Colby
10-July-2013

329

26.5 Interactive Routing Options and Features


There are a number of other options for the interactive router that are configured in the PCB
Editor - Interactive Routing page of the Preferences dialog. It is important to understand the
role of these options to get the maximum benefit from the Interactive Router.

26.5.1

Routing Gloss Effort

As the cursor is moved during interactive routing, the routing engine continually attempts to
find the shortest path from the last click location, up to the current cursor location. How well it
can smooth the routing and reduces the number corners is determined by the Routing
Gloss Effort.

The current Routing Gloss Effort setting is displayed on the Status bar, use the
CTRL+SHIFT+G shortcuts to cycle the setting. Note that the stronger the setting, the fewer
corners in the final route.

Glossing is a calculation intensive task that runs as in the background, it can affect the
performance of the Interactive Router, particularly when routing multiple nets simultaneously.
The stronger the Gloss setting, the more time it takes to perform the calculations.

26.5.2

26.5.3

Automatically Terminate Routing

Enable this option to automatically drop the current connection when the target pad is
reached. If this option is not enabled, use the Right Mouse button or Esc key to drop the
current connection (typically this option is enabled).

Loop Removal

An existing route path can be redefined by simply routing a new path. Start interactively
routing anywhere along the existing route path, route the new path, returning to meet the old
path where required. As soon as the new path meets the existing path, all segments in the
redundant loop are automatically removed if the Loop Removal option is enabled (typically
this option is enabled).

Figure 361. To re-route, simple route the new path, when the new route comes back to meet the existing
route a loop is created, Altium Designer will automatically remove this if Loop Removal is enabled.

Note that certain nets may require loops


(multiple paths to the same point), such as a
power or ground net. For these nets the Loop
Removal feature can be selectively disabled, to
do this double click on the net name in the
Panel (set the panel mode to Nets) to open the
Edit Net dialog, where the Remove Loops
option can be turned off for just that net.

26.5.4

Restrict to 90/45

Figure 362. Control loop removal at the


individual net level.

Pressing SHIFT+SPACEBAR cycles through the


available routing corner modes, which include arc and any angle modes. If these modes are
not required, enable the Restrict to 90/45 option to limit corners to 90 or 45 degrees.

Altium Essentials_July2013_Colby
10-July-2013

330

26.5.5

Follow Mouse Trail

If this option is enabled the route path tends to follow the path drawn with the cursor.

26.5.6

Look Ahead Behavior

During interactive routing, for the net currently being routed the track segments are either
displayed as hatched, or hollow (empty). All hatched segments are placed with the next
mouse click.

The hollow segment is called the Look Ahead segment, its purpose it to allow the designer to
plan ahead, that is, to consider where the next segment might be placed, without needing to
commit to it. The Look Ahead mode is toggled on and off using the 1 shortcut key (while
routing).

Figure 363. The hollow or empty segment is called the Look Ahead segment, use it to plan where
future segments will be placed. Press the 1 shortcut (while routing) to toggle the Look Ahead mode on
and off.

26.6 Shortcuts available during Interactive Routing

* on the numeric keypad to switch to the next available routing layer, and insert a via.

Alternatively, hold CTRL+SHIFT while scrolling the mouse wheel to cycle to the next available
routing layer, and insert a via. Each mouse wheel click moves one layer.

SHIFT+R to cycle through the available routing conflict resolution modes.

SHIFT+SPACEBAR to cycle available corner modes. For the arc in corner options, use the ,
and . keyboard buttons to decrease or increase the arc size.

SPACEBAR cycles the direction of the last corner.

BACKSPACE to rip up the last-placed segment(s).

Shift+W to pop up the Choose Width dialog and change the routing width.

Shift+V to pop up the Choose Via Size dialog and change the routing via size.

In the multi-net routing, press 5 to cycle the via available patterns.

Ctrl+Mouse Click to automatically complete the current connection.

Press tilda (~) while routing to display the interactive routing shortcuts (or Shift+F1).

Altium Essentials_July2013_Colby
10-July-2013

331

Module 27: An Introduction to PCB Global


Editing
The design of a circuit is usually an iterative process that converges towards an ideal solution, or
at least some acceptable compromise. As the design grows and becomes increasingly complex,
minor changes to one section of the design may require other aspects of the design to be edited
too. Having access to tools and processes that facilitate rapid editing of the design can make a
big difference to a designer's overall productivity.
Altium Designer provides a range of editing tools and capabilities that have been designed to
help with making large scale edits to a design. Among these are the Global Editing processes,
PCB Inspector panel, PCB Filter panel, PCB List panel, and Find Similar Objects capabilities.

27.1 Altium Designer's Data Editing Paradigm


Before attempting to make wholesale edits to a design, it's important that designers understand
Altium Designer's editing paradigm so that they tune their approach to be in alignment with the
way the system works.
The process of editing multiple items in Altium Designer involves three steps:
7. Select the objects to be targeted.
8. Inspect the properties of those objects.
9. Edit the properties that need to be amended.
With this editing paradigm in mind, Altium Designer offers a range of different ways to Select,
Inspect and Edit multiple objects. Each method has its strengths and by having an understanding
how they work, the designer is equipped to choose the method that is most applicable to their
specific editing challenge.

27.1.1

Selecting Objects

Objects can be selected in a variety of ways but they all fall into two categories:

Graphical Selection objects are selected:


a) individually by mouse clicks,
b) accumulatively by SHIFT+mouse clicks, or
c) using one of the selection commands (Edit Select) from the menu system.

Logical Selection objects are selected using an interactive or query-based process that
targets and filters objects using specific parameters and/or attributes as the search criteria.
GUI elements that support this type of selection are:
a) The Find Similar Objects dialog.
b) The PCB panel.
c) The PCB Filter panel.
d) The PCB List panel.

Altium Essentials_July2013_Colby
10-July-2013

332

Figure 364. Example selection of a component in the workspace.

27.1.2

Inspecting Objects

The attributes of objects can be inspected (viewed) in a variety of ways but they all fall into two
categories:

Direct Inspection the attributes of one or more objects are inspected directly through the
object's Properties dialog or graphically in the main editor.

Indirect Inspection the attributes of one or more objects that have previously been
selected are viewed using one of the following panels:
a) The PCB Inspector panel.
b) The PCB List panel.

27.1.3

Editing Objects

Objects can be edited in variety of ways but they all fall into two categories:

Direct Editing the attributes of one or more objects are edited directly through the object's
Properties dialog or graphically in the main editor.

Indirect Editing of Several Objects the attributes of one or more objects that have
previously been selected can be edited using one of the following panels:
a) The PCB Inspector panel.
b) The PCB List panel.

Altium Essentials_July2013_Colby
10-July-2013

333

Figure 365. Viewing and editing of object properties can be performed directly through an associated
properties dialog, or indirectly through the PCB Inspector and PCB List panels.

Additional training modules delve deeper into the use of the various aforementioned panels,
selection commands and the Find Similar Objects feature, but before wrapping up this module,
there's one extra concept that needs to be understood.

27.1.4

Masking

Masking is a way of explicitly removing an object's eligibility for selection and/or editing. This is
most useful when, in some cases, it can be quicker to first mask out what is not required before
trying to select what is required.
Consider a design where all vias sitting under a specific BGA device need to have their diameter
changed. One way to perform this operation would be to run a query that masks out all non-via
objects on the design, then use the Edit Select Inside Area menu command to draw a
rectangle around the BGA device to select the vias to be targeted. Finally, the via diameter could
be changed using the PCB Inspector panel.
Masked objects will appear faded. The level of fading can be adjusting using the dimmer controls
accessible by clicking the
control at the bottom right of the editor window.

Altium Essentials_July2013_Colby
10-July-2013

334

Figure 366. A fragment of a board showing masking in action. In this case, all designator objects pass the
applied filter and are displayed normally, with all other design objects faded.

27.1.4.1 Clearing Selections and Masks


The current selection can be cleared a number of ways:

Pressing the SHIFT+C shortcut.

Clicking the

Using one of the Edit Deselect menu commands.

button in the bottom right of the editor window.

Altium Essentials_July2013_Colby
10-July-2013

335

Module 28: PCB Selection & FSO


Altium Designer provides a range of editing tools and capabilities that have been designed to
help with making large scale edits to a design. Among these is the Find Similar Objects
capability.
This document takes a look at menu-based selection of objects within the PCB workspace, and
targeting similar objects for the purpose of editing, using the Find Similar Objects dialog.

28.1 Selection Commands


The following selection-based commands are
available from the Edit Select sub-menu.
Inside Area use this command to select
design objects within a user-defined area. All
objects that fall completely inside this defined
area will become selected.
Outside Area use this command to select
design objects outside of a user-defined area.
All objects that fall completely inside the
defined area will remain non-selected. All
objects outside of this area will become
selected.
Touching Rectangle use this command to
select design objects touched by a useruser-defined bounding rectangle.
Touching Line use this command to select
design objects touched by a user-defined line.
All use this command to select all design
objects in the current document, including the
board shape. (Shortcut: CTRL+A).
Board use this command to select the
shape and all design objects that lay within its
bounding rectangle. (Shortcut: CTRL+B).
Net use this command to select all routed
track and electrical objects associated with a
particular net. Simply click on an object within Figure 367. The PCB Editor offers a variety of menuthe required net. Click on an area of the
based commands to aid in object selection.
design, away from any objects, to access the
Net Name dialog, from where the name of the
net can be entered directly. If unsure of the name, enter ? and click OK to access the Nets
Loaded dialog, which lists all currently loaded nets for the design.
Selection is not cumulative. As a subsequent net is selected, the electrical objects of
the previous net will become deselected.
Connected Copper use this command to select all routed track and electrical objects that are
all connected to the same piece of copper. Simply click on an electrical object (track, pad, fill etc)
and all electrical objects that are connected by the same piece of copper will become selected.
(Shortcut: CTRL+H).
Physical Connection use this command to select all routed track between two pad objects.
Simply click on a track or pad and all contiguous track between the two pads will become
selected, including any vias. The pads themselves will not be included in the selection.

Altium Essentials_July2013_Colby
10-July-2013

336

When there are multiple connections to a selected pad: current layer track will be
selected first; only one connection path from such a pad can be selected at any one
time.
Selection is not cumulative. As a subsequent physical connection is selected, the
previous physical connection will become deselected.
Physical Connection Single Layer use this command to select connected track segments on
the current layer, i.e. to select contiguous copper until the layers change or a component pad is
encountered.
Component Connections use this command to select all routed connections emanating from
the pads of a chosen component. The component's pads, along with connected tracks and vias
will be selected, up to the next encountered pad in each case.
Selection is not cumulative. As a subsequent component is selected, the connections
of the previous component will become deselected.
Component Nets use this command to select all nets attached to a chosen component. All
nets (and member net objects therein) attached to that component will be selected.
Selection is not cumulative. As a subsequent component is selected, the nets of the
previous component will become deselected.
Room Connections use this command to select all pad-to-pad routed connections that fall
completely within the boundaries of the chosen room.
Selection is not cumulative. As a subsequent room is selected, the connections of the
previous room will become deselected.
All on Layer use this command to select all design objects on the current layer. The current
layer is distinguished by the active tab at the bottom of the main design window.
Free Objects use this command to select all free primitive objects within the design. Group
objects (such as components, coordinates, dimensions and polygons) will not be selected.
objects must be converted to their free primitives in order for this selection mode to apply.
All Locked use this command to select all design objects that have their Locked property
enabled.
Off Grid Pads use this command to select all pads that are not placed on a defined snap grid.
Toggle Selection use this command to change the selection status of one or more design
objects in the workspace. The command is used to change the status for one object at a time
and not a group of objects simultaneously.
All currently selected objects will be deselected when using this command, unless the
Click Clears Selection option is disabled, on the PCB Editor General page of the
Preferences dialog.

Various de-selection commands are available from the Edit DeSelect sub-menu,
including: De-selection of all selected objects; all selected objects within or outside of
user-defined area; all selected objects on the current layer, and all selected free
objects.

Altium Essentials_July2013_Colby
10-July-2013

337

28.2 Find Similar Objects (FSO)


The Find Similar Objects (FSO) process uses the attributes of a target object as a reference for
finding several other objects with similar characteristics. It can be accessed in the following
ways:
The Edit Find Similar Objects menu command

The SHIFT+F shortcut

When right-clicking over an object.

The Find Similar Objects dialog is divided into two primary sections; the upper section consists of
a grid that lists the attributes of the reference object, and the lower section consists of a group of
check boxes that define what will happen once the Apply or OK button is clicked.
The grid of reference attributes is further divided into three columns. The left column lists the
names of all the attributes of the reference object, and the centre column lists the value of those
attributes taken from the reference object. To search for objects with different values, enter the
search pattern into the attribute value column directly; the '*' character can be used as a
wildcard for finding any group of characters - i.e. C* will find C1, C2, C20, C397, Cap5, etc. Edits
made to the attribute value in the FSO will not alter the attributes of the reference object.

Figure 368. Launching the Find Similar Objects dialog by right-clicking over an object of interest.

The right column of the grid contains a drop down list of options used for specifying how the
associated attribute should be used to find similar objects. The options are:

Any: Find Similar Objects with an attribute value that has any value. Essentially this setting
will ignore the associated attribute from the Find Similar Object filter.

Same: Find Similar Objects with an attribute set to the Same value as this one.

Altium Essentials_July2013_Colby
10-July-2013

338

Different: Find Similar Objects with an attribute set to a Different value to this one.

The example in Figure 368 shows the settings that would be used if a designer was wanting to
select all text with a String Type attribute the same as Comment (so all component comment
strings across the design).
The lower section of the Find Similar Objects dialog has a drop down list and a number of check
boxes that will define what will happen to found objects.
The check boxes operate as follows once the Apply or OK button is clicked:

Zoom Matching - Zoom the display to a window that encompasses all found objects in the
workspace.

Select Matched - Select all found objects matching the search criteria.

Clear Existing - Clear any existing Selection or Editing Mask before performing the search.
Uncheck this option if doing successive Find Similar Objects searches and it is desirable for
the results to accumulate.

Create Expression - Create an expression that matches the criteria specified by the Find
Similar Objects dialog and enter it into the PCB Filter panel. The PCB Filter panel will be
opened if it is not already. This option makes it possible to use the Find Similar Objects
dialog as a quick way of constructing complicated filtering operations.

Run Inspector - Display the PCB Inspector panel. For this option to produce meaningful
results, it will be necessary to have the Select Matched option set since the PCB Inspector
panel will only show attributes from currently selected objects.

The drop-down field sets the filtering applied in the workspace as follows:

When Mask is selected, filtered objects will appear visible in the design editor window, with
all other objects being made monochrome. When this option is applied, unfiltered objects will
be unavailable for selection or editing.

When Dim is selected, filtered objects will appear visible in the design editor window, with all
other objects retaining their colors, but being shaded.

When Normal is selected, filtered objects are highlighted, however, the appearance of
unfiltered objects remains unchanged.
The effectiveness of masking and dimming is determined by the Highlighting
set on the PCB Editor -- Display page of the Preferences dialog. Controls for
masking and dimming are accessed from the Mask Level button (bottom right of
design editor window).

Altium Essentials_July2013_Colby
10-July-2013

339

Module 29: Polygons


A copper pour on a signal layer is a common part of a PCB design. This may be a hatched
ground pour on an analog design; a solid power supply pour for carrying heavy currents; or a
solid ground pour for EMC shielding. Designers requiring large areas of solid copper in their PCB
designs can achieve this through use of Polygon Pours.
A polygon pour is a group design object that creates a solid, hatch-filled (lattice) or outline-only
area on the selected PCB layer. Also referred to as copper pours, they are similar to area fills,
except that they can fill irregularly-shaped areas of a board and can connect to a specified net as
they are poured.

29.1 Overview
A signal layer polygon pour is an area of copper which is placed over existing objects, such as
tracks and pads, but automatically pours around them, maintaining the specified clearances. On
a non-signal layer, solid or outline-only polygon pours might be used to distinguish between
specific functional areas of a board.

A polygon pour can be placed to define any enclosed shape.

A signal layer polygon pour maintains clearances, defined by the Clearance design rules,
from other copper objects.

A signal layer polygon pour can be connected to a net.

A polygon pour can be Solid or Hatched.

A Solid polygon pour is built from Region objects. The advantage of this style of polygon
pour is that there is typically much less data to store in the PCB file, and also less data in the
CAM (Gerber or ODB++) files. Also region objects have sharp corners, so the polygon pour
can sometimes better fill the space between other objects.

A Hatched polygon pour is built from tracks and arcs. The advantage of this style of polygon
pour is that the CAM processing software does not need to understand polygonal shape
definitions.

Polygon pours can be placed on other layers, but only pour around other objects on signal
layers.

Polygon pours can be created from a selected set of primitives, such as lines, as long as
they form a closed boundary.

A polygon pour can be graphically 'sliced' to create two or more separate polygon pours.

Polygon pours can be shelved, a process that hides them from other design objects, but
does not remove them. Shelved polygons can be restored at any time.

Polygon pours for the board can be viewed and managed using the Polygon Pour Manager.

29.2 Placing a Polygon Pour


A polygon pour is placed using the Place Polygon Pour menu command, or by clicking the
button on the Wiring toolbar. The placement process involves first setting properties for the
required polygon pour, and then actually defining the polygonal shape of the pour in the
workspace.

29.2.1

Defining Polygon Pour Properties

Properties for the polygon pour to be placed are defined in the Polygon Pour dialog.

Altium Essentials_July2013_Colby
10-July-2013

340

Figure 369. The Polygon Pour dialog.

Choose to place a polygon pour using one of three fill modes:

Solid (Copper Regions) this mode fills the inside of the polygon boundary with one or
more solid copper regions. The number of copper regions used depends on the number of
individual areas created inside the polygon by existing net objects, such as tracks and pads.
This style of polygon pour requires that the Fabricator supports polygonal objects in
Gerber or ODB++ files (most do). Using these polygons will give much smaller design
files.

Hatched (Tracks/Arcs) this mode fills the inside of the polygon boundary using tracks,
arranged horizontally, vertically, or in a hatched/lattice fashion (45 or 90). Pads within the
boundary can be surrounded using arcs (arranged in circular fashion) or tracks (arranged in
octagonal fashion).

None (Outlines Only) this mode leaves only the outline track of a placed polygon pour
displayed. The interior of the pour is not filled. This is a useful mode during the design
phase, as system performance is not degraded by having to wait for polygons to be
repoured. Prior to generation of manufacturing output, polygon pours can be repoured with
the desired fill type.

As the Fill Mode is changed, the dialog will dynamically update to show a graphical example of
pouring with that mode and the options applicable to that mode. The following sections take a
look at the various options available when defining a polygon pour.

29.2.1.1 Properties

Name edit this field to define the name of the polygon pour. The Name property can be
used in the InNamedPolygon query to highlight or scope rules, as a member of a polygon
class and so on.

Layer select the layer that the polygon is to be placed on.

Altium Essentials_July2013_Colby
10-July-2013

341

Min Prim Length tracks or arcs below this setting are not placed when pouring a polygon
pour. This option applies to Hatched and Outline polygon pours only.

Lock Primitives if unchecked, individual objects (i.e. tracks or arcs) that make up the pour
can be selected, edited, and deleted.

Locked if this option is checked, the polygon pour is fixed in the workspace and cannot be
moved by the auto-placer or directly manipulated graphically. If attempting to manually move
the polygon pour, the warning message "Object is locked, continue?" will pop up, allowing
the polygon pour to be moved without unlocking it. The locked attribute remains set after this
move. If this option is unchecked, the polygon pour can be moved directly without
confirmation.

Ignore On-Line Violations disable this option to include polygon pours as part of the
scanning for online violations by the Design Rule Checker. This is computationally intensive
however. Enable this option to speed up operations by ignoring polygon pours especially
complicated polygon pours during automated design rule checking.

29.2.1.2 Net Options

Connect to Net selects the net to be connected to the polygon pour.

Pour Over options this drop-down field provides the following options to determine pour
behavior:
a) Pour Over Same Net Polygons Only select this option (default) to have the
polygon pour automatically connect to only polygon pour objects inside its boundary, and
which are associated to the same net.
b) Pour Over All Same Net Objects select this option to have the polygon pour
automatically connect to all objects on the same net as the pour.
c) Don't Pour Over Same Net Objects select this option when not wanting the
polygon pour to connect to any other net objects, either belonging to the same or
different parent net as itself.
If a polygon pour is placed on a non-signal layer it will not be poured around existing
objects, as these objects are not assigned to a net and therefore do not belong to
anything.

Remove Dead Copper removes any part of the polygon pour that cannot connect to the
specified net.
Dead copper is the term used to define an area of a polygon pour that does not
to the specified net, due to objects belonging to different nets (tracks, pads and vias)
preventing the polygon from pouring as one continuous area. If a pour does not
enclose any pads on the selected net, it is viewed as being entirely dead copper.

29.2.1.3 Mode-Specific Settings (Solid)

Remove Islands remove any region that has an area (in sq. mils) less than that specified.

Arc Approximation solid polygon pours use short straight edges to surround existing
curved shapes (such as pads). This setting defines the maximum allowable amount of
deviation.

Remove Necks narrow necks that have a width less than this amount are removed.

29.2.1.4 Mode-Specific Settings (Hatched and Outlines Only)

Track Width width of tracks that make up the polygon pour. If Track Width is equal to the
Grid Size, the polygon pour ends up as solid copper. If Grid Size is greater than Track Width,
the polygon pour ends up as hatched.

Grid Size spacing between tracks that make up the polygon pour.

Altium Essentials_July2013_Colby
10-July-2013

342

Surround Pads With when a polygon pour is poured around component pads, choose
whether such pads are surrounded by arcs or octagons (formed using track segments).
Octagons give smaller Gerber files and faster photoplotting.

Hatch Mode the following hatch patterns are supported:


a) 90 Degree Polygon pour is hatched with horizontal and vertical tracks.
b) 45 Degree Polygon pour is hatched with tracks at 45 degrees and 135 degrees.
c) Vertical Polygon pour consists of only vertical tracks.
d) Horizontal Polygon pour consists of only horizontal tracks.

29.2.2

Defining the Shape of the Polygon

Once properties for the polygon pour are defined as required, clicking OK in the Polygon Pour
dialog will present the workspace, ready to define the shape of the polygon. Placement is made
by performing the following sequence of actions:
1. Position the cursor and click to anchor the starting point for the polygon pour.
2. Position the cursor and click to anchor a series of vertex points that define the polygonal
shape of the pour.
3. After placing the final vertex point, right-click or press ESC to complete placement of the
polygon pour. There is no need to "close" the polygon as the software will automatically
complete the shape by connecting the start point to the final point placed.
A polygon pour can also be created from selected track and arc primitives using the
Tools Convert Create Polygon from Selected Primitives and Tools Polygon
Pours Define from selected objects commands. The primitives must be on the
same layer and form a closed boundary.
While defining the shape of the pour:

Use SHIFT+SPACEBAR to cycle through various corner modes. Modes available are: any
angle, 45, 45 with arc, 90 and 90 with arc. Use SPACEBAR to toggle direction of the corner
(start/end modes).

When using an arc corner mode, increase or decrease the arc radius using SHIFT+. (period
or full stop) or SHIFT+, (comma) respectively.

Use BACKSPACE to remove the last placed vertex point. Repeatedly use this key to 'unwind'
the outline for the polygon, right back to the initial starting point.

Press the + and - keys (on the numeric keypad) to cycle forward and backward through all
visible layers in the design respectively to change placement layer quickly.

Press the TAB key to access the Polygon Pour dialog, from where properties for the pour can
be changed on-the-fly.
To control how a polygon pour connects to component pads when the Connect to Net
option is used, include a Polygon Connect Style design rule. Via connections to both
hatched and solid signal layer polygon pours are also controlled by the Polygon
Connect Style design rule.

29.3 Editing a Polygon Pour


To edit a polygon pour, first make the layer that the polygon pour is on, the active/current layer.

29.3.1

Changing Properties

To change any of the properties once a polygon pour has been placed, double-click on the
polygon pour, or select Edit Change and click on the polygon pour. When the Polygon Pour
dialog opens change the settings, click OK, and then click Yes when prompted to re-pour the
polygon.
Altium Essentials_July2013_Colby
10-July-2013

343

29.3.2 Changing Size and


Location
When a polygon pour is selected, editing
become available with which to resize it.
Dragging corner handles will scale the polygon
horizontally and vertically simultaneously.
Dragging an edge handle scales the object in
direction (either horizontally or vertically).
Click, hold & drag a polygon pour to a new
location as required. The polygon pour can be
rotated and/or flipped while dragging:

Press SPACEBAR to rotate the object antianti-clockwise, or SHIFT+SPACEBAR for


clockwise rotation. Rotation is in accordance
with the value for the Rotation Step, defined
on the PCB Editor General page of the
Preferences dialog.

Figure 370. Editing handles available when


selecting a polygon pour.

Press the X or Y keys to flip the object along the X-axis or Y-axis respectively, and where
applicable.
After resizing, moving, rotating or flipping, a confirmation dialog will appear asking for
confirmation to rebuild the polygon essentially repouring it within the newly-sized/repositioned
boundary. Clicking Yes will effect the modification.

Multiple polygon pours can be moved simultaneously. SHIFT+CLICK on all pours to


include in the move, then click and drag on one pour in the selection to move the
selection.

29.3.3

Reshaping a Polygon Pour

A polygon pour can be reshaped at any time. This is done by entering Move Vertices mode.
To do this, right-click on the polygon and select
the Move Vertices command from the Polygon
Actions submenu. Filtering will be applied to the
document, resulting in the chosen polygon pour
object remaining visible and all other objects
becoming dimmed. Editing handles are
at each vertex, as well as at the mid-point of
straight edge (mid-point vertex).

Click on a corner vertex, move as required,


then click to finalize position.

Click on an edge away from a vertex to slide


the entire edge, click again to finalize
position.

Figure 371. Editing handles available in Move


Vertices mode.

To add vertices, click on a mid-point vertex.


New vertices will be added either side of the
original, and the original vertex will be attached to the cursor for relocation if/as required.

To convert a vertex into an arc, hold down SHIFT+A while clicking, then move the vertex as
required and click again to finalize position.

To delete a vertex, click on the corner vertex beyond the one to be deleted, and press the
DELETE key on the keyboard. Note that the order of the vertices is determined by the order
they were originally placed.

Altium Essentials_July2013_Colby
10-July-2013

344

Figure 372. Reshaping a polygon pour moving a corner vertex (top-left); sliding an edge (top-right);
adding new vertices (bottom-left); creating an arc (bottom-right).

While moving a vertex, right-clicking will reset the vertex back to its original position,
while remaining in Move Vertices mode.
Continue modifying the shape of the polygon pour as required or right-click or press ESC to stop.
A confirmation dialog will appear asking to rebuild the polygon. Click Yes to effect the changes
made.

29.3.4

Pouring a Polygon Pour with a Larger Clearance

Often the designer may want the polygon pours to have a larger clearance than the standard
track to track clearances. This can be achieved by adding a new, higher priority Clearance
design rule, to control the distance between the polygon pour and any other objects, e.g. pads,
tracks or fills.
When scoping the rule, use the InPolygon (or InPoly) keyword, rather than IsPolygon (or
IsPoly). This is because the clearance rules operate on the primitives (regions, tracks and
arcs) that make up (or are 'in') the polygon pour, rather than the polygon pour as a whole object.
A valid clearance rule for polygon pours would be between "InPolygon" objects and all other
objects. In addition, the Clearance rule must have a higher priority than any general clearance
rule, if it is to have any effect.

29.3.5

Polygon Pour Cutouts

When a positive copper region's Cutout property is enabled, it becomes a polygon pour cutout
object. This is essentially a negative copper region object that cannot be associated to a net or
used as a keepout. As such, it can be moved inside the boundary of a solid polygon pour object
providing a void area within that pour (once the solid polygon has been repoured).
Directly place a polygon pour cutout inside a solid polygon pour using the Place Polygon Pour
Cutout command. Definition of the polygonal shape of the cutout is performed in the same way
as for a polygon pour.

Altium Essentials_July2013_Colby
10-July-2013

345

Figure 373. A polygon pour, repoured over a placed polygon pour cutout (negative region).

29.3.6

Slicing Polygon Pours

Often it is easier to cut off part of a polygon pour, rather than resize it to a new shape. A placed
polygon pour object can be graphically 'sliced' into two or more separate polygon pours, using
the Slice Polygon Pour feature. Access this feature by:

Using the Place Slice Polygon Pour command.

Right-clicking over a polygon pour object and choosing Polygon Actions Slice Polygon
Pour from the context menu.
After launching the command, slice mode will be entered (essentially line placement mode).
Perform the following steps:

Position the cursor and click to anchor the starting point for the slice (outside of the edge of
the polygon pour).

Position the cursor and click to anchor a series of vertex points that define the slice path,
using the standard line cornering modes.

Click to place the final vertex point, beyond the polygon pour edge.

Right-click or press ESC to complete placement of the slice.

Continue defining further slices, or right-click or press ESC to exit slice mode. A confirmation
dialog will appear, which states how many polygon pours the original polygon pour will be turned
into. Click Yes to commit the slice(s) or No to discard.
Having committed the slice(s), click Yes in the confirmation dialog to rebuild the n polygon pours
involved.

Altium Essentials_July2013_Colby
10-July-2013

346

Figure 374. An example of slicing a polygon pour.

29.3.7

Shelving a Polygon Pour

When modifying a design, perhaps changing components and modifying routing, existing
polygon pours can, when repoured, have a detrimental impact on system performance. For
large, hatch-filled pours, the repour phase can be especially slow. A convenient method of
maximizing system performance during the design phase is to temporarily hide all polygon pours
in the design a feature known as Shelving.
Shelved polygons are not deleted from the design, and can be restored at any time.
Right-click over a polygon pour to access commands from the Polygon Actions sub-menu to:

Shelve shelve just the single polygon pour under the cursor.

Shelve Selected shelve a selection of polygon pours, of which the polygon pour under the
cursor is part.

Shelve All shelve all defined polygon pours for the board design.

To restore all shelved polygon pours, use the Restore command on the Tools Polygon Pours
sub-menu. This same menu also contains a command for shelving all currently un-shelved
polygon pours.

Figure 375. Accessing commands for shelving and restoring polygon pours.

29.3.8

Converting Hatched Polygon Pours to Solid

When updating an existing design, the designer may wish to convert hatched polygons to solid
polygons. This can be done using the Tools Polygon Pours Convert Polygons to Solid
command. Launching this command will display the Polygon Pour Conversion dialog.
Choose to convert all hatched polygon pours in the design, or only those currently selected.
Older hatched polygons used an edge with a defined width, so during the conversion process the
designer has the opportunity to instruct the software to expand the polygon by half the original
polygon boundary width. Note that this will not affect the polygon clearance, the new polygon will
Altium Essentials_July2013_Colby
10-July-2013

347

still meet clearance design rules. This process is done to ensure that the new polygon
fills the area covered by the old hatched polygon.
Define specific attributes for solid polygon pours as required and click OK to effect conversion.

Figure 376. Convert hatched polygon pours quickly and efficiently using the Polygon Pour Conversion
feature.

29.3.9

Manual Repouring

Whenever a polygon pour is modified either graphically, or through its associated properties
dialog the software will automatically prompt to rebuild, that is repour, that polygon pour.
However, the designer always has full control and can manually repour polygon pours at any
time.
Right-click over a polygon pour to access commands from the Polygon Actions sub-menu to:

Repour repour just the single polygon pour under the cursor.

Repour Selected repour a selection of polygon pours, of which the polygon pour under the
cursor is part.

Repour All repour all defined polygon pours for the board design.

The latter two commands are also available from the Tools Polygon Pours sub-menu. In
addition, this menu also offers a command to repour only those polygon pours that are currently
in violation of defined rules for the design (Repour Violating Polygons).
In each case, click Yes in the subsequent dialog, to confirm the repour.

Altium Essentials_July2013_Colby
10-July-2013

348

Figure 377. Accessing commands for repouring polygon pours.

29.3.10 Deleting a Polygon Pour


To delete a polygon pour, select it, then press DELETE on the keyboard.

29.4 The Polygon Pour Manager


Even a small design can include a large number of polygon pours. To help manage them from
one convenient location, Altium Designer includes a Polygon Pour Manager.
Accessed using the Tools Polygon Pours Polygon Manager command, the Polygon Pour
Manager dialog provides a high-level view of all polygon pours on the entire board.

Figure 378. The Polygon Pour Manager dialog.

All defined polygon pours are listed in the View/Edit region of the dialog. Click on an entry to
display that pour in the viewing region below. Select multiple pours to add them concurrently to
the view.
Altium Essentials_July2013_Colby
10-July-2013

349

Click in the Name field for a polygon pour to name/rename it as required. Naming comes into
play when targeting a specific polygon pour with a design rule.
The Pour Order region of the dialog shows, as its name suggests, the order in which the
polygon pours will be poured. Pour order can be important when there is a polygon completely
within another polygon. Typically ordering would be from the smallest polygon pour to the largest
polygon pour.
Use the Move Up and Move Down buttons to manually adjust the pour order. The order can
also be changed directly using mouse drag-and-drop functionality, which is far more expedient in
designs featuring many polygon pours.
Alternatively, automate the process by clicking the Auto Generate button polygons will be
ordered from smallest area to largest area, on a layer-by-layer basis.
Click the Animate Pour Order button to visually see the pour order 'played out' in the
viewing region.
The central area of the dialog provides a number of controls for action on selected polygon
pour(s) in the list (or all pours in the design), depending on specific action and context. Similar
commands are available from the area's right-click menu:
Repour provides access to commands for repouring selected polygon pours, polygon pours
that have been modified in some way, or polygon pours that are currently in violation. An
additional command to force the repouring of all polygon pours is also available.
Shelving provides access to commands for shelving/un-shelving selected polygon pours, or all
polygon pours.
Locking provides access to commands for locking/unlocking selected polygon pours, or all
polygon pours.
Violations provides access to commands for ignoring/keeping Online DRC violations for
selected polygon pours, or all polygon pours.
Create Clearance Rule provides access to the Edit PCB Rule - Clearance Rule dialog, in
which to define a new clearance rule between objects in the selected polygon pour(s) and all
other objects.

Altium Essentials_July2013_Colby
10-July-2013

350

Figure 379. Create a polygon clearance rule from selected polygon pour(s). Scoping is managed
automatically using the polygon pour name(s), leaving the designer to specify just the name and the value
for the clearance.

Create Polygon Connect Style Rule provides access to the Edit PCB Rule - Polygon
Connect Style dialog, in which to define a new connection rule for objects connecting to the
selected polygon pour(s).

Altium Essentials_July2013_Colby
10-July-2013

351

Figure 380. Create a polygon connect style rule from selected polygon pour(s). Scoping is managed
automatically using the polygon pour name(s), leaving the designer to specify just the name and attributes.

Create Polygon Class provides ability to quickly create a Polygon Class with the selected
polygon pours as its members. Enter a name for the class in the Object Class Name dialog.
Create New Polygon from provides commands to quickly create a new polygon pour from
either an existing polygon pour (Selected Polygon), or from the board outline (Board Outline).
The former creates a clone of a selected polygon pour, for use on another layer.
Properties provides access to the Polygon Pour dialog for the selected polygon pour (or
focused pour when multiple pours are selected).
Access to the Polygon Pour dialog can also be made by double-clicking within the Net
field for a polygon pour in the list.

Delete one or more polygon pours directly from within the Polygon Pour Manager
dialog. To do so, simply select the required pour(s), right-click and choose the Delete
command.

Altium Essentials_July2013_Colby
10-July-2013

352

Module 30: Managing Parts and Libraries


Electronics products are made from electronics components. Traditionally, these atomic design
elements are managed within libraries. As the number of components that an organization uses
grows in volume, the challenge of managing them can become significant. For a lot of
companies, component models form a key part of their design IP and so managing them
effectively and efficiently is an important part of operating a viable business.
While Vaults are the preferred mechanism for storing and managing design items ready for use
in new designs, the model sources used to create those items will always come from a library.
Altium offers a range of options and mechanisms for handling component models and the
libraries that contain them. Understanding the capabilities of each of those solutions is important
when considering the best implementation for your organization.

30.1 Models, Components and Libraries


To begin with, its important that some broad definitions are established to ensure a common
vocabulary.

30.1.1

Model

A Model is a domain specific representation of a component. For the schematic domain, the
model will be in the form of a component symbol. In the PCB domain it will be a footprint and 3D
body representation. And in the simulation or signal integrity domains it will be a text file
containing characteristic data.

30.1.2

Component

In the physical sense, a component is a purchasable item that can be placed, inserted, or
included into an electronics assembly. For simple components such as ICs, connectors and
passives that have a tangible and physical
presence, this concept of a component is
straightforward. But a component can also
refer to less tangible items such as
programmable IP blocks and code libraries.
In the Design Space, the engineering, or
design view of a component is, in essence, a
container that holds pointers to the various
domain specific models. This includes links
to the schematic symbol, PCB 2D/3D
component, Signal Integrity, and Simulation
models as well as parametric information.
What's more, this abstracted 'bucket'-type
modeling is very scalable and can be easily
expanded to include other models should the Figure 381. Components are like a box that can hold
component need to be represented in
many different domain-specific models.
additional design domains in the future.

30.1.2.1 Schematic Symbols


Components used in the schematic environment are symbolic representations of the real
component and are referred to as (schematic) symbols.

30.1.2.2 PCB Components


Components used in the in PCB environment are physical representations of the real component
and will usually contain a Footprint that defines the copper, silkscreen, and masking geometries
that will be used in the PCB construction and define the interface between the physical
Altium Essentials_July2013_Colby
10-July-2013

353

component and the PCB it is being mounted on. People new to Altium may be used to referring
to PCB Components as Footprints or Land Patterns but because Altiums Unified Model also
caters for mechanically accurate 3D Component Bodies may also be included as part of the
component model.

30.1.3

Libraries

Libraries contain collections of models. In some cases the Library will contain a collection of only
one type of model such as is the case for Schematic and PCB libraries, and sometimes they will
combine those models to produce a more complete component definition such as in an
Integrated Library. Further still, sometimes the constituent elements of a library will be stored as
a set of text files rather than as Altium Designer specific files. PSpice circuits used for simulation
are one such example of this.

30.2 Library Types


30.2.1

Model Libraries

The representative models for each domain type are stored in model libraries, and can also be
referred to as a model container. The grouping and organization of models may vary between
domains. In some domains, such as SPICE (.MDL, .CKT), the storage is typically one model per
file. In other domains however, models are normally grouped into library files according to a
user-defined categorization, such as PCB footprints grouped into package-type libraries
(*.PcbLib).

30.2.2

Schematic Libraries

Schematic Libraries (.SchLib) are a special case because they can be used in two different
modes. In one mode, they can be treated as a Model Library if all they contain are schematic
symbols. But in another mode, they can be considered as a pseudo component library if each
symbol also stores pointers to the additional models required to create a unified component.
The Design Make Schematic Library command can be very useful if it is
to create a brand new library file from the components used in a given design project.
The resulting library will have the name format of ProjectName.SchLib.

30.2.3

Integrated Libraries

An integrated library is one where the source symbol, footprint, and all other information (e.g.
SPICE and other model files) are compiled into a single file. The advantage of compiling into an
integrated library is that all component information is available in a single file that is more
portable.
During compilation, checks are made to see how relationships are defined, to validate the
relationship between the models and the symbols, and to bundle them into a single, integrated
library file. Components and models in an integrated library are generally not available for
editing, unless the library is decompiled (i.e. opening the *.IntLib to extract the sources).
The Design Make Integrated Library command can be very useful for creating a
complete, integrated library containing all model information from a given design
project. The resulting library will have the name format of ProjectName.IntLib.

30.2.4

Database Libraries

While Integrated Libraries embed a component's parameters and its links to all other domain
models within the symbol definition, Database libraries use database tables to establish the
model links necessary to build a unified component. Each row (record) within the database table
represents a unique component and the columns (fields) of that row are used to store parameter
information and links to the various domain models and model libraries on disk.
Altium Essentials_July2013_Colby
10-July-2013

354

Database libraries come in two flavors - non-version-controlled (database library - .DBLib) and
version-controlled (SVN database library - .SVNDBLib). The only difference is in how the
referenced symbols and models are stored:

Database Library (.DBLib) - symbol and model libraries are stored in a directory on your
hard disk or other local/network medium.

SVN Database Library (.SVNDBLib) - symbol and model libraries are stored under version
control in a Subversion repository.
Database Libraries provide the ability to place components directly from an external company
database and make the mass management of component data and parameters easier.

Figure 382. Database libraries store all the information necessary to create a unified component in a tabular
format.

When a component is placed from a database library, its parameter and model information is
created on-the-fly using fields in the database record and in accordance with mappings defined
in an intermediary link file. One or more of these parameters will then be used to maintain an
ongoing link back to the database so that future synchronizations can be made after the initial
component placement.

Altium Essentials_July2013_Colby
10-July-2013

355

30.2.5

Vaults

While Vaults are not strictly another type of library, they have some characteristics that make
them similar to traditional libraries. Vaults store all design content in the form of Items which,
unlike other libraries, have version and life-cycle attributes. Furthermore, Vaults include the
facility to create links that extend all the way through to the supply chain and allow visibility into
price and availability information. So while traditional libraries are effective for storing component
models, Vaults offer an enterprise level solution to component data management.

Figure 383. Traditional Libraries are still an important source document for Unified Components stored in a
Vault

Within a Vault, each individual domain model is managed as a separate design item with its own
revision and life-cycle attributes. Models are bound together using information contained in a
Component Library (.CmpLib) before being released back into the Vault as a Unified
Component. Unified Components can have part choice links attached to them that bind the
component in the design space to real world manufactured (and purchasable) parts. This link
creates a powerful opportunity for designers because it allows them to utilize supply chain
information to make better design decisions based on the price and availability of key
components. Furthermore, part choice information can also be incorporated into the design
outputs sent to manufacturing to ensure that designs are only ever manufactured using approved
real-world components.
A more complete discussion of the capabilities and usage of Vaults will be dealt with in another
module.

30.3 Approaches to Model Management


Altiums view of the world is that for most designs, the schematic is the centre of the design
universe. It is this document that is created first in the design process and it defines the
connectivity of the system. It makes sense, therefore, that Altium has traditionally used the
Altium Essentials_July2013_Colby
10-July-2013

356

symbols within the schematic documents to store references to component models used across
the various domains. So references to a components PCB Footprint, Simulation Model, and
Signal Integrity Model are all stored within the schematic symbol.

Define additional
parameters here.

Define links to
different domain
models here.

Figure 384. Use the Component's Properties dialog to set its model links and parameters as required.

The process of attaching models to the various components in a schematic sheet is called
linking, and the different approaches to Component Management can largely be classified
according to when, in the design process, component linking is done.
The following two flow charts are examples of how the approaches might differ.

Figure 385. Libraries are used as containers for symbol / footprint information. The bindings between these
are left to the design to define.

Altium Essentials_July2013_Colby
10-July-2013

357

Figure 386. Libraries are used to define the component models and the links between them. Designs which
use these Components can progress to PCB layout more quickly since the domain models have already
been attached.

In Figure 385, the component is treated as nothing more than a symbol that can be placed
directly onto the design. Then, at some point in time during the schematic capture process, the
footprint model is added and bound to the symbol to create the unified component definition.
Additional models such as Simulation, Signal Integrity and other parameters can also be
attached at the schematic level but the important thing to note is that the component as a unified
identity doesnt exist in the library; it only exists in the design. As such, each new design must
go through the same lengthy process of binding every single schematic component to a set of
models that allow the component to be used across the systems.
The second (Figure 386) option requires a little more work upfront but the benefit is worth the
effort. Components are treated as unified items within the library system and not just in the
designs that use them. So once a component symbol (Schematic Symbol) has been created
and its respective models attached, the component can be used over and over again from the
library without the designer needing to fear that they have the correct models / PCB Components
loaded.
These two options are referred to as late (Figure 385) and early (Figure 386) binding. Binding
late can help the design come together slightly faster because each component can be created
and used very quickly by the design. However the drawback with this method is that it requires
much more work during the schematic capture phase since the PCB Component (footprint)
bindings need to be created manually for every single component.
A better option, both in terms of short and longer term benefits, is to spend the time upfront to
build the unified component and compile it into an Integrated Library. Once done, the component
can be used many times over in several designs without the unified component model needing to
be recreated as part of the schematic capture process.

Altium Essentials_July2013_Colby
10-July-2013

358

Module 31: What is a Component?


Components are the basic building blocks of all electronic
products so it's only fitting that they feature prominently in
Altium Designer. But what, exactly, is a component?
In the real world, components are tangible objects and
therefore relatively easy to identify. But in the virtual world
of design, components are abstracted into a range of
models that are used across the various design domains.
During the design capture and implementation processes,
a component is represented as a symbol on the
schematic, as a footprint on the PCB, as a SPICE
definition for simulation, as a signal integrity description
for analysis, and as a three-dimensional description for
component and PCB visualization; one component, but
Figure 387. Altium Designer unifies the
models used to represent a component
many different representations.
across the various design domains.
The key to Altium's unified approach is in how these
different domain models are connected together as a
single, cohesive component. So when changes are made to the component in one domain, it
automatically propagates to the component's representation in all other domains.
This module explains the key attributes of a component as defined under Altium's Unified Data
Model.

31.1 Components - the Basic Building Blocks


A component is the general name given to a constituent part that can
be placed into an electronic design. It can have separate
representations for each of the phases of design and may therefore
referred to by different contextual names depending on the current
implementation.

In the Schematic Capture domain, a component is referred to as


Symbol.

In the PCB Layout domain, a component is referred to as a


Footprint, Land Pattern, or simply PCB Component.

In the Signal Integrity and Simulation domains, a component is


referred to as a Signal Integrity (SI) Model or Simulation Model
respectively.

Altium's Unified Data Model encapsulates all of these component


representations into a single conceptual container called a Unified
Component. Altium Designer maintains the integrity of that
model throughout the design process end ensures that changes
to the component in one view of the design are correctly reflected
across the other views.

31.1.1

Figure 388. A component


can have one or more
component parts.

Component Properties

Because designs generally begin their life as a schematic, Altium made the choice a long time
ago to use schematic symbols as the container for the unified model of a component. So all the
links to the various domain models of a component, along with any user-defined parameters, are
stored within the properties of a schematic symbol. These properties and model links can be
seen by double-clicking a schematic symbol, or by right-clicking the symbol and selecting the
Properties item from its pop-up menu.

Altium Essentials_July2013_Colby
10-July-2013

359

The best practice for managing component parameters and domain models is to establish them
as part of the component creation process. If a Vault-based component management regime is
being used then parameters and domain models should be included when creating a Component
Library (.CmpLib). If integrated libraries are being used, parameters and domain models will be
established in the Schematic Library (.SchLib) and compiled into the Integrated Library
(.IntLib). And if database libraries are being used, parameters and domain models will be set
according to the fields of each component's record.

Define additional
parameters here.

Define links to
different domain
models here.

Figure 389. Double-clicking on any placed component will access the Component Properties dialog where
specific attributes, links for libraries, graphical representations, define search locations, and much more can
be edited.

31.2 Component Types


Components can be built several different ways depending on the organization's view of how
rigorous the component management regime should be. The more rigorous regimes will define
all characteristics of a component at the library level and will limit the amount that designers can
change at design time. This is the most robust approach from a systems viewpoint but it can feel
stifling for creative design.
Less rigorous approaches will treat library components as templates that must be further
qualified by designers once the component is placed into a design. This gives rise to the
greatest design freedom but also requires more manual intervention and discipline from
designers to ensure they capture all the information necessary to manufacture the design.
There is no one size fits all approach since each organization will have its own set of constraints
and motivations for building electronic products. The key is for the organization to define upfront those factors which are important to them and to then build a system of component
management that is consistent with that perspective.

Altium Essentials_July2013_Colby
10-July-2013

360

31.2.1

Common Graphic, Different Component

31.2.1.1 One Component Symbol for each Real-World Component


This type of representation is ideal for more complex components (such as Integrated Circuits ICs) where each unique component has its own unique logic symbol. The component would
include the specific representation, or model (described in greater detail below) such as the PCB
footprint, simulation or 3D modeling information.

31.2.1.2 One Symbol for Graphically Equivalent Real-World Components


Sometimes components that are logically equivalent can map to multiple real-world components
with subtle parametric differences. An example would be a logic gate that is available in a variety
of logic families - i.e. a 74ACT32 and 74HC32. In this case the symbol is drawn once, and then
another name, or alias, is defined for each equivalent component required; ultimately the
component is stored as single a symbol with multiple names.

31.2.1.3 One Symbol for each Type of Real-World Component


Resistors, capacitors, inductors, diodes, etc are classic examples of different types of
components that are regularly drawn with a common symbol type at the schematic level even
though they might translate to quite different real-world components. So a 100 resistor would
have the same symbol as a 100M resistor and would only differ by its comment (or value)
parameter. Rather than fixing this parameter at the library level, it would be set by the designer
once the component was placed into a design.

31.2.2

Common Component, Different Graphics

Different organizations may adhere to different standards in how they draw certain symbols. So
while two symbols might ultimately refer to the same real-world component, they could be
modeled at the schematic level with different symbols. Altium Designer supports multiple
symbols for the same component through different component modes. This can be particularly
useful when supporting several clients with differing drafting standards.

Figure 390. Use the Mode feature to define multiple graphical representations of the same component. The
first mode is called "Normal" while subsequent modes are titled "Alternate 1", etc.. Any mode that is created
is automatically stored with the component.

31.2.3

Multi-part Components

There are many instances where multiple functional components are packaged into a single
device for the purpose of improved integration. Examples include resistor networks and logic
gates. In the interest of improving schematic readability, it is common to separate the use of
each component within the package from one another so that they can be used across unrelated
functional blocks within a design. Rather than drawing a quad NAND gate IC as a monolithic
collection of all four NAND gates, each NAND gate is drawn (and used) in isolation and given a
unique part designation.

Altium Essentials_July2013_Colby
10-July-2013

361

Figure 391. Generally it's much more convenient to operate on a multi-part component at the individual part
level rather than as a monolithic device.

31.2.4

Non-standard Component Types

Not all components are destined to be


mounted on the assembled PCB. Not all
components are required in the Bill of
Materials (BOM). And not all items that are
mounted on the PCB need to be represented
on the schematic. Altium Designer supports
non-standard component types through the
Component Type property which can be set in
the Component Properties dialog in the library
or schematic editor.
For example, the presentation and readability
of a schematic might be enhanced by
including a chassis-mounted component that
is wired to the PCB. If this component was not
required in the PCB BOM, then the
Type can be set to Graphical. A graphical
component is not included during schematic
electrical verification, it is not included in the
BOM, nor is it checked during schematic to
Figure 392. Setting the component type for special
component requirements.
PCB synchronization.
Another special class of component would be a test point - this component is required on both
the schematic and the PCB, and it should be checked during design synchronization, but it is not
required in the BOM. In this case the component Type should be set to Standard (No BOM).
Yet another example of a special component kind would be a heat sink - typically it is not shown
on the schematic and is not required to be checked during schematic electrical verification, but
must be included in the BOM. In this case the component Type should be set to Mechanical.

31.3 Component Parameters


Parameters are a way of defining and associating additional textual information to a component.
This can include electrical specifications (i.e., wattage or tolerance), purchasing or stock details,
designer notes, or references to component datasheets. This information is included by adding
parameters to the component either during component creation in the library editor; once the
component has been placed on the schematic (using a .DBLink file); or automatically during
placement when placing from a database library (.DBLib or .SVNDBLib). Adding a component

Altium Essentials_July2013_Colby
10-July-2013

362

parameter to an individual component is easily done by going directly through the Component
Properties dialog for that component:

31.3.1

Adding Parameters to an Individual Component

Figure 393. User-defined parameters can be defined on a per component basis and optionally displayed on
the schematic alongside the component.

Any parameters defined in the Parameters section of the Component Properties dialog are also
made available in the Match By Parameters region of the Annotate dialog. This is particularly
useful if doing things like grouping specific parts of a multi-part component with a unique
parameter defined and included for those parts.

31.3.2

Adding Parameters to a Component Library

While the example above shows how parameters can be added to individual components
the Component Properties dialog (Figure 393) in the Schematic Editor or Schematic Library
Editor, parameters can be manipulated en masse using the Parameter Manager dialog. This lets
designers add, remove, or edit parameters across a whole range of selected components.

Figure 394. With the schematic library still open, launch the Parameter Editor dialog from Tools
Parameter Manager to edit parameters across multiple components.

31.3.3

Using Parameters to Reference Additional Documents

A component's datasheet is a key piece of reference information that defines the way a
component can (or should) be used in practice. Having the ability to quickly reference a
component's datasheet from within the Schematic Editor can save a tremendous amount of time
when reviewing a design.
Altium Designer lets designers store links to external documents (including datasheets) through
the provision of a special set of parameters.

31.3.3.1 Using the HelpURL Parameter to Link to External Documents


The HelpURL parameter is a special parameter that Altium Designer will search for in any
component that the F1 key is pressed over. If present, Altium Designer will interrogate the
parameter and attempt to open the document (URL) defined in its value field. The URL can be a
web address, a text file, or PDF document. A specific page number can also be used by
Altium Essentials_July2013_Colby
10-July-2013

363

the #page=nn at the end of the URL path. Using this feature allows designers to effectively add
custom F1 help to their design documents.

Figure 395. Use the HelpURL parameter to link a component to supporting documentation. In this example,
pressing F1 over the component will open the C:\\Help\CR0118 FPGA Generic Library Guide.pdf to page
93.

Adding Multiple Linked Documents


In some situations, it may be necessary to add links to more than one document to a component.
Altium Designer supports this through the use of ComponentLinknURL and
ComponentLinknDescription parameters (n = 1, 2, 3 ).
When right-clicking the mouse over a component with these parameters defined, a References
sub-menu will be added to the component's popup menu along with entries for all
ComponentLinknDescriptions.

Figure 396. Use the ComponentLinknDescription and ComponentLinknURL parameters to add documents
to a component's right-click menu.

Altium Essentials_July2013_Colby
10-July-2013

364

Component-to-document linkage can also be used when browsing components in the Libraries
panel. Press F1 or right-click on the component's name in the panel to access the linked
documents/URLs.
For more information about other types of component parameters, refer to the
Library Components tutorial.

31.4 Establishing Links to Component Models


Recall that under Altium's Unified Data model, the schematic symbol is both the representation
of the component in the schematic domain, but also the container for links to other domain
specific models. These additional models can be defined in the Models section of the
component's Properties dialog (see Figure 389).
Currently supported models include PCB Footprints, mixed-signal circuit simulation (SPICE3f5,
PSpice, XSpice, & Digital SimCode), Signal Integrity (IBIS), and the legacy PCB3D format. While
a component is not required to have a model attached to it in order to be placed in a schematic
document, it cannot be implemented in any other domain until it does.
The process of adding models to a component once it has been placed into a schematic
document remains the same regardless of where the original symbol has been sourced.

31.4.1

Fundamentals of Model Mapping Information

Before a component can be modeled in the various supported design domains, information
about the component must be mapped from the schematic to the target modeling domain. Some
of this domain information resides in model files that have a predefined format such as IBIS,
MDL and CKT files. But some other models require the system to manage pin-mapping and net
listing between the schematic symbol and the other domain specific models.
Ultimately, all of the necessary domain information will be contained within the schematic
component using a separate interface for each domain model that has been added to it. In effect,
the complete model will be the combination of the model mapping information stored in the
component and the domain modeling information stored in the model library.

Altium Essentials_July2013_Colby
10-July-2013

365

Figure 397. Information on how to model the component in each domain is stored in the model files.

Components may have models for multiple domains, and can also have multiple models per
domain, but only one model can ever be current for each specific domain.
Note that IBIS signal integrity models and VRML or IGES 3D models must be imported into
Altium Designer format models before they can be used. IBIS models are imported directly in the
Signal Integrity Model dialog, which opens when an SI model is added to a component. VRML
and IGES models must be imported into a PCB3DLib before they can be added to a schematic
component.

31.4.2

Options for Referencing Models

Whenever a domain model is added to the design, the designer is given the option of how tightly
a domain model will be searched for. Although they vary slightly from one model type to another,
the model editor dialogs generally include the same options:

Altium Essentials_July2013_Colby
10-July-2013

366

31.4.2.1 Any
Searches all available libraries for a matching
model.

31.4.2.2 Library name


Only searches valid libraries of this name for a
matching model. The named library must be in the
available libraries, or in the folder referenced by the
current Library Path (System - Default Locations
page of the Preferences dialog)

31.4.2.3 Library path


Only searches a valid library of this name in this
location for a matching model. The path can be an
absolute path (from the drive letter down), or
relative to the folder specified in the current Library
Path (System - Default Locations page of the
Preferences dialog).

31.4.2.4 Integrated library


Draws the model directly from the integrated library
used to place this component. The integrated
library must be in the available libraries.

31.5 Locating and Identifying Components


Vault-based components are placed directly from the Vault and so the concept of searching for
components and locating their relevant models is simply a case of connecting to a Vault and
searching or browsing its contents from within the Vault Explorer panel. But for the more
traditional library-based components, placement is made from the Libraries panel. This panel
only displays components from the currently loaded libraries and so it's important to understand
how this works to ensure designers can find the components they need. It also has implications
on how Altium Designer can find the models it needs to perform certain design operations such
as migrating a design from schematic capture to PCB layout.

31.5.1

Managing Library Search Locations & Available Libraries

Whenever a specific model or library is required, Altium Designer uses a set of specific locations
to find the needed information. Any models/libraries found in these locations are referred to as
the available libraries and can be set from the Available Libraries dialog accessible by clicking
the Libraries button in the Libraries panel, or by selecting the Design Add/Remove Library
menu command.

31.5.1.1 Available Project Libraries


Available Project Libraries are listed under the Project tab of the Available Libraries dialog and
includes those models/libraries that are referenced within the project. They are generally only
linked and made available to that specific project and its documents.
The advantage of this approach is that whenever the project is opened, the model/libraries will
automatically be available. The disadvantage is if the models/libraries are not stored in the
Altium Essentials_July2013_Colby
10-July-2013

367

folder structure, they can easily be forgotten if the project files are moved (i.e. from one PC to
another).

Figure 398. The Project tab provides a list of available libraries in the currently loaded project.

31.5.1.2 Available Installed Libraries


Available Installed Libraries are listed under the Installed tab of the Available Libraries dialog
and includes those models/libraries that are available, by default, to any designs opened in
Altium Designer. Installed Libraries can be listed by name using an absolute path or using a path
relative to the Library Path Relative To: setting. This lets the designer create a common subenvironment across multiple PCs and simply use the relative library path to switch between
them. Additionally, installed libraries can be temporarily deactivated by unchecking the
Activated checkbox rather than needing to completely be removed.

Figure 399. The Installed tab provides a list of globally available libraries in the current Altium Designer
session.

31.5.1.3 Search Path


The Search Path tab presents a list of libraries that have been located according to the path
settings defined in the Search Path tab of Options for Project dialog (also conveniently
accessed through the Paths button of the Search Path tab in the Available Libraries dialog).
Each search path defines a folder, and can include sub-folders if the Recursive option is
enabled. All model and library files found down the search path will be valid.
Retrieving models using search paths can be slow if there are a large number of files
the search path folder(s).

Altium Essentials_July2013_Colby
10-July-2013

368

31.5.1.4 General Provisions


While the Altium Designer environment offers flexibility and control over specific model/library
locations, it does require the correct file extension to be used for each model type. For example,
a footprint cannot be found unless it is in a file with a .lib or .PcbLib extension. Similarly, a
SPICE .SUBCKT will not be found unless it is in a .ckt file, nor will a SPICE .MODEL be found if
it is not in a .mdl file. Whenever a model search does not yield a match, an error will appear in
the Messages panel.

31.5.2

Moving Designs from One Location to Another

When a component is placed from a library into a design, the source library and model names
are both stored within the symbol's properties. Whenever any of these models are used within a
schematic or PCB design document, they are cached within the design file so that the document
can still be opened at any location without requiring its source libraries to be present or loaded.
This is helpful when moving a design from one location to another since it is not necessary to
move the libraries as well.
However if a design should ever need to be moved and model information updated in the new
location, the use of relative library paths and search paths can be useful for redirecting where
Altium Designer searches for its available libraries.

31.6 Changing Library References of Placed


Components
In some circumstances, the designer may wish to change the source library or model of an
already placed component without deleting it from the design. An example of such a requirement
might be when wanting to maintain the component's Unique ID, and therefore its links through to
the PCB.

31.6.1

Changing Library-Based Components

Changes to library references can be made through the Schematic Properties dialog.

Design Item ID: The name of the individual model / component within the source library.
Use the Choose button to select a different component from the currently available libraries.

Library Name: If the checkbox is ticked, Altium Designer will only attempt to locate the
Design Item ID from within libraries carrying the name stipulated in the edit control.

Table Name: If the Library Name is a Database Library, the Table Name control will be
enabled. If its checkbox is ticked, Altium Designer will only attempt to locate the Design Item
ID from within a table carrying the name stipulated in the edit control.

The Validate Link button can be used to check the validity of an updated component reference
prior to committing the change with the dialog's OK button.

Altium Essentials_July2013_Colby
10-July-2013

369

Figure 400. Changing the library link information in a library-based component that has already been
placed.

31.6.2

Changing Vault-Based Components

If the Use Vault Component checkbox is ticked in the Component Properties dialog, the library
reference will point to a Vault component. While the individual edit boxes are grayed out and
cannot be edited directly, the Vault reference can still be updated.

Altium Essentials_July2013_Colby
10-July-2013

370

Figure 401. Changing the library link information in a vault-based component that has already been placed.

Use the Choose button to open a modal version of the Vault Explorer and select an alternate
component directly from the Vault. Or use the Show in Explorer button to display the currently
selected vault component within the Vault Explorer panel.

Altium Essentials_July2013_Colby
10-July-2013

371

Module 32: Schematic Symbol Libraries


The physical component that is mounted on the completed printed circuit board is represented in
Altium Designer in a variety of ways. On the schematic the component is represented by a
logical symbol, during SPICE simulation a SPICE model is used, and on the PCB design it is
represented by its footprint. In Altium Designer, each of these representations is referred to as a
Domain Model, each unified Altium Designer component is then the sum of its domain models.
In the schematic project the domain model for the component is the logical symbol, which is also
called the schematic symbol. Every component used on a schematic must be represented by a
schematic symbol, from a simple resistor through to a 1000 pin FPGA.

Figure 402. The domain model for a component is: a symbol on the schematic, a footprint during PCB
design, and a 3D STEP model during 3D PCB design and for export to mechanical CAD.

The schematic symbol typically includes a shape, which can reflect the function of that
component, and one or more pins. One component symbol can represent the entire physical
component, or the component can be defined by multiple sub-parts, where each sub-part
represents some logical entity within the physical component, for example each AND gate in a
quad AND gate component, or the coil and contact sets in a relay. This type of component is
also called a multi-part component.
Schematic symbols are created in a Schematic Library, in Altium Designer's Schematic Library
editor. Schematic library files have the file extension .SchLib. Any number of component
symbols can be created in a schematic library. The organization of symbols into libraries should
suit both the requirements of the company, and the type of Altium Designer component library
that the symbol is destined to reside in.

32.1 The Dual Nature of the Schematic Symbol


In the introduction to this module, the schematic symbol was described as one of the domain
models that, together with the other domain models, defines the unified design component. The
schematic symbol actually has a dual nature it can operate as a simple domain model, created
in the library editor as nothing more than a graphical shape and a set of pins. In its other mode it
can also be used as the actual unified design component, having other domain models such as
the PCB footprint, linked to it in the library editor. The mode that each designer uses will depend
on how they store and organize their components. Altium Designer has a number of ways of
organizing and storing components, including:

Simple schematic and PCB libraries

Integrated libraries

Database libraries

Vaults
Regardless of how the models and component definitions are stored, once the component is
placed onto the schematic it then becomes a unified design component. The symbol will appear
on the schematic, when it is edited it shows the full set of component properties, including links
to other domain models, and its list of component parameters.
This module focuses on creating the schematic symbol as a domain model.
Altium Essentials_July2013_Colby
10-July-2013

372

32.2 Creating a new Symbol Library and an Empty


Component Symbol
4. To create a new schematic symbol library, select the command File New Library
Schematic Library. An empty document called Schlib1.SchLib is created, displaying a
blank component called Component_1.
5. Select the command File Save As, rename and save the new schematic library document to
a suitable location, with an appropriate filename.
6. The Schematic Library editor panel is used to review and manage component symbols within
an open schematic library. If the panel is not currently visible, click the SCH button down the
bottom right of the workspace and select Sch Library to open it.

The SCH Library Editor


panel, listing all
components in the
current library.

The empty document


where the symbol is drawn.
Always draw the symbol
near the document origin
(center of page)

Models linked to
this component
are listed here.
Click the SCH
button to display
the panel.

Figure 403. The schematic library editor showing the new, empty component, ready for symbol creation.

32.3 Creating the Component Symbol


How a component is represented, that is, the look of the symbol and arrangement of component
pins, is up to the designer - this should be done to comply with the requirements of the
designer's organization and the design standards they choose to adopt.

32.3.1

The Component Symbol Design Space

Component symbols are created by placing drawing objects to represent the component body,
and pins that represent the physical pins on the actual component.

The default drawing sheet for a new component is an E sized sheet. Always zoom in so that
the grid is easily visible before placing objects. The sheet size is configured in the Library
Editor Workspace dialog (Tools Document Options).

Altium Essentials_July2013_Colby
10-July-2013

373

Always draw the component symbol close to the sheet origin (the center of the sheet).

The default units for schematic and schematic library grids are imperial, including the DXP
Defaults option. Since all Altium components are designed on this imperial grid, it is
important to appreciate the impact of deciding to switch to a metric sheet grid as it becomes
difficult to correctly wire to components created on different grids. Note that imperial grids
can be used with metric sheet sizes, such as A3, so it is not necessary to change to a metric
grid when working with metric-sized sheets. The units for the current sheet are defined in the
Units tab of the Library Editor Workspace dialog (Tools Document Options). Units for
new sheets (schematic and library) are defined in the Schematic Default Units page of
the Preferences dialog.

Objects are placed on the current snap grid, the current Grid is displayed on the left-hand
end of the Status bar. Press the G key to cycle the snap grid through the available settings.
Available settings can be edited in the Schematic Grids page of the Preferences dialog.
Typically objects and pins are placed on a grid of 10 or 5, with strings being the only object
needing to be placed on a grid of 1.

32.3.2

The Component Symbol Body

The body of the symbol is created by placing graphical design objects


in the schematic library editor workspace, as shown in Figure 3.

Altium Designer includes a variety of closed symbol shapes,


including rectangle, polygon, ellipse and pie. Use the commands
the Place menu or the Utilities toolbar to place these objects.

Line-type shapes include arc, polyline and Bezier. Polylines can


include arrow heads and tails, double click to define. A Bezier is
placed as a set of 4 points.

The default settings for the properties of all objects, such as line
width and color, are defined in the Schematic Default
Primitives page of the Preferences dialog. Object properties can
also be edited during placement, press the TAB key to edit the
properties while the object is floating on the cursor. Note that edits
made during placement become the new default, unless the
Permanent checkbox is enabled in the Schematic - Default
Primitives page of the Preferences dialog.

Figure 404. Placing objects to


create a component symbol.

To move an object, click and hold on the object, then move the mouse.

To resize an object after placement, click once on the object to select it and display the
editing handles, then click and hold on a handle to resize the object. For a Bezier, click on an
end point to select it.

Vertices (editing handles) can be added to and removed from a polyline, first select the
polyline, click and hold on a line or vertex, then press INSERT or DELETE to add or remove a
vertex.

Objects are stacked in the order they are placed, to move a stacked object forward or
backward in the stack, press the M shortcut to display the Move sub-menu, then select the
required command. The Status bar will display prompts with instructions on the sequence of
steps to follow.

Altium Essentials_July2013_Colby
10-July-2013

374

Figure 405. Use the various objects to create the right look for the component symbol. In the image the
rectangle and the Bezier curve are currently selected, displaying their editing handles.

32.3.3

The Component Symbol Pins

It is the component pins that give the component its electrical properties. A pin is placed to
represent each pin on the actual physical component.

Pins are placed via the command in the Place menu or the button on the Utilities toolbar.

Press TAB to edit the pin properties before placement, generally this is more efficient.
Numerical values will auto-increment on subsequent pin placements. Auto-increment
behavior is configured in the Auto-Increment During Placement settings in the Schematic
General page of the Preferences dialog, use negative values to auto-decrement.

During placement or whenever a pin is moved, the pin is held


the electrical end (also called the hot end of the pin). The pin
must be positioned so that the electrical end is away from the
component body, press the spacebar to rotate a pin while it is
being moved.

Pins can also be placed to represent electro-mechanical points


on the component, such as the tab on a voltage regulator.

A pin has a number of properties, including a Display Name


and a Designator. It is the pin Designator that is used to
the symbol pin to the PCB footprint pad.

A pin has an Electrical Type, this is used by Altium Designer's electrical rules check system
to verify that pin-to-pin connections are valid, set this to suit the electrical type of that
component pin.

The default pin Length should suit the chosen snap grid (typically 10 or 5). The default
length is 30, typical lengths are 20 or 30.

The distance that the pin's Designator and Display Name appear from the end of the pin is
a system-wide setting for the Schematic and Schematic Library editor, configure the Pin
Margin in the Schematic General page of the Preferences dialog.

Altium Essentials_July2013_Colby
10-July-2013

Figure 406. Moving a pin,


note the pin Display Name to
the right of the pin, and the
Designator above the pin.

375

Figure 407. Configure the properties of the pin in the Pin Properties dialog.

32.3.4

The Component Symbol Properties

Symbol properties, such as the name of this symbol, are edited in the Library Component
Properties dialog, double-click on the component name in the Sch Library panel to open the
dialog.

The symbol's name is defined in the Symbol Reference field.

If the component symbol is being created purely as a domain model, then only the following
properties need to be configured:
a) The Default Designator, enter the required designator prefix, followed by a ?.
b) If the symbol is generic, such as resistor, capacitor or transistor, leave the Default
Comment blank. If it is a dedicated symbol for a specific component, the Default
Comment can be edited to reflect the comment string required on the schematic. Note
that the Comment string is also passed to the PCB.
c) Enter a Description, this string is helpful when component searches are performed.
d) If the component symbol is for a multi-part component, for any part that is
heterogeneous (different from the other parts), such as power block, consider enabling
the Locked property to lock it's part number. This stops Altium Designer from swapping
this part with another part in the same component during design annotation (for example,
you do not want to swap a gate with a power block).

The component Type defines what type of component this symbol represents. Non-standard
components, such as a company logo (Graphical) or a heatsink (Mechanical) can be created
as schematic symbols and placed into a project. Refer to the following section for details of
component Types.

Altium Essentials_July2013_Colby
10-July-2013

376

Figure 408. 2 examples of component symbols, the one on the left drawn with line and polygon objects,
the one on the right drawn as a rectangle.

32.3.4.1 Component Types


Standard - standard electrical component loaded onto board. Always synchronized, always in
BOM.
Mechanical - non-electrical component, e.g. heat sink or mounting bracket. Synchronized if
exists on both schematic and PCB documents, always in BOM.
Graphical - non-electrical component used for company logo, title block, etc. Never
synchronized and not included in BOM.
Net Tie (In BOM) - for shorting two (or more) nets together in the routing. Typically used if a
jumper type component needs to be fitted and also provide shorting in the same location. Always
synchronized and included in BOM.
Net Tie - as above but designed so you couldn't tell a component existed at the location where
the shorting is to occur. Always synchronized but not included in BOM. When placing
components of this type, use the Verify Shorting Copper option in the Design Rule Checker
dialog (when performing a DRC in the PCB), to verify the short (i.e. that no unconnected copper
exists in the component).
Standard (No BOM) - standard electrical component loaded onto board. Always synchronized,
not included in BOM.

Altium Essentials_July2013_Colby
10-July-2013

377

32.4 Using the SCH Library Panel


The SCH Library panel is used extensively during
component creation and review. Click the SCH
button down the bottom right of the workspace to
display the panel if it is not visible. The SCH
panel includes a number of sections, which:

List all components in the schematic library.

Detail the Aliases, Pins, Models and Supplier


Links/Information for each component.

Each section of the panel can be collapsed or


exposed using the small arrow controls on the
right of the panel, as shown in Figure 88. In
image the Alias, Supplier Links and Supplier
Information sections have been collapsed.

Edit operations can be initiated from the panel;


double-click on a component, a pin, a model,
etc, to edit the properties of that object.

32.4.1

Components Section

When a component is clicked on in the


Components section of the panel, the component
symbol is displayed in the main workspace of the
Sch Library editor.
Right-click in the component section of the panel
display a context menu, with the following
commands:

Select All - select all components in the


current library.

Update Schematic Sheets - update all instances of the selected component(s) in all
currently open schematic sheets. Note that a full component replacement is performed, so all
schematic sheet level edits made to the component(s) (other than the designator), are lost.
To perform selective updates, use the Update from Libraries command in the Schematic
sheet editor.

Model Manager - open the Model Manager dialog, where models can be added, edited and
removed from all components in the current schematic library.

Copy, Cut, Paste, Delete - standard edit operations are performed using these menu
options. Note that multi-select is supported for edit actions on multiple components.

32.4.2

Figure 409. SCH Library panel.

Alias Section

An alias is another name for the same component. Aliases are used when a designer wants to
draw a component once, then use it as multiple, functionally identical components. An example
would be a quad, 2 input OR gate which is available in a variety of logic families, such as
74LS32, 74AC32, 74HCT32, and so on. The designer could create the component once, then
add an alias for each alternate logic family they wanted this component symbol to represent.
Note that all aliases share the same properties, such as component parameters, so it is not
possible to include details such as the manufacturer part number as part of the component if it
has aliases. The Alias feature was popular when computer storage was expensive.

Altium Essentials_July2013_Colby
10-July-2013

378

32.4.3

Pins Section

The Pins section lists all pins in the current component, including pins that are currently hidden.
Pins that do not belong to the currently selected component part appear grayed out, including
hidden pins, as shown in Figure 4109.

Figure 410. A component with 2 parts, the image shows which pins belong to each part. On the right of the
image Part A is shown again with hidden pins 7 and 14 displayed - enable this option in the View menu.

Double click (or select and click the Edit button) to open the Pin Properties dialog for that pin.

32.4.4

Model Section

The Model section of the panel lists all models associated with the current component. By adding
links to other domain models in the schematic library editor, the schematic symbol moves from
being a simple domain model, to being a fully described unified design component. The process
of adding models to a symbol is covered in another training module.

32.4.5

Supply Links and Supplier Information

Altium Designer supports linking to dedicated component supplier websites, where component
prices, availability, datasheets and other information can be sourced, and updated in real time.
This is done in the schematic library editor when the designer plans to use the schematic symbol
as the unified design component, which is detailed in another training module.

32.5 Library and Component Management


Techniques
32.5.1 Creating a Library of Components from an Existing
Project
The designer can also create a schematic library of all the symbols used in an Altium Designer
schematic project.
1. To do this, open any of the schematics in the project and then select the command Design
Make Schematic Library. Altium Designer will automatically open all the schematic sheets
the project, create a new empty library, then copy all of the component symbols from the
schematic sheets into that library.
2. If Altium Designer encounters a component that is used more than once in the schematic,
those 2 component instances do not exactly match, a Duplicated Components dialog will
appear, requiring the designer to choose how the duplicates should be handled. Duplicates
occur when the designer has edited a property of the component after it was placed in the
schematic project, for example changing the comment in one of the instances. How the
designer responds to this dialog depends on how they structure their symbol libraries.
Altium Essentials_July2013_Colby
10-July-2013

379

3. Once the library has been created, it should then be saved in a appropriate location with a
suitable name.

32.5.2

Copying Existing Components to a New Symbol Library

A common approach to symbol creation is to copy a component from an existing schematic


library. To do this:
1. Open the source schematic library, and display the SCH Library panel.
2. Select the required component(s). Use standard Windows multi-select techniques to select
multiple components.
3. Right-click on a selected component and choose Copy from the floating context menu.
4. Open the target schematic library, right-click anywhere in the list of components in the SCH
Library panel and choose Paste from the menu.

Figure 411. Copying multiple components from an existing schematic library to a new schematic library.

Altium Essentials_July2013_Colby
10-July-2013

380

Module 33: Schematic Component Creation


While Altium offers a rich array of components available through Altium Vaults and Integrated
Libraries, it is likely that there will still be times in a designer's career when they need to create
their own schematic components using the Schematic Library Editor.

33.1 The Schematic Library Editor


Before taking a look at creation of schematic components themselves, it is worthwhile taking a
look at the environment in which they are created and managed the Schematic Library Editor
and some of its associated tools, features and terminology.

Figure 412. The Schematic Library Editor.

The Schematic Library Editor is used to:

Create and modify schematic component symbols.

Attach models to the component.

Add parameters to the component.

Manage component libraries (*.SchLib).

It is very similar in operation to the Schematic Editor and shares the same graphical object types
(but not the electrical objects). In addition, the Schematic Library Editor has one additional
object, the Pin, which is used at points where wires connect to components.
Components are created with the design objects in the Schematic Library Editor. Components
can be copied and pasted from one schematic library to another or from the Schematic Editor to
the Schematic Library Editor.
To create an empty schematic library select File New Library Schematic Library. A new
library, named Schlib1.SchLib, is created and an empty component sheet, Component_1,
displays in the design window.
Altium Essentials_July2013_Colby
10-July-2013

381

The extent of information contained/required within a schematic component depends


on the adopted component management methodology. For standalone schematic
libraries and Integrated Libraries, each schematic component requires linked models
and defined parameters. For database libraries and released models referenced by
vault-based components, purely the graphical symbol is required. The latter also
benefit, from a version control perspective, by having one schematic symbol per
schematic library file.

Because of the Schematic Library Editor's high zoom level, some designers may find it
helpful to disable the auto-pan feature on the Schematic Graphical Editing page of
the Preferences dialog to prevent the component panning off screen too often.
Alternatively, the V, F shortcut sequence will refocus the editor window around the
current component.

33.1.1

Editing Tools

The Schematic Library Editor has its own right-click menu, a Utilities toolbar and a Mode
as shown in Figure 413.

Figure 413. Editor toolbars and right-click menu.

The Utilities toolbar includes a range of standard drawing tools, and a comprehensive set of
IEEE symbols, while also providing access to grid-related controls and the Model Manager.

Altium Essentials_July2013_Colby
10-July-2013

382

Figure 414. The Utilities toolbar provides an array of tools for quickly
creating components within the editor workspace.

33.1.2

Editor Terminology

While working within the Schematic Library Editor is intuitive, there are some key terms to
understand. The following list highlights some of the main concepts/terminology employed when
creating and managing components in the editor.

Object any individual item that can be placed in the Schematic Library Editor workspace,
for example, a pin, line, arc, polygon, IEEE symbol etc.
The IEEE range of symbols can be resized during placement by pressing the + or keys to enlarge or shrink them as required.

Part a collection of graphical objects that represent one part of a multi-part component
(e.g. one inverter in a 7404), or a library component in the case of a generic or singly
packaged device (e.g. a resistor or an 80486 microprocessor).

Part Zero this is a special non-visible part available only in multi-part components. Pins
added to part zero are automatically added to every part of the component when the
component is placed on a schematic. To add a pin to part zero place it on any part, edit it,
and set the Part Number attribute in the Pin Properties dialog to 0.

Component either a single part (e.g. a resistor) or a set of parts that are packaged
together (e.g. a 74HCT32).

Aliases refer to the naming system when a library component has multiple names that
share a common component description and graphical image. For example, 74LS04 and
74ACT04 could be aliases of a 7404. Sharing graphical information makes the library more
compact.
When using database libraries or vault-based component libraries, the use of aliases
has become obsolete.

Hidden Pins these are pins that exist on the component but do not need to be displayed.
Typically this is done for power pins which can then be automatically connected to the net
specified in the Pin Properties dialog. This net does not need to be present on the
schematic; one will be created, connecting all hidden pins with the same Connect To net
name. The pins will not automatically connect if they are visible on the schematic sheet (i.e.
un-hidden). Hidden pins can be shown on the schematic sheet by selecting the Show All
Pins option in the Component Properties dialog.

Mode a component can have up to 255 different display modes. This can be used for
things like IEEE component representations, alternate pin arrangements for op-amps, and so
on. Use the options in the Tools Mode submenu or the Mode toolbar to add a new mode
to a component. The displayed component mode can be changed on the schematic sheet.

Altium Essentials_July2013_Colby
10-July-2013

383

33.1.3

SCH Library Panel

The SCH Library panel is one of the trusty


'workhorse' panels associated with, and used
by, the Schematic Library Editor (along with
the SCHLIB Filter/Inspector/List panels). It
provides a number of features for working with
schematic components.

To display the panel, click the SCH button


at the bottom right of the workspace and
choose the SCH Library entry on the
pop-up menu.

The panel is divided into several regions


and the buttons below each region apply
to any selected items within that region.

Each region can be optionally hidden or


displayed using the small arrow
in the
right border of the panel.
The following sections provide a summarizing
overview of each region in the panel.

Components
This region lists all the components in the
active library.

Double-click on a component to open its


Library Component Properties Dialog.

Use the buttons and the options in the


right-click menu to manage the library.

Aliases
This region allows alternate names to be
added to a component that share the same
graphics and description.

Figure 415. The SCH Library panel

Pins
This region lists the pins in the current component. Double-click on a pin entry to access the Pin
Properties dialog, in which to modify attributes of that specific pin.
Models
This region lists information about other domain specific models and is where new models can
be added to the symbol. Altium Designer will look for these models when designs are migrated
from one design domain to the next i.e. from Schematic to PCB.
Supplier Links
The lower two sections of the panel are used to define Supplier Links. These links let designers
access live pricing and availability information as well as pertinent component data provided by
the component supplier's website.

33.2 Creating a Schematic Component


The process of creating a schematic component involves various stages:
5. Adding a new component providing the blank canvas upon which to build the component.
6. Defining the symbol graphics how the component will look on a schematic sheet.
7. Adding pins to the symbol providing the electrical connection points, or logic.
Altium Essentials_July2013_Colby
10-July-2013

384

8. Defining additional component properties specific properties for the component, such as
designator, comment, and description.
9. Adding links to other domain models representative of the component in those other
domains.
10. Adding parameters associating additional textual information to the component.
Again, the stages involved will depend on the component management methodology employed.

33.2.1

Adding a New Component

The very first thing that needs to be done is to add a new component to the Schematic Library
file. This can be done in two ways:

Using the Tools New Component command, from the Schematic Library Editor's main or
right-click menus.

Clicking the Add button in the Components region of the SCH Library panel.
For a new library document, the default empty component, Component_1, can be
used simply rename as required.

33.2.1.1 Origin, Units and Grids


If necessary, relocate the origin of the sheet to the center of the design window using the Edit
Jump Origin command (shortcut: J, O). Check the Status Bar to ensure the cursor is truly at
the origin (0,0). Components supplied by Altium are created around this point, marked with a
crosshair through the center of the sheet.
Create components close to this origin. When placed on a schematic, the component
will be 'held' by the electrical hot spot (pin end) that is nearest this origin.
Workspace options, including units of measurement and grids (snap and visible) can be set in
the Library Editor Workspace dialog (Tools Document Options).

Figure 416. Set the units, grids and other sheet properties in the Library Editor Workspace dialog.
Altium Essentials_July2013_Colby
10-July-2013

385

Use the Always Show Comment/Designator option to toggle the display of the
Comment/Designator strings for the active component in the library document.

Use the G keyboard shortcut to quickly cycle through defined snap grids. Define
additional grids on the Schematic Grids page of the Preferences dialog.

33.2.2

Defining Symbol Graphics

Having set up the workspace options as required, the next step is to capture the graphical
representation of the component to create the symbol graphics that will represent that
component when placed on a schematic sheet.
It is important to decide upon a standard for the graphical schematic symbols, by which to
adhere. This will provide a formal template when designing the symbol graphics and result in a
guaranteed level of consistency. Altium's design methodology follows standard IEEE315, which
not only covers the most common circuit elements, but also clearly defines how semiconductor
elements can be combined to symbolize any number of silicon device types.
Build the symbol using any of the Graphic objects available from the Utilities toolbar (or Place
menus).

Figure 417. Example symbol graphics for an Inverter IC, built using standard
graphical design objects.

33.2.3

Adding Pins to the Symbol

Pins give a component its electrical properties and define connection points on the component
for directing signals in and out.
A pin can be placed in the workspace using one of the following methods:

Using the Place Pin command (shortcut: P, P).

Clicking the

button on the design objects drop-down of the Utilities toolbar.

Clicking the Add button in the Pins region of the SCH Library panel.
In each case, the pin appears floating on the cursor, held by the electrical end. Rotate and/or flip
the pin as required and click to effect placement.
Only one end of a pin is electrical (referred to as the hot end ). The pin must be placed
with this end out from the component body. The non-electrical end of the pin has the
pin name next to it.
Press the TAB key after entering placement mode to access the Pin Properties dialog, in which to
edit the initial pin's properties. By defining the pin attributes before placement, the settings
Altium Essentials_July2013_Colby
10-July-2013

386

will become the defaults and the pin numbers and any numeric pin names will auto-increment
when placing subsequent pins.

Define properties for a


pin in the Pin
Properties dialog.

The electrical or 'hot end' of


the pin must be placed away
from the component body.

Figure 418. Example showing the addition of the first pin, placed in relation to the component's main 'body'.
Specify pin attributes in the Pin Properties dialog.

Key pin properties to define include:

Display Name useful particularly for IC components, to provide a visual clue as to the pin's
functionality. This is sometimes referred to as the Pin Name.

Designator a unique identifier for the pin. This is sometimes referred to as the Pin
Number.
Electrical Type used when compiling a project or analyzing a schematic document to
detect electrical connection errors in a schematic sheet.

Length used to specify the pins length, default value is 30.


Increment behavior can be controlled using the Auto-Increment During Placement
options, on the Schematic General page of the Preferences dialog (the primary
value is the pin number). Enter a negative sign to decrement a value. Enter an alpha
value to increment alphabetically. A single alpha followed by numbers increments the
leading alpha. If there are multiple alphas, the last character is
incremented/decremented.

To alter the distance (in hundredths of an inch) between the pin name and/or number
and the body of the component, change the Pin Margin options on the Schematic
General page of the Preferences dialog.

Altium Essentials_July2013_Colby
10-July-2013

387

Figure 419. All pins added to an example schematic symbol.

Additional useful tips when working with pins:

To modify pin properties after placement, double-click on the pin in the workspace, or the pin
entry in the Pins region of the SCH Library dialog.

The entire set of pins for the current component can also be viewed and edited in the
SCHLIB List or SCHLIB Inspector panels. To filter the component to only show pins, rightclick in the graphical area and select Filter Examples Pins from the floating context
menu. Both panels allow multiple pin properties to be edited at the same time. With the
SCHLIB List panel, it's also possible to copy and paste to and from a spreadsheet using the
Smart Grid commands in the panel's right-click menu.

Figure 420. Filtering pins for editing using the SCHLIB Inspector and SCHLIB List panels.

Enable the Hide option when editing a pin's properties to have that pin become a hidden pin.
It will automatically be connected to any other hidden pins with the same name and to any
net on the schematic with the same net name. Use the associated Connect To field in the
Pin Properties dialog to specifically define the net to which the hidden pin should be
attached.
Select View Show Hidden Pins to display all pins that are defined as hidden. This
does not change the actual pin hidden/unhidden status; rather it only displays the
hidden pins in the Library Editor.

Altium Essentials_July2013_Colby
10-July-2013

388

To negate (include a bar over the top of) a pin name, either include a backslash character "\"
after each character in the name (e.g. E\N\A\B\L\E\), or include one backslash character
at the start of the name (e.g. \ENABLE). The latter requires the Single '\' Negation option to
be enabled, on the Schematic Graphical Editing page of the Preferences dialog.

Figure 421. Effecting negation of a pin's display name.

33.2.3.1 Component Pin Editor


Certain pin properties can be edited from the Component Pin Editor dialog, which is accessed by
clicking the Edit Pins button in the Library Component Properties dialog (accessed by doubleclicking a component entry in the SCH Library panel, and discussed in the next section).

Figure 422. Review and edit pins in the Component Pin Editor dialog.

The dialog presents all pins associated with the active component in the Schematic Library
document. With the exception of fields displaying mapping information for any models linked to
the parent part, displayed fields for a pin are directly editable within the dialog. Click once on a
field to focus it for editing and then type the value or select the option as required. Click away
from the field or press ENTER to effect the change.
In addition to providing a means of editing pin properties, the Component Pin Editor dialog also
allows new pins to be added, or existing pins to be deleted.
The Component Pin Editor dialog can also be accessed for a placed component on a
schematic sheet, from the associated Component Properties dialog.

Altium Essentials_July2013_Colby
10-July-2013

389

33.2.4

Defining Additional Component Properties

The Library Component Properties dialog is used for defining additional properties for a
schematic component, and also for adding model and parameter information to that component.
Double-click on a component name in the SCH Library panel to display its associated properties.

Figure 423. The Library Component Properties dialog.

Information that would typically be defined for a component includes:

Default Designator defines the prefix string to be used with the component designator.
The '?' included as the final character indicates that the Annotation system is to replace it
with a unique number during Annotation.

Default Comment description of the component. For a component whose definition is


fixed, such as a 74HC32, this standard descriptive string would be entered. For a discrete
component whose value can change, such as a resistor, the value would be entered. This
field supports indirection so any of the component's Parameter values can be referenced
using =Parameter notation.

Description a meaningful description that can be used for searching and in the Bill of
Materials (BOM).

Type alternate component types are provided for special circumstances.


a) Standard components are the default. These components will be synchronized with the
PCB.
b) Mechanical types only get synchronized if they exist on both the schematic and the PCB
and do get included in the BOM.
c) Graphical components do not get synchronized or included in the BOM.
d) Net Tie components are used for shorting two or more nets on the PCB.
The Standard and Net Tie types also offer the choice of whether the component will be
included or excluded from the BOM.

Lock Pins if this option is enabled, the pins will not be editable, only the component as a
whole entity, when the component is placed on a schematic.

Parameters any number of parameters can be added either in the Library Editor, or on the
schematic sheet. Parameters can be linked to a company database through the use of a
database link document added to the project.

Altium Essentials_July2013_Colby
10-July-2013

390

Models links to various component models can be added, including footprint, simulation,
and signal integrity.

33.2.5

Adding Links to Other Domain Models

At the schematic stage, the design is a collection of components that have been connected
logically. To test or implement the design it needs to be transferred to another modeling domain,
such as simulation, PCB layout, signal integrity analysis, etc.
Each domain needs some information about the component, and also some way to map that
information to the pins of the schematic symbol. Some of this domain information resides in
model files, the format of which is typically predefined. Examples of these include IBIS, MDL and
CKT. Some of the information does not reside in the model files, for example the SPICE pinmapping and net listing data must be stored and managed by the system.
All of the necessary domain information is contained within the schematic component, which
stores a separate interface to each model that has been added to it. In effect, the complete
model is the combination of the model mapping information stored in the component, and the
domain modeling information stored in the model library.
A linked model then, is the implementation representation of the component that is useful for a
particular design domain. This could be as a footprint on the PCB, as a SPICE definition for
simulation, as a suitable signal integrity description for signal integrity analysis, or as a threedimensional model for 3D visualization.

Figure 424. Defined links hook the schematic symbol to other domain implementation models.

Schematic components may link to models for multiple domains, and can also have
multiple models per domain, one of which will be set as the current model.

In terms of sourcing the models, the designer can create their own, use models from
existing Altium libraries, or download a vendor's model file from the web.

Altium Essentials_July2013_Colby
10-July-2013

391

33.2.5.1 Adding Models


In the Schematic Library Editor, a new model can be added to a component in the following
ways:
In the Models region of the Library Component Properties dialog.

Figure 425. Add a model link from the Library Component Properties dialog.

In the Models region of the SCH Library panel.

Figure 426. Add a model link from the SCH Library panel.

In the Models region of the main workspace.

Altium Essentials_July2013_Colby
10-July-2013

392

Figure 427. Add a model link directly in the workspace.

In the dedicated Model Manager dialog (Tools Model Manager).

Figure 428. Add a model link to one or more schematic components using the Model Manager.

33.2.5.2 Defining Model Links


Irrespective of the method used to add a new model link, definition of that link in terms of
specific model and related file in which that model (or its definition) resides, and pin mapping is
performed from within the applicable Model dialog:

PCB Model the link is defined within the PCB Model dialog.

Altium Essentials_July2013_Colby
10-July-2013

393

Figure 429. Define the link to the required PCB model using the
PCB Model dialog.

Click the Browse button, to the right of the Name field, to access the Browse Libraries
dialog. Use this dialog to browse footprint models across all currently Available
Libraries. The mapping of schematic component pins to PCB footprint model pads is
defined in the Model Map dialog, accessed by clicking the Pin Map button.

Simulation Model the link is defined within the Sim Model dialog.

Figure 430. Define the link to the required simulation model using the
Sim Model dialog.
Altium Essentials_July2013_Colby
10-July-2013

394

Signal Integrity Model the link is defined within the Signal Integrity Model dialog.

Figure 431. Define the link to the required SI model using


the Signal Integrity Model dialog.

Either use the Type and Technology fields to utilize built-in default pin models, or
the Import IBIS button to import the set of pin models defined within an external IBIS
file (*.ibs).

PCB3D Model the link is defined within the PCB3D Model Libraries dialog.

Figure 432. Define the link to the required PCB3D model using the PCB3D Model
Libraries dialog.
Altium Essentials_July2013_Colby
10-July-2013

395

Although still possible to link a 3D model from a PCB3D Library, best practice is to add
the 3D body information when defining the actual 2D footprint for the PCB Model
creating a PCB 2D/3D Component model.
For PCB, Simulation and PCB3D models, options are available with which to specify how the
software is to locate the model provided the model name is defined:

Any all Available Libraries (project libraries, installed libraries and libraries found along
defined search paths) are used to look for the model.

Library Name enter the full library name in which the model resides (e.g.
ThisLibrary.PcbLib). All Available Libraries are used to look for the model. If not found
here, the default library path (Library Path field on the System Default Locations page of
the Preferences dialog) will be interrogated to see if the named library can be found there.

Library Path enter the full path/name of the library. Click the Choose button to browse to
the library. This option will always finds the model, since it is explicit (provided of course the
library remains in that directory!).

Integrated/Database Library post-placement, if the component is placed from an


integrated or database library, the model can be sourced directly from that same library,
provided the library is part of the Available Libraries set.

33.2.6

Adding Parameters

Component parameters are a means of defining additional information about the component.
This can include electrical specifications (i.e., wattage or tolerance), purchasing or stock details,
designer notes, references to component datasheets, and so on. Put simply, parameters can be
used to add any useful information that might be needed for a component.
Adding a component parameter to an individual component is easily done by going directly
through the Library Component Properties dialog for that component. Simply click the Add
button in the Parameters region of the dialog, then define the parameter in terms of name and
value, along with any other required properties (type, visibility, etc), in the Parameter Properties
dialog.

Figure 433. Adding a parameter to a schematic library component. Define a name and value for the
parameter and setup the graphical properties that will determine how the parameter information appears in
the workspace.

Use the Add as Rule button to specifically add a parameter to the component, configured as a
design rule directive. This feature allows definition of constraints for the design prior to PCB
layout. The Parameter Properties dialog will appear, with the Name and Type fields set to Rule
and STRING respectively and inactive.
Altium Essentials_July2013_Colby
10-July-2013

396

Clicking the Edit Rule Values button will open a dialog listing each of the rule categories and
rule types that are available in the PCB document. Double-click on a rule type to open its
corresponding Edit PCB Rule dialog, from where the constraints for that rule can be defined.

Figure 434. An example of adding a rule-based parameter to a component.

A parameter added as a rule to a schematic component translates to a corresponding


PCB design rule with a scope query expression of InComponent
('ComponentDesignator'), when the design is transferred to the PCB document.

To add/modify/remove parameters across all components in the active library (or all
placed components in a design), use the Parameter Manager (Tools Parameter
Manager).
Parameters can be added to a component after placement on a schematic sheet, from
the Parameters region of the Component Properties dialog, or the Parameters region
of the SCH Inspector panel (with the required component(s) selected in the
workspace).

Altium Essentials_July2013_Colby
10-July-2013

397

33.2.6.1 Parameters for Component-to-Datasheet Linking


Parameters can be used to create links from the component to reference material, such as
datasheets. Linkage is established by adding specific component parameters. One approach
uses the F1 key to access a referenced document. The other, which caters for multiple
references, uses the right-click context menu.
HelpURL
If a component includes a parameter with the reserved name HelpURL, then the URL will be
resolved when the F1 key is pressed while the cursor is hovering over the component. The URL
can be any document that can be opened by the Altium Designer environment, including PDF,
HTML and Text documents.
When specifying the value for the parameter, either include an absolute path or just enter the
document name. The following examples are valid entries for the value of the parameter:

C:\Design_Projects\Schematics\Modifications.txt

AP0102 Linking an FPGA Project to a PCB Project.pdf

www.opencores.com

When F1 is pressed with the cursor hovering over the placed object, a search for the document
is conducted as follows:
1. If a path to a particular location is specified, this location will be searched first.
2. If the document cannot be found at this specific location, or if no path is specified, the \Help
folder of the installation will be searched.
3. If the document still cannot be found, the default help topic for the object will be used and
displayed.
For a PDF document, specify a particular opening page by adding the #page=xx
option at the end of the document name (e.g. CR0118 FPGA Generic Library
Guide.pdf#page=364).
Component Links
The second technique supports multiple links, and naming of each link. Here a pair of
parameters are added:

ComponentLinknURL points to the linked document or URL. Again, the parameter's


value must include the full path if the document does not reside in the \Help folder of the
installation.

ComponentLinknDescription defines a label (or description) for the link.


Any number of links can be defined, simply increment n for each unique parameter
pairing.

To access datasheet links, simply right-click on a component that uses datasheet linking an
entry for each component link will appear listed on the References sub-menu. If a HelpURL
parameter has also been added for that component, an entry for this will appear at the top of the
menu, labeled Help.

Altium Essentials_July2013_Colby
10-July-2013

398

Figure 435. Right-click over a component to access datasheet links defined for it.

Datasheet links can also be accessed while browsing components in the Libraries
panel press F1 or right-click on the component name in the panel to access the
documents/URLs.

33.3 Component Verification


To check that the new component(s) have been created correctly there are a variety of reports
that can be generated:

Component Rule Check.

Component Report.

Library List.

Library Report.

Ensure the Schematic Library file is saved before any reports are generated.

33.3.1

Component Rule Check

The Component Rule Checker tests for errors such as duplicates and missing pins, for all
components in the active library. Access this feature using the Reports Component Rule
Check command (shortcut: R, R). The Library Component Rule Check dialog will be presented.
Enable the conditions to be checked as required and click OK. A report will be generated
named LibraryName.err and opened as the active document. The report lists any
components in violation of the checks stipulated.

Altium Essentials_July2013_Colby
10-July-2013

399

Figure 436. Run a component rule check to test against a variety of error conditions.

Linkage from the component pins to the model is not checked by the Component Rule
Checker. This level of linkage is checked, however, when compiling a library package
into an Integrated Library. Even if the intention is not to use the compiled integrated
libraries, it is beneficial to create and manage libraries using library packages, and
compile them to perform a more comprehensive verification of the components.

33.3.2

Component Report

To create a report listing information for the active component, use the Reports Component
command (shortcut: R, C). A report will be generated named LibraryName.cmp and
opened as the active document. The report includes the number of parts, with pin details for
each.

33.3.3

Library List

To create a basic report listing all components in the active library, use the Reports Library
List command (shortcut: R, L). Two documents are generated:

LibraryName.rep provides a component total, and then a listing of all components by


name and description.

LibraryName.csv provides a listing of each component in terms of linked footprint


models, defined parameters, designator and description.

33.3.4

Library Report

To create a more detailed report featuring each component in the library, use the Reports
Library Report command (shortcut: R, T). This feature is used to generate a report in either
Microsoft Word or HTML format.

Altium Essentials_July2013_Colby
10-July-2013

400

Use the Library Report Settings dialog that appears to determine format and report name, as
well as what information to include in the report parameters and/or pins and/or models.
Previews of components and their models can also be included.

Figure 437. An example browser-based library report.

33.4 Copying Components from Other Libraries


Components can be copied to the active Schematic Library from other open Schematic Libraries
and their properties modified as required. To do so:
1. Select the component to be copied in the Components region of the SCH Library panel, so
that it displays in the main editing workspace.

Altium Essentials_July2013_Colby
10-July-2013

401

2. Use the Tools Copy Component command. The Destination Library dialog appears,
presenting all currently open Schematic Library documents. Simply choose the destination
library and click OK a copy of the component will be added to the selected target library.
Copy and paste one or more selected components using the right-click menu
commands available in the Components region of the SCH Library panel.
One or more placed components on a schematic sheet can also be copied and pasted
into the active library using the region's right-click Paste command.

If the component to be copied is part of an integrated library, open the .IntLib file
(File Open) and choose Yes to extract the source libraries. Then open the
source library (.SchLib) from the Projects panel.

33.5 Creating a multi-part component


There are many instances where a real-world
component in a single physical package
actually contains multiple individual parts
within it. These are called multi-part
components. To create a multi-part
component:

First create one part, select all, then copy


the part to the clipboard using the Edit
Copy menu command.

Select Tools New Part to add a new


part sheet under the same component
name.

Paste the part onto the sheet and update


the pin information. Note that the Part
in the panel will now show 2/2, meaning
the second of two parts.

Finally, add hidden pins (typically power


pins) to any of the parts. Edit them,
the Hide attribute and set their Part
Number to zero. If they are to
automatically connect to a specific net,
enter the net name in the Connect To
field.

Figure 438. The 4 parts of a multipart 74ACT32


component. Note the power pins on each part (hidden
pins have been displayed), these exist once, on part
zero (a non-visible part).

Altium Essentials_July2013_Colby
10-July-2013

402

33.6 Creating an Alternate View Mode for a Part


Up to 255 Alternate View modes can be added and defined for a component part. These view
modes can contain any different graphical representation of the component, such as an IEEE
representation.
Each alternate view mode should always have the same set of pins as the Normal
(default) mode.
Controls for adding and browsing different view modes can be found on the Tools Mode submenu, and the Mode toolbar. Typically, add an Alternate View and copy-paste the part created in
the Normal (default) mode. This ensures the correct set of pins, leaving the designer free to
modify the graphical elements and position pins as required.
Once the component has been placed on a schematic sheet the view mode can be
selected from the Mode list in the Graphical region of the Component Properties
dialog.

Altium Essentials_July2013_Colby
10-July-2013

403

Module 34: Supplier Links


Pass by the desk (or glance at a shelf) of any electronics designer/engineer and there will
typically be one or more catalogs for parts and components available from 'favored' suppliers.
Key to any design is the search for these required circuit components what is available? What
functionality is offered? How much does it cost? Often, a comparison between multiple suppliers
will be undertaken, ensuring the best 'deal' is achieved for the 'building blocks' required by the
design.
While a printed catalog faithfully obliges with content as its copious pages are fanned, to have
such information at the fingertips, live during design, and linked to the components themselves,
is a far more attractive proposition. Altium Designer facilitates this very notion, through its Live
Links to Supplier Data feature.
Through direct connection to supplier web services, the designer is able to search across a
supported supplier's entire product catalog. This 'live' data can then be integrated within the
design process at the library design level, during the design, and at design release time. In
short, this feature allows supplier databases to be searched from within Altium Designer, and
Altium design components linked to matching Supplier Items.
For any given Supplier Item found through a search, its parameters, data sheet links, pricing and
stock information can also be imported, as parameters of a target library component (SchLib,
DbLib, SVNDbLib), or placed component on a schematics sheet. In addition, whole new
components can be created in a target library directly from Supplier Items!
The linked supplier data can also be included at design release time, in a Bill Of Materials
especially useful from a project costing and procurement perspective.
Use of the Live Links to Supplier Data feature does not require the designer to be
signed in to their Altium account. Searching is conducted directly with the Suppliers
through web services. However, when displaying pricing information in alternate
currencies, exchange rates for currency conversion are refreshed daily, provided the
designer is signed in to their account.

34.1 Supported Suppliers


Altium currently has agreements in place with the following Suppliers:

Allied Electronics

Arrow Electronics

Digi-Key Corporation

Farnell

Newark

Mouser Electronics.

These agreements enable designers to access and search these Suppliers' web-databases
directly from within Altium Designer.
Moving forward, Altium continues to drive the expansion of its Supplier support. As
agreements arise with additional electronic component Suppliers this list will grow,
giving the designer an ever-wider choice of where to source their required design
'building blocks'.
Enable any combination of these Suppliers, for use with the Live Links to Supplier Data feature,
from the Data Management Suppliers page of the Preferences dialog (DXP Preferences).

Altium Essentials_July2013_Colby
10-July-2013

404

Figure 439. Choose which Suppliers to include when searching for real-world items to link to Altium
Designer components.

By including more Suppliers for use with the feature, the designer is able to compare
and shop for the best deals on the components required by their design.

34.1.1

Accessing Additional Supplier Services

If an account is already held with a Supplier (existing customer), the designer may be entitled to
special pricing or products that are not available in that Supplier's public catalog. If this is the
case, simply ask that Supplier's sales representative for a username or customer number that
can be used with their Web Service. Having gained this information, enter it into the options
section for that particular supplier.

Figure 440. Existing customers of supported Suppliers can enter their customer credentials to access
additional, customer-specific services.
Altium Essentials_July2013_Colby
10-July-2013

405

Making use of these additional supplier options is a wholly optional exercise. The
designer is not required to fill out these details in order to use the Live Links to
Data feature, they simply offer additional benefits for those users that are existing
customers of a particular supplier, should they wish to access them.

34.2 Searching for Supplier Items


The primary interface to live supplier data is the Supplier Search panel. Think of this as a direct
portal to parts databases provided through supplier web services. Access this panel by clicking
the System panel access button, at the bottom-right of the main design window, and choosing
Supplier Search from the associated menu.

Figure 441. Search for real-world items in web-based Supplier databases through the Supplier Search
panel.

As illustrated in Figure 441, the panel is essentially divided into three key sections:
3. Search Criteria use the Keywords field to enter one or more keywords relevant to the
supplier item to be searched for. Click the ... button, to the right of the field, to access the
Search Filters pop-up. From here, specify how many results, per supplier, are displayed on
each 'page' of results within the panel. Additional options allow enhanced filtering based on
whether items are in stock, lead free, or RoHS-compliant. Once criteria are defined, either
press ENTER within the field, or click the Search button, to effect the search.

Altium Essentials_July2013_Colby
10-July-2013

406

Only the databases for those suppliers that are enabled will be searched for matching
items. Enable/disable suppliers as required from the Data Management Suppliers
page of the Preferences dialog. Quick access to this page can be made by clicking the
button, at the top-right of the panel.
4. Search Results this region of the panel will populate with all Supplier Items matching the
search criteria, and in accordance with any advanced filtering options. The total number of
items returned are displayed below the region, and this can be expanded to show the total
results per Supplier. Use the arrow controls to the left to flick through the pages of results.
Depending on the scope of the search and the number of Suppliers enabled, multiple
pages of results may be returned. Typing Resistor for example will return far more
results due to its generic nature, whereas typing 1K Res 1/4W is a finer search and
therefore return fewer results. Throw in a manufacturer name and the results will
further still!

Add additional columns of information by right-clicking in the header area and


from the pop-up menu. Change column order by dragging a column's header to the
or right. Sort data by any column by clicking on the header for that column in
ascending or descending order.
5. Detailed Item Information this region of the panel provides detailed information for the
currently selected (and focused) item in the results region above. Depending on availability,
the region can contain a listing of parametric data for the item, datasheets for the item,
quantity-pricing levels applicable to that item, and a stock section reflecting how many units
of the item are currently in stock.

34.3 Adding a Live Link to a Supplier Item


At the heart of Altium Designer's Live Links to Supplier Data feature is the Supplier Link. This
fundamental entity provides the live link between an Altium Designer component and an item in a
supplier's database of electronic components.
Creation of a Supplier Link involves the addition of two parameters to the target Altium Designer
component involved:

Supplier n

Supplier Part Number n

n is an integer suffix, used to distinguish between Supplier Items where multiple links are added
to the same component.
Manually creating a link is a simple, straightforward process. Simply click on the required
Supplier Item, in the results region of the Supplier Search panel, then drag and drop onto the
target component. Exactly where to 'drop' depends on the type of component:

Schematic Library component (SchLib) with the source Schematic Library document open
as the active document in the main design window, there are three areas on which to 'drop'
the Supplier Item and create the link:
a) Anywhere within the main editing area of the Schematic Library Editor (ensuring the
recipient component is focused).
b) Onto the required component's name, in the Components region of the SCH Library
panel.
c) Into the Supplier Links region of the SCH Library panel (ensuring the recipient
component is focused).

Database/SVN Database Library component (DbLib, SVNDbLib) onto the required


component record, in the Table Browser tab of the relevant Database Library file or SVN

Altium Essentials_July2013_Colby
10-July-2013

407

Database Library file, ensuring the DbLib or SVNDbLib file is the active document in the
design window.

Placed component on a schematic sheet onto the schematic symbol of a placed


component, ensuring the source schematic document is the active document in the main
design window.

Figure 442. Example of a Supplier Link added to a schematic library component. Here, the Supplier Item
a DIP Switch is added by dragging the item from the Supplier Search panel into the main editing area of
the Schematic Library Editor. The resulting two parameters the fundamental elements that make the link
possible can be viewed in the associated properties dialog for the component.

A basic Supplier Link can also be created, in a more automated fashion, by rightright-clicking on the Supplier Item entry in the results region of the Supplier Search
panel and choosing the Add Supplier Link To command. If a Schematic, Database or
SVN Database Library is active, the Supplier Link will be added to the focused
component/component record. If a Schematic document is active, simply click on each
part that requires the Supplier Link.

34.3.1

Adding a Link from the SCH Library Panel

For the currently focused component in a schematic library, Supplier Links can be directly added
from within the Supplier Links region of the SCH Library panel. Simply click on the Add button
to access the Add Supplier Links dialog. Search for the required item, select it in the upper
(results) region and click OK to add a link to that item, to the schematic library component.

Altium Essentials_July2013_Colby
10-July-2013

408

To speed searching, the software fills in some suggested keywords into the
field at the top of the Add Supplier Links dialog. The entry will be either the
component's comment, description, or name, depending on the settings defined in the
Suggested Keywords region, on the Data Management Suppliers page of the
Preferences dialog. Further refine this entry as required, to better target the desired
Supplier Item(s).

Figure 443. Add links directly from within the SCH Library panel.

On the surface, the Add Supplier Links dialog has the same look and feel as the
Supplier Search panel. However the panel has greater functionality -- as detailed
elsewhere in this module and, as such, should be used as the primary means of
creating Supplier Links.

34.4 Importing Data from a Supplier Item


For any given Supplier Item found through a search in the Supplier Search panel, its parameters,
data sheet links, pricing and stock information, can be imported as parameters of a target library
component (SchLib, DbLib, SVNDbLib), or placed component on a schematic sheet.
Importing information is simply a case of selecting the parameter(s), data sheet link(s), pricing
information, or stock information in the detailed information region of the Supplier Search panel
then dragging and dropping onto the target component/component record.

Altium Essentials_July2013_Colby
10-July-2013

409

The target 'drop' point in each case is the same as that when manually adding a live
link to a Supplier Item. The one exception being that when the target is a schematic
library component, the dragged information cannot be dropped into the Supplier
region of the SCH Library panel.

Multiple entries from the same section of information (Parameters, Data Sheets,
Pricing, Stock) can be imported together in this way, but not entries spanning different
sections of information.

34.4.1

Parameter Import Options

Prior to importing any parameters, pricing, or stock information from Supplier Items, the designer
has the opportunity to define name mappings. This is particularly useful where, for example,
certain parameters have already been defined for library components, and those existing
parameters have different names to those used by a Supplier in their published data for an item.
Rather than importing data into a new/separate parameter, the data can be imported into the
existing parameter provided the name mapping has been setup to do so.
Parameter name mappings are defined as part of the Parameter Import Options, on the Data
Management Suppliers page of the Preferences dialog.

Figure 444. Define options for imported parameters on the Data Management Suppliers page.

When importing a parameter, the software will look to these options to see if that parameter has
defined mapping specified by the Imported Parameter Name field. If this field is blank, or the
parameter is not listed, it will be imported using the parameter name used by the Supplier. If this
Altium Essentials_July2013_Colby
10-July-2013

410

field has a value, then data will be imported into a new or existing parameter with that name. In
the case of the latter, the data will overwrite any existing data.
Use the Visible option to specify whether or not the associated parameter, when
imported, is displayed in the workspace.
The Supplier Link options only apply when creating a new library component from a Supplier
Item, or when adding a Supplier Link and parameters simultaneously (both discussed later in this
module). For each listed parameter, the designer can choose to exclude it from import, and also
define whether a suffix is to be used useful if importing parameters from multiple Supplier
Items to the same Altium Designer component.
The suffix identifies a parameter as belonging to a particular Supplier Link. That
parameter can be deleted when the associated Supplier Link is removed. Note that
non-suffixed parameters will not be deleted when the Supplier Link is removed.

By default, several base parameters are defined, all enabled for import when creating
new components from Supplier Items, or importing parameters along with a Supplier
Link. With the exception of Supplier and Supplier Part Number, options for
parameters can be edited, including specification of imported name. None of these
parameters can be deleted.

When creating a new component from a Supplier Item or importing parameters along
with a Supplier Link, if a parameter for that item is not listed, it will be imported by
default. To prevent a certain parameter from being imported, an entry for it must be
added to the list in the Supplier Parameter Name field and its Exclude option
enabled.

34.4.2

Importing Parameters

To import parameters, simply select the required parameters in the Parameters section of the
Supplier Search panel and drag to the target component/component record. Import will comply
with defined parameter import options.

Altium Essentials_July2013_Colby
10-July-2013

411

Figure 445. Example of Supplier Item parameters imported to a schematic library component.

Parameters can be imported without setting up a prior live link to the Supplier Item,
however importing the Supplier and Supplier Part Number parameters in this
manual, drag and drop fashion, will not create a live link to the item.

Another way to initiate the import of parameters is to select the required parameter(s),
right click and choose the command from the context menu that appears. If a
Schematic Library, Database Library or SVN Database Library is active, the command
will appear in the format Add Parameters To ComponentName, where
ComponentName is the currently focused component/component record in the library.
If a Schematic document is active, the command will appear in the format Add
Parameters To Part. Simply click on each placed component to which the parameters
are to be added. Right-click or press ESC to exit.

34.4.3

Importing Data Sheet Links

The process for importing a data sheet link from a Supplier Item is the same as that for importing
parameters. The only difference is that there are no options to set up beforehand just click and
drag the data sheet link from the detailed Documents section for the Supplier Item onto the
target component/component record in the active library (SchLib, DbLib, SVNDbLib), or
component on the active schematic sheet as required.
The process will add a ComponentLink parameter pair, targeting the data sheet. By default, the
same value will be entered for both the ComponentLinknDescription and
Altium Essentials_July2013_Colby
10-July-2013

412

ComponentLinknURL parameters the URL for the data sheet. Access the link from the rightright-click References sub-menu for the component.

Figure 446. Add a link to a data sheet for a Supplier Item with a drag of the mouse!

It can be a good idea to change the value for the ComponentLinknDescription


parameter to a shorter, more meaningful entry, for better display in the References
sub-menu.

34.4.4

Importing Pricing Information

To import pricing information from a Supplier Item, simply click anywhere within the detailed
Pricing section of the Supplier Search panel and drag to the target component/component
record. Import will comply with defined parameter import options for the Pricing parameter.
Although a Supplier Item may typically list a range of different prices, based on quantity levels,
the import results in only a single Pricing parameter. The value of the parameter will reflect
these various price-quantity relationships in the following format:
Quantity1=Price1, Quantity2=Price2, ... Quantityn=Pricen
The left-most Quantity-Price pairing in the imported parameter corresponds to the first
entry for pricing for the Supplier Item in the Supplier Search panel.

Altium Essentials_July2013_Colby
10-July-2013

413

Figure 447. Pricing information for a Supplier Item is imported as a single, distinct parameter.

34.4.5

Importing Stock Information

To import stock (inventory) information from a Supplier Item, simply click anywhere within the
detailed Stock section of the Supplier Search panel and drag to the target
component/component record. Import will comply with defined parameter import options for the
Stock parameter.
If a Supplier Item is currently out-of-stock, there will be no available Stock section in
the detailed information area of the Supplier Search panel.

Altium Essentials_July2013_Colby
10-July-2013

414

Figure 448. Stock information for a Supplier Item is imported as a distinct parameter.

34.5 Adding a Supplier Link and Parameters


Simultaneously
It is possible to add parameters, data sheet links, pricing and stock information for a Supplier
Item, along with a Supplier Link to that item, all in the one step. This allows the designer to setup
components in a far more streamlined way, rather than adding each stage independently. To do
this, simply right-click on the Supplier Item entry in the results region of the Supplier Search
panel and choose the Add Supplier Link And Parameters To command.
If a Schematic, Database or SVN Database Library is active, the parameters and Supplier Link
will be added to the focused component/component record. If a Schematic document is active,
the designer will be able to click on each part to which the parameters and Supplier Link are to
be added.
For parameters, pricing and stock information, the import will proceed in accordance
with any defined parameter import options, on the Data Management Suppliers
page of the Preferences dialog.
Figure 449 illustrates this for a resistor array component MNR34 in a Schematic Library. The
result is a new Supplier Link to the item verified in the Supplier Links region of the SCH
panel and all imported parameters populating the Parameters region of the associated Library
Component Properties dialog for the component.

Altium Essentials_July2013_Colby
10-July-2013

415

Figure 449. Add a link to, and import all information for, a Supplier Item, using a single command.

34.6 Creating a New Library Component from a


Supplier Item
Adding a Supplier Link and/or parametric information to an Altium design component is
straightforward, but what if that component does not yet exist? No matter, the Live Links to
Supplier Data feature includes the ability to create a new library component directly from a
Supplier Item!
This feature creates a new component in the target library, adds a link to the Supplier
Item and imports parameters for that item. The designer will still need to draw symbol
graphics, modify graphical and/or other component properties and, if applicable, add
required model links, as necessary.
The method used to create the component depends on the type of target library:

Altium Essentials_July2013_Colby
10-July-2013

416

Schematic Library simply drag the item, from the results section of the Supplier Search
panel, and drop onto the Components region of the SCH Library panel. Alternatively, rightclick on the Supplier Item and choose the Import Into command.

Database Library/SVN Database Library ensure the Table Browser tab in the target library
file is focused, then right-click on the Supplier Item and choose the Import Into command.

The new component will be named using the Supplier Item's Manufacturer Part Number
parameter.
For parameters, pricing and stock information, the import will proceed in accordance
with any defined parameter import options, on the Data Management Suppliers
page of the Preferences dialog.
Figure 450 illustrates 'in-progress' creation of a new component in a Schematic Library, based
on a searched Supplier Item in this case a red panel-mounted indicator, from Farnell.

Figure 450. Example creation of a new schematic library component from a Supplier Item. In this case, the
drag-and-drop feature is used, but the right-click Import command could just as easily have been used.

Figure 451 illustrates the resulting new component, verified by:

An entry for the component added to the Components region of the SCH Library panel.

A Supplier Link to the source Supplier Item verified in the Supplier Links region of the
SCH Library panel.

All imported parameters populating the Parameters region of the associated Library
Component Properties dialog for the component.

Altium Essentials_July2013_Colby
10-July-2013

417

Figure 451. Being able to create a new component directly from a Supplier Item enables the designer to
quickly build design libraries that are tightly linked to real-world components from the outset.

34.7 Viewing and Editing Supplier Links


The Supplier Links currently defined for a library component, or placed component on a
schematic sheet, can be viewed and edited using the Supplier Links dialog (Figure 452). To
access this dialog:

For a schematic library component right-click anywhere within the main editing window of
the Schematic Library Editor and choose Supplier Links from the context menu that
appears.

For a Database library / SVN Database Library component right-click inside the record for
the component, on the Table Browser tab of the relevant Database Library file or SVN
Database Library file, and choose Edit Supplier Links from the context menu that appears.

For a placed component on a schematic sheet right-click on the component and choose
Supplier Links from the context menu that appears.
All currently defined Supplier Links for a schematic library component can also be
viewed and edited directly from the SCH Library panel. Simply select the required
component in the Components region of the panel, to populate the Supplier Links
region of the panel. Detailed data for a selected Supplier Item will be displayed in the
Supplier Information region of the panel.

Altium Essentials_July2013_Colby
10-July-2013

418

Figure 452. Manage the links for a component directly from within its associated Supplier Links dialog.

Enable the display of additional data columns, as required, by right-clicking on a column header
and choosing from the subsequent pop-up. Click on a column header and drag horizontally to
change the display order. Click on a column header to sort all defined links by that data attribute
price is often a good sorting choice!
To add an additional Supplier Link, simply click on the Add button. The Add Supplier Links
dialog will appear, which can be used to search for, and add a link to, the required item.

Figure 453. Add a new link using the Add Supplier Links dialog.

To delete a Supplier Link for the component, simply select its entry, in the upper region of the
Supplier Links dialog, then click the Remove button.
Altium Essentials_July2013_Colby
10-July-2013

419

34.8 Quantity and Pricing


"Pay less buy in bulk!". Quite a common phrase and no more so than with suppliers and
distributors of electronic components. Suppliers will typically have different pricing based on the
quantity of an item to be purchased from them. The quantity levels required to access
increasingly reduced unit price points differ not only between different suppliers, but also from
item to item for the same supplier.
This 'quantity pricing' is readily found in the detailed information region of the Supplier Search
panel specifically the detailed Pricing section for the Supplier Item currently selected in the
results region of the panel.
By changing the entry in the Order Quantity field, below the results region, the displayed pricing
in the Unit Price column will change, in accordance with supplier-specified quantity pricing
levels in-place for the displayed Supplier Items.

Figure 454. Example of displayed Unit Price change, based on the specified
Order Quantity. In this
example, making the quantity 100 instead of 50 would have reached the final available quantity pricing level
for that item and saved a further AUD0.61 per relay!
Altium Essentials_July2013_Colby
10-July-2013

420

Supplier prices are only estimated prices, to aid designers in their design decisions.
Actual price quotes for a given order from the Supplier may vary.

34.8.1

Currency Conversion

Different suppliers operate in different, often multiple, regions of the world and, as such, it is
common to see product pricing reported in different currencies. Altium Designer provides the
facility to convert the display of such pricing information into one of a number of supported
currencies.
To quickly display all Unit Price information within the upper region of the Supplier Search
panel in a single currency, simply choose the required currency from the drop-down field
available to the left of the Order Quantity field.

Figure 455. Access a range of common currencies in which to display pricing information.

Only pricing information in the upper region of the panel will display in the chosen currency.
Pricing information in the lower region of the panel (the Supplier Information region) will remain
shown in the currency used by that supplier.
To have pricing displayed in the default currency used by a Supplier, simply ensure
field entry is set to <none>.

Currency conversion is performed using applicable exchange rates. These rates are
updated on a daily basis (every 24hrs), but the designer must ensure that they are
signed in to their Altium account in order to use them.

Altium Essentials_July2013_Colby
10-July-2013

421

34.9 Including Supplier Data in a Bill of Materials


Being able to cost a project and determine the quantities of design components to be ordered
from suppliers/distributors, is an essential part of the overall design process. After live Supplier
Links have been added to Altium Designer components as required, the linked supplier data
including pricing and stock information can be included at design release time, in a Bill Of
Materials.
Supplier data is only available when generating a Bill of Materials for the project. It is
not available when generating a Bill of Materials for a PCB document, and is also not
included when generating a Simple BOM.

Figure 456. Supplier data can be included as part of the Bill of Materials.

The following supplier-based data can be included in a Bill of Materials simply enable the
checkbox for each, in the All Columns region, at the left-hand side of the Bill of Materials dialog:

Supplier n name of the Supplier

Supplier Currency n alphabetic code for the chosen currency used for pricing data.

Supplier Order Quantity n number of units required to fulfill the desired production
quantity of the product.

Supplier Part Number n part number for the Supplier Item.

Supplier Stock n how many units of the item the Supplier has in stock.

Supplier Subtotal n the Supplier Order Quantity multiplied by the Supplier Unit Price,
giving the subtotal for that item.

Supplier Unit Price n cost, per unit, of the Supplier Item.

Figure 457. A closer look at the supplier data available in the BOM.

The BOM uses indexed sets of supplier-related data to cater for components that have
more than one linked Supplier Item, for example Supplier 1, Supplier
1, etc; Supplier 2, Supplier Currency 2, etc, and so on.

Pricing and stock information is sourced directly from enabled Supplier web
Having these parameters added to the components has no bearing on the population
of data in the BOM.

Altium Essentials_July2013_Colby
10-July-2013

422

34.9.1

Specifying Production Quantity

The designer can fully cost a project based on the number of units of the product that it is
intended to produce the Production Quantity. Use the Production Quantity field, in the
Supplier Options region of the Bill of Materials dialog, to specify the required value.
Supplier Options only become available provided that the Supplier Unit Price n
and/or Supplier Subtotal n parameter columns are enabled.
The value entered into the Production Quantity field is used to determine the Supplier Order
Quantity the quantity of component that would need to be ordered to produce the given product
quantity. This is calculated by multiplying the Quantity (of each particular component) by the
specified production quantity.

Figure 458. Enter a value for the Production Quantity the number of units of the product to be
manufactured.

In turn, the Supplier Order Quantity is used to determine the Supplier Unit Price that applies.
Remember that suppliers typically offer various quantity pricing levels, depending on how many
units of an item are purchased. To have Altium Designer round up the Supplier Order Quantity to
take advantage of the next (reduced) pricing level, simply enable the Round up Supplier Order
Qty to cheaper price break option.

Figure 459. Enable rounding to take advantage of reduced pricing!

34.9.2

Changing Supplier Currency

The currency used for pricing-related data in a Bill of Materials can be specified from the range
of supported currencies. Simply choose the required currency from the drop-down field available
to the left of the Production Quantity field, in the Supplier Options region of the Bill of
Materials dialog. The chosen currency will affect the following data columns:

Supplier Unit Price n

Supplier Subtotal n
Be sure to include the Supplier Currency n column in the BOM, to distinguish
which currency is in use through an associated alphabetic code.

Altium Essentials_July2013_Colby
10-July-2013

423

Figure 460. Choose from a range of supported currencies when outputting pricing data in a Bill of Materials.

34.9.3 Using Cached Pricing Data in BOM Parameters when


Offline
When working online connected to the internet
and signed in to an Altium account pricingdata for components with live links to Supplier
Data will be updated. When generating a BOM,
the latest pricings at that point in time will be used.
For specific currencies, the exchange rates are
updated on a daily basis.
Figure 461. Specify the use of cached pricing
When working offline, there is the ability to use the data when working offline.
last cached pricing data in the pricing-based
parameters in the BOM. To do this, from within
Bill of Materials For Project dialog, simply enable the Use cached pricing data in parameters if
offline option in the Supplier Options region of the dialog.

34.9.4

Example BOM Template

The Excel template file BOM Supplier Links.xlt provides an example BOM template that
includes supplier link information. This file can be found in the \Templates folder of the
installation.

Figure 462. Example Bill of Materials generated the Excel template file, BOM Supplier Links.xlt.

In the Excel template, entries for Production Quantity and Currency are made using
parameters Field=ProductionQuantity and Field=Currency, respectively.

Altium Essentials_July2013_Colby
10-July-2013

424

34.10

Unified Components the Future Awaits

The Live Links to Supplier Data feature described in this module relates to component
management methodologies that utilize SchLib, DbLib or SVNDbLib as their 'backbone' for
component storage. With the advent of Altium Vault technology and Vault-based components, a
similar, yet distinctly separate and far more powerful link between design component and supply
chain is realized.
Although out of the scope of this module, it is well worth touching on some exciting concepts that
drive the 'vault way' of accessing supplier data.
Note that when using the right-click context menu command to access Supplier Links
for a placed component on a schematic, the resulting Supplier Links dialog will only
populate if the component was not placed from a vault (and if it has Supplier Links
defined for it). For a component placed from a vault, this command does not access
supply chain information added as part of an associated Part Choice List Item.

34.10.1 Design-Time Part Choices


When a component definition is initially released into a planned revision of a targeted
Component Item in a vault, it is still simply the design (or engineering) view of the component. It
means the world to the designer using it in a board design, but is not meaningful outside of the
design arena. To become a truly Unified Component, that unites the design and supply chain
camps, the Component Item must be mapped to physical, real-world manufactured parts.
Under the Unified Component model, the design component as seen by the designer is
separated from the Manufacturer and/or Vendor parts. This information is not defined as part of
the Component Item. Instead, a separate vault Item a Part Choice List Item is used to map
the design component to one or more Manufacturer Parts, listed in a Global Part Catalog, which
in turn can be mapped to one or more Vendor Parts, allowing the designer to state up-front, what
real parts can be used for any given design component used in a design.

Figure 463. The term 'Unified Component' depicts the extension of a design component into the bigger
product space through dedicated part choices, that map that design component to the real-world
manufactured parts that have to be sourced by the procurement team. This gives the procurement team a
beneficial and timely 'heads-up' on what those parts should be.

The designer can feel truly empowered by being able to specify Manufacturer Parts that are truly
interchangeable at manufacturing time in the context of any usage of that component in their
design the very essence of true part equivalency. And it is this intelligent mapping of a
component, that turns the humble vault-based component into a truly Unified Component! The
unified nature of a vault-based component, through the chosen part choices made for it,
creates a link from that component, all the way through chosen Manufacturer Part(s), and on to
Altium Essentials_July2013_Colby
10-July-2013

425

the Vendor (Supplier) Parts that each itself references. From the designer's perspective, the
component is hooked directly into the supply chain.
A part is no longer available or has suddenly become cost-ineffective? No matter, provision is
made for real-time updates to be sent back to the design space as soon as a change occurs.
With this vital 'heads-up', the designer can take that choice of part out of the associated Part
Choice List Item for that component and essentially 'off the radar'. And at any time new, truly
equivalent parts can be added to the list, should something more appropriate, available and costeffective come along.

34.10.2 Accessing Supply Chain Info During Design


As a designer the ability to specify, at design time, which Manufacturer Parts can be used to
implement design components, gives greater control and effectively streamlines the procurement
process. There is no waiting anxiously after design data is sent to manufacturing, wondering if
the components procured for assembly will perfectly reflect design intent. Firmly in the driving
seat, procurement are able to see part choices at an early stage.
But sometimes even the best laid plans can go astray. What happens if a component has a
single part choice and that part becomes no longer available? Or maybe a price change to a
component could cause blow-out costs during manufacturing and assembly. In this case, the
ability to make design-time part choices loses its edge if the designer is unaware of such
changes to cost and availability of the very parts they have 'authorized' to be used.
To retain the advantage that design-time part choices provides, Altium Designer delivers realtime display of cost and availability for chosen parts directly within the Schematic Editor while
designing. This is facilitated by extending the software's Design Insight feature to include Supply
Chain Insight.
As the mouse is hovered over a component on a schematic sheet, supply chain information will
be displayed, provided that:

The component has been placed from an Altium Vault it is an instance of a named-revision
of a Component Item in that vault, and

The component has part choices made for it at least one Manufacturer Part has been
chosen in the component's associated Part Choice List Item.

Figure 464. Example supply chain information accessed by hovering over a component on the schematic
sheet.

A detailed look at adding supply chain information to a vault-based component


the use of Part Choices, is considered as part of an additional training module.

Altium Essentials_July2013_Colby
10-July-2013

426

Module 35: PCB Libraries


The standard way that a physical component mounts onto a Printed Circuit Board (PCB) is that
each pin on the component is soldered to a pad on the board. The pad on the board is typically a
region of plated copper that is slightly larger than the area of the component pin that sits on it, or
a pad with a hole in it if the component has thru-hole type pins. Both the electrical and the
mechanical connections are provided by the solder-type joint that attaches the component pin to
the PCB pad.
In Altium Designer the set of pads that each component will mount on are defined by creating a
PCB Component. PCB Components are created in a PCB Library (*.PcbLib), in Altium
Designers PCB Library editor. Any number of PCB Components can be created in a PCB
library. The organization of PCB Components into libraries should suit both the requirements of
the company, and the type of Altium Designer component storage system that the footprint is
destined for, for example; integrated libraries, database libraries, Vaults, etc.
As well as a series of pads, the PCB Component will typically also include mechanical detail
information, such as the silkscreen outline and the reference designator string. It can also
include a large range of other detail information, such as a placement courtyard, dimensioning
detail, special assembly details, location fiducials, and so on.

Figure 465. As well as defining the electrical/mechanical location detail for a component, PCB Components
can be used to define other design entities such as the contact for a printed switch, or a company logo.

As well as the 2D detail described above, PCB Components can include 3 dimensional
mechanical detail that represents the physical component that is mounted on the footprint. 3D
detail can be defined using 3D Body objects, or imported STEP models. 3D models not only
allow the designer to get a high-level realistic image of the loaded board, they also allow full 3
dimensional component clearance checking.

Altium Essentials_July2013_Colby
10-July-2013

427

35.1 Creating a New PCB library


6. To create a new PCB footprint library, select the command File New Library PCB
Library to create a new, empty PCB library. An empty document called PcbLib1.PcbLib is
created, displaying a blank component footprint called PCBComponent_1.
7. Select the command File Save As, rename and save the new footprint library document to a
suitable location, with an appropriate filename.
8. The PCB Library editor panel is used to review and manage footprints within an open
footprint library. If the panel is not currently visible, click the PCB button down the bottom
right of the workspace and select PCB Library to open it.

The PCB Library


Editor panel, listing
all footprints in the
current library.

The empty document where


the footprint is created.
Always create the footprint
near the document origin
(center of page)

Click the PCB


button to display
the panel.

Figure 466. The PCB Library editor showing the new empty footprint, ready for footprint creation.

The new empty library is now ready for the designer to create a new PCB footprint.

35.2 The PCB Library Editor


PCB Components are created and edited within a specialized editor called the PCB Library
Editor. This editor includes many of the features of the PCB Editor but has some specific
customizations that make it better suited to PCB Component creation. Designers who are
familiar with the PCB Editor should have no problems finding their way around the PCB Library
Editor.

35.2.1

The Origin

PCB Components use the workspace origin (center of workspace) as their reference point when
placed in the PCB editor. The origin is marked by a crosshair with circle, as shown in Figure 466.
Control the display of the Origin Marker in the View Options tab of the View Configurations
(Design Board Layers and Colors, or the L shortcut), as shown in Figure 467.
If a PCB Component has been built away from origin, it can be relocated back to the origin as
required using the commands available in the Edit Set Reference sub-menu.

Altium Essentials_July2013_Colby
10-July-2013

428

Figure 467. Enable the display of the workspace Origin Marker in the View Configurations dialog.

35.2.2

Grid Settings

The PCB library workspace is a grid-based editing environment. Footprints can be build on a
metric or imperial grid, press the Q shortcut to toggle the grid from metric to imperial.
Altium Designer supports multiple grids, the default grid applies to the entire library, user-defined
custom grids can be defined for an individual component footprint, or for the entire library, as
shown in Figure 468. Grids are created and managed in the Grid Manager, (Tools Grid
Manager), the highest priority grid is always applied.

Figure 468. A Custom grid defined for use with just this component footprint.

As well as snapping to grid points the cursor can also snap to existing hotspots, such as the
centre of a pad, or the end of a track segment. Press the SHIFT+E shortcut to cycle through the 3
Hotspot Snap modes, the current mode is displayed on the Status bar. The snap range is
defined in the Board Options dialog (Design menu).

35.2.3

Layers

The PCB library workspace is a layered design environment, the footprint is created by placing
suitable design objects on the appropriate layers. Regardless of which side of the board the
footprint will be used on, footprints are always created for the top-side of the board, using the
Top Layer and Top Overlay. Layers availability and display is controlled in the View
Configurations dialog, press the L shortcut to open the dialog.
Additional special purpose footprint detail, for example peelable solder masks, is defined on
mechanical layers. Footprint content that must flip when the component is flipped from the top to
the bottom of the board, is handled by defining mechanical layer pairs pairing the used
mechanical layer with another mechanical layer onto which the flipped mechanical detail is
Altium Essentials_July2013_Colby
10-July-2013

429

Layers are paired during board design in the PCB editor, not during footprint creation in the PCB
Library editor.
Component overlay (silkscreen) detail is optional, its use and design will be dictated by company
requirements and availability of space on the PCB.
Objects placed in the PCB library workspace are placed on the active, or current layer. The
current layer is indicated by the active layer tab at the bottom of the workspace, as shown in
Figure 469. Click on a layer tab to make that layer the current layer. To move through the
available layers press + or on the numeric keypad, or SHIFT+CTRL+W HEEL ROLL with the

Figure 469. The Top layer is the current layer, to move through the layers press + or on the numeric
keypad, or Shift+Ctrl+Wheel roll with the mouse.

If the display becomes cluttered or difficult to work in because of stacked objects, the designer
can restrict the display of layers to just the current layer, known as single layer mode. Use the
SHIFT+S shortcut to switch to and from single layer mode. There are 3 single layer display modes
available, enabled/disable these in the PCB Editor Board Insight Display page of the
Preferences dialog.

35.3 Using the PCB Library panel

Figure 470. The PCB Library panel is used to browse, manage and edit footprints in a library.

The PCB Library panel is used to browse and edit footprints stored in the current PCB footprint
library. Click the PCB button down the bottom right of the workspace to display the panel if it is
currently not visible. The PCB Library panel includes a number of sections, which:

List all component footprints in the PCB library. Double-click to edit the Name, Height or
Description of a footprint. Right-click to display a menu where library management
operations, such as copying and pasting component footprints between libraries or from a
PCB into a library, can be performed. Note that multi-select is supported.

Altium Essentials_July2013_Colby
10-July-2013

430

Detail the Component Primitives included in each component footprint. Double-click to edit a
primitive, right-click to configure which primitives should be listed. Note that multi-select is
supported.

Includes a mini-viewer window complete with a current view rectangle, drag and resize this
rectangle to change the view in the main editing window.

Each section of the panel can be collapsed or exposed using the small arrow controls on the
right of the panel.

35.4 Library and Footprint Management Techniques


35.4.1

Create a Footprint Library from an Existing PCB Design

The designer can create PCB footprint library from an existing board design.

To create a library from a board first open the PCB in Altium Designer, then select the
Design Make PCB Library command. A new library is created, and all component
footprints used in the current board are added to it.

Save the new library in a suitable location with an appropriate filename.

35.4.2

Copy Footprints into a Library

Footprints can be selectively copied into a library from the PCB editor, or from another footprint
library.

To copy footprints from the PCB editor into a library, select the required footprints (use
CTRL+CLICK to build up a selection), then copy the components to the clipboard. Note that
when the Copy command is run it will prompt for a reference point, the location is not
important as each footprint will use its own existing reference point when pasted into the
library. Now switch to the open PCB library, then right click in the Components region of the
PCB Library panel and select Paste X Components from the floating menu.

To copy footprints between footprint libraries, in the source library select the required
footprints in the Components region of the PCB Library panel (use CTRL+CLICK to build up a
selection), switch to the target library, then right click in the Components region of the PCB
Library panel and select Paste X Components from the floating menu.

35.4.3

Update a Footprint used on a Board Design

There are 2 approaches to updating a footprint, it can either be pushed from the open library
onto every open board that uses that footprint, or pulled from the library into the current board.

To push a footprint from an open library to every instance of that footprint used in all
currently open PCB files, right-click on the footprint name in the PCB Library editor panel,
and select Update PCB with <FootprintName>.

To pull fresh copies of footprint(s) from available libraries into the current board file, select
the Tools Update from PCB Libraries command in the PCB editor. This command
performs a detailed comparison of every aspect of the footprint, with full user-control over
which footprints are updated. Note that this tool can also be used as part of the design
validation and release process, by including a Footprint Validation Report in an Output Job
file.

Altium Essentials_July2013_Colby
10-July-2013

431

Figure 471. Compare the footprints used on the board against the footprints in the libraries.

35.4.4

Structural Considerations

The concept of a library generally infers some sort of collection and so PCB Libraries have
historically been designed to store a collection of components. How that collection is structured
will fall to each organization or library manager to determine what approach will best suit their
needs. Following is a brief discussion of some of the considerations that should be made.

35.4.4.1 Multi-part Libraries


Storing multiple PCB Components within a single library can be beneficial from the designer's
perspective since they only need to load a small number of libraries in order to gain access to a
large array of components, it is not without its challenges:

Having a single master PCB library that everyone references may mean that the Library
Manager is unable to gain a write lock on the PCB Library when doing component updates
or adding new components.

As the number of designs grows, the size of the PCB Library file may become large,
especially if it includes embedded STEP models. Accessing these files remotely or even
over a local network can impact on performance.

Multi-part libraries don't gain the benefits of individual part tracking and revisioning when
used with a Version Control system. Over time it can become very difficult to trace the
evolution or change history of an individual component when it is buried within a large library
of components.

Some organizations will elect to maintain distinct libraries for individual clients or projects.
This can help keep all relevant data protected and close to where it is used but it can also
lead to data duplication. If one project finds that a footprint change is required to a duplicated
component, those same changes need to be manually applied to all other instances of the
component. This can lead to Library management nightmares and greatly increases the
exposure to human errors which can be very difficult to detect.

Altium Essentials_July2013_Colby
10-July-2013

432

Component naming must be carefully monitored to ensure that two different components
aren't given the same names across distinct multi-part libraries.

35.4.4.2 Single-part Libraries


An alternative to using Multi-part Libraries is to use a separate library for each PCB Component.
While not a silver bullet, it does mitigate against some of the challenges faced by multi-part
libraries and is Altium's recommended way of working when applying more rigorous data
management practices.

Single-part libraries can be managed and traced more effectively by a Version Control
system.

Single-part libraries avoid all the questions about how PCB Components should be ordered
within libraries.

Single-part libraries are the preferred mode of working when intending to use Vaults.

35.5 Library Reports


A number of reports are available from the main editor's Reports menu. A summary of the
available reports is as follows:

Reports Component - List the number and type of primitives used in an individual
component.

Reports Library List - Export a text-based report of all component names within the
current PCB Library

Reports Library Report - Export details of all components within a library to a Word or
HTML document.

Reports Component Rule Check - Perform a analysis of all components within the library
and report any errors found.

Altium Essentials_July2013_Colby
10-July-2013

433

Module 36: PCB Component Creation 1


Altium hosts a huge array of ready-made PCB Components both in the Vault as well as in
several integrated and discrete libraries available through AltiumLive. However even with this
rich set of resources, it is likely that at some point in the designer's career they will need to
create a custom PCB Component.

36.1.1

Manually Creating a Footprint

Footprints are created in the PCB Library editor using the same set of primitive objects available
in the PCB editor. In addition to footprints, company logos, fabrication definitions, and other
objects required during board design can also be saved as PCB Components.

Figure 472. 2D and 3D views of a footprint for a joystick component. The 3D image shows the imported
STEP model for the component, note the pads and component overlay can be seen below the STEP
model.

The typical sequence for manually creating a component footprint is:


1. Place the pads according to the component requirements. Prior to placing the first pad, press
the TAB key to define all the pad properties, including the pad Designator, Size and Shape,
Layer and Hole Size (for a thru-hole pad). The designator automatically increments for
subsequent pad placements. For a surface mount pad set the Layer to Top Layer. For a
thru-hole pad set the Layer to Multi-layer.
Some care should be exercised when Designating pads as it is this property that
Designer uses when mapping from pin numbers on the Schematic Symbol.
2. To ensure accurate placement of the pads, consider setting up a grid specifically for the task.
3. To accurately place a pad while moving it with the mouse, use the keyboard arrow keys to
move the cursor in current grid increments. The current X, Y location is displayed on the
Status bar, and also in the Heads Up display. Alternatively, double-click to edit a placed pad
and enter the required X and Y locations directly in the Pad dialog.
4. To check a distance between 2 points in the workspace, use the Reports Measure
Distance command. Follow the prompts on the Status bar.
5. Pad-specific attributes, such as solder mask and paste mask are automatically calculated
based on the pad dimensions and applicable mask design rules. While mask settings can be
Altium Essentials_July2013_Colby
10-July-2013

434

defined manually for each pad doing this makes it difficult to modify these settings later
the board design process, typically this is only done when it is not possible to target the pads
by design rules. Note that rules are defined in the PCB editor, during board design.
6. Use tracks, arcs and other primitive objects to define the component outline on the
Silkscreen layer.
7. Place tracks and other primitive objects on a mechanical layer to define extra mechanical
detail, such as a placement courtyard. Mechanical layers are general-purpose layers, the
designer should allocate the function of these layers and use them consistently across their
footprints.
8. Place 3D Body objects to define the 3 dimensional shape of the component that fits on the
footprint. Multiple 3D Body objects can be placed to build up the shape, or a STEP format 3D
component model can be imported into a 3D Body object.
9. The designator and comment strings are automatically added to the footprints Overlay layer
during placement into the main PCB workspace. Additional Designator and Comment strings
can be included by placing the .Designator and .Comment special strings on a
mechanical layer.
10. Rename the completed footprint by double-clicking on its name in the Components list in the
PCB Library panel. Component names can be up to 255 characters.

36.1.2 Creating a Component using IPC Compliant Footprint


Wizard
The IPC Compliant Footprint Wizard creates IPC-compliant component footprints. Rather than
working directly from footprint dimensions (as the Component Wizard does), the IPC Compliant
Footprint Wizard uses dimensional information from the component itself, and then calculates
suitable pad and other footprint properties in accordance with the algorithms released by the
IPC.

Figure 473. One of the new supported packages in the IPC Compliant Footprint Wizard is the DPAK
(Transistor Outline).

Select the Tools IPC Compliant Footprint Wizard command to run the IPC Compliant
Footprint Wizard.

The wizard can create the following footprint type: BGA, BQFP, CFP, CHIP, CQFP, DPAK,
LCC, MELF, MOLDED, PLCC, PQFP, QFN, QFN-2ROW, SOIC, SOJ, SOP, SOT143/343,
SOT223, SOT23, SOT89, and WIRE WOUND.

Altium Essentials_July2013_Colby
10-July-2013

435

In accordance with the IPC standard, the Wizard supports three footprint variants (_L, _N,
_M), each tailored to suit a different board density.

Some of the IPC Compliant Footprint Wizard features include:

Overall packaging dimensions, pin information, heel spacing, solder fillets and tolerances
can be entered and immediately viewed.

Mechanical dimensions such as Courtyard, Assembly, and Component (3D) Body


Information can be entered.

Wizard is re-entrant and allows reviewing and making adjustments easy. Previews of the
footprint are shown at every stage.

The finish button can be pressed at any stage to generate the currently previewed footprint.

36.1.3 Creating a Component using IPC Footprints Batch


Generator
The IPC Footprint Batch Generator can be used to generate multiple footprints at multiple
density levels. The generator reads the dimensional data of electronic components from an
Excel spreadsheet or comma delimited file and then applies the IPC equations to build IPC
compliant footprints. Support for the IPC Footprints Batch Generator includes:

Package type blank template files are included in the \Templates folder in the Altium
Designer installation.

Package input files need can contain the information for one or more footprints of a single
package type, and can be either an Excel or comma-delimited (CSV) format file.

Figure 474. The IPC Footprints Batch Generator has options to either create all the footprints in the
open PCB footprint library, or generate a single library based on either an input file or footprint name.

36.1.4

Creating a Component using the Component Wizard

The PCB Library Editor includes a Component Wizard. This Wizard allows you to select from
various package types, fill in appropriate information and it will then build the component footprint
for you. Note that in the Component Wizard the designer enters the sizes required for the pads
and component overlay.

Altium Essentials_July2013_Colby
10-July-2013

436

To launch the Component Wizard, right-click on the Components section of the PCB Library
Editor panel and select Component Wizard, or select the Tools Component Wizard
command.

36.1.5

Including a 3D Model of the Component

A 3D representation of the component can be included in the footprint. The shape can be
created by placing a number of Altium designer 3D Body objects to build up the shape, by
placing one 3D Body object and importing a STEP model into it, or a combination of both.

Allocate a mechanical layer for 3D Body objects, then during placement ensure that this
layer is selected in the 3D Body dialog.

Building a component shape from 3D Body objects is generally easier with the display in 2D
mode. Available shapes for 3D Body objects include extruded, cylindrical or spherical.

To switch the PCB Library editor between 2D and 3D display modes, press the 2 and 3
shortcuts.

STEP format component models can be downloaded from component manufacturer


websites, or shared resource sites such as www.3dContentCentral.com.

STEP models are easier to place with the display in 3D mode. To place a STEP model first
place a 3D Body object, when the 3D Body dialog opens set the 3D Model Type to Generic
STEP Model, then click the Embed STEP Model button to locate the STEP file.

When a STEP model is clicked and held to be moved, it will be held by the nearest vertex
belonging to the 3D Body object the STEP model is embedded in, or by a snap point defined
on the STEP model. Snap points can be defined in the 3D Body dialog, or by using the
commands in the Tools 3D Body Placement Add Snap Points from Vertices
command. This command is interactive, watch the Status bar for prompts. Note that the
command has 2 modes, the default is to add a Snap Point at the Vertex chosen by the user.
The second mode is enabled by pressing the SPACEBAR after launching the command, in this
mode the designer is prompted to click on 2 points, the software then calculates and
positions the Snap Point at the mid-point of the 2 clicks.

Use the standard Windows shortcuts to zoom and pan when the PCB Library editor is in 3D
display mode. As in 2D mode, click and hold the right-mouse button to pan or slide the
document. To rotate the view hold the SHIFT key, then click and hold the right-mouse button.
Alternatively use a 3D mouse, such as the Space Navigator.

The Inspector and List panels are good for editing 3D Body object properties, such as
dimension, rotation and color. These panels allow the designer to easily edit a value and
immediately see the impact ideal for tasks such as rotating a STEP model.

3D STEP support is not limited to components, it can also be used to import other
mechanical detail such as a bracket or the finished enclosure. Import the enclosure directly
into the PCB editor, if it is linked rather than embedded then when a change is made to the
linked STEP model a warning dialog pops up in the PCB editor, offering to reload the STEP
model.

Figure 475. The same footprint, on the left the physical component has been created from a set of 3D
Body objects, on the right a STEP model has been imported.

Altium Essentials_July2013_Colby
10-July-2013

437

Note that Altium designers 3D view mode requires a graphics card that supports
Microsoft DirectX 9 (or better), with Shader Model 3 (or better).

36.2 Glossary
Component

A component is a physical device that is placed on a PCB during assembly, e.g. the
integrated circuit or resistor. Within these components, there may be either a single
part or a set of parts that are packaged together.

3D body

A 3D body is a polygonal shaped object that can be added to a footprint, on any


enabled mechanical layer. It can be used to define the physical size and shape of a
component in 3D and enables more controlled component clearance checking as well
as better visualization. 3D body objects can also act as placeholders for imported
STEP models in the PCB Component or as non-PCB mounted, free-floating objects,
such as housings and assemblies.

Designators

Unique identifiers that are used to tell one component from another in a PCB. They
can alpha, numeric, or a combination of both. Pads also have unique designators that
correspond to the component pin numbers.

PCB
Component

A PCB Component defines (or models) the Component within the PCB domain. This
model will, at a minimum, specify the 2D space required by the component to mount it
on the PCB (the footprint) but it can also include additional 3D information as defined
by 3D Bodies or embedded STEP models.
PCB Components are stored in a PCB library. Their footprint may contain pads for
connecting to the pins of a device and a physical outline of the package created from
track and/or arc segments on the silkscreen (overlay) layer. Device mounting features
may also be included.
PCB Components in the PCB library have no designator or comment. They become
components when placed on a PCB sheet where the designators and comments are
allocated.

Hidden pins

These are pins that exist on the component but do not need to be displayed. Typically,
they are power pins and can automatically be connected to a specified net.

Library

A Schematic Library is a set of components and its parts stored on individual sheets.
A PCB Library contains the component footprints. Each library type has its own Editor.
Integrated libraries combine schematic libraries with their related models and cannot
be edited directly by the Library Editors.

Object

Any individual item that can be placed in the Library Editor workspace.

Pads

Pad objects are normally used in a footprint to create connection pads for component
pins.

Part

A collection of graphical objects represents one part of a multi-device component.


Parts are stored in separate sheets within components in the schematic component
libraries.

Pins

Component pins give a component its electrical properties and define connection
points on the component.

Altium Essentials_July2013_Colby
10-July-2013

438

Altium Essentials_July2013_Colby
10-July-2013

439

Module 37: Including 3D Models in PCB


Components
Attaching 3D Models to PCB Components offers more than just better looking boards; it lets
designers perform full 3D clearance checking and gives them a much more tangible visualization
of the completed product.

Figure 476. A view of the board with 3D Models incorporated in the PCB Components.

37.1 Adding a 3D Body to a PCB Component


One or more 3D bodies can be combined to define the physical size and shape of a component
in all directions and are used by the Component Clearance design rule. Using high accuracy
3D models improves component clearance checking accuracy and generally improves the visual
appeal and realism of the finished PCB assembly.
Altium Designer supports directly importing 3D STEP models (*.step or *.stp files) into PCB
Components to render the 3D model. This functionality extends to having STEP models either
embedded or linked to Altium Designer PCB documents, however, linked STEP models are not
available in the PCB Library Editor.

Figure 477. SOIC8 Component Details.

3D bodies will flip to the other side of the board when the component is flipped.
However, if in order to ensure 3D body data (which is stored on a mechanical layer) is
also flipped on to another mechanical layer, the appropriate layer pairs will need to be
defined in the PCB document.
While it's possible to add 3D Bodies to PCB Components after they have been placed onto a
board design, the optimal time to add 3D Bodies is during the creation of the PCB Component.

Altium Essentials_July2013_Colby
10-July-2013

440

37.1.1

Placing 3D Bodies

3D bodies can be placed to individual components in the PCB Library Editor (Place 3D Body)
in either 2D or 3D viewing modes. They can also be added automatically to footprints in the PCB
Library Editor (and to footprints that have already been placed in the PCB Editor) using the 3D
Body Manager dialog ( Tools Manage 3D Bodies for Library/Current Component ).
The following examples demonstrates the process of adding a 3D Body to a DIP-14 Footprint
that already exists.
11. In the PCB Library panel, double-click the DIP-14 component entry to open its PCB Library
Component dialog. Take note of the component's height as that will be needed when
creating the 3D body. In cases where the manufacturer's data for component dimensions is
available, use that.
12. Select Place 3D Body. After launching the command, the 3D Body dialog (Figure 478 left) will appear. Select the Extruded option in the 3D Model Type region (Top).
13. Use the controls in the Properties region to give the 3D body object an identifying name
(Identifier). Set the Body Side to the same layer as the component's orientation in the
library. The default setting of Top Side should be generally applicable.
14. Set the Overall Height to 200mil and the Standoff Height (distance from the board to the
underside of the 3D body) to 0mil. Set the 3D Color according to personal preference.
When entering a component's Standoff Height, it is possible to enter a negative
number for components that extend through the PCB (such as for pins) however
standoff heights are not checked by the Design Rules Checker.
15. Click OK to close the 3D Body dialog and enter placement mode. The cursor will change to a
crosshair in 2D, or a blue-cone cursor in 3D.
16. Position the cursor and click once to anchor the starting point for the body, then continue to
anchor a series of vertex points that define the polygonal shape of the body.
17. After placing the final vertex point, right-click or press ESC to complete placement of the
body. There is no need to close the polygon manually as the software will automatically
complete the shape by connecting the start point to the final point placed.
Some useful shortcuts when placing the polygon are:

SHIFT+SPACEBAR cycles through the various corner modes (any angle, 45, 45 with arc, 90
and 90 with arc).

Arcs can be increased or decreased in radius using SHIFT+. (period or full stop) or SHIFT+,
(comma) respectively.

Use SPACEBAR to toggle the direction of the corner.

When an extruded 3D body object is selected, editing handles are displayed at each vertex.
When the cursor changes to
over a handle, click and drag to move the vertex. When this
cursor appears over the middle of an edge, click & drag to add a vertex to that edge and
move it.

When the cursor changes to

When the cursor changes to


over the object, click and drag to move the 3D body. The 3D
body can be rotated or flipped while dragging. Use the editing controls to adjust the shape of
the 3D body.

Use the BACKSPACE key while in placement mode, to remove the last placed vertex point.
Repeatedly use this key to 'unwind' the outline for the polygon, right back to the initial
starting point.

Altium Essentials_July2013_Colby
10-July-2013

over an object edge, click & drag to move that edge.

441

Figure 478. The 3D Body dialog (left), the 2D representation (top), and 3D representation (bottom).

After finishing the polygon for the first 3D body, the 3D Body dialog will appear once again.
Continue placing further 3D bodies as required or click Cancel or press ESC to close the
dialog.
A single 3D Body representing the main component package (Figure 479 left) would be
sufficient for use by the Component Clearance design rule but it may not be appealing
enough for 3D visualization. An alternative is to add additional 3D bodies to create greater
detail (Figure 479 middle), or to import a true MCAD representation of the component
479 right).

Figure 479. A simple 3D body (left), with added legs (middle). An imported STEP model (right).

To view the 3D body in 3D at any time, press 3 on the keyboard to enter 3D viewing mode. If
the 3D body still doesn't appear, press the L shortcut key to open the View Configurations
dialog and ensure the Show Simple 3D Bodies option on the Physical Materials page is
Altium Essentials_July2013_Colby
10-July-2013

442

to Use System Setting or Yes. If Use System Setting is selected, the display of 3D Bodies
is controlled by the Show Simple 3D Bodies checkbox in the PCB Editor Display page of
the main Preferences dialog (DXP Preferences).
To return to 2D mode, press 2 on the keyboard.
18. Save the PCB library.

37.1.2

Creating 3D Bodies Interactively

Altium Designer includes an interactive tool for creating 3D Body objects from closed shapes on
the PCB Component. These shapes can be selectively extruded into 3D bodies using the 3D
Body Manager dialog.
Only closed polygons can be used to create 3D body objects.

The following example uses the 3D Body Manager dialog to define a 3D Body for a TO-39
transistor package.This approach is much easier than attempting to define the curved shape and
orientation tab of the package body manually.
1. Having located the TO-39 footprint, make it the active footprint in the PCB Library editor.
2. Select Tools Manage 3D Bodies for Current Component . The 3D Body Manager dialog
appears.
3. To create a shape that follows the outline defined on the component overlay, use the fourth
option that appears in the list - Polygonal shape created from primitives on TopOverlay.
The Selected Body: Polygonal shape created from primitives on TopOverlay preview
will update accordingly.
a) For this row in the dialog, click the Not in Component TO-39 entry in the Body State
column. The Body State will change to In Component TO-39 to indicate that it has
been added.
b) Ensure the Registration Layer is set to the mechanical layer that the body object should
be placed on - i.e. Mechanical1 in this case.
c) Set the Overall Height to a suitable value and the Body 3D Color to a suitable color.
d) Scroll through the list to select any closed polygons that you want to use to define the
component model.
4. Click the Close button and the newly created 3D body shape will appear on the component.
5. Save the library.

Altium Essentials_July2013_Colby
10-July-2013

443

Figure 480. Using the Component Body Manager dialog to interactively add 3D Body objects to a PCB
Component based on existing shapes within the footprint.

Figure 481. The completed TO-39 viewed in 2D (left), and 3D (right) modes.

Figure 481 shows a completed 3D model for the TO-39 PCB Component. This model consists of
five 3D body objects (as shown in the PCBLIB List Panel - Figure 482):

one for the base, which was created from the footprint outline (overall height 50mil, standoff
height 0mil, Body 3D color gray).

one for the body of the casing, which was created by placing a circle and then taking the
closed polygon from it as detected by the 3D Body Manager dialog and given the following
properties - overall height 180mil, standoff height 0mil, color gray

one for the pins, which was created also by placing a circle (overall height 0mil, standoff
height -450mil, color gold). This was then copied, pasted and positioned twice to make up
the remaining pins.
Copy and Paste of 3D bodies can only occur in 2D mode. The copy command in 3D
mode is for taking a snapshot for the clipboard

Altium Essentials_July2013_Colby
10-July-2013

444

Figure 482. 3D Bodies in the TO-39 PCB Component.

To edit any 3D body, right-click it and select Properties from the pop-up menu to open the 3D
Body dialog (Figure 478 - left). Alternatively, use the PCBLib List panel (Figure 482) to list 3D
Bodies and edit them directly in the panel.

37.2 Importing a STEP Model as a 3D Body


Many component vendors supply detailed 3D models for use in popular mechanical CAD
packages. Altium Designer can import 3D STEP models (*.step or *.stp) directly into a
component footprint. This saves time in creating the model yourself and may provide a more
sophisticated model too.
STEP files in the AP214 and AP203 formats are supported but the AP203 format does not
support coloration so the entire imported model will have a generic shading.

37.2.1

Linked STEP Models

Linked STEP models are not supported in the PCB Library Editor; only embedded STEP models
are supported.

37.2.2

Importing STEP Models

To import a STEP model:


1. Select Place 3D Body [shortcut: P , B ]. The 3D Body dialog appears.
2. Select the Generic STEP Model option in the 3D Model Type region.
3. Click the Embed STEP Model button. The Choose Model dialog appears so that a *.step
or *.stp file can be loaded.
Use the STEP Preview control at the top-right of the dialog to toggle a visual preview
of the currently selected model.
4. Locate the desired STEP file, select it, then click the Open button to close the Choose Model
dialog and return to the 3D Body dialog.
5. Click OK to close 3D Body dialog. The 3D body will appear floating on the cursor.
6. Click in the workspace to place the 3D body object with the selected model loaded into it.

37.2.3

Positioning and Orienting STEP Models

When a STEP model has been imported, the placeholder 3D body re-sizes to house the model.
The STEP model may not be oriented correctly in relation to the axes of the PCB document due
to the origin used in the originating application. There are a couple of methods for positioning
STEP models:
1. Graphically manipulating it using reference points (known as snap points ) placed on the
model.
2. Graphically manipulating it using faces or surfaces on the model in relation to the board.
3. Adjusting the settings in the Generic STEP Model region of the 3D Body dialog.

Altium Essentials_July2013_Colby
10-July-2013

445

Further information on positioning and orienting STEP models is available in the


wiki: Integrating MCAD Objects and PCB Designs

Altium Essentials_July2013_Colby
10-July-2013

446

Module 38: Creating an Integrated Library


Integrated Libraries reflect Altium Designer's Second Generation component management
methodology namely the Integrated Component model. In this model the higher level
component is modeled within the schematic symbol in a Schematic library file. Other models are
linked from the symbol and component parameters are added to the symbol. All source libraries
symbol and linked models are defined within a Library Package project, which is
subsequently compiled into a single file; an Integrated Library, or IntLib.
The advantage of compiling into an integrated library is that all component information is
available in a single portable file since all models are packaged into the integrated library, only
one file needs to be available to the project, or moved when the project is relocated. This
portability is priceless to designers who divide their work among different workstations, or who
want to share their designs with others.
If a component is placed onto a design schematic from an integrated library, Altium Designer is
guaranteed to find the right model if it can simply locate the integrated library it came from no
juggling of separated library and model files, where model links can prove very 'brittle', and easily
broken by everyday management tasks such as renaming folders on a hard drive.
And from a security perspective, integrated libraries are solid once they're generated, there's
no changing them. In fact, to update an integrated library really means to replace it altogether
the designer must purposefully pull up the original library package, update the source
documents, then recompile.
This module takes a look at the various ways in which an integrated library may be created, as
well as placement from, and modification to, such a library.

38.1 Creating an IntLib using a Library Package


A Library Package (*.LibPkg) is a type of Altium Designer project which is used to gather
together the set of design documents required to produce an integrated library. Schematic
symbols are drawn in the Schematic Library Editor, and model references/links defined for each,
along with any parametric information. These are stored across one or more schematic library
files. Referenced models can include PCB 2D/3D component models, circuit simulation models,
and signal integrity models.
The only document that must be added to the integrated library package is the schematic library
(or libraries). The files containing PCB 2D/3D component models and simulation models/subcircuits can be located in any valid search location within the project, within files in the Installed
Libraries list, or down the search path(s) specified for the package.
The library package is then compiled into a single Integrated Library file (*.IntLib).
Gathering model libraries into the project or locating them by search paths depends on
a designer's particular working style. If checking and editing models while preparing
integrated library package, the designer may want to have the model libraries right at
their fingertips, and so add them to the package itself. If continually adding model
libraries to specific folders on a hard drive or network, then the designer may prefer to
use the search paths, letting the compiler detect newly added libraries automatically.
So to summarize, there are essentially four steps to creating an integrated library:
1. Create a source library package.
2. Create and add the required source schematic library file(s).
3. Create and add (or point to) the required domain model file(s).
4. Compile the library package to produce the integrated library file.

Altium Essentials_July2013_Colby
10-July-2013

447

38.1.1

Creating the Source Library Package

To create a new library package, use the File New Project Integrated Library command.
Alternatively, click the Blank Project (Library Package) entry, in the New region of the
Files panel. The new library package named Integrated_Library1.LibPkg is added to
the Projects panel.

Figure 483. Newly-added library package appearing in the Projects


panel.

Rename the project as required (using the File Save Project As command).

38.1.2

Creating and Adding a Source Schematic Library

Create the source schematic library (*.SchLib) containing the symbols required. For each
symbol, add the required model links and parametric information. Creation of schematic
components and working with schematic libraries is covered in other training modules. Suffice to
mention here that there are two ways to create a source schematic library:
1. From scratch using the File New Library Schematic Library command. Create new
components using the Schematic Library Editor, or copy components across from other open
schematic libraries.
2. From the components that have been already placed on schematic documents in a project
using the Design Make Schematic Library command.
When making a schematic library from placed components in an existing design
project, all source schematic documents will be opened automatically. The resulting
library will be named after the project (ProjectName.SchLib).
With the source schematic library (or libraries) prepared, simply add to the library package:

Using the Project Add Existing to Project command.

Right-clicking on the entry for the library package in the Projects panel, and using the Add
Existing to Project command.

Figure 484. Source schematic library added to the library package.


Altium Essentials_July2013_Colby
10-July-2013

448

38.1.3

Creating and Adding Domain Model Files

Create the models referenced by the schematic symbols in their corresponding files. So PCB
2D/3D component models in a PCB Library (*.PcbLib), and simulation models and sub-circuits in
Model (*.Mdl) and Subcircuit (*.Ckt) files respectively. Again, creation of these model types is
covered in other training modules. The most important model will of course be the PCB 2D/3D
component model which, like its schematic library counterpart, can be created in two ways:
3. From scratch using the File New Library PCB Library command. Create new 2D
footprints (and add any 3D body information) using the PCB Library Editor, or copy
components across from other open PCB libraries.
4. From the PCB 2D/3D component models that have been already placed on the PCB
document using the Design Make PCB Library command.
When making a PCB library from an existing PCB document, ensure that the
is open and active. The resulting library will be named after the PCB document
filename (PCBFileName.PcbLib).

38.1.3.1 Specifying Where to Find the Models


With the model files defined, they now need to be made available to the library package, so that
they can easily be located when required remember, the models are referenced by (or linked
to) the schematic components.
Altium Designer has a standard system for making models available, regardless of whether the
designer is building an integrated library package, or working on a schematic design. There are
three ways of making models available:

Adding the library/model to the project.

Installing the library/model in the Installed Library list.

Defining a search path to the library/model.


There are advantages to each, so choose the method that best suits work practices. Different
models work better with different approaches too, for example the designer may not want to see
a large number of simulation models listed in the Projects panel when the library package is
opened, but may like to see the PCB 2D/3D component model libraries. In this case, define a
search path to the folder where the simulation models are stored, and add the PCB library to the
library package.
Collectively, these three methods of model availability form the Available Libraries (available to a
project), and can all be defined from within the Available Libraries dialog accessed by clicking
the Libraries button at the top-left of the Libraries panel.
If the library package is not the active project, ensure one of its source schematic
libraries is active, prior to accessing the Available Libraries dialog ensuring that the
Available Libraries for it are being considered, and not another open project.

Figure 485. Defining model availability through the Available Libraries dialog.
Altium Essentials_July2013_Colby
10-July-2013

449

The PCB library (and other model files if required) can also be added to the library
package directly, using the Add Existing to Project command available from the
main Project menu, or from the right-click menu associated to the library package's
entry in the Projects panel.
Defining search paths to model files from the Search Path tab of the Available Libraries dialog
simply accesses the Search Paths tab of the Options for Integrated Library dialog (Project
Project Options). Simply add one or more paths as required, remembering that models are
searched along these paths in order from top to bottom. Click the Refresh List button to verify
that the required model files are indeed being found, and adjust a path if necessary.

Figure 486. Defining search paths along which to find required model files.

Altium Essentials_July2013_Colby
10-July-2013

450

38.1.4

Compiling the Library Package

With the source libraries added to the library package and any paths to model files defined as
required, the package can now be compiled to ultimately generate the integrated library.
Like any other project, the compiler for an integrated library package will generate a list of
warning and error messages. For example warning of any models that were not found.
Additionally, pin mapping errors can be checked, such as mapping instructions to pads 1 and 2
when the actual footprint contains pads A and K!
Even designers who want to stay with discrete library files should compile their
schematics in an integrated library package, if only to ensure that the source
components will map correctly to the target models.
Prior to kicking off compilation, it is prudent to browse through and set the error reporting
conditions appropriately, on the Error Reporting tab of the Options for Integrated Library dialog.

Figure 487. It is a good idea to set error reporting options and severity levels as required, prior to compiling
the library package.

To proceed with compilation, use the Compile Integrated Library command either from the
main Project menu, or from the right-click menu associated to the library package's entry in the
Projects panel.
The source libraries and model files are compiled into an integrated library, named after the
source library package (LibraryPackageName.IntLib). The Compiler will check for
violations and any errors or warnings found will be listed in the Messages panel. Fix any
problems in the source libraries, and then recompile.

Figure 488. The Messages panel will display any violations detected during compilation.

The integrated library is saved in the output folder nominated on the Options tab of the Options
for Integrated Library dialog. It is automatically added to the Installed Libraries list (available to all
projects) and consequently appears available from the Libraries panel.
Altium Essentials_July2013_Colby
10-July-2013

451

Figure 489. The compiled integrated library is added to the list of Installed libraries and is made the current
library in the Libraries panel.

The Libraries panel offers the only direct view into an integrated library file. Purpose
built with integrated libraries in mind, this panel allows browsing of an integrated
by either component, footprint (or 3D model) click the
button to the right of the
current library field for controls. When browsing by component, the component to
model relationships are presented.

38.2 Creating an IntLib from Project Documents


An integrated library can also be made directly from constituent project documents (source
schematics and PCB document). Simply use the Make Integrated Library command, available
from the main Design menu in either Schematic or PCB Editors.
The process essentially involves:

Opening all source schematic documents and making a schematic library.

Making a PCB library from the PCB document.

Compiling these libraries into an integrated library, named after the project
(ProjectName.IntLib).

The IntLib is added to the project (under Libraries\Compiled Libraries in the Projects
panel), added to the Installed libraries and presented as the current library in the Libraries panel.
This feature is particularly useful for creating and reusing a working library (or archive)
of a finished design.

Altium Essentials_July2013_Colby
10-July-2013

452

38.3 Creating an IntLib from a Database Library


Altium Designer provides the facility to compile an integrated library directly from a database
library either a non-version-controlled Database Library (*.DbLib), or a version-controlled
SVN Database Library (*.SVNDbLib). In this way, an organization's CAD Librarians can still use
database/version-controlled libraries, while its designers use regularly regenerated integrated
libraries, working in an 'offline' fashion as it were.
Conversion is performed using the Offline Integrated Library Maker wizard. This Wizard is
accessed from either the active DbLib or SVNDbLib document using the Tools Offline
Integrated Library Maker command.

Figure 490. Make offline integrated libraries from a database or SVN database library.

The process of conversion to an integrated library is carried out on a per-database-table basis.


Full control is provided over which tables in the database linked to the database library are
considered in this process. A separate integrated library will be generated for each included
table.
After creation, the integrated library (or libraries) will be added to the Installed libraries
and made available for browsing in the Libraries panel.

Altium Essentials_July2013_Colby
10-July-2013

453

38.4 Placing Components from an Integrated Library


Placement of components from an integrated library is performed from the Libraries panel.
Placement can be made on the active schematic sheet (when browsing the integrated library in
Components view) or the active PCB document (when browsing in Components or
Footprints views).
Placement can be performed in the following ways:

Select the component entry, click the Place button, then position and click to effect
placement in the workspace.

Click on, and drag the required component, into the workspace.
By using the Place button method, multiple instances of a component can be placed,
since this method remains in placement mode until right-clicking or pressing ESC. The
latter method feels more immediate, but is 'single-shot' in nature.

Figure 491. Use the Libraries panel to place components from an integrated library.

While a schematic library and an integrated library may contain the same component
(with all the same model links), the placed components from each of these libraries
behave differently when their model information is retrieved. Those components
from integrated libraries will look for the original integrated library to get their models,
while those components placed from schematic libraries will have no access to
stored in integrated libraries.

38.5 Modifying an Integrated Library


Integrated libraries are used to place components and cannot be edited directly. To make
changes to an integrated library, make modifications in the source libraries first and then
recompile the library package to generate a fresh integrated library including the changes.
To modify an integrated library:
1. Open the required integrated library's source library package project.
2. Open the source schematic or model libraries to be modified.
3. Make changes as required, save the modified libraries and close them.

Altium Essentials_July2013_Colby
10-July-2013

454

4. Recompile the library package. The freshly-generated integrated library will replace the
older, existing version.

38.5.1

Decompiling an Integrated Library

There may be occasion where the source libraries in an integrated library need to be accessed
for modification, but for whatever reason, there is no access to the original source library
package project by which to do so. This is where another aspect of a single, portable integrated
library file comes into play. Although integrated libraries cannot be edited directly, they can be
decompiled back into their constituent source symbol and model libraries.
To do this:
1. Open the integrated library that contains the source libraries that need to be modified. Select
File Open, browse to the integrated library in the Choose Document to Open dialog, and
click Open.
2. In the Extract Sources or Install dialog that appears, click on the Extract Sources button.
The source schematic and model libraries are extracted and saved in a new folder named after
the integrated library's filename in the folder in which the original integrated library resides.
A library package (IntegratedLibraryFileName.LibPkg) is created and the source
schematic and PCB libraries are added to the project, presented in the Projects panel.
Simulation model and subcircuit files are not automatically added to the project.

Figure 492. Extracting the source libraries from an integrated library decompiling to produce a library
package project.

A path to the folder is automatically added on the Search Paths tab of the Options for
Integrated Library dialog (Project Project Options) ensuring that any models
(especially .mdl and .ckt files) will be found.

The library package is not automatically saved. Determine where and under what
name the project is to be saved by default, the file will be saved in the same folder
the extracted source files.

Altium Essentials_July2013_Colby
10-July-2013

455

Module 39: Creating a Bill of Materials (BOM)


A key ingredient of the data set generated from a board design project is the Bill of Materials, or
BOM. This report-type document provides an at-a-glance listing of all components required to
build the product including the bare board, which is essentially the base 'component' upon
which all other parts are assembled.
The BOM acts as a guide for what needs to be procured to build the product as designed. It also
provides a means to calculate costing, based on the required number of assembled boards in a
requested spin.
Altium Designer provides the ability to generate a comprehensive and customizable Bill of
Materials through its dedicated and powerful report generation engine, the interface to which is
known as the Report Manager.

39.1 Creating a BOM


A Bill of Materials can be generated from the project source documents, or from the active PCB
document, using the Reports Bill of Materials command from the Schematic or PCB editors
respectively. In each case, the source document(s) will be compiled, followed by display of the
Report Manager dialog.

Figure 493. A Bill of Materials is customized and generated using Altium Designer's Report Manager.

Although the dialog is the Report Manager, it is not named as such. Rather it is named
according to the type of report being created, which in this case is a Bill of Materials,
but could also be a Component Cross Reference report.
The dialog presents the various properties/parameters for all components on the source
document(s). Each property/parameter has its own column. The designer simply chooses which
data to include in the generated BOM report which columns to show.
Data can be grouped, sorted and filtered as required, with the ability to include additional
parametric data from a nominated PCB for the project and/or a linked database, as required.
The following sections take a closer look at manipulation of the data to arrive at the desired BOM
content, prior to exporting the report.
Altium Essentials_July2013_Colby
10-July-2013

456

39.1.1

Layout and Grouping of Data

The left-hand side of the dialog contains two regions Grouped Columns and All Columns.
The latter provides a listing of all columns for use in the report, with each column reflective of a
particular component property/parameter.
Each column has an associated Show option. Enable this to display that column in the data
region on the right-hand side of the dialog. This region displays the data as it will be presented in
the generated BOM report.

Figure 494. Enable a column's Show option to have that data included in the BOM.

Each enabled column will list information for each of the components found in the
source document(s), where such information exists. If the component does not have
any information for that particular property/parameter, the field will be blank.

39.1.1.1 Grouped Columns


Components can be grouped together by one or more specific columns of information. For
example in a Bill of Materials report, the designer may wish to group components by LibRef,
Footprint, or Comment.
To do this, simply click and drag the desired data column from the All Columns region to the
Grouped Columns region. The latter will display an entry to reflect that data is being grouped by
that specific property, and the data region of the dialog will update accordingly.

Figure 495. Drag a column to group


by, into the Grouped Columns region.

Altium Essentials_July2013_Colby
10-July-2013

457

To remove grouping by a particular property, simply drag that entry from the Grouped
Columns region back into the All Columns region.

To have the BOM information ungrouped, either clear the Grouped Columns region,
or group by Designator.

39.1.1.2 Changing Column Order


The order of the columns in the data region of the dialog can be changed from the All Columns
region or from within the data region itself.

To change the order of columns from the All Columns region, click and drag the required
entry to the new position as required. The dragged column will be inserted above the
highlighted entry.

Figure 496. Dragging a column entry to change the order of data.

To change the order of columns from the data region, click and drag a column heading to its
new position as required. While moving a column header, a valid new position for that
column is highlighted using two vertical green arrows.

Figure 497. Dragging a column header to change the order of data.

Note that while the order of the columns in the data region will update to reflect a
change in order in the All Columns region, the reverse is not true.

To view all enabled columns of data, within the confines of the data region's window,
use the Force Columns to View option available from the dialog's Menu button or
right-click menu.

39.1.1.3 Sorting Data within Columns


Data in any given column can be sorted in ascending or descending order, simply by clicking on
the column's header (away from the far-right drop-down arrow). Note that all columns will be
affected, but the rows will be sorted according to the column clicked upon.
If not all data is displaying in a particular column, either drag the applicable column separator to
widen the column, or use the Column Best Fit command, available from the menus (shortcut:
Altium Essentials_July2013_Colby
10-July-2013

458

CTRL+F). This command simply widens the length of each column according to the longest field
entry.
The Column Best Fit command relies on there being enough overall width in the data
region. Manually drag the last column's separator as required to achieve this.

The Column Best Fit command is unavailable if the Force Columns to View option
enabled.

39.1.1.4 Custom Filtering


In some cases, the designer may need to exclude specific parts from the BOM report, such as
fiducials. Or perhaps a unique set of components need to be listed, for example with a particular
designator root and/or footprint.
To support this, the dialog provides the ability to apply custom filtering giving the designer full
control over the content of their BOM.
To apply filtering, click the drop-down arrow in a column's header. Notice that the subsequent
menu lists all individual row entries for quick selective filtering. Click the (Custom) entry to
access the Custom AutoFilter dialog. Use the dialog to specify which rows of data to show in the
BOM, based on the filtering criteria defined for that column.
Once applied, the drop-down arrow turns blue, to indicate custom filtering is in force for that
column.
Apply custom filtering to other columns of data as required the full filter currently applied is
reflected textually at the bottom-left of the data region.

A blue drop-down signifies


custom filtering applied based
on that property.

The full filter expression


currently being applied to the
data set.

Figure 498. An example of using custom filtering to remove a fiducial from the BOM.

Altium Essentials_July2013_Colby
10-July-2013

459

To clear the current filter being applied to the data set, click on the small cross to the
left of the textual filter expression. If filtering is applied to multiple columns, clear the
filtering for a particular column only, by choosing (All) from that column's drop-down
menu.

39.1.2

Adding Database Information Directly to the BOM

Source information for a Bill of Materials has, in the past, been taken from the property
information of the placed components for the design. But that can lead to a lot of information
attached to a schematic that is only ever used for the BOM. If components are linked to an
external database, the Report Manager is able to extract record information directly from that
database.
When configuring the BOM for the project, enable the Include Parameters from Database
option. This option will only be available if one or more components in the design are linked to an
external database.
Parameters can be included from an external database, irrespective of the method
employed to link to that database DbLib, SVNDbLib, or DbLink.
In the All Columns region, the icon is used to distinguish a parameter that exists for one or
more placed components in the linked external database.
All database parameters are gathered together at the top of the All Columns region
quick reference.

This component was


placed from a linked
external database.

A special icon identifies


additional parameters coming
from an external database.

Figure 499. Include additional parametric information for components that have been placed from a linked
external database.

39.1.3

Adding PCB Information to the BOM

Source information for a Bill of Materials can be based on property information taken from the
PCB in the event the designer needs to customize and use the report generation for more than a
BOM. An example would be for generation of a pick and place file where every placement
machine wants the data (such as X, Y location) in a different column order and in different file
formats.
When configuring the BOM for the project, enable the Include Parameters From PCB option.
This option will only be available if there is a PCB document in the project file.
Altium Essentials_July2013_Colby
10-July-2013

460

If generating a BOM from the PCB document, this option will be enabled and
unavailable, since the parameters are automatically included due to the PCB being the
source for the report.
The banner of the Report Manager dialog will update to reflect the PCB document, and in the All
Columns region, a PCB parameter is distinguished through use of the
icon.
All PCB parameters are gathered together at the bottom of the All Columns region,
quick reference.

The dialog reflects the chosen


PCB document, from which
the parameters are sourced.

A special icon identifies


additional parameters coming
from the PCB document.

Figure 500. Include additional component information that exists in a PCB.

If the project includes multiple PCB documents, the BOM Report Options dialog will
appear. Choose which PCB to include in the BOM. To switch to using another PCB
document, use the Change PCB Document command, available from the Report
Manager dialog's main or right-click menus.

39.1.4

Including Supplier Data in the BOM

Being able to cost a project and determine the quantities of design components to be ordered
from suppliers/distributors, is an essential part of the overall design process. After live Supplier
Links have been added to Altium Designer components as required, the linked supplier data
including pricing and stock information can be included at design release time, in a Bill Of
Materials.
Supplier data is only available when generating a Bill of Materials for the project. It is
not available when generating a Bill of Materials for a PCB document, and is also not
included when generating a Simple BOM.

Altium Essentials_July2013_Colby
10-July-2013

461

Figure 501. Supplier data can be included as part of the Bill of Materials.

The following supplier-based data can be included in a Bill of Materials simply enable the
checkbox for each, in the All Columns region:

Supplier n name of the Supplier

Supplier Currency n alphabetic code for the chosen currency used for pricing data.

Supplier Order Quantity n number of units required to fulfill the desired production
quantity of the product.

Supplier Part Number n part number for the Supplier Item.

Supplier Stock n how many units of the item the Supplier has in stock.

Supplier Subtotal n the Supplier Order Quantity multiplied by the Supplier Unit Price,
giving the subtotal for that item.

Supplier Unit Price n cost, per unit, of the Supplier Item.

Figure 502. A closer look at the supplier data available in the BOM.

The BOM uses indexed sets of supplier-related data to cater for components that have
more than one linked Supplier Item, for example Supplier 1, Supplier
1, etc; Supplier 2, Supplier Currency 2, etc, and so on.

Pricing and stock information is sourced directly from enabled Supplier web
Having these parameters added to the components has no bearing on the population
of data in the BOM.

39.1.4.1 Specifying Production Quantity


The designer can fully cost a project based on the number of units of the product that it is
intended to produce the Production Quantity. Use the Production Quantity field, in the
Supplier Options region of the Report Manager dialog, to specify the required value.
Supplier Options only become available provided that the Supplier Unit Price n
and/or Supplier Subtotal n parameter columns are enabled.
The value entered into the Production Quantity field is used to determine the Supplier Order
Quantity the quantity of component that would need to be ordered to produce the given product

Altium Essentials_July2013_Colby
10-July-2013

462

quantity. This is calculated by multiplying the Quantity (of each particular component) by the
specified production quantity.

Figure 503. Enter a value for the Production Quantity the number of units of the product to be
manufactured.

In turn, the Supplier Order Quantity is used to determine the Supplier Unit Price that applies.
Remember that suppliers typically offer various quantity pricing levels, depending on how many
units of an item are purchased. To have Altium Designer round up the Supplier Order Quantity to
take advantage of the next (reduced) pricing level, simply enable the Round up Supplier Order
Qty to cheaper price break option.

Figure 504. Enable rounding to take advantage of reduced pricing!

39.1.4.2 Changing Supplier Currency


The currency used for pricing-related data in a Bill of Materials can be specified from the range
of supported currencies. Simply choose the required currency from the drop-down field available
to the left of the Production Quantity field, in the Supplier Options region of the Report
Manager dialog. The chosen currency will affect the following data columns:

Supplier Unit Price n

Supplier Subtotal n
Be sure to include the Supplier Currency n column in the BOM, to distinguish
which currency is in use through an associated alphabetic code.

Figure 505. Choose from a range of supported currencies when outputting pricing data in a Bill of Materials.

Altium Essentials_July2013_Colby
10-July-2013

463

39.1.4.3 Using Cached Pricing Data in BOM Parameters when Offline


When working online connected to the internet
and signed in to an Altium account pricingdata for components with live links to Supplier
Data will be updated. When generating a BOM,
the latest pricings at that point in time will be used.
For specific currencies, the exchange rates are
updated on a daily basis.
Figure 506. Specify the use of cached pricing
When working offline, there is the ability to use the data when working offline.
last cached pricing data in the pricing-based
parameters in the BOM. To do this, from within
Report Manager dialog, enable the Use cached pricing data in parameters if offline option
the Supplier Options region of the dialog.

39.1.5

Catering for Variants

If there are variants defined for the design, the designer has the ability to generate a Bill of
Materials based on a chosen variant. To do this, select the required variant from the Change
Variant sub-menu accessible from the Report Manager dialog's Menu button or right-click
menu.

Figure 507. Base the BOM report on a specific variant.

All currently defined variants for the design are listed in the menu. When a specific variant is
chosen for use, it is identified by having the
icon next to it. In addition, the Report Manager
dialog's banner will reflect use of that variant.

Figure 508. Identifying which variant is currently being used.

Revert back to using the base design by choosing the [No Variations] entry in the
menu.
The data region of the dialog will update accordingly:

Components defined as Not Fitted for the chosen variant are removed.

Parameter values are updated with those from the chosen variant, where they vary from the
base design.
To keep components that are Not Fitted in the BOM, but explicitly mark them as such, enable the
Include Not Fitted Components option at the bottom of the dialog. Doing so will create a new
column Fitted (Figure 509).

For each component, an entry in this column reflects whether, for the chosen variant, that
component is Fitted or Not Fitted. By default this column is shown (as the left-most
column), sorted and grouped. This causes all Not Fitted components to be grouped together at
the end of the BOM after all Fitted components.
Altium Essentials_July2013_Colby
10-July-2013

464

Figure 509. Components that are not fitted in the variant can still be included in the BOM, with additional
information to explicitly state which components are, and are not, fitted.

The value entered into the Quantity column for a component that is Not Fitted on the
chosen variant, is zero (0).

Altium Essentials_July2013_Colby
10-July-2013

465

39.2 Exporting the Report


Once the content for the BOM is defined and organized as required, the report can be generated
either printed, or exported into one of several file formats.
Controls for exporting the BOM data are located in the Export Options region of the Report
Manager dialog.

Figure 510. Export options.

Export involves the following steps:


3. Use the File Format drop-down menu to choose the file format in which to export the BOM
data. The following formats are supported:
a) CSV (Comma Delimited) (*.csv)
b) Microsoft Excel Worksheet (*.xls;*.xlsx;*.xlt;*.xltx)
c) Portable Document Format (*.pdf)
d) Tab Delimited Text (*.txt)
e) Web Page (*.htm;*.html)
f)

XML Spreadsheet (*.xml)

4. To have the exported file open in the relevant software application, ensure the Open
Exported option is enabled.
5. To have the generated report added to the project after it is created, enable the Add to
Project option.
6. Click the Export button (or choose the Export command from the dialog's menus) use the
Export dialog that appears to specify where, and under what name, the BOM report is to be
saved. Then click Save to effect export.
Use the Report command, from the Report Manager dialog's menus, to access the
Report Preview window, with the BOM report already loaded. Use the various controls
in the window to adjust the view of the report. Click the Print button to launch the Print
dialog, from where to determine what is printed and to which printing device the job is
sent. The report preview can also be exported into a variety of file formats using the
Export button.

39.2.1

Using Excel Templates

When exporting the BOM report into Microsoft Excel Worksheet format, the designer has the
ability to control the appearance of the report using a nominated Excel template.
Controls for choosing the template are provided in the Excel Options region of the Report
Manager dialog (Figure 511).

Altium Essentials_July2013_Colby
10-July-2013

466

Figure 511. Format an Excel-based report using a specified Excel template.

Enter the required template filename (*.xlt;*.xltx) directly into the Template field, or click
the button to browse for it. The file can be specified with a relative or absolute path, using the
Relative Path to Template File option.
Alternatively, click the drop-down arrow to access a listing of predefined, default templates,
included as part of the Altium Designer installation.

Figure 512. Excel templates for use with BOM reports, installed
as part of the installation.

Default Excel templates can be found in the \Templates folder of the Altium
installation, in the Shared Documents destination folder specified during install.

Altium Essentials_July2013_Colby
10-July-2013

467

Figure 513. Example Bill of Materials generated using the Excel template file, BOM Variant Template.xlt.

39.2.1.1 Including Document and Project Parameters


Parameters are a universal feature of Altium Designer and can be added to the project, a
document, a component, almost any object. Project and document parameters can be extracted
from the design and included in the Bill of Materials.
Document parameters are included with each component that comes from that document, and
project parameters can be mapped to pre-defined fields in an Excel template using the string
Field=ProjectParameterName, examples of which are shown in Figure 514.

Altium Essentials_July2013_Colby
10-July-2013

468

Figure 514. Include project parameters in the BOM by defining them in the Excel template.

Other useful strings that can be used in an Excel template include:

Field=PCBDataSourceFileName to display the filename of the PCB data source.

Field=VariantName to display the name of the currently chosen variant, on which the
BOM report is based.

Field=ProductionQuantity to display the value entered for the Production Quantity


field in the Supplier Options region of the Report Manager dialog.

Field=Currency to display the currency chosen in the Supplier Options region of the
Report Manager dialog.

Field=DataSourceFileName to display the filename of the data source.

Field=ProjectFileName to display the project filename.

Field=ReportDate to display the date on which the report was created.

Field=ReportTime to display the time at which the report was created.


Parameters defined for the schematic top-sheet can also be included into the
using the string Field=DocumentParameterName. For example Field=Title
displays the value assigned to the parameter Title for the top-level schematic
document, as part of its defined document-level parameters (Parameters tab of
Document Options dialog).

Altium Essentials_July2013_Colby
10-July-2013

469

39.3 Using Output Job Files


A Bill of Materials can also be configured and generated as part of an Output Job Configuration
file (*.OutJob).
To add a BOM output generator to the Output Job file, click the Add New Report Output text at
the bottom of the Report Outputs category and choose Bill of Materials from the pop-up menu.
A second menu is provided from which to specify the Data Source which source document(s)
to be used when the BOM report is generated. Only applicable data sources are available,
leaving less room for error.
The Data Source for a BOM could be a single specific source schematic document,
PCB design document, or all source schematic documents. The latter is represented
by the [Project] entry.
Once added, double-click the entry to access the Report Manager dialog and customize the
BOM as required, and as discussed already in this module.
Once the output generator is configured, link it as required to the relevant Output Containers. A
BOM report can be generated as file-based output, or published to a PDF. It can also be printed
sent directly to a printing device, as Hard Copy (through a configured Print Job).

Here, all outputs are driven


by a single defined variant.

Add and conFigure BOM


output generators.

Define, conFigure, and link to


the required Output
Containers and Print Jobs.

Figure 515. Set up outputs for generation of BOM reports from an Output Job file.

Settings defined in the Report Manager dialog when generating a BOM from the
Schematic or PCB are stored in the project file and are distinct from those defined for
the same outputs in an Output Job file. While generation from the source editor can be
good for quick testing, the Output Job file provides a portable solution that can be
across projects without having to set up a favorite BOM customization time and
again.

A closer, more detailed look at Output Job files, including all aspects of their
configuration and operation, is covered in an additional training module.

Altium Essentials_July2013_Colby
10-July-2013

470

39.3.1.1 Publishing to PDF Based on an Excel Template


From an Output Job file, the BOM report can also be published to PDF format, based on a
nominated Excel template. To do this:
1. When configuring the BOM output generator:
a) Set the File Format in the Export Options region to Microsoft Excel Worksheet
(*.xls;*.xlsx;*.xlt;*.xltx).
b) Specify the required Excel template, using the Template field in the Excel Options
region.
2. Link the BOM output generator to the required (and configured) PDF Output Container.
Altium Designer applies the following rules to determine the size of the spreadsheet to print to
PDF:

Cells to the right of the right most column header are not included in the output

Cells below the lowest text cell are not included, unless they contain horizontal borders
and/or background colors and are not separated from the main section of the BOM by more
than 10 blank rows.

Figure 516. Example of publishing a BOM report to PDF, using an Excel template.

Altium Essentials_July2013_Colby
10-July-2013

471

Module 40: OutJobs


A large variety of outputs can be generated for and from a PCB design, and each output type
has its own settings. The best way to manage this multitude of outputs in Altium Designer is to
use an Output Job file, or 'OutJob' as it is more commonly known.
An OutJob is simply a pre-configured set of outputs. Each output is configured with its own
settings and its own output format, for example output to a file, or to a printer. OutJobs are very
flexible they can include as many or as few outputs as required, and any number of OutJobs
can be included in an Altium Designer project. The best approach is to use one OutJob to
configure all outputs required for each specific type of output being generated from the project.
For example all outputs required to fabricate the bare board go in one OutJob, all outputs
required to assemble the board go into a second OutJob, and so on.
OutJobs can also hold validation-type checks, such as ERC and DRC reports. Useful for a final
thumbs up check just before generating the outputs, such reports can then be held as a record
that the design was ready for release.
Portable in nature, OutJobs can also be re-used between designs -- simply copy the Output Job
file from one project to the next one, and reset the Data Source as required.

40.1 Adding & Defining an OutJob - Overview


OutJobs are managed using the OutputJob Editor. Create a new Output Job file by:

Using the File New Output Job File command

Right-clicking on the project name in the Projects panel and choosing Add New to Project
Output Job File from the pop-up menu that appears.
Output Job files, when added to a project, appear in the Projects panel under the
Settings\Output Job Files sub-folder.

There are essentially 3 steps to configuring an OutJob, as shown in Figure 517 and described
thereafter.

Figure 517. Constituent elements of the OutJob, all defined and managed within the OuputJob Editor.
Altium Essentials_July2013_Colby
10-July-2013

472

1. Add and configure the required outputs outputs are gathered into functional categories,
such as Assembly Outputs, Fabrication Outputs and Report Outputs. Strictly speaking,
output itself is obtained by running an associated Output Generator, configured as
appropriate, and using a specified document within the project (or the project itself) as its
source.
2. data
Add and
configure the required output formats generation of any given output type
requires that output to be mapped to a corresponding (and applicable) output format. This
takes the form of either one of the supported Output Containers (PDF, Folder Structure,
Video), or Hard Copy (print-based output). Multiple outputs can be mapped to the same
container or hard copy, and the user has control over where the output is generated and how
(any media-related options associated to the container/hard copy).
3. Set the variant choice Altium Designer allows the outputs of a PCB project to be driven
using the base (non-varied) design, or by nominating the use of a defined variant of that
design. Either choose a variant per applicable output, or choose a single variant to apply to
all applicable outputs in the file.

40.2 Adding Outputs to an OutJob


Add a new output of the required type by clicking on the appropriate Add New [type] Output
text at the bottom of a category and choosing the required output type from the pop-up menu.
Alternatively, choose the relevant command entry from the main Edit menu.
Output types for which the appropriate source data is available in the project, will be listed as
available, with all other output types listed as unavailable (grayed-out).
A second menu is provided from which to specify the Data Source which source document(s)
to be used when the output is generated. Only applicable data sources are available for each
output, leaving less room for error.

Figure 518. Add each output that is required, selecting the appropriate Data Source.

Altium Essentials_July2013_Colby
10-July-2013

473

The Data Source depends on the particular output. PCB-related outputs, such as PCB Prints,
Gerber Files and Testpoint Reports, will use the PCB design document as the Data Source. The
Data Source for a BOM could be a single specific source schematic document, the PCB design
document, or all source schematic documents. The latter is represented by the [Project]
entry.
The Data Source can be changed at any stage after adding an output. Simply click on
the current Data Source and a drop down arrow will appear, use this to choose an
alternate source.
For certain outputs, the Data Source list will include [Project Physical Documents]. Use
this option if the physical design (the design as it will be implemented on the board) must be
annotated differently from the logical design (the original schematics). This will be necessary if
the design includes Device Sheets, or if it uses Altium Designers multi-channel capabilities and
a simple, flat annotation scheme is preferred.
The term "Project Physical Documents" refers to the physical, or compiled view of the
schematics. In the Schematic editing space, this corresponds to the compiled
document(s) that appear after compilation of a document/project.

When setting the Data Source for the Schematic Prints output, All SCH Documents
relates to the printing of the set of all logical schematics in the project (the raw,
uncompiled "Editor" view of each schematic). To print the set of all physical
in the project, (the compiled document view(s) of each schematic), be sure to set the
Data Source to [Project Physical Documents].

40.2.1

Configuring Outputs

Depending on the specific


output type, options may be
available to configure the
associated output generator,
providing more control over the
generated output. Where
configuration options are
available, they can be
accessed in one of the
following ways:

Double-clicking directly
within the row for the
required output.

Right-clicking on the
required output and
choosing the Configure
command from the context
menu.

Selecting the required


output and using the
keyboard shortcut,
ALT+ENTER.

Figure 519. Different Output Generators have unique dialogs to


configure precisely what gets generated.

Selecting the required


output and choosing the
Edit Configure
command.
If multiple outputs are selected, the configuration dialog associated with the last selected
(currently focused) output will appear.

Altium Essentials_July2013_Colby
10-July-2013

474

For outputs that can be used to generate hard copy printed output sent to a printing
device access can also be made to a dialog for defining page properties. Either
right-click on the output and choose Page Setup from the context menu, or select the
output and use the File Page Setup command.

Configuration information for outputs in an OutJob are stored in that OutJob file. This
differs to configuration of the same output when generated directly from a source
document, where the configuration information is stored in the project file.

40.3 Defining Output Format


Adding and configuring the outputs for an OutJob defines what is to be generated and how.
Definition of where generated output is to be written to is now required, in other words, what
format the output is to be generated in. Depending on the type of outputs being generated, this is
handled using a combination of Output Containers and Hard Copy.

40.3.1

Output Containers

Outputs can be written (where applicable) to three types of Output Container a PDF, a specificformat of output file (such as a Gerber file), or a video.
A new OutJob will default to include one of each of these types of containers, named PDF,
Folder Structure, and Video. Any number of additional containers of these types can be
added by clicking the [Add New Output Container] text, and their names can be edited for
easy identification.

Figure 520. Output Containers 'receive' generated output.

40.3.1.1 Configuring a Container


Clicking on a container provides access to additional controls, including the ability to configure
the container. To do so, click the Change link to access the Settings dialog associated with that
particular type of container.
Access to the Settings dialog can also be made by either double-clicking the container
entry, or selecting it, right-clicking and choosing the Properties command.
Altium Essentials_July2013_Colby
10-July-2013

475

The Settings dialog will initially open in Basic mode, for configuration of the output location
where the container will be created. To access further, more advanced options related to the
generation of output into the container, click the Advanced button at the bottom of the dialog.
Figure 521 shows an example of access to the Settings dialog for a PDF container, while Figure
522 thereafter shows the advanced options available for this container type.

Figure 521. Access the Settings dialog for the container to configure it as required. In Basic mode, use the
dialog to define output location for the container.

Figure 522. More detailed options are available with the dialog in Advanced mode.

Altium Essentials_July2013_Colby
10-July-2013

476

40.3.1.2 Output Location


The output location where the container will be created is specified in the Output
Management region of the container's settings dialog. The location consists of various stages,
with each stage defined using a corresponding pop-up, accessed by clicking on that stage.

Base Path this stage is used to define the 'root' path of the output container.

Figure 523. Options for defining the base path of the output location.

By default, this is set to [Release Managed], which means that the Design Data
Management system will handle the base path automatically.
To display the outputs in the file generation region of the PCB Release view, the
associated Output Container in which those outputs will be written must have its Base
Path set to [Release Managed].

When using the PCB Release view in Design Mode, the base path will be the
\<ProjectName>\<ConfigurationName> folder, within the designer's local
working sandbox.
A local output path can be defined by switching this stage to [Manually Managed] and
specifying the path accordingly (which can be made relative to the design project).

Container Type Folder this stage is used to define a sub-folder based on the type of media
container being generated. It is completely optional as to whether this extra 'umbrella' folder
is used or not. If used, it can either be named by the system (using the container name or
type), or given a custom name, as required, by the designer.

Figure 524. Options to define a container sub-folder for the output location.

Output Folder / Output Filename the function of this stage depends on the output container
type for which the output location is being specified. For PDF or Video container types, this
stage simply requires entry of the desired filename. By default, multiple outputs generated
into the container will be collated into a single file, but the designer has the option to
generate a separate file for each output if required.
If generating a separate file per output, the additional option to place each file in its
sub-folder becomes available. If enabled, the folder can be named automatically
on the output name or type, or can be customized with a specific prefix.

Altium Essentials_July2013_Colby
10-July-2013

477

Figure 525. Options to define filename and optional sub-folder.

For the Folder Structure container type, this stage is used to specify a folder for each
generated output type. Again, the folder can be named automatically based on the output
name or type, or can be customized with a specific prefix.
As changes are made to any of the stages in the output location, the preview window
the dialog will dynamically update, allowing the designer to quickly zero-in on a
preferred output folder structure.

For each defined container, the paths both vault-based (Release Managed) and
(Manually Managed) are displayed for quick reference in the main Output
Containers region of the OutJob.

40.3.2

Hard Copy - Print Jobs

Certain outputs, including Schematic Prints, Assembly Drawings and BOM, can also be sent
directly to a printing device, as Hard Copy. To determine how such hard copy is handled, a Print
Job is added and configured.
A new OutJob will default to include a single Print Job, named Print Job. and targeting the
default printer associated with the computer upon which the instance of Altium Designer is
running. Any number of additional Print Jobs can be added - by clicking the [Add New Print
Job] text, and their names can be edited for easy identification (e.g. the name of the printing
device to which the job is associated).

Figure 526. Print Jobs handle print-based output, or 'Hard Copy'.

When adding a new Print Job, a list of all printing devices currently configured for use
by the computer will be listed, enabling quick targeting of desired device.

Altium Essentials_July2013_Colby
10-July-2013

478

40.3.2.1 Configuring a Print Job


Clicking on a Print Job provides access to additional controls, including the ability to configure
the job. To do so, click the Change link to access the Printer Configuration dialog associated
with that particular job.
Access to the Printer Configuration dialog can also be made by either double-clicking
the Print Job entry, or selecting it, right-clicking and choosing the Properties
command.

Figure 527. Access the Printer Configuration dialog to configure the Print Job as required.

From the Printer Configuration dialog, click the Properties button to access the
standard Properties dialog for the target printer. From this dialog define the paper
source, layout and gain access to advanced property settings for the printer.

40.3.3

Linking Outputs to Output Containers and Print Jobs

With the outputs added and configured on the left of the OutJob, and the required Output
Containers and Print Jobs defined on the right, the two now need to be mapped specifying
which outputs are to be generated using which container and/or print job.
Each output has an associated Enabled field. This field provides control over whether or not a
particular output is included (option enabled) or excluded (option disabled) from a selected
Output Container or Print Job.
The Enabled field will only be available provided the output is supported for
into the selected container, or for printing to the selected printing device.
Once enabled, a green line will connect an output to the selected container/print job. The same
output can be included in many output media, for example a BOM can be generated and output
as a PDF, as a distinct file, or sent to a printer for immediate hard copy.
In the example of Figure 528, three outputs have been enabled for generation using the PDFbased Output Container named PDFs. Notice how the Pick and Place and Testpoint Report
outputs do not have an Enabled field, since those output types cannot be written to a PDF file.

Altium Essentials_July2013_Colby
10-July-2013

479

Figure 528. Select the container or print job, then enable the outputs that are to be generated using that
container or print job.

As outputs are enabled, they are numbered consecutively. This ordering is used to define the
sequence in which the outputs are generated. If creating a single PDF including multiple different
outputs, this order determines the sequential content of those outputs with that PDF.
If an output is removed from a container or print job, the numbers are re-ordered
accordingly. To change the order of enabled outputs, either double click on the
in the Enabled field of an output and use the available control to 'dial-up' the required
number or, alternatively, re-select each output in order.

40.4 Variant Choice


Product requirements may warrant the need to produce a variety of similar Printed Circuit Boards
that all differ slightly from an underlying base design. For example, standard and deluxe versions
of a commercial electronic product may differ in the functionality they offer, with the standard
version incorporating a subset of the components used in the deluxe version.
At the design level, Altium Designer enables one or more variations of a board design to be
defined using its Variants feature. A variant is simply an alternately assembled 'version' of the
original board design.
Variants typically drive applicable assembly-based outputs the very essence of an Assembly
Variant, varying only the assembled board (e.g. which components are fitted or not). However
Altium Designer also enables variants to drive certain fabrication outputs, allowing a comment for
a component to be varied in a design, and that change fed through to outputs such as Gerbers,
ODB++ files, Composite Drill Drawings, Drill Drawing/Guides and Final Artwork Prints.
Although it is fabrication outputs that can be driven, it is only changing such output
based on the component-level variations for the target board assembly in this case,
the component's Comment parameter. No other aspect of the fabricated board can be
changed the physicalities of the PCB such as the routing, the layout of the
components, or the layer stack.
From within an OutJob, the designer has full control over what is used to drive the defined
outputs either the base (non-varied) design, or a nominated defined variant of that design.
If the outputs are to be generated for a specific variant, then that variant must be specified as
part of the configuration of the OutJob. Either choose a variant per applicable output, or choose
a single variant to apply to all applicable outputs in the file. This 'variant scope' is determined
using the Variant Choice options at the top of an Output Job file.
Altium Essentials_July2013_Colby
10-July-2013

480

Figure 529. Variant Choice determining at which level variants are being used when driving the
configured outputs of an Output Job file.

Choose a single variant for the whole outputjob file with this option enabled, simply
choose a single variant to drive all applicable outputs in the Output Job file. Specify the
variant in the drop-down field to the right. The drop-down lists all defined variants for the
active project, as well as the entry [No Variations].

Figure 530. Specify variant usage at the document level.

Choose a different variant for each output with this option enabled, a Variant column
will be added to the Outputs region of the OutJob. Use this field to indicate which variant to
use on an individual output basis. Again, the drop-down lists all defined variants for the
active project, as well as the entry [No Variations]. Using this scope setting it is
possible to assign different variants to drive different outputs.

Figure 531. Specify variant usage at the individual output level.

Altium Essentials_July2013_Colby
10-July-2013

481

To drive the outputs using the base (non-varied) design, use the [No Variations]
entry.

When defining variant usage at the individual output level, if the chosen variant does
not allow the variation of fabrication outputs, and the variant is specified for use with a
fabrication-based output, the variant entry in the OutJob will be red, and a hover-tip
used to flag the situation. Generation of output using the chosen variant will proceed
though the setting [No Variations] had been chosen. That is, the base (nondesign will be used as the source of the output instead.

40.4.1

Variants and Board Design Release

The variant choice options discussed previously apply only when generating output directly from
within the OutJob. They do not apply when using Altium's high-integrity board design release
management process, to release a configuration of a PCB project. In this case applicable
outputs will be driven, at release time, by the variant specified for a PCB Configuration that uses
the Output Job file to generate its outputs that is, has the Output Job file assigned to it.
As the PCB Configuration controls the variant to be used, and multiple PCB Configurations
(using possibly different variants) can use the same Output Job file to drive their outputs, this
variant choice is made purely from the Configuration Manager for the PCB project.

Figure 532. Specify variant usage at the PCB Configuration level.

40.5 Output Generation


The configured outputs in an OutJob can be generated either:

From within the OutJob directly.

From the PCB Release view in Design Mode (manual generation) and Release Mode
(automated generation as part of the board design release process).
NOTE: All outputs can be generated directly from within the active OutJob. From the
PCB Release view, only those outputs assigned to Output Containers may be
generated. The PCB Release view (and therefore board design release process)
cannot handle outputs that are assigned for generation of Hard Copy (through
applicable defined Print Jobs).

Altium Essentials_July2013_Colby
10-July-2013

482

40.5.1

From Output Containers

Selecting an Output Container will provide access to the Generate content control. This control
will be enabled provided at least one output is assigned to that container.

Figure 533. Generate content for the selected Output Container.

Clicking this control will generate each output enabled for generation into the container, in
sequence. Alternatively, with the container selected, use one of the following methods to
generate content:

Press the F9 key.

Right-click and choose the Generate command from the context menu (Run command for
the a Folder Structure container).

Use the Tools Generate command (PDF and Video container types) or Tools Run
command (Folder Structure container type).

Progress can be viewed from the Status Bar. Generated output will be opened if the option to do
so has been enabled as part of the advanced options for the container.
There is no multiple Output Container batch generation process, only those outputs
assigned to the currently selected Output Container will be generated. To generate all
outputs, select and generate content for each defined Output Container, separately.

When generating Gerber, ODB++, NC Drill, or IPC-356-D outputs into a Folder


Structure Output Container, they can be imported automatically into a new CAM Editor
document (*.cam). Options to do this can be found in the Files Settings dialog
associated to this container type.

40.5.1.1 Publishing Generated Output


A second control available Generate and publish enables the designer to generate the
outputs assigned to the selected Output Container, and also publish that output to a defined
Publishing Destination.
Publishing Destinations offer the ability to publish data to a storage space, such as Box.net,
Amazon S3, an FTP server, or a simple folder location on a shared network. In terms of
distribution and collaboration, this provides an unparalleled advantage in a world where the
collective members of the overall 'product team' the design team, the manufacturing team and
all others involved in the process of getting a product from thought to reality are often
dispersed around the globe. All parties have shared (and controlled) access to view, discuss and
utilize the data.
To publish, click the command and select from a list of currently defined destinations in the poppop-up menu that appears. The output will be generated first to the local path destination, then
published. As part of publishing, a prompt will appear asking for a folder (within the target
Publishing Destination) in which to store the output. Either browse to an existing folder, specify a
new folder, or accept the default folder named using the type of content for the container, along
with a date-time stamp (e.g. PDFs - 10-24-2011 11-32-33 AM).
Altium Essentials_July2013_Colby
10-July-2013

483

Figure 534. Publish output for a container to a defined Publishing Destination.

Use the Manage Publishing command on the menu to access the Data Management
Publishing Destinations page of the Preferences dialog. From here, new destinations can be
defined, or the connections to existing destinations modified.

Figure 535. Publishing Destinations are specified as part of the Data Management preferences.

For released data generated from a board design project, an Altium Vault supports the
ability to publish those released documents generated output from Output Job files
assigned to the released project configuration for any Item Revision, to a defined
Publishing Destination.

Publishing data directly from an OutJob simply places a copy of the generated files in
specified sub-folder of the target destination. For high integrity and to facilitate a solid
audit trail, generated data should be published after release into a revision of a target
Item in an Altium Vault. Such output is tagged (in the filename) with the Item and
Revision, enabling all involved to see instantly which output is associated with which
revision of the Item to be built (bare board or assembled board).

Altium Essentials_July2013_Colby
10-July-2013

484

40.5.2

From Print Jobs

Selecting a Print Job will provide access to Preview and Print controls. These controls will be
enabled provided at least one output is assigned to that job.

Figure 536. Preview and Print controls for the selected Print Job.

40.5.2.1 Print Preview


Use the Preview control to load the assigned outputs for the Print Job into the Print Previewer.
Alternatively, with the job selected, use one of the following methods to access the Print
Previewer:

Right-click and choose the Print Preview command from the context menu.

Use the Tools Print Preview command.

Click the Preview button in the Page Setup dialog for the selected (focused) output. Note
that this will load only the pages for that particular output, and not all pages for all assigned
outputs to the Print Job.
Source documents will be loaded in sequence, and in accordance with options defined in the
associated Page Setup dialog.

Figure 537. Previewing a print-based output using the Print Previewer.

Controls are provided at the bottom of the Previewer and on its right-click menu, for manipulating
the view, accessing printer setup dialogs, printing, copying a page to the Windows clipboard, or
exporting the active page as a Windows Metafile.

Altium Essentials_July2013_Colby
10-July-2013

485

40.5.2.2 Printing
Click the Print control to send the output(s) directly to the nominated printing device.
Alternatively, assigned output(s) can be printed using one of the following methods:

Press the F9 key.

Right-click and choose the Print command from the context menu.

Use the Tools Print command.

Click the Print button in the Page Setup dialog for the selected (focused) output. Note that
this will print only the pages for that particular output, and not all pages for all assigned
outputs to the Print Job.

Clicking the Print button in the Print Previewer.


The Print control and first three methods above offer direct printing. The last two methods above
are indirect printing via the Printer Configuration dialog.
There is no multiple Print Job batch print process, only those outputs assigned to the
currently selected Print Job will be previewed/printed. To print all outputs, select and
print for each defined Print Job, separately.

40.5.3

From the PCB Release View

Outputs defined in one or more Output Job files assigned to a configuration of a PCB project, are
generated when that configuration is released. This generation happens automatically as part of
the high integrity release process, with the release data stored in a new, planned revision of a
target Item in an Altium Vault.
The interface to the release process the PCB Release view is set to Release Mode for this to
happen. However, generation of outputs can also be performed from this view when it is set in
Design Mode. In this mode, the designer can run validations and generate outputs as needed,
and in any order, 'testing the waters' as it were to ensure all is as it should be, prior to initiating
the actual release of the intended configuration.
All enabled outputs associated with defined Output Containers in OutJobs assigned to the active
configuration are listed in the lower region provided those containers are set to be [Release
Managed].

Figure 538. Example list of outputs to be generated for a chosen configuration.


Altium Essentials_July2013_Colby
10-July-2013

486

In the Process Flow above the listing of outputs, only two stages are enabled Validate Design
and Generate Outputs. Click to use these as follows:

Validate Design to run all validation-based outputs defined in Output Job file(s) assigned
to the chosen configuration.

Generate Outputs to run all other outputs defined in assigned Output Job file(s), in
addition to the System BOM (which is not associated with any OutJob file).
The Validate Design stage is optional in the release process it is included only if
there are defined validation outputs as part of an Output Job file assigned to the active
configuration.

As a stage is run, the text on the button will change to reflect which output is currently being
generated, and how many outputs have been generated so far out of the total to be run. The
state in each output's Status field will reflect when that output is running and then the result once
generation is complete.
Since the PCB Release view presents all outputs to be generated across all defined
Output Containers and across all assigned OutJobs it offers a nice way to batch
generate all outputs with a 'single click'.
Offering further flexibility, Design Mode enables generation of outputs on an individual basis.
Simply select the particular output to generate and click the Generate button at the bottom left of
the file listing. Once generated, view that document (click Open or double-click the entry) and
subsequently delete it (click Delete) as required.

Figure 539. Generate and view output at the individual document level.
Altium Essentials_July2013_Colby
10-July-2013

487

Altium Essentials_July2013_Colby
10-July-2013

488

Appendix

Altium Essentials_July2013_Colby
10-July-2013

489

Module 41: Advanced Schematic Editing


Techniques
The design of a circuit is usually an iterative process that converges towards an ideal solution, or
at least some acceptable compromise. As the design grows and becomes increasingly complex,
minor changes to one section of the design may require other aspects of the design to be edited
too. Having access to tools and processes that facilitate rapid editing of the design can make a
big difference to a designer's overall productivity.
Altium Designer provides a range of editing tools and capabilities that have been designed to
help with making large scale edits to a design. Among these are the Global Editing processes,
SCH Inspector panel, SCH Filter panel, SCH List panel, Find Similar Objects, Smart Paste and
Intelligent Search and Replace capabilities.

41.1 Altium Designer's Data Editing Paradigm


Before attempting to make wholesale edits to a design, it's important that designers understand
Altium Designer's editing paradigm so that they tune their approach to be in alignment with the
way the system works.
The process of editing multiple items in Altium Designer involves three steps:
4. Select the objects to be targeted.
5. Inspect the properties of those objects.
6. Edit the properties that need to be amended.
With this editing paradigm in mind, Altium Designer offers a range of different ways to Select,
Inspect and Edit multiple objects. Each method has its strengths and by having an
understanding how they work, the designer is equipped to choose the method that is most
applicable to their specific editing challenge.

41.1.1

Selecting Objects

Objects can be selected in a variety of ways but they all fall into two categories:

Graphical Selection Objects are selected:


a) Individually by mouse clicks,
b) accumulatively by SHIFT+mouse clicks, or
c) using one of the selection commands (Edit Select) from the menu system.

Logical Selection Objects are selected using an interactive or query-based process that
targets and filters objects using specific parameters and/or attributes as the search criteria.
GUI elements that support this type of selection are:
a) The Find Similar Objects dialog
b) The Navigator panel
c) The SCH Filter panel
d) The SCH List panel

41.1.2

Inspecting Objects

The attributes of objects can be inspected (viewed) in a variety of ways but they all fall into two
categories:

Direct Inspection the attributes of one or more objects are inspected directly through the
object's Properties dialog or graphically in the main editor.

Indirect Inspection the attributes of one or more objects that have previously been
selected are viewed using one of the following panels:
a) The SCH Inspector panel

Altium Essentials_July2013_Colby
10-July-2013

490

b) The SCH List panel

41.1.3

Editing Objects

Objects can be edited in variety of ways but they all fall into two categories:

Direct Editing the attributes of one or more objects are editing directly through the object's
Properties dialog or graphically in the main editor.

Indirect Editing of Several Objects the attributes of one or more objects that have
previously been selected can be edited using one of the following panels:
a) The SCH Inspector panel
b) The SCH List panel

The following sections will discuss each of the aforementioned panels and dialogs in further
detail, but prior to beginning that discussion, there's one extra concept that needs to be
understood.

41.1.4

Masking

Masking is a way of explicitly removing an object's eligibility for selection and/or editing. This is
most useful when, in some cases, it can be quicker to first mask out what is not required before
trying to select what is required.
Consider a design with multiple positive power rails but a single ground connection. If the
designer needed to perform an operation on all positive power objects, they could attempt to
select them using a complex query, or they could simply mask out all the ground power objects
and use a much simpler query to yield only the positive power objects.
Masked objects will appear faded. The level of fading can be adjusting using the dimmer controls
accessible by clicking the
control at the bottom right of the editor window.

41.1.4.1 Clearing Selections and Masks


The current selection can be cleared in a number of ways:

Pressing the SHIFT+C shortcut.

Clicking the

Using one of the Edit Deselect menu commands.

button in the bottom right of the editor window.

41.2 Find Similar Objects (FSO)


The Find Similar Objects (FSO) process uses the attributes of a target object as a reference for
finding several other objects with similar characteristics. It can be accessed in the following
ways:
The Edit Find Similar Objects menu command.

The SHIFT+F shortcut.

When right-clicking over an object.


The Find Similar Objects dialog is divided into two primary sections; the upper section consists of
a grid that lists the attributes of the reference object, and the lower section consists of a group of
check boxes that define what will happen once the Apply or OK button is clicked.
The grid of reference attributes is further divided into three columns. The left column lists the
names of all the attributes of the reference object, and the centre column lists the value of those
attributes taken from the reference object. To search for objects with different values, enter the
search pattern into the attribute value column directly; the '*' character can be used as a
wildcard for finding any group of characters i.e. C* will find C1, C2, C20, C397, Cap5, etc. Edits
made to the attribute value in the FSO will not alter the attributes of the reference object.

Altium Essentials_July2013_Colby
10-July-2013

491

Figure 540. Launching the Find Similar Objects dialog by right-clicking over an object of interest.

The right column of the grid contains a drop down list of options used for specifying how the
associated attribute should be used to find similar objects. The options are:

Any: Find Similar Objects with an attribute value that has any value. Essentially this setting
will ignore the associated attribute from the Find Similar Object filter.

Same: Find Similar Objects with an attribute set to the Same value as this one.

Different: Find Similar Objects with an attribute set to a Different value to this one.

The example in Figure 368 shows the settings that would be used if a designer was wanting to
select all Power Objects with a text attribute (Net) the same as VCC.
The lower section of the Find Similar Objects dialog has a drop down list and a number of check
boxes that will define the scope of the search and what will happen to found objects. The drop
down box sets the search scope to:

Current Document: Only Find Similar Objects in the same document as the dialog was
launched from.

Open Documents: Find Similar Objects across all currently open documents; even if they
are in a different project.

Altium Essentials_July2013_Colby
10-July-2013

492

The check boxes operate as follows once the Apply or OK button is clicked:

Zoom Matching Zoom the display to a window that encompasses all found objects in the
current document.

Clear Existing Clear any existing Selection or Editing Mask before performing the search.
Uncheck this option if doing successive Find Similar Objects searches and it is desirable for
the results to accumulate.

Mask Matching Non matching objects will be masked out - i.e. faded and made
unavailable for further selection until the Mask is cleared.

Select Matching Select all found objects matching the search criteria.

Create Expression Create an expression that matches the criteria specified by the Find
Similar Objects dialog and enter it into the SCH Filter panel. The SCH Filter panel will be
opened if it is not already. This option makes it possible to use the Find Similar Objects
dialog as a quick way of constructing complicated filtering operations.

Run Inspector Display the SCH Inspector panel. For this option to produce meaningful
results, it will be necessary to have the Select Matching option set since the SCH Inspector
panel will only show attributes from currently selected objects.

With Same Scope If the Run Inspector option is checked, setting the With Same Scope
option will copy the scope of the Find Similar Objects dialog (Current Document or Open
Documents) to the SCH Inspector panel.

41.3 The Navigator Panel


The Navigator Panel is populated and refreshed each time the design is compiled. It provides a
structured view of all documents, sheets, components, nets, parameters and component pins in
the currently focused project. In the context of editing, this panel provides a helpful means for
navigating across the entire design and locating objects of interest. And based on settings
specified on the System Navigation page of the main Preferences dialog, objects can be
selected at the sheet level ready for further inspection and editing.

Figure 541. The Navigator settings are controlled within the main DXP Preferences dialog.

Altium Essentials_July2013_Colby
10-July-2013

493

Further information about the use of the Navigator panel can be found in the Altium
Wiki at: http://wiki.altium.com/display/ADOH/Navigator+Panel.

41.4 The SCH Filter Panel


The SCH Filter panel allows access and filtering of design data via text-based queries. A defined
filter applied to the active schematic document or all open schematic documents can be used to
locate design objects with great precision and selected ready for further inspection and editing.
The panel is divided into three main regions as follows:

Scope The left region defines the range of objects and documents to be examined.

Query The middle region defines the filter itself through a logical query expression.

Action The right region defines what is to happen to objects matching the query / filter.

Figure 542. The SCH Filter panel is divided into 3 regions controlling the Scope, Query and Action.

41.4.1

Defining the Filter Scope

The left region of the panel (Limit search to) contains controls for defining the scope of the filter:

All objects apply the filter to all design objects.

Selected objects apply the filter only to those design objects that are currently selected.

Non selected objects apply the filter only to those design objects that are not currently
selected.
The Consider objects in drop-down field determines where the filter will be applied:

Current Document -- only display target objects from the active schematic document in the
Design Editor window.

Open Documents -- display target objects from all open schematic documents, irrespective
of the parent project they belong to.

Open Documents of the Same Project -- display target objects from all open schematic
documents within the same project as the currently active document in the Design Editor
window.

With respect to the last two options, schematic documents that are open but hidden will not be
considered when displaying objects.

Altium Essentials_July2013_Colby
10-July-2013

494

41.4.2

Defining the Filter Query

Figure 543. A list of potential keywords will display as text is entered into the Query region.

The central region is where filters are constructed through the entry of logical queries. As text is
typed into this field, a prompt list of possible keywords will appear as an aid. For designers who
aren't yet familiar with the range of available keywords, two options are available:
1. Use the Find Similar Objects dialog to specify the objects of interest and with the Create
Expression option checked.
2. Click the Helper button in the SCH Filter panel to reveal the Query Helper dialog.

41.4.2.1 The Query Helper


Once launched, the underlying Query Engine analyzes the document and lists all available
objects along with generic keywords that can be used in queries.

Figure 544. The Query Helper is great for finding the keywords of interest.

Use the top section of the dialog to compose a query expression using the available SCH
Functions and System Functions listed in the lower section of the dialog. The mid-section of
dialog provides a range of operators for use when constructing an expression. The Check

Altium Essentials_July2013_Colby
10-July-2013

495

Syntax button can be used to verify that an expression is syntactically correct before loading it
into the SCH Filter panel by pressing the OK button.

41.4.3

Executing the Filter

The right region of the SCH Filter panel defines what will happen once the filter is executed by
pressing the Apply button or the ENTER key. The options available in the Objects passing the
filter area allow control over the visual display -- in the workspace -- of all objects that fall under
the scope and match the specific query expression of the filter:

Select -- when enabled (default), the filtered objects will be selected in the workspace.

Zoom -- when enabled (default), the filtered objects will be zoomed and centered (where
possible) in the design editor window.
The options available in the Objects not passing the filter area allow control over the visual
display -- in the workspace -- of all objects that do not fall under the scope and/or do not match
the specific query expression of the filter:

Deselect -- when enabled (default), all objects not falling under the scope of the filter will be
deselected in the workspace.

Mask out -- when enabled (default), the filtered objects will appear fully visible in the design
editor window, with all other objects becoming dimmed. With masking applied, all objects not
under the filter scope will be unavailable for selection/editing.

Any combination of these options can be enabled.

41.5 The SCH List Panel


The SCH List panel allows display of design objects from one or more documents in a tabular
format. When used in conjunction with the SCH Filter panel, it can be used as a powerful way to
both inspect and edit multiple design objects. Unlike the SCH Inspector panel, objects do not
need to be selected in order for them to be displayed (and edited) in the SCH List panel.

Figure 545. The SCH List panel provides a tabular view of design data and object attributes.

The SCH List panel can be toggled on or off by pressing SHIFT+F12. It is divided into two main
regions:

Filtering controls to define which objects are displayed in the panel (display scope).

A tabular, spreadsheet-like region listing all objects falling under the defined display scope.

41.5.1

Defining the Display Scope

Controls at the top of the panel control how objects are filtered for display in the panel and also
the current mode (View or Edit) of the panel.

Altium Essentials_July2013_Colby
10-July-2013

496

Click on the leftmost underlined control to select from the following options:

View use this mode to view object attributes only. Direct editing from within the panel will
not be possible in this mode - as indicated by the gray background of the spreadsheet-like
region.

Edit configure the panel in Edit Mode. In this mode the attributes of design objects can be
viewed and modified directly in the tabular region of the panel.
Click on the next underlined control to select from the following options:

non-masked objects this is the default option and causes the panel to display only design
objects that are not masked-out in the workspace (i.e. those objects that fall under the scope
and specific query expression of the currently applied filter). This option is most effective
when filtering is applied to the workspace and the associated masking highlight option is
enabled.

selected objects this option causes the panel to display only design objects that are
currently selected.

all objects this option causes the panel to display all design objects.

Click on the next underlined control to choose from the following options:

current document only display target objects from the active schematic document in the
design editor window.

all open documents display target objects from all open schematic documents,
irrespective of the parent project they belong to.

open documents of the same project display target objects from all open schematic
documents that are source documents of the same parent project.

With respect to the last two options for this control,


schematic documents that are open but hidden will
not be considered when displaying objects.
The right-most underlined control specifies the type
of objects that can be displayed. Clicking on the
control will reveal a selection pop-up (Figure 7).
Use the pop-up to choose which object types to
include in the currently displayed list either all
objects or specific objects. To choose one or more
specific object types, enable the Display only option
and then enable the check box next to the required
object(s) in the list beneath. The list will only contain Figure 546. Selecting objects to display
those object types currently displayed in the main
spreadsheet region of the panel. The control will update to reflect the range of objects included
i.e.
.

41.5.2

Making Selections from the SCH List Panel

Design objects selected in the SCH List panel will become selected in the design workspace.
The list supports single or multiple selection; the latter using standard CTRL+click, SHIFT+click
and click-and-drag features. Double-clicking on an entry will bring up its corresponding
Properties dialog which can then be edited as usual.

41.5.3

Smart Grid Tools

There are two Smart Grid commands available from the panel's right-click menu. These
commands allow data from an external table (e.g. in a PDF) or spreadsheet (e.g. Microsoft
Excel) to be used to either update the values of existing objects in the SCH List panel (Smart
Grid Paste), or insert newly-created objects (Smart Grid Insert).
Respective dialogs for these commands are used to map the external tabular data coming in on
the Windows clipboard, to the attributes of objects in the SCH List panel, providing a preview of
what changes will be made.

Altium Essentials_July2013_Colby
10-July-2013

497

Attributes targeted by the paste action when using the Smart Grid Paste feature are marked in
the Smart Grid Paste dialog with a blue triangle in the upper-right corner. Attributes whose
values will change as a result of the paste will be presented in bold font.

Figure 547. Pasting externally-made changes to existing data using the Smart Grid Paste dialog.

New objects being inserted when using the Smart Grid Insert feature are marked in the Smart
Grid Insert dialog with a green plus, at the right of the Object Kind cell.

Figure 548. Inserting externally-added objects into the Schematic document using the Smart Grid Insert
dialog.

41.5.4

Smart Editing of String-based Attributes

The SCH List panel offers support for string modification through its Smart Edit feature. Simply
select the cell entries pertaining to the attribute to be modified, for all required objects, right-click
Altium Essentials_July2013_Colby
10-July-2013

498

and choose Smart Edit from the context menu. This reveals the Smart Edit dialog which can be
used to create Batch Replace or Formula based text substitutions.

Figure 549. Editing a shared string-based attribute value using the Smart Edit dialog.

Further information about the use of the SCH List panel can be found in the Altium
at: http://wiki.altium.com/display/ADOH/Schematic+List+Panel.

41.6 The SCH Inspector Panel


The SCH Inspector panel is used to inspect
(examine) and optionally edit the properties of
the currently selected objects.
There are several ways to display this panel:

Press the F11 shortcut key to toggle the


panel on and off.

Check the Run Inspector option to display


the SCH Inspector panel after executing
Find Similar Objects dialog.

Select the SCH Inspector item from the


SCH pop-up button at the bottom right of
the main editor window (assuming the
Status Bar option is enabled).

Enable the View Workspace Panels


SCH SCH Inspector option from the
menu.

The SCH Inspector panel can be used to


Figure 550. The SCH Inspector Panel.
examine one or several objects. The scope of
objects to display is managed via two underlined controls in the top row of the panel.
The left underlined control specifies what types of objects will be displayed. Clicking the control
will reveal a selection pop-up that can be used to Display all objects or Display only objects of
a particular type. The control will update to reflect the range of objects included i.e.
. Dissimilar objects can be selected and edited but only their common
attributes will be displayed and made available for editing.

Altium Essentials_July2013_Colby
10-July-2013

499

When display filtering has been enabled, a control will appear at the bottom right corner of the
panel to make it easy to quickly toggle between display of all objects ( ) and only those
specified by the Display Only option ( ).
The right underlined control specifies the range of documents that objects will be chosen from.
The options are:

Current Document -- only display target objects from the active schematic document in the
Design Editor window.

Open Documents -- display target objects from all open schematic documents, irrespective
of the parent project they belong to.

Open Documents of the Same Project -- display target objects from all open schematic
documents within the same project as the currently active document in the Design Editor
window.
With respect to the last two options, schematic documents that are open but hidden will not be
considered when displaying objects.

The body of the SCH Inspector panel contains the list of common attributes and values from all
the currently selected / scoped objects. Attributes with a value that is the same across all
selected objects will have that value displayed in the panel. Attribute values can be edited by
clicking on the value and entering a new value directly. New values can be applied by pressing
ENTER; pressing ESC will abort the change.
Attributes that have different values across the selected objects are displayed as <>. These
values can be edited directly too but new values will be applied to all selected objects
indiscriminately. Care should therefore be exercised when updated values such as the X and Y
attributes since this could inadvertently position all objects on top of each other.
As with the SCH List panel, the SCH Inspector panel provides the Smart Edit feature
for string-based attributes. When an attribute value of a string-based parameter is
focused for editing, a
button will appear on the right of the control. Clicking this
button will reveal the Smart Edit dialog which can be used to create Batch Replace or
Formula based text substitutions.

Further information about the use of the SCH Inspector panel can be found in the
Altium Wiki at: http://wiki.altium.com/display/ADOH/Schematic+Inspector+Panel.

Altium Essentials_July2013_Colby
10-July-2013

500

41.7 Find and Replace


Complete or partial substitutions on text
be performed using a standard Find and
Replace process. Altium Designer's Find
and Replace Dialog can be accessed from
the Edit Replace Text menu command
by pressing the CTRL+H shortcut. Once
launched, a number of text substitution
options are available:

To target a section of a string, the *


? characters can be used as wildcard
matches on a string of text or on
individual characters respectively.

Use the Scope section of the dialog to


control which documents will be
targeted (Sheet Scope), the selection
state of objects to be targeted within
those documents (Selection), and
whether text within All Identifiers, Net
Identifiers Only, or Designators Only
will be targeted (Identifiers)

Partial string substitutions can be


performed using the syntax
{oldtext=newtext}. This means
Figure 551. Performing a partial string substitution
that a portion of the current string
(oldtext) can be changed to a new
string (newtext). In Figure 12, the letters RB will be replaced with LCD. Any other characters
in each found net identifier will remain the same. For example, the following changes would
occur:
Before Find and Replace

After Find and Replace

RB1

LCD1

RB200

LCD200

RBout

LCDout

RB_CLK

LCD_CLK

RB[0..7]

LCD[0..7]

Table 15. Example of applying the Find and Replace settings from Figure 12.

41.8 Smart Paste


The Schematic Editors Smart Paste feature allows copies of a selected object to be optionally
transformed and pasted as a different object. For example a selection of Net Labels could be
copied and Smart Pasted as Ports, or a group of selected Sheet Entries could be pasted as
Ports+Wires+Net Labels with busses expanded into individual wires. To use Smart Paste:

Select one or more objects as the basis for the copy operation then copy them to the
clipboard (CTRL+C or Edit Copy).

Choose Edit Smart Paste from the menus (CTRL+SHIFT+V), to display the Smart Paste
dialog (Figure 552).

Altium Essentials_July2013_Colby
10-July-2013

501

Figure 552 The Smart Paste dialog.

Choose the objects to paste


This section displays a list of all the objects in the clipboard grouped by their type. Select the
objects to paste using the check box beside each Schematic Object Type. Altium Designer
maintains a separate clipboard to the main windows clipboard in order to have better resolution
of the details of clipboard objects, but if required, the Windows Clipboard Contents can also be
used as the source of a Smart Paste.
Choose Paste Action
Before new objects can be pasted, an appropriate Paste As object needs to be selected to
define how the selected objects will be transformed. Pasting objects as Themselves will perform
a standard paste operation. The other options will transform the source object into the chosen
object, or collection of objects, prior to pasting.
The possible transformations include:

Ports, Sheet Entries or Net Labels can be transformed into equivalent Ports, Sheet Entries,
Net Labels, or a Text Frame/Note or a Port and Net Label set per object (with Wires).

Label, Text Frame or Notes can be transformed into Labels, Text Frames or Notes.

Windows Clipboard Text can be transformed into Net Labels, Ports, Sheet Entries, Labels,
Text Frames, Notes, or a Port and Net Label set per object (with Wires).

Windows Clipboard Graphics can be transformed into an Image.

Paste Array
Enable this option to copy the selected objects as a two-dimensional array. The total number of
copies created will be equal to the number of columns times the number of rows. For objects
involving identifiers, use the Text Increment controls to determine how the Primary (and
Secondary where applicable) identifiers are incremented. Use the Direction field to determine
how incrementing is applied Horizontal First or Vertical First. To obtain exact
copies of the identifiers, with no incrementing, set the direction to None.
Enable the Remove Leading Zeroes option to clear any leading zeroes at the front of an object
identifier.
A prompt for the array's starting location will be requested once the Smart Paste dialog's OK has
been clicked. Simply position the cursor at the desired location and click once.

Altium Essentials_July2013_Colby
10-July-2013

502

Figure 553 An example of Smart Paste in action, with selected ports copied and replaced by a pasted
harness connector and port.
Altium Essentials_July2013_Colby
10-July-2013

503

Altium Essentials_July2013_Colby
10-July-2013

504

Module 42: Schematic Design Directives


Altium Designer uses Design Directives as a means for capturing instructions that are passed to
other parts of the software. They are objects that are placed solely within the confines of
schematic sheets. A variety of such directives are on offer, the use of which can be associated to
the following three areas:

Directives associated with compilation of source schematic documents.

Directives used to pass information defined on a schematic sheet through to the PCB.

Directives used in the real-time analysis of nodes in an FPGA source schematic.


The following sections take a closer look at these areas and the directives on offer.

42.1 Compilation Related Directives - No ERC


Designs evolve over time and are captured in stages. As each stage is bedded down, it's not
uncommon to want to check them in isolation to the rest of the design. Compilation of an
individual schematic document (or the entire project) at intermittent stages in the capture process
will often yield a number of error messages, caused by circuitry that is yet to be captured, or
interface wiring between circuit fragments that are still incomplete. Such messages are of no real
value since they only create noise around the real information. The quickest and easiest way to
suppress these compilation errors is by placing a No ERC directive.
The No ERC directive supports a number of different styles, and can be displayed in any color;
useful for further reflecting the design intent for the circuit. They can also be optionally
suppressed for printing.
There are also 2 modes of operation:

Suppress All Violations - This is achieved by placing a Non-Specific No ERC directive


and in this mode, all possible warning or error conditions are suppressed.

Suppress Specific Violations - This is achieved by placing a No ERC Targeting a


Specific Error directive and In this mode only selected warning or error conditions are
suppressed, any other warning or error will be detected and reported.
Suppressed errors can be displayed in the Messages panel by enabling the Report
Suppressed Errors in Messages Panel option in the Error Reporting tab of the
Options for Project dialog. This feature can be used in the final stages of design to
ensure that no critical errors have been inadvertently suppressed.

42.1.1

Non-Specific No ERC Directive <PVN >

When placed on a net, the Non-Specific


No ERC directive will suppress all
warnings and/or errors from being
generated by the compiler for that net.
Use this directive to deliberately limit
error checking at a certain point in the circuit that is known to generate a warning (such as an
unconnected pin), while still performing a comprehensive check of the rest of the circuit.
To place a Non-Specific ERC directive:
1. Select the Place No ERC
icon from the Wiring toolbar, or use the Place Directives
Generic No ERC command from the main menu.
2. Optionally press TAB to edit the No ERC directive appearance before placement (Figure
118). on an electrical object to attach the No ERC directive to that net.
3. Click
4. Loop back to Step 2 to continue placing additional No ERC directives or right-click (or press
the ESC key) to end the command.

Altium Essentials_July2013_Colby
10-July-2013

505

Figure 554. Specifying settings for a Generic No ERC directive.

42.1.2

No ERC Targeting a Specific Error Directive <PVE >

When placed on a net, the No ERC


Targeting a Specific Error directive will
suppress all warnings and/or errors from
being generated by the compiler for that
net. Use this directive to deliberately limit error checking at a certain point in the circuit that is
known to generate a warning (such as an unconnected pin), while still performing a
comprehensive check of the rest of the circuit.
To place a No ERC Targeting a Specific Error directive:
1. Select the Place No ERC Targeting a Specific Error
icon from the Wiring toolbar, or
use the Place Directives Specific No ERC command from the main menu.
2. If errors are present, an interactive Place Specific NoERC dialog will be launched pre-loaded
with a list of all violations in the current schematic sheet. To be confident that it accurately
reflects the violations that currently exist, click the Recompile project button.

Figure 555. Configuring the Specific No ERC directive during placement.

3. If there are multiple violations detected, the Automatically recompile option should also be
enabled to ensure the list remains accurate as directives are placed.
4. Click on a violation in the list, the view of the schematic sheet will automatically change to
show the violating object. Note that each detected violation can be expanded to show details
of the error.
Altium Essentials_July2013_Colby
10-July-2013

506

5. Click the Suppress checkbox that corresponds to the error of interest.


6. Click OK to close the dialog, a No ERC marker will appear on the cursor, ready for
placement on the point in the circuit that is creating the violation.
7. Place the directive on the point of violation in the circuit. After clicking to place, the Place
Specific NoERC dialog will automatically re-appear ready to resolve the next violation.
8. Continue to place directives to resolve all violations on the current schematic sheet, then
move to the next sheet in the project. The big advantage of this guided automatic process is
that each directive is automatically configured to only suppress specific errors/warnings.

42.1.3

Editing No ERC directives after placement

Once placed, a No ERC directive can be changed between suppressing specific ERC errors /
warnings, or suppressing all ERC errors / warnings. To edit an existing No ERC directive, double
click it in the Schematic Editor window to reveal the No ERC dialog.

Figure 556. Specifying settings for a Specific No ERC directive.

Altium Essentials_July2013_Colby
10-July-2013

507

42.1.3.1 Right-click to Place a Specific No ERC Directive


An alternative approach to working through the Place Specific NoERC dialog is to selectively
place a Specific No ERC directive on a point in the circuit that is already showing a violation,
highlighted by a wavy colored line. To place a Specific No ERC marker targeted to that
violation, right-click on the violating object (not the wavy colored line) and select the Place
NoERC to Suppress command. The No ERC directive will appear on the cursor, pre-configured
to suppress this violation. Press TAB to edit the look of the directive before placement.

Figure 557. Using the Right-Click menu to place a Specific No ERC directive.

Pre-configured specific No ERC directives can also be placed by right-clicking a warning or error
in the Messages panel.

Figure 558. Using the Right-Click menu in the Messages Panel to place a Specific No ERC directive.

42.1.4

The NoERC Manager

The NoERC Manager is accessible from the Tools NoERC Manager menu and is useful for
reviewing and editing all the No ERC directives used across an entire project.

Figure 559. Using the NoERC Manager to control all NoERC directives within a design.

Use the NoERC Manager to edit any number of No ERC directives before applying them to the
design by clicking the Generate ECO button.

Altium Essentials_July2013_Colby
10-July-2013

508

42.1.5

Controlling the Printing of No ERC Directives

By default, all design directives are included during printing. This can, however, be changed from
within the Schematic Print Properties dialog.

Figure 560. Controlling the printing of design directives.

This dialog can be accessed via:

File Page Setup from the Schematic Editor menus, then click the Advanced button.

File Default Prints from the Schematic Editor menus, select Schematic Prints in the list
then click Configure.

The Preview Schematic Prints dialog, right-click and choose Configuration.

In an Output Job, right-click on the Schematic Prints and select Configure.

42.1.6

NoERC Behavior in Older Versions of Altium Designer

When a schematic that includes Specific No ERC markers is opened in a version of Altium
Designer prior to build 10.XXX.22898, Specific No ERCs will automatically be converted to
Generic No ERCs.

42.2 Compilation Related Directives - Compile Mask


A No ERC directive is great for suppressing of a low number of violating pins, ports, sheet
entries, or nets within a design. But in some cases, it may be desirable to remove an entire
section of the design; including components. For this, the Compile Mask directive can be placed,
like a blanket, over the sections of the design that need to be masked from compilation.
As its name suggests, the Compile Mask directive simply instructs the Compiler to ignore any
objects that fall completely within the bounds of the defined mask. Consider the example
schematic circuitry in Figure 561, where the wiring to the LCD1 device is not yet complete.
Compiling just this schematic (Project Compile Document) will result in numerous violation
messages (also shown) caused by the incomplete circuitry.
By placing a Compile Mask directive around the incomplete circuitry, these violations will be
ignored by the Compiler, while the rest of the circuit on the schematic which is completely
wired is checked. Objects that fall completely within the bounding rectangle of the mask will
appear grayed-out.
To place a compile mask (Figure 562):
1. Select Place Directives Compile Mask <PVK>.
2. Optionally press TAB to edit the appearance of the Compile Mask before placement.
3. Click to place the top left corner.
4. Click to place the bottom right corner.
Altium Essentials_July2013_Colby
10-July-2013

509

5. Loop back to Step 2 to continue placing additional Compile Masks or right-click (or press the
ESC key) to end the command.

Figure 561. Compiler warnings and errors resulting from an incomplete circuit capture.

Figure 562. Applying a Compile Mask to remove sections of the design from compilation (and inclusion in
the design).

Altium Essentials_July2013_Colby
10-July-2013

510

42.2.1

Disabling Compile Masks

Once placed, Compile Masks can be temporarily disabled by clicking on the small triangle in the
upper left; click once to disable the mask, click again to re-enable it. This provides a convenient
way of controlling the impact of the Compile Mask without needing to remove it completely from
the design.

42.2.2

Creative Compile Mask Applications

Because all elements of a design covered by a Compile Mask directive are invisible to the
design compiler, they will be omitted from the design. This feature can be put to great use when
simulation is included as part of the design flow.
Voltage and Current sources are necessary elements when running circuit simulations, but they
have no place on the completed PCB. By applying a small amount of planning to the structure of
the circuit, it is usually possible to group all simulation-specific components in one section of the
design that can be covered by a Compile Mask.
When the circuit is used for simulation, the Compile Mask is disabled to reveal the simulationspecific components. Once the circuit is verified and ready for inclusion in the design, the
Compile Mask can be re-enabled so that the simulation-specific components are excluded from
the design. If the design should ever need to be changed again in the future, another simulation
pass can be quickly executed prior to signoff by simply disabling the Compile Mask (to reveal
the simulation-specific components again).

Figure 563. Circuit with Compile Mask Disabled and ready for simulation.

Figure 564. The same circuit with Compile Mask Eabled and ready for use in a design.

Altium Essentials_July2013_Colby
10-July-2013

511

42.3 PCB Related Directives


As a Unified Design Environment, Altium Designer provides the ability for PCB requirements to
be defined prior to laying out the board. This is achieved by adding and specifying parameters to
objects placed on the schematic sheet(s).
For certain schematic design objects such as components, sheet symbols, ports, etc this
simply involves adding the relevant parameter(s) as part of that object's properties. For net
objects such as wires and buses, parameters cannot be added directly as a property of the wire
or bus. Instead, the parameters required to hold the information are specified using dedicated
design directives.
The following information can be specified, using directives and will be transferred to the
appropriate PCB-based definitions during design synchronization:

PCB layout constraints

Net classes

Differential pairs

By including design directives within the Schematic, design engineers can specify explicit design
constraints and it ensures the Schematic remains the master record of the design. Any
amendments to the design would be carried out on the schematic side only and pushed across
to the PCB.
This can become particularly important when multiple people are working on the design especially if they are geographically separated. Rather than attempting to communicate with one
another through chains of emails, the person capturing the design can ensure that particular
constraints are indeed used during the layout phase.

42.4 Parameter Set Directives


The Parameter Set directive is a PCB Related directive that acts as a
for any number of parameters targeting the net that the Parameter Set
directive is attached to.
A default Parameter Set directive, one that is devoid of parameters, can be
placed (Place Directives Parameter Set) and the relevant parameter(s)
added to it. However for the three types of information listed, there are predefined Parameter
directives that can be used (available from the same sub-menu). The following sections take a
closer look at using these parameter-based directives.

42.4.1

PCB Layout directive

The PCB Layout directive (Place Directives PCB Layout) is used to attach rule-based
parameters to one or more net objects in the schematic. When first placed, a default rule
parameter with undefined values is included and should be edited. Press TAB before placing the
PCB Layout directive or double-click an already placed PCB Layout directive to display its
Parameters dialog. Click the Edit button in the Parameters dialog of the PCB Layout directive to
open the Parameter Properties dialog. Next, click the Edit Rule Values to expose the Choose
Design Rule Type dialog from where the PCB rules can be specified (Figure 565).
Double-clicking a rule type in the Choose Design Rule Type dialog will expose the relevant Edit
PCB Rule (From Schematic) dialog and the process of defining the rule constraints can be
completed (Figure 566).

Altium Essentials_July2013_Colby
10-July-2013

512

Figure 565. Editing the value for a Rule in a PCB Layout directive.

Figure 566. Specifying the constraints for a given rule.


Altium Essentials_July2013_Colby
10-July-2013

513

The entry for the parameter's Value field will be the rule type chosen, along with the specified
constraints. Figure 567 illustrates several defined rule parameters for a PCB Layout directive.

Figure 567. Defining multiple constraints for a particular net.

Figure 568 illustrates the resulting rule entries in the PCB Rules and Constraints Editor dialog,
for the PCB Layout directive defined in Figure 567.

Figure 568. Generated Design Rules on the PCB side.

42.4.2

Net Class Directive

Net Class directives enable the designer to specify Net Classes on the Schematic, so when a
PCB is created from the schematic source documents, the information in any Net Class
directives is used to create a corresponding Net Class on the PCB. To make a net a member of
Altium Essentials_July2013_Colby
10-July-2013

514

Net Class, attach a Net Class directive to the relevant wire or bus and set the directive's
ClassName parameter to the name of the desired class.
While Net Classes can be created fairly easily from within the PCB editor, the logical function or
grouping of Nets is usually much clearer in the Schematic and so it makes more sense to drive
the process from there.

Figure 569. Once propagated to the PCB, Net Classes are visible in the Object Class Explorer.

To ensure Schematic defined Net Classes are propagated to the PCB, the following options
must be set in the Options for PCB Project (Project Project Options) dialog:
1. Check the Generate Net Classes option located under the Class Generation tab.
2. Under the Comparator tab, set the Differences Associated with Nets Extra Net
Classes to Find Differences.

Ensure the Generate


Net Classes option is
checked

Figure 570. Check the Generate Net Classes option to propagate Net Class Directives to the PCB.

Altium Essentials_July2013_Colby
10-July-2013

515

This must be set to


Find Differences

Figure 571. Set the Extra Net Classes option Find Differences to propagate Net Class Directives to the
PCB.

42.4.3

Differential Pair Directive

Figure 573. Adding Differential Pair Directives.

Differential Pair directives can be used


define differential pairs on the schematic.
The two nets that constitute a pair must
named with the suffixes _N and _P, and a
directive must be attached to each. Figure
573 illustrates the definition of two
differential pairs; each pair consists of two
nets one positive and one negative and
a Differential Pair directive has been
added to each of the four nets.
Behind the scenes, the Differential Pair
directive contains a single parameter
with the name DifferentialPair and
Figure 572. Differential Pair Directives contain a single
a value of True as revealed in the
DifferentialPair=True parameter.
Parameters dialog (Figure 19).
The differential pair definitions will be transferred to the PCB during design synchronization and
can be quickly verified using the PCB panel when configured in the Differential Pair Editor mode
(Figure 574).

Altium Essentials_July2013_Colby
10-July-2013

516

Figure 574. Viewing Differential Pairs from the PCB Panel's Differential Pairs Editor.

42.5 Using Blankets with Directives


Parameter Set directives can only target the specific net that they are attached to but when
combined with a Blanket (Place Directives Blanket), their scope can be expanded to cover
all nets within the blanket. The process of using a Blanket is to first place the Blanket over the
nets to be targeted, and then attach one or more Parameter Set directives to the Blanket.

The Blanket effects


all objects within
its boundary.

Net Class applied


to the Blanket

Figure 575. Using a Blanket to apply a Parameter Set directive to multiple objects.

42.5.1

Highlighting Nets Covered by a Blanket Directive

To confirm which nets will be effective by a Blanket, use the Schematic Editor's highlighting pen
feature. Click on the
button at the bottom-right of the main design window, then click on the
perimeter of the Blanket (Figure 576).

Altium Essentials_July2013_Colby
10-July-2013

517

Figure 576. Using the highlighting feature to visually check which nets are effected by a Blanket.

To control the visibility of Blankets in PDF or printed outputs, locate the Blanket
checkbox in the Smart PDF or Schematic Print Properties dialog and (un)check it as
desired.

42.6 Indirect (Parameter-Based) Design Directives


Parameter Set Directives are necessary when targeting design objects in the Schematic that
can't contain parameters, but for those objects that can, design directives can be applied
indirectly by adding (and defining) them as parameters to the relevant schematic object. In
essence, they are Parameter-Based directives.
Examples of how Parameter-Based directives could be used would include limiting the height of
particular component, or adding a clearance constraint targeting all objects in the design. The
required parameter that defines the constraint is added to the object as a rule in exactly the
way that parameters are added to a PCB Layout directive.
When synchronized with the PCB, Parameter-Based directives that have been added to objects
in the Schematic will become PCB design rules. The scope of the corresponding PCB design
will be determined by the nature of the object to which the parameter was first assigned. Table
16 summarizes the Schematic parameter-to-PCB rule scope options that are supported,
including those defined by placing PCB Layout directives.
Add a Parameter From...
(as a rule) to a...

For a PCB rule


scope of...

Pin

the Parameters tab of the Pin Properties dialog

Pad

Port

the Parameters tab of the Port Properties dialog

Net

Wire

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the wire using
the Place Directives PCB Layout command

Net

Bus

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the Bus using
the Place Directives PCB Layout command

Net Class

Altium Essentials_July2013_Colby
10-July-2013

518

Add a Parameter From...


(as a rule) to a...

For a PCB rule


scope of...

Harness

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the Harness
using the Place Directives PCB
Layout command

Net Class

Blanket

the Parameters dialog, after placing a PCB Layout


Directive (Parameter Set object) on the edge of the
Blanket using the Place Directives PCB
Layout command. Include a ClassName parameter
to create a net class for all nets covered by the
Blanket, which will then be used for the rule scope.

Net Class

Component

the Parameters region of the Component


Properties dialog

Component

Sheet Symbol

the Parameters tab of the Sheet Symbol dialog

Component Class

Sheet

the Parameters tab of the Document Options dialog


( Design Document Options )

All Objects

Table 16. Parameters added as a rule to Schematic Objects will appear as PCB rules after synchronization.

42.6.1

Specifying component classes

In a similar vein, component classes can be defined on the schematic by adding a ClassName
parameter to targeted components and setting its value to the desired class name.
When the design is transferred to the PCB, the defined component classes will be created so
long as the Generate Component Classes option (for User-Defined Classes) is enabled on
the Class Generation tab of the Options for Project dialog.

42.7 FPGA Related Directives


In keeping with its LiveDesign methodology, Altium Designer provides the ability to analyze nets
the in an FPGA design while it is running on a target physical device. Where a design net is
connected directly to an external pin on the physical device, Altium Designer uses standard
JTAG communications to monitor and report the status of that pin in near real-time. For signals
that remain internal to the FPGA, virtual instruments such as the Logic Analyzer can be used to
gain valuable operational and debug information while the design is running. To facilitate this
analysis, Altium Designer provides the Probe and Instrument Probe directives respectively.

42.7.1

Probe directive

The Probe Directive (Place Directives Probe) can be placed directly onto any net that
connects directly to an external pin on the target FPGA device. When first placed, it will be
grayed out and won't become active until Altium Designer is connected to a live target (i.e.
NanoBoard or custom board supporting JTAG communications) and the JTAG Viewer Panel
(found within the Devices View) is opened (and left open).
When active, the Probe will appear Red and its value will be reported (in near real-time) on the
schematic as a binary or hexadecimal value (Figure 577). The key to the pin-state display is the
directive's ProbeValueDisplay parameter. In fact the same effect could be achieved by
placing a Parameter Set directive that also contains this parameter.

Altium Essentials_July2013_Colby
10-July-2013

519

Figure 577. Using Probes to monitor the state of pins in a live, FPGA target.

For the pin state to be updated in real-time on the schematic, the source FPGA design
must be downloaded to the physical FPGA device and the associated JTAG Viewer
panel for that device must be open and remain open. The JTAG Viewer panel for a
physical device is accessed by clicking the JTAG Viewer Panel button on the
associated Instrument panel for that device. The latter is loaded into the Instrument
Rack Hard Devices panel upon double-clicking the entry for the device, in the Hard
Devices chain of the Devices View. For more information on one of these panels,
press F1 with the cursor over the (focused) panel.

42.7.2

Instrument Probe Directive

One limitation of the Probe directive is that it can only provide real-time information when placed
on a net that connects to an external FPGA pin. For probing internal nets, Altium Designer
provides the Instrument Probe directive. In fact, the Instrument Probe directive can be used as a
general probing device since it reverts to a standard Probe directive when placed on a net that
connects directly to an FPGA pin.
When an Instrument Probe directive is placed on an internal net, it instructs the system to
the associated net directly to the input of a monitoring instrument (e.g. a Logic Analyzer) without
having to explicitly wire that net up through the design hierarchy to the sheet with the instrument
on it.
The key element that turns this directive from being a simple probe into a powerful pointpoint-monitoring aid is its InstrumentProbe parameter. Once the directive is placed at the
of interest, it is this parameter that is used to effectively 'link' that point to the monitoring device.
Simply enter a meaningful name for the probe point such as the name of the associated net or
the particular signal being monitored then connect a wire to the required input of the monitoring
instrument and attach a wire and net label with same name (value) defined for the
InstrumentProbe parameter (Figure 578).

Altium Essentials_July2013_Colby
10-July-2013

520

Figure 578. Using Instrument Probes to monitor the state of internal nets within in a live, FPGA target.

Measurement information obtained through a directive's ProbeValueDisplay


parameter is, like the Probe directive, displayed in real-time, over the Hard Devices
JTAG chain. In contrast, measurement information obtained through the directive's
InstrumentProbe parameter is only displayed after compilation, over the Soft
Devices JTAG chain..

42.7.2.1 A Word about probing buses


When an Instrument Probe directive is attached to a Bus object, the entire bus is taken up to
the top-level sheet, irrespective of the name assigned to the InstrumentProbe parameter.
When a net label is subsequently added to the input of the monitoring instrument, the required
bus width must be defined.
For example, if an Instrument Probe directive was attached to a Bus with identifier
Port1_Out[7..0] on a lower-level sheet, the value for the InstrumentProbe parameter
could be simply set to Port1_Out. When the design is compiled, Altium Designer will connect
the entire bus up to the sheet with the monitoring device (e.g. a configurable LAX). So if the
entire bus requires monitoring, a bus connection would be made to the monitoring device and
given a Net Label of Port1_Out[7..0]. If only a subset of the bus requires monitoring, then
that should be reflected in the range of signals included in the Net Label (e.g.
Port1_Out[4..2]).

Altium Essentials_July2013_Colby
10-July-2013

521

Module 43: Parameters and Parameter


Management
In design not all information is graphical, and Altium Designer provides parameters that allow a
designer to add other types of information to design objects.
A parameter is a non-electrical child object of an electrical design primitive or design directive. It
is a user-definable object that allows users to add additional information to a design object that
supports the use of parameters (for example; a part). Such an object can have multiple
parameters defined, each of which can be displayed with respect to its name and/or value.
User-defined design attributes are added to a design using parameters. Component parameters
can be used to define anything from component ratings, to stock information, to PCB component
class membership. Even links to component datasheets can be included as a parameter.
Parameter Sets containing PCB layout, Net Class and/or differential pair directives can be added
to nets to specify PCB design requirements, or to include the net in a PCB net class for example.
Document parameters can be used to define things like the title of the sheet, the designer's
name, and so on.

43.1 Parameters
43.1.1

Project Parameters

The Project Options dialog (Project Project Options) allows parameters to be added the
overall scope of the project. In the dialog's Parameters tab, the Add button is used to enter the
Name and Value properties of a new parameter.

Figure 1. Parameters tab of the Project Options dialog.

43.1.2

Document Parameters

Parameters can be added to a specific document through the Document Options dialog (Design
Document Options). In the dialog's Parameters tab, the Add button is used to add a named
parameter with its corresponding value and properties.

Altium Essentials_July2013_Colby
10-July-2013

522

Figure 2. Parameters tab of the Document Options dialog.

Alternatively, the Add as Rule button can be used to add a specific design rule directive to the
schematic. This defines a design constraint prior to board layout, and will create a corresponding
PCB design rule when the design is transferred to the PCB document. The Name field in the
Parameter Properties dialog box is locked as Rule and the Type field is fixed as STRING.

Figure 3. The Parameter Properties dialog box when adding a Rule parameter.

In the Parameter Properties dialog for the rule, the Edit Rule Values button opens the Choose
Design Rule Type dialog. This dialog lists all available rule categories and types that are
available in the PCB document and can be validly added as a rule parameter in the schematic
document. Selecting a rule type and clicking OK (or double-clicking on it) will open its
corresponding Edit PCB Rule (From Schematic) dialog, from where the constraints for the rule
can be defined.

43.1.3

Object Parameters

Parameters may be added to any of the following design objects:

Part: From the Parameters region of the Component Properties dialog (or Library
Component Properties dialog if added when defining a component in the Schematic Library
Editor)
Pin: From the Parameters tab of the Pin Properties dialog

Port: From the Parameters tab of the Port Properties dialog

Sheet Symbol: From the Parameters tab of the Sheet Symbol dialog

Directives: (From their corresponding Parameters dialog)

Altium Essentials_July2013_Colby
10-July-2013

523

a) Parameter Set directive


b) PCB Layout directive
c) Probe directive
d) Stimulus directive
e) Test Vector directive
f) Net Class directive
g) Differential Pair directive
An object's parameters can be added to, edited and deleted though its Properties dialog, which
can be accessed by right-clicking on the object and selecting Properties from the context menu.
The Properties dialog can also be opened by double-clicking on a design object.

Figure 4. The Parameters area in the Component Properties dialog.

Altium Essentials_July2013_Colby
10-July-2013

524

Figure 5. Parameters tab of the Sheet Symbol dialog.

Figure 6. Parameters Set directive dialog to add, edit, and delete parameters.

43.2 Editing Parameters


The properties of a parameter object can be edited using both a graphical or non-graphical
approach. The following three methods of non-graphical editing are available, as detailed below:

Editing via an associated properties dialog

Editing by the SCH Inspector panel

Editing via the SCH List panel

Altium Essentials_July2013_Colby
10-July-2013

525

43.2.1

Editing via an associated properties dialog

In an object's Properties dialog, a selected parameter can be accessed via the Edit command,
which opens its Parameter Properties dialog where the properties can be edited.

Figure 7. Parameter Properties dialog.

43.2.2

Editing by the SCH Inspector panel

The SCH Inspector panel is used to view and edit the properties of one or more design objects in
the current document SHIFT + Click selects multiple objects. Used in conjunction with suitable
filtering, the panel can be used to make changes to multiple objects of the same kind. More
details on the SCH Inspector will be provided in other course information.

43.2.3

Editing via the SCH List panel

The SCH List panel displays design objects from one or more documents in tabular format,
allowing object attributes to be quickly inspected and modified. More details will be provides in
other course information.

43.2.4

Graphical editing

In this method of editing, a parameter object can be directly selected in the workspace and its
location changed (moved) graphically.
If the Enable In-Place Editing option is checked on the Schematic - General page of the
Preferences dialog (Tools Schematic Preferences), the value for a parameter can be directly
edited in the workspace. By selecting the parameter then clicking once to invoke the feature, a
new value can be entered, then confirmed by clicking away from the parameter field or pressing
ENTER to effect the change.

Figure 8. A parameter object displayed in the workspace.

43.3 Using the Parameter Manager


The Parameter Table Editor dialog can be used to add and edit parameters across the entire
design, or across an entire library. When this dialog is opened, it gathers all parameter data for
the entire design and presents it in a table-like grid. The Parameter Table Editor is launched by
selecting Tools Parameter Manager.
After selecting Parameter Manager from the menu, the Parameter Editor Options dialog
appears first. This dialog is used to determine which type of parameters are loaded into the
Parameter Table Editor dialog.

Altium Essentials_July2013_Colby
10-July-2013

526

To select only component parameters for example, all options would be disabled in the Include
Parameters Owned By section, except for the Parts (components) option. Or to work on
document parameters, only the Documents option would be enabled.
Note the Exclude System Parameters option. These parameters include things like component
model settings, document parameters that were defined in the template, and so on. This option
is best explored when a designer is more familiar with managing parameters.

43.3.1

Renaming Parameters

A parameter can be renamed by right-clicking in any cell in that column and selecting the
Rename Colum from the context menu. A Rename Existing Parameter dialog will open where a
new name can be entered. The column heading will have then changed, and will show a small
blue triangle next to the name (as shown in Figure 10) to indicate that the value has altered.

Figure 9. Using the Parameter Table Editor to rename an existing parameter.

Figure 10. The renamed parameter

43.3.2

Adding a Parameter

Figure 9 shows that the cells in the Publisher column are filled with an oblique hatched pattern,
indicating that those component objects do not have the parameter. In this example the
Publisher parameter can be added to a range of components by first selecting those cells using
the SHIFT + Click combination. The parameter can then be added by right-clicking on one of the
selected cells and choosing Add from the pop-up context menu. A small green plus symbol will
appear in each selected cell, indicating that a new parameter has been added.
Altium Essentials_July2013_Colby
10-July-2013

527

Figure 11. Adding parameters to the selected components; before (left) and after (right).

With the parameter added to those components, the Publisher information can be defined for
each one. The Parameter Table Editor dialog supports standard table editing shortcuts.
Selecting a cell and pressing F2 (or just clicking again) enables editing, and ENTER will apply
the
edit.
Also,
multiple cells can be edited simultaneously by selecting a range and choosing Edit from the
right-click pop-up menu. Once a new value is entered in a cell, pressing ENTER applies the edit
to all selected cells.

Figure 12. Select the cells, right-click and Edit (left), type in new value (center) and press ENTER (right)

43.3.3

Applying Parameter changes

The parameter editing detailed above performs (and holds) the changes in the Parameter Table
Editor, but the changes need to be applied to the components on the schematic sheets. This is
done by generating an ECO (Engineering Change Order) which is then applied to the design.
Once a user is satisfied with the parameter edits, clicking the Accept Changes (Create ECO)
button will bring up the Engineering Change Order dialog where the changes can be validated as
acceptable (Validate Changes), and then executed (Execute Changes) to apply the parameter
changes to the components.

Altium Essentials_July2013_Colby
10-July-2013

528

Figure 13. System applied changes are always done through the Engineering Change Order dialog.

Altium Essentials_July2013_Colby
10-July-2013

529

Module 44: Design Refactoring


Refactoring, in the traditional sense, is the act of restructuring an existing design (or body of
code in programming land) without changing the functionality of that design (or code). In terms of
PCB design, there are various situations in which some form of refactoring would provide a
beneficial and timely solution:

A part has become obsolete and needs to be replaced by a functionally-equivalent subcircuit.


A schematic design is to become a sub-circuit for use within a larger design.

An existing schematic sub-sheet is to be made into a device sheet for reuse across future
designs.

An existing device sheet needs to be localized and customized for the current design.

Some existing sub-circuitry needs to be moved to another sheet.

Altium Designer provides a number of features that collectively form its Design Refactoring
capabilities giving the designer maximum flexibility to restructure their design according to
requirements.

44.1 Refactoring Commands


Certain refactoring commands can be accessed from the Edit Refactor menu, but far better
access is gained using the Schematic Editor's right-click context menu. The commands available
from the Refactor sub-menu will change in context with the object under the cursor applicable
to a part, sheet symbol, or device sheet symbol.
Figure 579 illustrates the various commands available as part of the Schematic Editor's Design
Refactoring arsenal.

Figure 579. The best way to access refactoring commands is through the Schematic Editor's right-click
context menu.

Altium Essentials_July2013_Colby
10-July-2013

530

44.1.1

Converting a Part to a Sheet Symbol

This feature is ideal where an existing part has become obsolete and needs to be replaced by a
functionally-equivalent sub-circuit, defined on a separate sheet.
Right-clicking on a part and choosing Refactor Convert Part To Sheet Symbol converts the
part symbol into a sheet symbol. Connectivity is retained, with the sheet entries named as per
the original pin naming, and I/O Type set to reflect the original pin electrical type.
The sheet symbol's Designator is initially set to the original part's designator and its Filename
initially set to the part's comment text.

Figure 580. Convert an existing part into a sheet symbol.

If the required child sheet exists, simply change the sheet symbol's Filename to point to that
sheet. If not, a sub-sheet can quickly be created by right-clicking on the sheet symbol and
choosing the Sheet Symbol Actions Create Sheet From Sheet Symbol command. In this
latter case, ports corresponding to the symbol's sheet entries will be placed on the new subsheet, ready for the replacement sub-circuitry to be defined and hooked up.
The Convert Part To Sheet Symbol command is also available from the right-click
Part Actions sub-menu, as well as the main Tools Convert menu.

44.1.1.1 Pushing a Part onto a New Sub-Sheet


An alternative, and perhaps faster method to achieve a similar end result, is to right-click on the
required part and choose the Part Actions Push Part To Sheet command. The following
sequence of steps are essentially performed:

The part is copied.

The original part is converted to a sheet symbol with Designator set to the designator of the
original part, and Filename set to OriginalPartComment.SchDoc. Again, sheet entry
naming and I/O Type reflects the pins of the original part.

A new schematic sheet is created from the sheet symbol, named using the symbol's
Filename value.

The copy of the original part is pasted at the center of the sheet, with ports corresponding to
the sheet symbol's sheet entries placed and wired to the part's pins.
The designer can then simply delete the part and replace it with functionally-equivalent circuitry
as required.

Altium Essentials_July2013_Colby
10-July-2013

531

Figure 581. Using the Push Part To Sheet command quickly converts the initial part into a sheet symbol,
then pastes a copy of that part on a newly created sheet, referenced by that symbol.

44.1.2

Converting a Part to Ports

This feature is ideal for when an existing standalone sub-design, such as a power supply or a
satellite board is to be made into a sub-circuit, to be used within a larger, single board design
perhaps to minimize manufacturing costs. This is the reverse of the previous section, which was
replacing a component with a lower-level sub-circuit. Rather this is the process of plugging a
sub-circuit into the higher-level design, making it available for connection to a point above in the
hierarchy.
Right-clicking on a part and choosing Refactor Convert Part To Ports converts the part
symbol into a set of ports. Connectivity is retained, with the ports named as per the original pin
naming, and I/O Type set to reflect the original pin electrical type.

Altium Essentials_July2013_Colby
10-July-2013

532

Figure 582. Use the Convert Part To Ports command to quickly replace a part with ports by which to hook a
sub-circuit into a higher-level design.

The sub-circuit's insertion into the hierarchy is then completed by adding a sheet symbol on the
relevant higher-level parent sheet. This can be done quickly by making that sheet active and
using the Sheet Actions Create Sheet Symbol From Sheet or HDL command. Choose the
document (containing the ports created from the part) in the Choose Document to Place dialog.
A sheet symbol will appear on the cursor locate within the sheet and click to effect placement.
The sheet symbol references the underlying sub-sheet (through its Filename property) and has
sheet entries corresponding to the ports on the child sheet.

Altium Essentials_July2013_Colby
10-July-2013

533

Figure 583. Use the Create Sheet Symbol From Sheet or HDL command to quickly add a sheet symbol,
thereby threading the sub-circuit into the design hierarchy.

44.1.3

Converting a Schematic Sheet to a Device Sheet

At some stage, the concept of designing for reuse has to increase in its abstraction. If we simply
stopped at the component level, then each design that featured a similar piece of functionality
such as a USB interface, or voltage regulator would be reinventing the wheel as it were. And
thats where Device Sheets come into play schematic sheets designed to offer specific circuit
functionality. Their use removes the risks associated with the traditional copy-and-paste
approach. And they eliminate the repetition of design effort while adding to the level of design
content that can be reused in future designs.
As part of its Refactoring tool suite, the Schematic Editor provides the ability to quickly convert
an existing standard schematic sheet into a device sheet, for reuse in other designs.
For the highest integrity and optimal reusability, along with benefits including revision
and lifecycle management and 'where-used' traceability, consider releasing schematic
sheets of functional sub-circuitry to an Altium Vault. Available to the entire design
across the organization, these vault-based design elements thereafter referred to as
Managed Sheets provide higher-level, high-quality building blocks for reuse across
future designs. The designer, just like picking parts off a shelf, simply reuses these
managed sheets of design functionality as constituent components of the bigger
project.
Altium Essentials_July2013_Colby
10-July-2013

534

To convert an existing schematic sheet into a device sheet, simply locate the sheet symbol
referencing that sheet on the relevant parent page in the design hierarchy, right-click over it and
choose the Refactor Convert Schematic Sheet To Device Sheet command from the context
menu. The Convert Schematic Sheet to Device Sheet dialog will appear (Figure 584).

Figure 584. Specify details of the conversion in the Convert Schematic Sheet to Device Sheet dialog.

Choose the target location in which to store the newly-created device sheet, and also the scope
of the conversion whether to update the current sheet symbol, or all relevant sheet symbols in
the workspace or active project. The latter is particularly useful for a multi-channel design, where
the sub-circuit exists in several instances.
Click the
button to the right of the location field to access the Choose Device Sheet
Folder dialog. This dialog lists all currently defined Device Sheet folders. To add a new
folder location, click on the Device Sheet Folders button at the bottom of this dialog,
access the Device Sheet Folders dialog. Alternatively, define Device Sheet Folders on
the Data Management Device Sheets page of the Preferences dialog.
Upon clicking OK, the sheet symbol will be converted to a device sheet symbol, and the
schematic will be moved to the nominated device sheet location. Recompile the project to have
the new device sheet appear in the Projects panel (Figure 585).
Unlike traditional cut and paste, Refactoring maintains the Unique Identifiers of the
sub-circuits (including sheet symbols and device sheet symbols), ensuring that subsub-circuits in the design are always linked to their physical instances in the PCB
domain.

Altium Essentials_July2013_Colby
10-July-2013

535

Figure 585. Recompile the project to have the device sheet appear correctly in the design hierarchy.

44.1.4

Converting a Device Sheet to a Schematic Sheet

Device sheets enable functional sub-circuits to be captured and reused across designs.
However, there may be a need to modify an existing sub-circuit for a particular design. Rather
than modifying the device sheet itself, the Schematic Editor provides the ability to take a copy of
the device sheet, making its circuitry available on a standard schematic sheet. This allows the
designer to modify the local copy in-line with requirements for their current design, and safe in
the knowledge that the original device sheet remains untouched.
To 'convert' an existing device sheet into a schematic sheet, simply locate the device sheet
symbol referencing that sheet, right-click over it and choose the Refactor Convert Device
Sheet To Schematic Sheet command from the context menu. The Convert Device Sheet to
Schematic Sheet dialog will appear (Figure 586).

Figure 586. Specify details of the conversion in the Convert Device Sheet to Schematic Sheet dialog.

Choose the target location in which to store the newly-created schematic sheet, and also the
scope of the conversion whether to update the current device sheet symbol, or all relevant
device sheet symbols in the active project.
Altium Essentials_July2013_Colby
10-July-2013

536

The default Target Schematic Sheet Location is the directory in which the active
project resides. The sheet is named using the device sheet symbol's Filename. Click
the
button to the right of the location field to access the Open dialog, in which to
change where, and under what name, the schematic is to be saved (if required).
Upon clicking OK, the device sheet symbol will be converted to a sheet symbol, and a copy of
device sheet will be stored locally as a standard (unprotected) sheet in the nominated location.
The sheet symbol will reference this local sheet. Recompile the project to have the new
sheet appear in the Projects panel (Figure 587).

Figure 587. Recompile the project to have the local schematic sheet appear correctly in the design
hierarchy.

44.1.5

Moving Selected Sub-Circuitry to a Different Sheet

As a design evolves, the content of the source schematic sheets that comprise that design may
need to be shifted around that portion of circuitry needs to reside on a different sheet, or
perhaps a sheet is becoming overloaded and could benefit from moving some circuitry to a
completely fresh sheet.
Another feature in the Refactoring armory is the ability to select one or more objects on a sheet
and move that selection to a different sheet, using the right-click Refactor Move Selected
Subcircuit to Different Sheet command from the context menu. The Choose Destination
Document dialog will appear use this to nominate the target schematic sheet.
If the selected sub-circuitry is to reside on a fresh schematic sheet a blank canvas
it were ensure that the schematic is first created and saved, so that it will appear in
the Choose Destination Document dialog.

Altium Essentials_July2013_Colby
10-July-2013

537

Figure 588. Relocate part of a design to a different schematic sheet.

After clicking OK, the chosen sheet will be made active and the selected sub-circuit will appear
floating on the cursor locate on the sheet and click to effect placement. Once placed, that
circuitry will be removed from the original sheet.
If moving to a new sheet, add a sheet symbol to the relevant parent page to slot that
sheet correctly into the design hierarchy.

Altium Essentials_July2013_Colby
10-July-2013

538

Module 45: Installing and Updating Altium


Designer
Installation of any software application should be straightforward, intuitive and, perhaps above
all, fast nobody wants to be hanging around while an installation progress bar clicks across at
a rate of one 'segment' per minute (or more)! Furthermore, when that software is installed, it is
preferential to be able to update it as and when necessary, and in a streamlined fashion. Having
to install from scratch again is just not an option.
Altium Designer provides a fast, efficient Installation Management System that caters for this
very need a system that not only expedites the initial installation process, but lets the designer
handcraft the features available to that software at any time after installation.

45.1 Installing Altium Designer


Initial installation of Altium Designer is performed using the Altium Platform Installer a wizardbased installer, accessed by running a small executable AltiumInstaller.exe. This
executable is downloaded from the Software page of the AltiumLive community site
(live.altium.com/#software) and can be saved anywhere on the target computer's hard
disk.
Double-click the AltiumInstaller.exe file. The Altium Platform Installer welcome page will
appear.

Figure 589. Initial welcome page for the Altium Platform Installer.

The Installer provides a set of progressive (and intuitive) pages that collectively gather the
information to effectively install the chosen revision of the software, and its initial feature set.
Click Next to continue. The following sections provide a summary of the various pages
encountered within the wizard.

Altium Essentials_July2013_Colby
10-July-2013

539

45.1.1

License Agreement

This page of the Installer presents the Altium End-User License Agreement (EULA).

Figure 590. Read and accept Altium's End-User License Agreement.

Before continuing with the installation of the software read through, and accept, the terms of this
agreement. The agreement can be viewed in different languages, including English (the default),
Chinese and Japanese.
Clicking the Advanced button will access an Advanced Settings pop-up window (Figure 591).
From here, proxy-settings can be specified (if applicable) and also the location for the local
can be determined the folder in which all downloaded files from the nominated installation
repository (specified on a subsequent page of the Installer) will be stored. Click OK to effect any
changes and return to the License Agreement page.
After initial installation, the local cache continues to store the downloaded files used in
each and every installation change whether that be application of updates, or
installation of new plugins. The amount of disk space taken by these files can become
quite considerable over time. Although the cache can be cleared (or flushed) from
within Altium Designer, it may be prudent to specify this cache be created in a location
that has plenty of disk space to begin with.

When accessing through a proxy server, the Altium Platform Installer and Altium
Download Manager use the same proxy settings as Internet Explorer. So if Internet
Explorer is not able to access the Internet, then Altium Designer will not be able to do
so. Before installing it is best to make sure that Internet Explorer is able to access the
Internet. Also, Internet Explorer 7 or later must be installed on the PC (IE8 for
XP). If an earlier version is installed, or it is not installed at all, installation and updating
cannot be performed successfully.

Altium Essentials_July2013_Colby
10-July-2013

540

Figure 591. Specify proxy settings and change the default local repository cache folder as required, as part
of advanced options for the install.

With the EULA read, and any advanced options defined as required, continue with the install by
checking the I accept the agreement box and clicking the Next button.

45.1.1.1 Account Log-In


After accepting the EULA, an Account Log In pop-up window will display. The designer must login to the Altium Account, to which a valid license of Altium Designer is associated, using their
AltiumLive Account Credentials. The reason for doing this is to personalize the installation, with
only those revisions of the software that are, through the account and licensing, applicable to the
designer.

Altium Essentials_July2013_Colby
10-July-2013

541

Figure 592. The designer logs into their Altium account using their AltiumLive Account Credentials.

45.1.1.2 Altium Download Manager


Upon logging in to the account another pop-up window will appear, indicating that other items
being downloaded, including something called the Altium Download Manager (Figure 593). This
will be downloaded to the same location in which the Installer executable resides.

Altium Essentials_July2013_Colby
10-July-2013

542

Figure 593. The Altium Download Manager is itself initially downloaded, before being used to download the
applicable revision(s) of the software available to the designer.

The Altium Download Manager is a separate application used to download files, and is resident
in the same cloud-based repository as the Installer. It does so independently of the application
that requires those files.
For the Installer, it is simply downloading the revision(s) of the software that can be installed,
ready to present these in the subsequent page of the Installer.
The Altium Download Manager runs in the Windows System Tray, and can provide
some more detailed feedback about what exactly is being downloaded. Other than
there is no reason to interact with it.

Another executable 7za.exe is also downloaded to the same directory as the


Download Manager and Installer. This is the 7-Zip utility that is used to unzip
downloaded zip files, essentially unpacking them ready for installation.

45.1.2

Platform Repository and Version

This next page of the Installer allows the designer to specify the repository from which to install,
and the specific revision of Altium Designer to be installed.

Altium Essentials_July2013_Colby
10-July-2013

543

Figure 594. Use this page of the Installer to specify which version of the software to install, and from where.

The Repository Location field will, by default, be set to the Altium installation repository
(http://installation.altium.com). This is a web-based repository stored on an Amazon
S3 server.
If a localized installation repository has been created, for distribution of the software to
computers that are not permitted a connection to the internet for example, those
should change the Repository Location entry to point to that local installation
repository. More information on creating a local installation repository can be found
later in this module.
Use the Platform Revision field to determine the revision of Altium Designer to install. The
latest revision of the platform will always be selected by default.
Having chosen the required revision and its source location, click Next to proceed.

45.1.3

Select Design Functionality

This next page of the Installer allows the designer to specify which features are installed initially.
So whether concerned only with PCB Design, or Soft Design, or both, now is the time to tailor
the install (albeit at a coarse level) to suit requirements. This will also have an impact on the
initial installation time too!

Altium Essentials_July2013_Colby
10-July-2013

544

Figure 595. Control the initial functionality included in the installation of Altium Designer.

By default, both PCB and Soft Design are enabled for installation. Simply click on the
functionality required a big tick symbol will display accordingly at the far right, to visually
confirm the selection. As functionality is selected and deselected, text at the bottom of the page
dynamically updates to reflect the size of the download involved from the repository via the
Altium Download Manager and how this translates to required disk space, once those
downloaded files are installed.
Remember, no matter what decision is taken at initial install, features and functionality
can be added or removed at any stage after installation. This puts the designer in the
driving seat as it were, to fully customize the installation in-line with possibly everever-changing design needs.
After defining what functionality is required, click Next to proceed.

45.1.4

Destination Folders

This next page of the Installer allows the designer to specify the destination folders for the install,
in terms of both the Program Files for the software and the Shared Documents that are accessed
and used by the software.

Altium Essentials_July2013_Colby
10-July-2013

545

Figure 596. Specify where the software and associated documents are to be installed.

These locations become especially important when installing multiple revisions of the software. If
one or both of these destinations is not currently an empty folder (i.e. devoid of content) the
installation will not proceed. In this case, simply specify an alternate (and empty) destination.
The default destinations are:
Program Files
Windows 7 C:\Program Files (x86)\Altium\AD
Windows XP C:\Program Files\Altium\AD
Shared Documents
Windows 7 C:\Users\Public\Documents\Altium\AD
Windows XP C:\Documents and Settings\All Users\Documents\Altium\AD
To specify alternate locations, simply type the location directly into the applicable field,
or click the folder icon ( ) at the right of a field and browse for the required
folder.
Once the install locations are specified, click Next to continue.

45.1.5

Ready to Install

The Installer now has all the information it requires to proceed with the installation. If anything
needs to be changed, click the Back button. To cancel out of the install, click Close.
One point to make with respect to canceling the installation, and that is that up until this page,
clicking Cancel on any page will simply pop-up a window asking whether to exit the Installer,
the simple, straightforward options of Yes or No. Upon reaching this "Ready to Install" page of
Installer, clicking Close will pop-up a slightly different window. As the information the Installer
needs has been defined, the designer now has the choice to either exit the installation or
it. In the latter case, the settings specified will be saved, enabling the Installer to be accessed
installation resumed, with those same settings at a later point in time.
Altium Essentials_July2013_Colby
10-July-2013

546

Figure 597. With all information defined, the installation can be suspended, then resumed at a later stage.

To go ahead and proceed with the installation, click Next.

45.1.6

Installing Altium Designer

This page reflects the installation of the software, which actually involves two distinct phases:

Download the required installation files are first downloaded as a set of zip files from the
installation repository.

Install the downloaded zip files are then unpacked (unzipped) and their content used to
install the software.

Progress of the download phase is displayed in the Download region of the page. However for
more detail of the zip files being downloaded, simply open the Altium Download Manager, either
from the Windows System Tray, or by clicking the text at the bottom of the page: Downloading
installation data. Click here for details (Figure 598).

Altium Essentials_July2013_Colby
10-July-2013

547

Figure 598. Installation begins by downloading the required set of install files.

Progress of the actual installation phase is displayed in the Install region of the page (Figure
599).

Altium Essentials_July2013_Colby
10-July-2013

548

Figure 599. After the download is complete, the software is then installed.

Once the installation completes, the final page of the wizard will display, with the ability to launch
Altium Designer after exiting the Installer, enabled by default. Simply click Finish to exit the
wizard.

45.2 Installing Multiple Revisions of Altium Designer


The Installation Management System supports the installation of different platform revisions of
Altium Designer. The beauty of installing different platform revisions is that it enables the
designer to quickly access a previous revision directly, and independently, whereas an upgrade
to the platform revision effectively replaces the earlier revision with the later one.

45.2.1

Installation Folders

There are two important factors that facilitate the installation of multiple individual platform
revisions of the software:

The ability to specify different destination folders during the initial install, in terms of both the
Program Files and Shared Documents install locations.

The system's use of a Globally Unique Identifier (GUID) for each independent platform
revision install. This identifier which uses the standard 128-bit URN model and is displayed
as a 32-character hexadecimal number is used to uniquely distinguish the application data
folders, as well as entries in the registry. When a particular platform revision instance of
Altium Designer is run, the system handles, through use of this identifier, only those files and
registry entries specific to that platform revision.
The following sections provide a summary of the default install folders for Altium Designer,
according to operating system used.

Altium Essentials_July2013_Colby
10-July-2013

549

3.
Windows 7 (or Windows Vista)

The default main installation path for Altium Designer is:


\Program Files (x86)\Altium\AD

Examples, libraries and templates for a default installation can be found in the following
directory:
\Users\Public\Documents\Altium\AD

System application data (Mesh, Portal Cache, Updates) and security files (license ALF) for a
particular platform revision can be found in the following two directories:
\ProgramData\Altium\AD <GUID>
\ProgramData\Altium\AD <GUID>_Security
For two example platform revisions, the paths might therefore be (inserting example GUIDs):
\ProgramData\Altium\AD {7DF7280E-CD03-40A9-A6A4-DDD057140F70}
\ProgramData\Altium\AD {7DF7280E-CD03-40A9-A6A4DDD057140F70}_Security
\ProgramData\Altium\AD {566C1AFA-49CA-4B17-B7CB-70A2042D8DAC}
\ProgramData\Altium\AD {566C1AFA-49CA-4B17-B7CB70A2042D8DAC}_Security

User application data files (including: DXP.rcs, UserTools.tlt, AdvPCB.dft,


AdvSch.dft, last workspace, PCB view configurations) for a particular platform revision can
be found in the following directory:
\Users\<ProfileName>\AppData\Roaming\Altium\AD <GUID>
For two example platform revisions, and a user profile of Des Igner, the paths would
therefore be:
\Users\Des Igner\AppData\Roaming\Altium\AD {7DF7280E-CD03-40A9-A6A4DDD057140F70}
\Users\Des Igner\AppData\Roaming\Altium\AD {566C1AFA-49CA-4B17-B7CB70A2042D8DAC}

User local application data for a particular platform revision can be found in the following
directory:
\Users\<ProfileName>\AppData\Local\Altium\AD <GUID>
For two example platform revisions, and a user profile of Des Igner, the paths would
therefore be:
\Users\Des Igner\AppData\Local\Altium\AD {7DF7280E-CD03-40A9-A6A4DDD057140F70}
\Users\Des Igner\AppData\Local\Altium\AD {566C1AFA-49CA-4B17-B7CB70A2042D8DAC}

Windows XP

The default main installation path for Altium Designer is:


\Program Files\Altium\AD

Examples, libraries and templates for a default installation can be found in the following
directory:
\Documents and Settings\All Users\Documents\Altium\AD

System application data (Mesh, Portal Cache, Updates) and security files (license ALF) for a
particular platform revision can be found in the following two directories:
\Documents and Settings\All Users\Application Data\Altium\AD <GUID>
\Documents and Settings\All Users\Application Data\Altium\AD
<GUID>_Security
For two example platform revisions, the paths might therefore be (inserting example GUIDs):

Altium Essentials_July2013_Colby
10-July-2013

550

\Documents and Settings\All Users\Application Data\Altium\AD


{7DF7280E-CD03-40A9-A6A4-DDD057140F70}
\Documents and Settings\All Users\Application Data\Altium\AD
{7DF7280E-CD03-40A9-A6A4-DDD057140F70}_Security
\Documents and Settings\All Users\Application Data\Altium\AD
{566C1AFA-49CA-4B17-B7CB-70A2042D8DAC}
\Documents and Settings\All Users\Application Data\Altium\AD
{566C1AFA-49CA-4B17-B7CB-70A2042D8DAC}_Security

User application data files (including: DXP.rcs, UserTools.tlt, AdvPCB.dft,


AdvSch.dft, last workspace, PCB view configurations) for a particular platform revision can
be found in the following directory:
\Documents and Settings\<ProfileName>\Application Data\Altium\AD
<GUID>
For two example platform revisions, and a user profile of Des Igner, the paths would
therefore be:
\Documents and Settings\Des Igner\Application Data\Altium\AD
{7DF7280E-CD03-40A9-A6A4-DDD057140F70}
\Documents and Settings\Des Igner\Application Data\Altium\AD
{566C1AFA-49CA-4B17-B7CB-70A2042D8DAC}

User local application data for a particular platform revision can be found in the following
directory:
\Documents and Settings\<ProfileName>\Local Settings\Application
Data\Altium\AD <GUID>
For two example platform revisions, and a user profile of Des Igner, the paths would
therefore be:
\Documents and Settings\Des Igner\Local Settings\Application
Data\Altium\AD {7DF7280E-CD03-40A9-A6A4-DDD057140F70}
\Documents and Settings\Des Igner\Local Settings\Application
Data\Altium\AD {566C1AFA-49CA-4B17-B7CB-70A2042D8DAC}
A limited selection of example designs are installed by default. The latest reference
designs and component libraries are available through the AltiumLive Content Store.

45.2.2 Importing Preferences from a Previous Platform Revision


or Major Release
After installing and launching a new platform revision of Altium Designer, the designer is given
the opportunity to import preferences from the most recent previous installation at startup. Not
only will the preferences be imported, but the user settings will be copied across too - ensuring
the new revision opens with the same look and feel created in the previous revision, even down
to the last opened workspace and panel positioning!
If the option to import preferences on initial startup is not taken, don't worry preferences can be
quickly imported, at any time, from within the Preferences dialog. Simply click the Import From
button at the bottom of the dialog. The associated menu will list all previous platform
revisions/releases currently installed on the computer, and that can be imported from.
Preferences can be imported from any individually installed platform revision of Altium
Designer (AD10 and later), or any of the following previous major releases of the
software: Summer 09, Winter 09, Summer 08, and Altium Designer 6.

The benefit of importing at startup is getting the working environment looking exactly
the way it was set up in the previous installation. Importing preferences at a later stage
will only 'restore' a subset of this environment.

Altium Essentials_July2013_Colby
10-July-2013

551

45.3 Managing the Altium Designer Installation


Altium Designer's Installation Management System allows the designer to handcraft their
installation of the software at any time after initial install. This covers not only updates to the
software platform itself seen as incremental revisions but also the ability to install, update, or
remove functionality within the software. The latter is made possible through the provision of
optional plugins. This could be a new importer or exporter, a new outputter or netlister, or maybe
support for a new FPGA device family. In short, some technology that is used on or by data
within Altium Designer. Think customization of the software, but on a whole new level!

45.3.1

Installation Management Interface

New revisions to the core Altium Designer platform, as well as the optional plugins that provide
extended software functionality, are available from Altium's cloud-based installation repository
http://installation.altium.com. From within Altium Designer, the interface to this
repository is provided through the Plugins view. Access this view by clicking the Plugins and
Updates entry in the software's pop-out resources pane accessed by clicking the
button.

Figure 600. The Plugins view command central for managing the installation of Altium Designer.

From this view, it can be seen, at a glance, whether a new revision of the platform itself a
is available, or if there are updates to other currently installed plugins, or even if other new
Altium Essentials_July2013_Colby
10-July-2013

552

plugin functionality is available. Then make the decision as to whether or not to update the
platform and/or existing plugins, or add that additional functionality to the installation. And there
are no constraints. The designer can freely add, update or remove functionality at any time as
needs change, including the ability to roll-back to a previous revision of a plugin.
Although the designer is free to manage their installation in terms of its functionality,
continued access to future updates (platform revisions, core functionality
enhancements, new functionality, and so on) requires continued valid subscription for
the license of Altium Designer being used.

45.3.2

Related Preferences

Preferences related to installation management can be found on the System Installation


Manager page of the Preferences dialog. Access this page quickly using the Preferences
command available from the menu associated to the Tools link, at the top-right of the Plugins
view.

Figure 601. System preferences specific to managing the installation of Altium Designer.

The repository used to initially install Altium Designer from, will be set as the repository to be
used when managing that installation moving forward. However this location can be changed at
any stage if needed, from the Remote Repository Location field.

Altium Essentials_July2013_Colby
10-July-2013

553

This would be the case for machines that are prevented from, or simply cannot
to, the internet. Connection is required to the cloud-based Altium repository to get
ongoing updates, but these updates can be managed for distribution internally. This
would involve obtaining a snapshot of the repository from the cloud from a dedicated
computer that is allowed to connect to the internet then migrating that snapshot to a
dedicated 'internal' (LAN-based) repository, for shared access by those computers
are not allowed internet access. Altium Designer on those computers would be set so
that the Installation Manager uses that dedicated local repository. It is also possible to
create an installation DVD. For more information on setting up a localized repository,
see the section Creating a Local Installation Repository, later in this module.
The Local Cache Location field specifies a location for the local cache. This is the location that
will receive downloaded files via the Altium Download Manager needed to effect associated
installation changes.
When making changes to the installation, the designer has the option to receive a prompt, if the
files to be downloaded as a result of the requested changes exceed a specified size. This option
is enabled by default, with a file size of 20MB.
The local cache continues to store the downloaded files used in each and every installation
change whether that be application of updates, or installation of new plugins. The amount of
disk space taken by these files can become quite considerable over time. An indication of the
current size of this downloaded data is presented in the Cached Build Files region of the page.
These files can be safely removed by clicking the Clear button.

45.3.3

Plugins Explained

Before looking at the workings of the interface provided by the Plugins view, it's a good idea to
take a step back and consider what it is that allows the functionality of the software to be tailormade the Plugin.
The plugin is a key concept of the system to understand. A plugin itself is simply a set of files
and/or folders to be installed. A core set of plugins are installed and handled transparently as
part of the initial install, referred to as System Plugins. In addition, a wide range of Optional
Plugins are available cloud-sourced packets of functionality that are optionally installed or
removed by the user as required. It is the plugin concept that enables the installation to be
handcrafted in accordance with design needs.

Altium Essentials_July2013_Colby
10-July-2013

554

Figure 602. Functionality is added to, or removed from Altium Designer, through installation or removal of
optional plugins.

Customization of an Altium Designer installation then, essentially boils down to management of


the available plugins.

45.3.4

Working with the Plugins View

The following sections take a closer look at working with the Plugins view to fine-tune the
installation of Altium Designer.

45.3.4.1 Surveying the Installation Landscape


The Plugins view, at the top level, provides at-a-glance information about the current
installation. At the top of the view is a textual summary of this.

Figure 603. A summary of the installation and related controls to manage installation changes on a more
global level.

This summary provides information on:

The revision of the Altium Designer platform currently installed, and when that revision was
released.

How many plugins are currently installed, and how many more are available for installation.

Altium Essentials_July2013_Colby
10-July-2013

555

Whether any updates to installed plugins are available. If there is an update to the platform
itself i.e. a new revision of the platform is available this will also be indicated (including
revision number).

Controls at the right-hand side of the view enable global actions on plugins to be performed.
Either:

Update All update all currently installed optional plugins (including platform) where
updates are available. Update will be to the latest revision available.

Install All install all additional optional plugins that are currently not installed.

Remove All remove all currently installed optional plugins from the installation of Altium
Designer. This will remove all optional plugins only. System plugins, including the Altium
Designer Base plugin will not be removed.
Below this textual summary is a graphical summary of the plugins themselves (Figure 604),
gathered into logical categories in accordance with the area of functionality they provide.

Figure 604. A graphical summary of the plugins for the installation, broken down into categories of
functionality.

For each category, the total number of plugins available is displayed, along with how many of
those are still available to be installed. If all plugins in a category are already installed, the text

Altium Essentials_July2013_Colby
10-July-2013

556

All Installed will be displayed. Conversely, if none are installed, the text None Installed
will be displayed.
During initial installation, the designer chooses what areas of design functionality to
include in their installation. Not all plugins for each area will be installed however.
Those that are not include functionality that is more legacy in nature for example 8processor support in the Embedded Design domain and also plugins that offer
functionality such as importers and exporters, where it makes more sense to leave
selection to the designer, rather than second-guess what might be needed.

45.3.4.2 Exploring a Plugin Category


Clicking on the name of a plugin category enables the designer to drill-down to see the individual
constituent plugins therein, as illustrated for the PCB Design Tools category in Figure 605.

Altium Essentials_July2013_Colby
10-July-2013

557

Figure 605. Exploring the plugin content for a category.

Again, a textual summary shows how many plugins there are in total, how many of these are
currently installed, and how many are still available for installation. If one or more plugins have
an update available, this will also be flagged. Once again, controls are provided to perform global
actions on all applicable plugins.
Beneath this summary, each plugin in the category is displayed graphically. For a plugin that is
installed, it will have an associated icon to indicate its current state:
up-to-date (the latest revision of the plugin is installed).
an update is available (the latest revision of the plugin is not currently installed).
In addition, hovering over a plugin graphic will reveal controls to manage that specific plugin. The
control(s) that appear will depend on what action can be validly performed on that plugin. Table
17 illustrates the various combinations available.

Altium Essentials_July2013_Colby
10-July-2013

558

The plugin is not installed. Click the Add button to install it,
adding its functionality to the installation of Altium Designer.

The plugin is installed but is not the latest revision. Click the
Update button to upgrade to the very latest revision available.
The plugin cannot be removed as it is not an optional plugin,
but rather a system plugin.

The plugin is installed but is not the latest revision. Click the
Update button to upgrade to the very latest revision available.
Alternatively, click the Remove button to remove it, and its
functionality, from the installation of Altium Designer.

The plugin is installed and is the very latest revision available.


Click the Remove button to remove it, and its functionality,
from the installation of Altium Designer.

Table 17. Various actions that can be performed on a plugin.

45.3.4.3 Examining an Individual Plugin


Clicking on the name of a plugin enables the designer to drill-down further still, to examine just
that plugin, as illustrated for the Atmel QTouch plugin in Figure 606.

Altium Essentials_July2013_Colby
10-July-2013

559

Figure 606. Examine and manage the installation at the individual plugin level.

A textual summary gives an indication of the functionality provided by the plugin. The status of
the plugin is also displayed whether or not it is installed. If it is installed, revision information
will be displayed. If an update is available, this will also be flagged.
Controls are provided to the right of this summary to manage the plugin as required
either to install it, update it (to the very latest revision available), or remove it from the
installation.
Beneath this summary is a full listing of all available revisions of the plugin. If the plugin is
installed, the revision currently installed is flagged using the
icon.
As the cursor is moved over the various revisions, an associated control will appear. The type of
control depends on what action can be validly performed in respect of that particular revision.
The following examples illustrate the possibilities:

Figure 607. The plugin is not installed. Click the Add button to install the indicated
revision of it.

Altium Essentials_July2013_Colby
10-July-2013

560

Figure 608. This is a later revision than that currently installed. Click the Update
button to upgrade to the indicated revision.

Figure 609. This is an earlier revision than that currently installed. Click the
Rollback button to downgrade to the indicated revision.

Figure 610. This is the currently installed revision. Click the Remove button to
remove the plugin, and its functionality, from the installation of Altium Designer.

45.3.4.4 Examining a Specific Revision


Clicking on a specific revision entry away from the management control that appears enables
the designer to drill-down to the lowest level of the interface, to examine just that revision, as
illustrated for Revision 10.1089.24016 of the Atmel QTouch plugin in Figure 611.

Altium Essentials_July2013_Colby
10-July-2013

561

Figure 611. Examine and manage the installation at the specific revision level.

Summary information regarding the revision is displayed as well as its state. A single control is
provided allowing the designer to:

Install if the plugin is not currently installed.

Update if it is a later revision than that currently installed.

Rollback if it is an earlier revision than that currently installed.

Remove if it is the currently installed revision, and the plugin can be validly removed (i.e. it
is an optional plugin and not a system plugin).

45.3.4.5 Effecting Plugin Changes


When a decision is made to change a plugin and new files are required to implement that
change (addition, update), those files will first be downloaded to local cache using the Altium
Download Manager. At the top of the view, the download progress for the changes will be
displayed. If the option to receive a prompt based on a particular download size is enabled, as
part of the preferences for the Installation Manager, then a dialog will appear prior to the
download, to inform of the changes selected and the size of the download involved.

Figure 612. Example update, with progress reflected at the top of the Plugins view.
Altium Essentials_July2013_Colby
10-July-2013

562

Updates to the installation can be performed using one of two methods Installation
Patching or Full Download. Patching is the recommended method when download
bandwidth or speed are a concern, or when gateway virus scanners prevent large files
from being downloaded. Although the downloads involved are smaller, the installation
may take longer, since patches must be prepared. Switch between the two methods to
see the download size involved for each.

When using the Installation Patching method it is recommended that the anti-virus
software running on the host computer be disabled for the duration of the update. If
antivirus software cannot be disabled, or patching is running very slowly, it is
recommended to use the Full Download method.

In the progress summary, the number of changes simply reflect the number of
individual plugin-related commands that have been 'launched'. For example, using the
Update All command at the top-level is considered a single change, even though it
typically will affect a lot of plugins. Individually cherry-picking three importers and three
exporters by clicking their respective Add buttons will result in six changes, and so on.
At the plugin level, the state of the change is reflected using two icons:
changes are being prepared (files being downloaded, and patching prepared if applicable).
changes are ready.
Figure 613 illustrates the readiness of various plugins that are to be updated in the PCB Design
Tools category, as a download progresses.

Altium Essentials_July2013_Colby
10-July-2013

563

Figure 613. As a download progresses, the state of affected plugins will change from 'Downloading' to
'Ready'.

At the revision level for a plugin, the action of the change is reflected using two icons:
the existing revision that will be effectively removed by the change.
the revision that will be installed as a result of the change.
Figure 614 illustrates this change action for the Atmel QTouch plugin.

Altium Essentials_July2013_Colby
10-July-2013

564

Figure 614. At the revision level, indication of the action to be taken by the change is presented.

Open the Altium Download Manager to see detailed progress of the downloads, involving zip
files and patching files where applicable.

Figure 615. Use the Altium Download Manager to view details of files being downloaded for the intended
change(s) to the installation. In this example, the Installation Patching method is being used, and hence the
presence of .patch files.

When all files necessary for changes have been downloaded and are ready for install, the status
at the top of the Plugins view will change to reflect this. If changes can be effected without
having to restart Altium Designer, the text displayed will be n change(s) ready. Click to
apply. When updating or reverting a currently installed plugin, the changes cannot typically be
performed live and certainly not when the platform itself is being changed! In this case, the
view will display a message of the form n change(s) ready. Click to apply (will
restart Altium Designer).
Changes can be reviewed by clicking the Review Outstanding Changes link to the right. This
will access the Review Installation Changes dialog (Figure 616), which lists the changes and the
associated actions on affected plugins to implement those changes.

Altium Essentials_July2013_Colby
10-July-2013

565

Figure 616. An example of a change ready to be applied, complete with a review of the change and the
individual plugins affected, courtesy of the Review Installation Changes dialog.

To apply the change(s), use the Click to apply link. If the changes warrant a restart of Altium
Designer, it will be automatically closed, the file changes performed, then reopened again.
To abort, and not apply any changes, simply click the Cancel All button in the Review
Installation Changes dialog the changes will be cleared and the installation will
remain as it is.

Changes can be reviewed in the Review Installation Changes dialog while files are still
downloading. The changes can also be cancelled at that stage, if required.

Altium Essentials_July2013_Colby
10-July-2013

566

45.4 Specifically Changing the Platform Revision


A new build of the Altium Designer platform is flagged as a 'Platform Update', on the top-level
page of the Plugins view. This means that in comparison to the current installation, there is at
least one later revision of the core software available. The base platform is itself a plugin
Altium Designer Base. Both it, and all currently installed plugins that have updates, can be
updated in a 'single sweep', simply by clicking the global-level Update All button.

Figure 617. Update to the latest revision of all currently installed plugins, including the platform, by clicking
Update All.

However, the designer can view all available revisions of the Altium Designer Base plugin, and
update (or rollback) the platform to a specific revision. To do so involves the following steps:
1. Click the name on the graphic for the System Components category of plugins, then click
the name on the graphic for the Altium Designer Base plugin.

Figure 618. The Altium Designer Platform can be changed by accessing the Altium Designer Base
system plugin.

2. Peruse the list of platform revisions. Update to the latest by clicking the Update button.
Update (upgrade) or rollback (downgrade) to a specific revision by clicking the Update or
Rollback button provided for that revision.

Altium Essentials_July2013_Colby
10-July-2013

567

Click here to update to the


latest platform revision.

Use relevant controls here to


update or rollback to a specific
platform revision.

Figure 619. Update to a later (or the latest) platform revision, or rollback to an earlier revision.

3. Browse the changes that will be made in the Installation Changes dialog. Click OK to
proceed. Files necessary to implement the requested platform revision change, and any
changes to additional plugins that are dependent on and affected by that platform change,
will be downloaded.

Figure 620. An example of changes involved to downgrade to a previous platform revision.

4. Once the change is ready, click the 1 change ready. Click to apply (will restart Altium
Designer) link. Altium Designer will be closed, the file changes will be performed, and then
Altium Designer will be reopened.
The Altium Designer Base plugin (i.e. the platform) cannot be removed. This is a
system plugin that must always be present, and not an optional plugin whose
functionality can be installed or removed as desired.

Altium Essentials_July2013_Colby
10-July-2013

568

45.5 Automatic Checking for Updates


When the designer initially signs-in to their Altium Account through the Altium Portal, the
software will check Altium's cloud-based installation repository for any updates to existing
plugins, any new plugins, and any later revisions of the Altium Designer Platform. While
remaining signed-in to their account, the software will perform a periodic check for updates,
currently hardwired to be every couple of hours.
An alert to available updates is presented through a bouncing orange bubble at the bottom-right
of the main design window. Hover over the bubble to expand it, then click on it to be taken
directly to the Plugins view, to see what is available and make changes as required.

Figure 621. When the bouncing bubble appears, it signals that there are updates available,
either to existing plugins (including possible platform updates) and/or possible new plugins.

To perform a manual check for updates, simply click the Refresh link, at the top-right
the Plugins view.

45.5.1

Latest Platform Revision Check

In a similar vein, checking is performed when multiple different platform revisions of Altium
Designer have been installed on the same computer. When an instance that is not the latest
installed revision is launched, the designer is alerted through a bouncing orange bubble at the
bottom-right of the main design window. Hover over the bubble to expand it, to see which is the
latest revision.

Figure 622. When the bouncing bubble appears, it signals that the instance being used is not the latest
revision installed on the same PC.

Altium Essentials_July2013_Colby
10-July-2013

569

45.6 Creating a Local Installation Repository


As part of installation management, Altium Designer provides the ability to create a local
installation repository. This provides an elegant local install solution for computers that are
prevented from, or simply cannot connect to the internet, and therefore cannot access Altium's
cloud-based installation service directly.
The solution involves installing Altium Designer from Altium's cloud-based installation repository
onto a dedicated computer that is allowed connection to the internet. That installation is then
customized to be suitable for use by others within the company. The installation snapshot is then
copied to a dedicated 'internal' (LAN-based) location, providing an installation solution to those
computers that are not allowed internet access. Altium Designer on those computers would be
set so that the Installation Manager uses that dedicated local repository.
Since a standalone repository is being created, it can be moved and copied wherever
is needed in terms of a shared folder on a company network, or large USB drive. For a
more 'mobile' solution, create a compressed installation repository that can be
subsequently burnt to DVD or copied to a smaller-sized USB stick!
In fact, a number of installation repositories could be created to effectively provide different install
solutions depending on the feature-set required by a client machine (and team member using
that machine). For example, a couple of designers working solely in the PCB design domain,
with others requiring just FPGA functionality, and others still, using only the embedded software
environment.
Creation of a local installation repository is a straightforward affair. With the installation of Altium
Designer already tailored to suit requirements, click the Create Installation Repository
command available from the Tools drop-down menu at the top-right of the Plugins view. The
Create Installation Repository dialog will appear.

Altium Essentials_July2013_Colby
10-July-2013

570

Figure 623. Create a tailor-made local installation repository with only the features and functionality
required. This repository can then be used to install that installation of Altium Designer on each
client machine within the company as required.

First choose the type of installation repository to create:

Uncompressed recommended for use on a network or large USB drive.

Compressed required when burning the repository to a DVD or a smaller-sized USB drive.
Note that a compressed installation repository is slower to use than an uncompressed
repository.

Next, enter a path and folder in which the repository is to be created. Either type the path and
folder directly in the Destination Path field, or click the
icon to browse to, or create a
particular folder.
To prevent overwriting a previously created repository, the software will create a subsub-folder in the nominated destination path, called Altium Repository.
Subsequently releasing to the same destination path will result in a sub-folder Altium
Repository (1) being created, and so on.
With the type of repository and destination path specified, click the Create button. The process
will proceed with progress and details displayed within the dialog. As part of the creation
the executables for installing and uninstalling the software (AltiumInstaller.exe and
Altium Essentials_July2013_Colby
10-July-2013

571

AltiumUninstaller.exe) are downloaded and added to the specified repository folder. The
original installation of Altium Designer is then checked, to assess the plugins used and content
copied across to the specified repository folder accordingly.

Figure 624. A target local installation repository is created from the original installation of Altium Designer.

45.6.1

Installing on a Target Computer

With the local repository created, there are a number of ways to use it, to install Altium Designer
on a target computer:

Move the repository folder to a dedicated PC on the company LAN (if not already). Copy and
make AltiumInstaller.exe available for each client computer to store anywhere on a
hard disk thereon. Run the Altium Platform Installer. On the Platform Repository and
Version page use the drop-down associated to the Repository Location field to choose
Other. Then, on the Installation Repository Location pop-up window, enter the folder path or
URL to the repository and click OK. Back on the Platform Repository and Version page
platform revision will be set to the exact same revision from which the repository was

Altium Essentials_July2013_Colby
10-July-2013

572

Figure 625. Specify the location of the local installation repository.

Copy the repository folder to a USB drive or burn to a DVD, and run
AltiumInstaller.exe directly from its location in the root folder, in-situ on that medium.
When the installation repository is created, an autorun.inf file is created also,
can then be used when burning the repository to DVD. This simply launches the
AltiumInstaller.exe file after inserting the DVD on the target computer.

Copy the repository folder to that computer and run AltiumInstaller.exe directly from
its location in the root of the folder.
When run in-situ, the Altium Platform Installer will, on its Platform Repository and
Version page, be set pointing to the root folder in which AltiumInstaller.exe is
stored, and therefore also the root folder for the repository itself.

Altium Essentials_July2013_Colby
10-July-2013

573

45.7 Subscription-based Content Stream


The ability to customize the feature-set of Altium Designer after initial install presents a natural
and exciting possibility the possibility for Altium to present additional features/functionality, in
the form of additional plugins, at ANYTIME in the future. Imagine being able to get a new
importer, or new FPGA family device support, or add a new supplier for use with the Live Links
to Supplier Data feature as soon as the feature becomes available. No waiting for an official
service pack to be prepared. No waiting for features to come in a major release. Altium is able to
make that functionality available as a series of new plugins in a far more expedient timeframe,
providing a cloud-based content stream as it were. A couple of clicks and the installation of
Altium Designer is empowered by the new plugin content, with the requested features added to
the design arsenal and ready at the designer's disposal a surefire productivity-enhancer if ever
there was one!
So just how to tap into this stream of new content? How to ensure having the latest plugins as
and when they are available? The answer to this is simple Altium Subscription.
A good analogy for Altium Subscription could be a train journey. Subscription gets the designer
on-board the train their fare as it were. The train moves forward and calls at new destination
stations along the way. At each station, there is opportunity to take on board a new destination
souvenir (a plugin). If the designer stays on the train (continues to subscribe) they will enjoy
visiting a wealth of new destinations as the train moves ever forward in its journey. If the
designer ceases subscription, they will have only those souvenirs (plugins) they have so far
collected, but will miss getting to see new and exciting destinations, and souvenirs thereof, as
they must alight from the train.
Of course, the designer can always re-subscribe and hop back on, but by staying subscribed the
designer will always have access to the very latest content and as soon as it is cleared for
release from the developers!

45.7.1

The Right to use Altium Designer Updates

To install plugins and update functionality for an installation of Altium Designer, the user is
required to hold both a valid license of Altium Designer AND valid Altium Subscription for that
license.
During the period of valid subscription, the user is free to manage their installation
updating/installing plugins as they need. So when a new update comes along, they can update
their installation which, depending on the update, can involve an update to the platform revision.
After subscription expires, the user will be prevented from installing any updates that occur after
that expiry date. However, the user still has access to install or update plugins up to the latest
revision that was available before the subscription expired.
Now, it is possible that a license is chosen for use with an installation of Altium Designer, but that
installation includes updates that are not supported by the subscription on that license. In other
words, the subscription has expired for that license, but the installation includes plugins with
revisions dated later than that expiry date.
In this scenario, the user has three options:
1. Select another license that HAS valid subscription.
2. Renew the subscription for the currently chosen license.
3. Continue using the currently chosen license without renewing subscription.
Option 3 requires that the unsupported updates be rolled-back. This is performed from the
Plugins view, as illustrated in Figure 626.
The My Account view (DXP My Account) provides indication of unsupported
updates for the subscription associated to the currently chosen license of Altium
Designer.

Altium Essentials_July2013_Colby
10-July-2013

574

Figure 626. To continue using a license with expired subscription, any unsupported updates must be rolledback.

At the plugin level, an unsupported plugin is reflected through use of the


icon. At this level,
either roll-back a plugin to the last supported revision, or roll-back all unsupported plugins for a
particular category, using the Rollback All button.

Figure 627. Flagging plugins that are not supported by the subscription associated to the license of Altium
Designer currently being used.

If, after subscription expires, there are still valid updates available for plugins
a plugin was never installed yet or a later revision is still available prior to the
subscription expiry date the software will allow the designer to update or install, as
applicable, ONLY those updates that are supported. Unsupported updates revisions
to plugins later than the subscription expiry date will be listed for reference. Renew
subscription to gain access to these.

Altium Essentials_July2013_Colby
10-July-2013

575

45.8 Uninstalling
Uninstalling Altium Designer is performed using the Altium Uninstaller a dialog-based utility,
accessed by running a small executable AltiumUninstaller.exe. This executable is
downloaded from the Software page of the AltiumLive community site
(live.altium.com/#software) and is typically saved to the same location as
AltiumInstaller.exe.

Figure 628. Uninstalling the software is streamlined, courtesy of the Altium Uninstaller.

The dialog consists of two pages switch to the non-active page using the relevant link in the
upper region. The first page, Altium Designer Installation, provides a listing of all detected
installations of Altium Designer (AD10 and later) on the PC. Key information is provided in the
upper region, including version, whether it is installed or not, and the main install location (where
the DXP.exe file is located).
Select an entry to display more detailed information about that installation in the region below.
For the selected installation, the three buttons to the right control varying degrees of 'uninstall' as
follows:

Uninstall removes the install folders (program files and shared documents locations) but
leaves preferences-based folders alone. This enables the designer to have a build that is not
currently installed, but whose preferences can still be reused, for example by importing into
another installed build.

Remove Preferences removes just the preferences-based folders, covering system


application data and security files, user application data files and user local application data.

Remove Completely total removal of the entire installation (i.e. installation folders and
preferences folders).

The Global Information page (Figure 629) presents any installed drivers used by the system,
which can also be uninstalled as required. The lower region provides the ability to clean (or flush)
the download cache data that has been downloaded through the Altium Download Manager.
Choose the type of data to be cleaned indication of the size of that data on disk is provided
and click the Clean button.
Altium Essentials_July2013_Colby
10-July-2013

576

Figure 629. The Altium Uninstaller provides controls to clean downloaded data as part of an uninstall
regime.

To fully remove an installation of Altium Designer from the computer, first clean the
downloaded data (with all options selected), then select the installation and click
Remove Completely.

Altium Essentials_July2013_Colby
10-July-2013

577

Module 46: Shortcut Keys


46.1 Common Schematic / PCB Editor Shortcuts
SHIFT
Y
X
CTRL + SHIFT +
SHIFT +
CTRL +

ESC
END
HOME
CTRL + HOME
CTRL + Mouse-wheel down (or
PAGE DOWN)
CTRL + Mouse-wheel up (or
PAGE UP)
Mouse-wheel
SHIFT + Mouse-wheel
A
B
J
K
M
O
S
X
Z
CTRL + Z
CTRL + Y
CTRL + A
CTRL + C (or CTRL + INSERT)
CTRL + X (or SHIFT + DELETE)
CTRL + V (or SHIFT + INSERT)
CTRL + R
CTRL + R then ESC
CTRL + Q
ALT
DELETE
V, D
V, F
X, A
Right-click & hold
Left-click
Right-click
Right-click on object, select Find
Altium Essentials_July2013_Colby
10-July-2013

While autopanning to pan at higher speed


While placing an object to flip it along the Y-axis
While placing an object to flip it along the X-axis
Move selection ten grid increments in direction of arrow key
Move cursor ten grid increments in direction of arrow key
Move selection one grid increment in direction of arrow key
Move cursor one grid increment in direction of arrow key
Escape from current process
Redraw the screen
Redraw screen with center at the cursor point
Jump to absolute origin (lower left corner of workspace)
Zoom out
Zoom in around cursor (zooms around cursor, position the cursor
first)
Pan up/down
Pan left/right
Display Align sub-menu
Display Toolbars sub-menu
Display Jump sub-menu
Display Workspace Panels sub-menu
Display Move sub-menu
Pop-up right-click Options menu
Display Select sub-menu
Display DeSelect sub-menu
Pop-up menu with zoom commands
Undo
Redo
Select all
Copy
Cut
Paste
Copy to clipboard and repeat paste selected objects (Rubber
Stamp)
Re-enters Rubber Stamp mode using the current clipboard
content
Access the Selection Memory dialog
Constrain object movement horizontally or vertically
Delete selection
View document
View fit placed objects
De-select all
Display slider hand & slide view
Select/deselect object under cursor
Pop-up floating menu, or escape from current operation
Load object under cursor into Find Similar Objects dialog
578

Similar
Left-click, hold & drag
Left-click & hold
Left Double-click
SHIFT + Left-click
TAB
SHIFT + C
SHIFT + F
Y
F11
F12
SHIFT + F12
ALT + F5
, Left-click
, CTRL + Left-click
SHIFT + CTRL + T
SHIFT + CTRL + L
SHIFT + CTRL + R
SHIFT + CTRL + B
SHIFT + CTRL + H
SHIFT + CTRL + V
SHIFT + CTRL + D
CTRL + n (n=1 to 8)
ALT + n (n=1 to 8)
SHIFT + n (n=1 to 8)
SHIFT + ALT + n (n=1 to 8)
SHIFT + CTRL + n (n=1 to 8)

Select inside area


Move object/selection under cursor
Edit object
Add/remove object from selection set
Edit attributes while placing
Clear current Filter
Click on object to display Find Similar Objects dialog
Pop-up Quick Queries menu
Toggle Inspector panel on/off
Toggle Filter panel on/off
Toggle List panel on/off
Toggle full screen mode
Cross probe to matching object on target document, stay
remaining in source document
Cross probe and jump to matching object on target, jumping to
target document
Align selected objects by top edges
Align selected objects by left edges
Align selected objects by right edges
Align selected objects by bottom edges
Distribute selected objects equally in horizontal plane
Distribute selected objects equally in vertical plane
Align selected objects to grid
Store current selection in memory location n
Recall selection from memory location n
Add current selection to selection already stored in memory
location n
Recall selection from memory location n and add it to current
selection in workspace
Apply filtering based on selection set in memory location n.

46.2 Schematic Editor Only Shortcuts


G
F2
CTRL + PAGE DOWN
SPACEBAR
SPACEBAR
, SPACEBAR
SHIFT + SPACEBAR
SHIFT + SPACEBAR
CTRL + SPACEBAR
SHIFT + CTRL + SPACEBAR
, CTRL + Left-click on port or
sheet entry
SHIFT + CTRL + C
BACKSPACE
Left-click, hold + DELETE
Left-click, hold + INSERT
Altium Essentials_July2013_Colby
10-July-2013

Cycle through snap grid settings


Edit in-place
Fit all objects into view
Rotate counterclockwise by 90 degrees while moving an object
Toggle start/end mode while placing a wire/bus/line
Toggle pen color while using highlighting pens
Rotate clockwise by 90 degrees while moving an object
Cycle Step through placement modes while placing a
wire/bus/line
Rotate counterclockwise by 90 degrees while dragging an object
Rotate clockwise by 90 degrees while dragging an object
Highlight connection/net on target sheet while using highlighting
pens
Clear all highlighting applied by highlighting pens
Remove the last vertex when placing a wire/bus/line/polygon
When a wire is selected to delete a vertex
When a wire is selected to add a vertex
579

CTRL + Left-click & drag


Left-click in Navigator panel
ALT + Left-click in Navigator panel
ALT + Left-click on net object
CTRL + Double Left-click
CTRL + Double Left-click
+ (numeric keypad)
- (numeric keypad)
CTRL + F
CTRL + H
F3
INSERT
S
V
T
T
T, P

Drag object
Cross probe to object on schematic document
Cross probe to object on both schematic document and PCB
Highlight all elements in net on sheet
On sheet symbol to descend hierarchy
On port to ascend hierarchy
Enlarge IEEE symbol size during placement or movement
Reduce IEEE symbol size during placement or movement
Find text
Find and replace text
Find next occurrence of searched text
Copy attributes of object under the cursor while placing an object
of the same type
Swap sheet entry side while moving one or more selected sheet
entries
Reverse sheet entry order while moving two or more selected
sheet entries
Toggle sheet entry IO type while moving one or more selected
sheet entries
Toggle all sheet entry IO types while resizing selected sheet
symbol
Access Schematic - General page of Preferences dialog

46.3 PCB Editor Only Shortcuts


SHIFT + R
SHIFT + E
SHIFT + B
SHIFT + PAGE UP
SHIFT + PAGE DOWN
CTRL + PAGE UP
CTRL + PAGE DOWN
CTRL + END
ALT + END
ALT + INSERT
CTRL + G
G
N
L
SHIFT + F1
TAB
F2
CTRL + Left-click
CTRL + SPACEBAR
BACKSPACE
SHIFT + S
O, D, D, O, ENTER
O, D, F, O, ENTER
O, D (or CTRL + D)
Altium Essentials_July2013_Colby
10-July-2013

Cycle through three routing modes (ignore, avoid or push


obstacle)
Toggle electrical grid on/off
Build Query
Zoom-in in small increments
Zoom-out in small increments
Zoom-in to 400%
Fit document into view
Jump to defined relative origin for the workspace
Redraw current layer only
Paste on current layer
Pop up Snap Grid dialog
Pop up Snap Grid menu
Hide the ratsnest while moving a component
Flip component being moved to other side of board
Pressed while routing, displays the appropriate interactive
routing shortcut keys
Pressed while routing, length tuning, component or string
placement displays appropriate interactive editing dialog
Display Board Insight and Heads Up display options
Highlight routed net under cursor (repeat in free space to clear)
Cycle through connection lines modes during interactive routing
Remove last track corner during interactive routing
Toggle single layer mode on/off
Set all primitives to display in draft mode
Set all primitives to display in final mode
Access Show/Hide page of View Configurations dialog
580

L
CTRL + H
CTRL + SHIFT + Left-click & hold
SHIFT + CTRL + Left-click
+ (numeric keypad)
- (numeric keypad)
CTRL + Click
CTRL + SHIFT + Click
CTRL + ALT + Mouse
* (numeric keypad)
M
ALT
CTRL
CTRL + M
SPACEBAR (in interactive
process)
SPACEBAR (during interactive
routing)
SHIFT + SPACEBAR (in
interactive process)
SHIFT + SPACEBAR (during
interactive routing)
[
]
ALT
ALT
Q
T, B
T, P
BACKSPACE
SPACEBAR
SHIFT + SPACEBAR
SHIFT + R
, (comma)
. (full stop / period)
1
2
3
4
Y

46.3.1

Access Board Layers And Colors page of View Configurations


dialog
Select connected copper
Break track
Highlight additional routed net under cursor
Next layer
Previous layer
Highlights layer content on layer tabs
Increments highlighting on layer tabs
Hovers highlight layer on layer tabs
Next routing layer
Display Move sub-menu
Hold to temporarily switch from avoid-obstacle to ignore-obstacle
mode
Hold to temporarily disable electrical grid while routing
Measure distance
Rotate object anti-clockwise (define rotation step on PCB Editor General page of Preferences dialog)
Toggle start/end mode
Rotate object being moved clockwise
Step through corner modes during interactive routing
Decrease mask level for permanent filter
Increase mask level for permanent filter
View previous component for active library document
View next component for active library document
Toggle units (metric/imperial)
Access 3D Body Manager dialog
Access Preferences dialog
Remove last interactive length tuning segment
Next interactive length tuning wave pattern
Previous interactive length tuning tuning pattern
Toggle Routing Mode
Decrease interactive length tuning pattern amplitude by one
increment
Increase interactive length tuning pattern amplitude by one
increment
Decrease interactive length tuning miter or radius
Increase interactive length tuning miter or radius
Decrease interactive length tuning pattern gap by increment
Increase interactive length tuning pattern gap by increment
Toggle interactive length tuning amplitude direction

3D Body Placement Shortcuts

+ (plus)
- (minus)
L
X
Y
SPACEBAR
Altium Essentials_July2013_Colby
10-July-2013

Next layer
previous layer
Flip 3D body to paired mechanical layer
Flip 3D body around X-axis
Flip 3D body around Y-axis
Rotate 3D body counter-clockwise
581

SHIFT + SPACEBAR
2
3
4
6
8
9
(left arrow)
SHIFT + (left arrow)
(right arrow)
SHIFT + (right arrow)
(up arrow)
SHIFT + (up arrow)
(down arrow)
SHIFT + (down arrow)

46.3.2

3D Visualization Shortcuts

2
3
SHIFT
V, F
V, B
Mouse-wheel
SHIFT + Mouse-wheel
CTRL + Mouse-wheel
CTRL + Right drag
CTRL + C
PAGE UP / PAGE DOWN
T, P
L

46.3.3

Rotate 3D body clockwise


Rotate 3D body counter-clockwise around it's X-axis
Decrease 3D body standoff height (Z-axis) by one Snap Grid
increment
Rotate 3D body counter-clockwise around it's Y-axis
Rotate 3D body clockwise around it's Y-axis
Rotate 3D body clockwise around it's X-axis
Decrease 3D body standoff height (Z-axis) by one Snap Grid
increment
Move 3D body left along X-axis by one Snap Grid increment
Move 3D body left along X-axis by 10x Snap Grid increment
Move 3D body right along X-axis by one Snap Grid increment
Move 3D body right along X-axis by 10x Snap Grid increment
Move 3D body backward along Y-axis by one Snap Grid
increment
Move 3D body forward along Y-axis by 10x Snap Grid increment
Move 3D body forward along Y-axis by one Snap Grid increment
Move 3D body forward along Y-axis by 10x Snap Grid increment

Rotates the 3D view so that the camera perspective is


perpendicular to the board and will rotate the board so that the
horizontal plane (X-axis) runs along the bottom of the editing
window (at 0 rotation)
Rotates the 3D view so that the camera perspective is
perpendicular to the board and will rotate the board so that the
horizontal plane (X-axis) runs along the right side of the editing
window (at 90 rotation)
From 3D switches to 2D using last used 2D view configuration
From 2D switches to 3D using last used 3D view configuration
Turns on 3D rotational movement sphere (left-click and drag
from sphere evblements to rotate model)
Fit board
Flip board horizontally about cursor position
Pan up/down
Pan left/right
Zoom in/out incrementally
Zoom in/out smoothly
Create clipboard bitmap (.bmp) image of current 3D view
Zoom in/out incrementally
Access PCB Editor - Display page of Preferences dialog
Access Physical Materials (3D) page of View Configurations
dialog

Interactive Routing Shortcuts

Shift+F1 (or ~ (tilde))


CTRL + Click
BACKSPACE
ESC
SHIFT + A
SHIFT + C
SHIFT + G
SHIFT + H
Altium Essentials_July2013_Colby
10-July-2013

Display list of shortcuts


Auto-complete segments to target
Remove last segment
Terminate current trace
Add accordion sections (interactive length tuning)
Toggle auto-complete
Toggle length tuning gauge
Toggle Hug mode
582

SHIFT + O
SHIFT + P
SHIFT + Q
SHIFT + R
SHIFT + S
SHIFT + V
SHIFT + W
, (comma)
SHIFT + . (comma)
. (full stop / period)
SHIFT + . (full stop / period)
ENTER
+ (plus)
- (minus)
* (multiply)
SPACEBAR
SHIFT + SPACEBAR
TAB
1
2
SHIFT + 2
3
4
6
7
8
9

46.3.4

Toggle visible routing area


Toggle Push mode
Toggle glossing
Toggle routing mode
Switch layer for current trace
Select favorite via size
Open Choose Favorite Width dialog.
Decrease arc setback
Decrease arc setback 10x
Increase arc setback
Increase arc setback 10x
Place Segment
Next Layer (numeric keypad)
Previous Layer (numeric keypad)
Next Signal Layer (numeric keypad)
Cycle corner direction
Cycle corner styles (if restrict to 90/45 is not enabled)
Edit trace properties
Toggle Look-ahead Mode Switches between 1 and 2 segment
placement mode
Add via, no layer change
Add fanout via, tool immediately waits for next fanout to route
and via to place
Cycle track width source
Cycle via size source
Force walk-around (with key pressed)
Switch leader trace or switch routing target in single trace mode
Toggle dynamic routing mode
Switches to opposite routing point

Interactive Differential Pair Routing Shortcuts

Shift+F1 (or ~ (tilde))


CTRL + Click
BACKSPACE
SHIFT + BACKSPACE
ESC
SHIFT + R
SHIFT + W
ENTER
+ (plus)
- (minus)
* (multiply)
SPACEBAR
SHIFT + SPACEBAR
TAB
3
4
5
6

Altium Essentials_July2013_Colby
10-July-2013

Display list of shortcuts


Commit auto complete segments (if applicable)
Remove last segment
Remove last cluster of segments
Terminate current trace
Toggle routing mode
Open Choose Favorite Width dialog.
Place segment
Next layer
Previous layer
Next signal layer
Toggle corner direction
Cycle corner styles (if restrict to 90/45 is not enabled)
Edit trace properties
Cycle track width source
Cycle via size source
Toggle Auto-complete
Change via mode

583

46.3.5

Interactive Length Tuning Shortcuts

Shift+F1 (or ~ (tilde))


TAB
BACKSPACE
SPACEBAR
SHIFT + SPACEBAR
SHIFT + R
, (comma)
. (full stop / period)
1
2
3
4
Y

Display list of shortcuts


Edit tuning pattern settings
Remove last segment
Next tuning pattern
Previous tuning pattern
Toggle Routing Mode
Decrease pattern amplitude by one increment
Increase pattern amplitude by one increment
Decrease miter or radius
Increase miter or radius
Decrease pattern gap by increment
Increase pattern gap by increment
Toggle amplitude direction

46.4 Devices View Shortcuts


F5
ESC
CTRL + F9
CTRL + F10
F12
F9
F10
F11
SHIFT + CTRL + F9
SHIFT + CTRL + F10
SHIFT + F12
SHIFT + F9
SHIFT + F10
SHIFT + F11
ALT + T, P

Refresh all
HALT Process Flow
Compile Bit File
Rebuild Bit File
Reset Hard Device
Compile Bit File and Download
Rebuild Bit File and Download
Download Bit File
Compile All Bit Files
Rebuild All Bit Files
Reset All Devices
Compile All Bit Files and Download
Rebuild All Bit Files and Download
Download All Bit Files
Access FPGA - Devices View page of Preferences dialog

46.5 PCB3D (Legacy 3D) Editor Shortcuts


PAGE UP
PAGE DOWN
ALT + B

INSERT
DELETE
T, E
T, P

Zoom in
Zoom out
Fit board
Pan in direction of arrow
Pan In
Pan Out
Access Export dialog for IGES/STEP format
Access PCB Editor - PCB Legacy 3D page of Preferences

46.6 PCB3D Library Editor Shortcuts


PAGE UP
PAGE DOWN
ALT + M
Altium Essentials_July2013_Colby
10-July-2013

Zoom in
Zoom out
Fit model
584


INSERT
DELETE
F2
SHIFT + DELETE
CTRL + T
T, I
T, E
T, P

Pan in direction of arrow


Pan in
Pan out
Rename model
Delete mode
Set rotation and translation
Import 3D model
Export model in IGES format
Access Preferences dialog

46.7 Output Job Editor Shortcuts


CTRL + X (or SHIFT + DELETE)
CTRL + C (or CTRL + INSERT)
CTRL + V (or SHIFT + INSERT)
CTRL + D
DELETE
ALT + ENTER
CTRL + F9
SHIFT + CTRL + F9
F9
SHIFT + CTRL + O

Cut
Copy
Paste
Duplicate
Clear
Configure
Run Focused Output Generator
Run Selected Output Generators
Run all Batch-enabled Output Generators
Access Output Job Options dialog

46.8 CAM Editor (CAMtastic) Shortcuts


CTRL + Z
(or ALT + BACKSPACE)
CTRL + Y
(or CTRL + BACKSPACE)
CTRL + X
CTRL + C (or CTRL + INSERT)
CTRL + V (or SHIFT + INSERT)
CTRL + E
CTRL + M
CTRL + R
CTRL + L
L
ALT + C
ALT + P
CTRL + F
CTRL + T
CTRL + A
CTRL + D
CTRL + I
CTRL + U
HOME
SHIFT + P
CTRL + Mouse-wheel up
(or PAGE UP)
CTRL + Mouse-wheel down
Altium Essentials_July2013_Colby
10-July-2013

Undo
Redo
Cut
Copy
Paste
Clear
Mirror
Rotate
Align Selective
Merge Layers
Select using crossing window
Select previous selection
Toggle Flash selection mode On/Off
Toggle Trace selection mode On/Off
Array objects
Modify/change objects
Set origin
Scale objects
View all
View around specified point
Zoom in
Zoom out
585

(or PAGE DOWN)


Mouse-wheel up
Mouse-wheel down
SHIFT + Mouse-wheel up
SHIFT + Mouse-wheel down
SHIFT + V
END
D
SHIFT + B
CTRL + HOME
ALT + HOME
SHIFT + E
SHIFT + F
SHIFT + H
N
SHIFT + T
SHIFT + G
Q
SHIFT + N
SHIFT + M
SHIFT + A
K
ALT + K
SHIFT + S
ESC
SHIFT + CTRL + R
+ (numeric keypad)
- (numeric keypad)
* (numeric keypad)

Pan up
Pan down
Pan left
Pan right
Zoom last
Refresh
Dynamic panning mode
View Film Box
Zoom Film Box
Zoom current DCode
Toggle view of Extents Box On/Off
Toggle Fill Mode On/Off
Toggle highlight of current objects using current D code
Toggle negative view
Toggle translucent view
Access CAM Editor - Drawing Modes page of Preferences
Query object
Query net
Measure point-to-point
Access apertures table
Access Set Layers Off dialog
Access Set Layers On dialog
Toggle Object Snap mode
Cancel action
Repeat last action
Display next layer only
Display previous layer only
Display next signal/plane layer only

46.9 Digital Waveform Editor Shortcuts


PAGE UP
PAGE DOWN
CTRL + PAGE DOWN
CTRL + A
CTRL + C (or CTRL + INSERT)
CTRL + X (or SHIFT + DELETE)
CTRL + V (or SHIFT + INSERT)
Left-click & drag
J
SHIFT + CTRL + F
SHIFT + CTRL + N
SHIFT + CTRL + P
SHIFT + CTRL + L
T, P

46.10

Zoom in around active time cursor


Zoom out around active time cursor
Fit document
Select all waveforms
Copy waveform
Cut waveform
Paste waveform
Relocate focused waveform
Display Jump sub-menu
Jump to first transition for focused waveform
Jump to next transition for focused waveform
Jump to previous transition for focused waveform
Jump to last transition for focused waveform
Access Preferences dialog

SimData Editor Shortcuts

CTRL + X (or SHIFT + DELETE)


Altium Essentials_July2013_Colby
10-July-2013

Cut
586

CTRL + C
CTRL + V (or SHIFT + INSERT)
DELETE
+ (numeric keypad)
- (numeric keypad)
PAGE UP
PAGE DOWN
CTRL + PAGE DOWN
END
ESC (or SHIFT + C)

SHIFT +
CTRL + (or CTRL + HOME)
SHIFT +
CTRL + (or CTRL + END)

SHIFT +
CTRL +
SHIFT +
CTRL +

46.11

Copy
Paste
Clear
Next chart
Previous chart
Zoom in
Zoom out
Fit document
Refresh
Clear filter
Scroll through chart, one wave plot at a time in direction of arrow
Scroll upwards through chart, one page at a time
Jump to top of chart
Scroll downwards through chart, one page at a time
Jump to bottom of chart
Scroll through chart, one major division on X-axis at a time in
direction of arrow
Scroll left through chart, one page at a time
Jump to start of X-axis
Scroll right through chart, one page at a time
Jump to end of X-axis

Text-based Document Editors

46.11.1 Common Shortcuts


CTRL + Z
CTRL + X (or SHIFT + DELETE)
CTRL + C (or CTRL + INSERT)
CTRL + V (or SHIFT + INSERT)
ENTER
CTRL + N
TAB
SHIFT + TAB
INSERT
SHIFT + CTRL + C
CTRL + F
CTRL + H (or CTRL + R)
F3 (or CTRL + L)
SHIFT + CTRL + F
CTRL + A
PAGE UP
PAGE DOWN
CTRL +
CTRL +
CTRL + PAGE UP
CTRL + PAGE DOWN
HOME
END
CTRL + HOME
CTRL + END
Altium Essentials_July2013_Colby
10-July-2013

Undo
Cut
Copy
Paste
Insert carriage return
Insert new line
Insert tab
Tab backwards
Toggle text insertion mode between Insert and Overwrite
Clear Filter Marks
Find text
Find and replace text
Find next instance of searched text
Find next selected instance of searched text
Select all
Scroll one page up
Scroll one page down
Scroll one line up
Scroll one line down
Move cursor to top of window
Move cursor to bottom of window
Move cursor to beginning of current line
Move cursor to end of current line
Move cursor to Beginning of File
Move cursor to End of File
587

CTRL +
CTRL +
SHIFT + CTRL + HOME
SHIFT + CTRL + END
SHIFT + PAGE UP
SHIFT + PAGE DOWN
SHIFT + CTRL + PAGE UP
SHIFT + CTRL + PAGE DOWN
SHIFT + HOME
SHIFT + END
SHIFT +
SHIFT +
SHIFT +
SHIFT +
SHIFT + CTRL +
SHIFT + CTRL +
ALT + SHIFT + CTRL + HOME
ALT + SHIFT + CTRL + END
ALT + SHIFT + PAGE UP
ALT + SHIFT + PAGE DOWN
ALT + SHIFT + CTRL + PAGE UP
ALT + SHIFT + CTRL + PAGE
DOWN
ALT + SHIFT + HOME
ALT + SHIFT + END
ALT + SHIFT +
ALT + SHIFT +
ALT + SHIFT +
ALT + SHIFT +
ALT + SHIFT + CTRL +
ALT + SHIFT + CTRL +
ALT + Left-click & drag
DELETE
BACKSPACE
CTRL + BACKSPACE
CTRL + T
CTRL + Y
CTRL + Q + Y
ALT + T, P

Move cursor one line in direction of arrow


Move cursor one character in direction of arrow
Move cursor one word left
Move cursor one word right
Extend Selection to Beginning of File
Extend selection to End of File
Extend selection one page up
Extend selection one page down
Extend selection to top of window
Extend selection to bottom of window
Extend selection to beginning of current line
Extend selection to end of current line
Extend selection left one character
Extend selection right one character
Extend selection to same column in previous line
Extend selection to same column in next line
Extend selection one word left
Extend selection one word right
Extend selection column to Beginning of File
Extend selection column to End of File
Extend selection column one page up
Extend selection column one page down
Extend selection column to top of window
Extend selection column to bottom of window
Extend selection column to beginning of current line
Extend selection to end of current line
Extend selection column to the left by one column
Extend selection column to the right by one column
Extend selection column up by one line
Extend selection column down by one line
Extend selection column one word left
Extend selection column one word right
Define selection column using mouse
Delete character to the right of cursor position
Delete character to the left of the cursor position
Delete to beginning of previous word
Delete to beginning of next word
Redo or restore the changes by the Undo.
Delete to end of current line
Access Text Editors - General page of Preferences dialog

46.11.2 Embedded Software Editor (.c, .asm) Shortcuts


F9
CTRL + F9
F5
Left-click in gutter
CTRL + F5
F7
CTRL + F7
F8
Altium Essentials_July2013_Colby
10-July-2013

Run the program being debugged


Run to cursor
Toggle breakpoint for current line
Toggle breakpoint for line
Add Watch
Step into the current source line
Evaluate
Step to the next source line
588

SHIFT + F7
SHIFT + F8
CTRL + F2
CTRL + F3
Left-click on code outline +/CTRL + Double Left-click on code
outline +/CTRL + Left-click on variable/
function/ procedure name

Step into the current instruction


Step to the next instruction
Reset the current debug session
Finish the current debug session
expand/contract segment of code
expand/contract all code segments
Jump text cursor to respective declaration point

46.11.3 VHDL Editor Shortcuts


CTRL + F9
F9
CTRL + F5
CTRL + F8
CTRL + F11
CTRL + F7
F6
F7
F8
CTRL + F2
CTRL + F3
Left-click in gutter
Left-click on code outline +/CTRL + Left-click on code outline
+/-

Compile source HDL documents


Run Forever
Run simulation for the last time step
Run simulation to a specified time
Run simulation to next debug point
Run simulation for a time step
Run simulation for a Delta step
Run simulation, stepping into procedures/functions
Run simulation, stepping over procedures/functions
Reset current simulation session
End current simulation session
Toggle breakpoint for line
expand/contract segment of code
expand/contract all code segments

46.11.4 Scripting Editor (.pas, .vbs, .js, .tcl, .bas) Shortcuts


F9
CTRL + F9
F5
Left-click in gutter
CTRL + F7
F7
F8
CTRL + F3
CTRL + Left-click on variable/
function/ procedure name

Altium Essentials_July2013_Colby
10-July-2013

Run the script


Run to cursor
Toggle breakpoint for current line
Toggle breakpoint for line
Evaluate
Step into the current source line
Step to the next source line
Stop script execution
Jump text cursor to respective declaration point

589

Module 47: Putting Version Control to Work


As design teams grow and work across more and more projects, maintaining a cohesive history
of design development can present an increasing challenge. Version Control Systems (VCS)
provide a key link in helping design teams know when, why, and what changes have been made
by which designers and are a standard tool for maintaining design data management control.
While a VCS would typically sit externally to the design tools, Altium Designer incorporates
integration with a number of VCSs so that designers can maintain best practice design data
management from within the design environment.

47.1 A Quick Version Control Primer


Version Control Systems are software tools that are not only able to maintain a history of the
various versions of a file, they also support opening any revision of that file. It's like having a time
machine that allows designers to go back to any previous version of a document and audit who,
what, when and where changes were made.

47.1.1

Workflow of Version Controlled Documents

Assuming a document has been set up under version control, the basic workflow of working on
that document is as follows:
4. The designer checks out a local copy of the latest revision (the Head Revision) of the
document from the Version Control Repository. The local copy is referred to as the Working
Copy and the version that this copy is based on is called its Base revision.
5. The designer applies all edits as necessary to the Working Copy.
6. Once edits have been completed, the designer checks in the updated Working Copy to
become the new Head revision.

Figure 630. Using a VCS in a typical workflow.

While most Version Control Systems are designed to operate completely independently of the
authoring and editing environment, there are many benefits to providing direct interfaces to the
VCS from within the design environment.

Designers can Check-In / Out design documents without needing to leave the design
environment.

The Design Environment can provide visual differencing capabilities to help support merge
operations.

Altium Essentials_July2013_Colby
10-July-2013

590

47.1.2

Handling Contentions

In larger design teams, it's not uncommon to have multiple people needing to edit the same
document at the same time. There are a couple of ways that this can be managed:

47.1.2.1 Locking Documents


When a developer wishes to modify a particular document, they check it out from the VCS and
place a lock on it to prevent others from also checking it out. Once their edits are complete, they
check the updated document back in and remove the lock so that others may begin their edits.
The primary purpose of locking files is to avoid the following scenario:
1. Developer 1 checks out the Head revision - version 1
2. Developer 2 also checks out the Head revision - version 1
3. Developer 1 completes their edits and checks the file back in so that the new head revision
is now version 2
4. Developer 2 completes their edits and checks the file back in over the top of the edits made
by developer 1.
By locking documents that are currently being edited, no two developers can ever
edit the same document and so there is no risk of someone's edits ever being overwritten. The
approach is reasonable if locks are only applied for a short period of time and the edits are local
only a few files. But in many cases, these criteria cannot be met and restricting access to files for
any period of time is a major obstacle to development. In this instance, the use of file locks is
undesirable and so an alternate approach is needed.

47.1.2.2 Detecting Contentions and Merging Edits


If there is any possibility that two developers could be editing the same document
simultaneously, the ability to detect collisions and merge edits is required.
1. Developer 1 checks out the Head revision - version 1
2. Developer 2 also checks out the Head revision - version 1
3. Developer 1 completes their edits and checks the file back in so that the new head revision
is now version 2
4. Developer 2 completes their edits and attempts to check the file back in. The version control
system, having detected that the Base of the file being checked in is different from the
current head revision, flags that a contention exists and disallows the check-in.
5. Developer 2 does a compare of their Base and the current Head revisions to capture all
changes made since they first did a check out. Those changes are then merged with the
other changes made to the local working copy and then checked in as the new head
revision.

Figure 631. Using Compare and Merge operations to manage contentions.

Altium Essentials_July2013_Colby
10-July-2013

591

For text-based documents, performing a compare and merge is a relatively straightforward


operation supported by a number of freely available editors. But for binary files, it requires some
co-operation from the authoring tools. Without the ability to identify differences and selectively
push those changes into a merged document, the designer can't assess the impact of
interactions between design edits and they can't intelligently merge the contributions made by
multiple designers. In effect, they would be forced to revert to the locking methodology described
previously.
Part of Altium Designer's incorporation of Version Control interfaces into the design environment
is the inclusion of visual tools for differencing and merging documents. This brings about a
number of new opportunities:

Design reviews can focus in on changes made since the a previous release

Design changes are much easier to identify and document

The impact of changes can be more easily contained and controlled

Parallel layout and design methods can be utilized to speed up development

Figure 632. Visual Differencing and Merging capabilities are an integral part of Altium Designer's overall
Version Control Solution and make collaborative PCB design possible.

47.2 Version Control Terminology


Most Version Control Systems typically use similar terminology to describe their functionality.
Table 17 lists some of the more important terms to become familiar with and will be useful when
working with version control in Altium Designer.
Base

The revision in the repository that has been checked out to be the local
Working Copy. Also called the checked out revision.

Check-in

To save the working copy of the file into the repository. Referred to as
Commit in some version control systems

Check-out

To take a copy of a file from the repository into the working folder

Altium Essentials_July2013_Colby
10-July-2013

592

Typically this means checking-out the latest revision, but all earlier revisions
can also be accessed. Depending on the VCS, the file can be flagged as
simply checked-out, or checked-out exclusively (locked).
Commit

To save the working copy of the file into the repository. Referred to as
Check-in in some version control systems.

Conflict

The situation when two people try to commit changes that affect the same
region of the same file. These must be resolved, either using a Merge tool,
or manually.

CVS

Concurrent Versions System, an open source version control system.


Altium Designer has a direct CVS interface, allowing a user to track and
access revisions directly from its Storage Manager panel, making it very
easy to compare different revisions of schematic and PCB files.

Head

The latest revision committed to the version control system.

Project

Most version control systems support the concept of a project. A VCS


project is a set of related files which can be checked-in/out as a set. The
VCS may also support other project-type features, such as setting a version
number on all files in a project.

Repository

The master storage of all the files under version (or source) control, also
known as the Design Repository.

Revision

A committed change in the history of a file or set of files. This is the


numerical reference supplied by the VCS to track the different editions it is
holding of the file.

Sandbox

Folder where files are checked-out to work on them, also referred to as the
Working Folder.

SVN

Subversion, an open source version control system. Altium Designer


includes Subversion capabilities built-in, as well as the ability to use an
external Subversion installation. Revisions can be tracked and accessed
directly from the Storage Manager panel, making it very easy to compare
different revisions of schematic and PCB files.

Update

The act of checking for, and 'pulling' changes from, the copy in the
repository into the working copy of the file (the compliment of Commit, or
Check-in).
Version Control System, a generic term applied to any tool that is capable
of managing file version history and file retrieval.

VCS
Version

The term version is normally used to refer to the external reference number
allocated by a human to the controlled files, or their output (e.g., in the case
of source code).

Working copy

The local copy of the file in which changes are made.

Working folder

Folder where files are checked-out to work on them, also referred to as the
Sandbox.

Table 18. Terminology typically associated with the use of a version control system

47.3 Using Version Control in Altium Designer


Altium Designer provides support for creating and connecting Version Controlled Design
Repositories using either Subversion (SVN) or Concurrent Versions System (CVS) as the
version control provider. However, Subversion is the recommended provider as it is widely and
freely-available, and in true keeping to its unified nature, Altium Designer includes Subversion
capabilities built-in.

Altium Essentials_July2013_Colby
10-July-2013

593

Having direct support for SVN means that many of the standard SVN commands, including the
ability to create a repository, commit/update files, as well as being able to access different file
revisions are all available from within Altium Designer. This works well with the schematic and
PCB comparison features and makes it easy to quickly compare and identify differences
between two revisions of a schematic or two revisions of a PCB.
Figure 633 shows the files in an example PCB project under version control. All the various
revisions of each file are shown in the repository, with the latest checked-out copy in the working
folder. When the project in the working folder is opened in the Altium Designer environment,
Altium Designer recognizes that the project files are under version control, with the current
version control status of each file being shown in both the Storage Manager and Projects panels.

Figure 633. Simple diagram of how Altium Designer interfaces to a Version Control System (VCS).

47.3.1

Enabling Version Control

To work directly with a Version Control System from within Altium Designer, the appropriate
options must first be enabled:
1. Select DXP Preferences to open the Preferences dialog.
2. On the Data Management Version Control page, enable the required version control
provider:
a) Enable the CVS - Concurrent Versions System option if using CVS
b) Enable the SVN - Subversion option if using Subversion.

Altium Essentials_July2013_Colby
10-July-2013

594

Figure 634. Enable which version control provider to use with Altium Designer as part of the Data
Management preferences.

SVN - Subversion is enabled by default, and set to use the Subversion that is built-in to Altium
Designer. An external Subversion installation can be used if required. In this case, the paths to
the SVN executables must been specified:

Main SVN executable (typically svn.exe) enables most operations with the repository to
be managed from within Altium Designer.

Admin executable (typically svnadmin.exe) enables a new local repository to be created


from within Altium Designer. This option can be skipped if a local repository exists and
creation of a new one is not required.
Note that if using an external Subversion installation, it is necessary to have
Subversion 1.5.0 or later installed in order for the SVN commands to work correctly
from Altium Designer.

47.3.2

Storage Manager Panel

All VCS-related actions are performed through the Storage Manager panel, displayed by clicking
the System button at the bottom right of the workspace and choosing the Storage Manager
entry from the menu. The basic approach is to select the file(s) of interest, then choose the
required command in the right-click menu.
The right-click menu in the Storage Manager panel allows the user to perform standard VCS
actions such as checking in a changed file. When the user right-clicks and selects Commit, the
VCS takes a copy of the file from the working folder, increments the revision number (stored
internally in the VCS), and stores the copy of the file in its repository, along with a log message
that can be entered to describe the changes made to the file. Most VCS systems do not store the
entire file with every commit, instead they store the differences from the previous version.

Altium Essentials_July2013_Colby
10-July-2013

595

Figure 635. All VCS related tasks can be performed through the Storage Manager panel.

47.3.3

Projects Panel

The current VCS status of each file that is under version


control is displayed next to the file's name in the Projects
panel, and can be one of the following:

[blank] Version control disabled use of version


control has been disabled on the Data Management
Version Control page of the Preferences dialog.

[blank] Not in version control file has not been


added to the VCS repository.

No modification The file is checked in to the


repository, and the local copy is up to date.
Depending on the provider, the local copy may be
marked read-only so that it cannot be modified until it
is checked out.

Out of date The file is checked in to the


repository, but the local copy is out of date. Use the
Update command to update the local copy with the
latest revision.

Modified the checked out file is locally modified


by the user. Save the file and check in / commit the
file to the repository.

Conflict the file that the user is making changes


to has already been modified and checked into the
repository by someone else.

Missing the file is present in the repository but


not in the working folder. Use the Update command to 'pull' a copy of the latest revision of
file from the repository into the working folder.

Figure 636. VCS status reflected in the


Projects panel. Right-click to access
version control commands from the
panel's context menu.

Right-click on the panel and select the Refresh command to refresh the current VCS status of
each file.
Altium Essentials_July2013_Colby
10-July-2013

596

47.3.4

Using Subversion

Before using version control, the project files must be recognized by both the VCS and Altium
Designer as being under version control. The following sections demonstrate how to do this with
Subversion.

47.3.4.1 Creating a New Repository


Subversion saves its version control information in a central repository known as a Design
Repository from Altium Designer's perspective. The repository stores information in a hierarchy
of files and directories, referred to as a file tree. If the user does not already have a repository,
they will need to create and/or connect to one.
By connecting to a repository the user is, in effect, registering that repository with the system
telling Altium Designer of its existence as it were. Furthermore, there is no manual specification
of paths to unofficial or 'rogue' repositories. Through Altium Designer, the user can only interact
with those VCS-based Design Repositories that are purposefully connected to the system.
Design Repositories are created and managed from the Data Management Design
Repositories page of the Preferences dialog. To create a new Subversion Design Repository,
click on the Create New button and choose SVN. In the Create SVN Design Repository dialog
that appears, the name and location of the repository can be specified.

Figure 637. Create a new SVN Design Repository from within Altium Designer. Upon creation, the
repository will be connected to (registered with) Altium Designer and is ready for immediate use!

Altium Essentials_July2013_Colby
10-July-2013

597

Figure 638. Use the Create SVN Design Repository dialog to specify where
the repository is to be created, and its display name within Altium Designer.

The repository will be created at the nominated location and a connection to that repository from
Altium Designer made.

47.3.4.2 Connecting to an Existing Repository


In a collaborative environment, one or more Design Repositories may already have been created
in a location accessible by multiple users. In this case, creation of a new repository is not
required re-inventing the wheel as it were rather a connection to the required existing
repository needs to be made. This is also the case if a repository has been removed from the list
of repositories, and needs to be added back in again.
From the Data Management Design Repositories page of the Preferences dialog, connect to
an existing SVN repository by clicking on the Connect To button and choosing SVN. The SVN
Design Repository dialog will appear. Simply enter a name by which to refer to the repository
from within Altium Designer, and specify the repository access method and path to the root folder
of the repository a connection will be made and the repository will be ready for use.

47.3.4.3 Adding a Project Folder to the Repository


Subversion monitors changes to the files in a specified project folder. These changes are saved
in the repository. The next step is deciding which project folder is to be monitored with
Subversion.
Adding a design project to a Design Repository is a straightforward process. With the project
open, use the Add Project Folder To Version Control command from either the Projects panel
or Storage Manager panel. The Add to Version Control dialog will appear. The field at the top of
this dialog presents a drop-down listing of all connected and activated Design Repositories.
Select the repository required.
The folder hierarchy within the chosen Design Repository is presented in the Folders region of
the dialog. Either specify an existing folder into which to add the design files, or create a new
folder using the New Folder button. In the latter case, a folder will be added at the specified
position within the repository's folder hierarchy, named using the project name.

47.3.4.4 Checking Files into the Repository


After adding a project folder to the Subversion repository, the user needs to specify which files in
that project to check in, or commit, to the repository. A second Add to Version Control dialog will
appear, in which to initially nominate the files to be added to the repository. All files in a project
folder that has just been added to the repository will initially have the status Not in version
control, when viewed in the Storage Manager panel. After specifying the files for addition, this
status will change to Scheduled for addition, denoted by a blue cross icon ( ).
At this stage, the files are only scheduled for addition, but are not yet in the repository. They
be committed. From the panel's right-click context menu, either choose to add all project files to
Altium Essentials_July2013_Colby
10-July-2013

598

the repository using the Commit Whole Project command, or the selected files only, using the
Commit command.

Figure 639. Connected VCS-based Design Repositories make adding new design projects to version
control a snap!

Figure 640. Use commands from the Storage Manager's right-click menu to commit the entire project
or only selected files as required.

Altium Essentials_July2013_Colby
10-July-2013

599

The Commit to Version Control dialog will appear. Use this dialog to fine-tune which files are to
be committed to version control, optionally adding comments to relay useful information to others
who will be working with these same files.

Figure 641. Specify which of the scheduled project files to commit to version control.

After the files have been added to the repository, the status of each file changes to No
Modification, as indicated in Figure 642.

Figure 642. The Storage Manager reflects the synchronized state of each file - there are no changes
between the Head revision in the Design Repository and the local working copy.

Altium Essentials_July2013_Colby
10-July-2013

600

In the Time Line region of the Storage Manager panel, a blue arrow icon ( ) is used to denote
the revision of the file that is currently checked out to the local working folder (sandbox).
Once the project and its files have been added to the repository, they can be checked out and
worked upon. When work on a file is finished, it needs to be checked back in to the repository.
This process will copy the file from the working folder back into the repository, incrementing the
revision number. Note that if the file to commit is active (open), it should be saved prior to
committing, or else the last saved version of the file will be checked in to the repository and not
the open file.
A commit cannot be performed if someone else has committed an update to the file after the
time it was last checked out to the working folder. In this case an update must be performed first.
In CVS and SVN language, an update is the act of applying changes that exist in the repository
copy to the working version of the file, once this is done the file can be committed. Since it is not
possible to apply the changes from the repository copy of the file onto the local copy of the file
(because they schematic/PCB files are binary files), the result of an update will be that CVS/SVN
will check-out a copy of the file to the working folder, with a hash (#) character at the start of the
filename. Use the difference feature to identify any differences and help in deciding how those
differences should be resolved.

47.3.4.5 Updating a File from the Repository


To ensure the latest version of a file in a repository is being used as the local, working copy,
simply right-click on the selected file(s) in the Storage Manager panel and use the Update
command. This also ensures that the working copy includes any modifications made by other
users who are working with the file.
The version control system keeps track of what is in the repository compared to what exists in
the local working folder, so when a file is checked out, the repository copies the latest revision of
the file from the repository to the working folder (nothing will happen if they are the same
revision). Altium Designer supports this further, by disabling the Update command in the Storage
Manager panel when the file in the repository is identical to the local working copy.
If the file is open in Altium Designer when the Update command is executed, the file
should be closed and re-opened in order to correctly display and work on the latest
version of the file.

47.3.4.6 Showing Differences Between Versions


One of the most commonly used features in a version control system is the comparison, or
difference checking tool. As well as being able to compare ASCII files, Altium Designer also
includes physical comparison tools for schematic files, and for PCB files. This capability can be
used to show changes such as a schematic component being moved, or the path of a route
being altered.
Comparison is performed directly from the Time Line region of the Storage Manager panel.
Simply CTRL+CLICK to select the two revisions of a file to compare, then right-click and choose
the Compare command from the panel's context menu.

Altium Essentials_July2013_Colby
10-July-2013

601

Figure 643. Use the difference capabilities to quickly identify changes in schematic and PCB design files.

The two file revisions will be opened side-by-side and compared, with all differences listed in the
Differences panel. Double-click on an entry in the Differences panel to examine it on the actual
schematic or PCB.

47.3.4.7 Removing Files from a Repository


Some version control systems allow the removal of projects. By removing a project from the
version control system, it will no longer be associated with version control and the link between
Altium Designer and the VCS software will be removed. The actual files themselves remain in
the repository. They will appear again if the project is added back into the repository (the Altium
Designer-VCS link restored) and a refresh is carried out to resynchronize the system. An
external interface to the version control software should be used to permanently remove project
files from the repository.
To remove specific files from version control, simply select the required files in the Storage
Manager panel, then right-click and choose Remove from Version Control in the context menu.
The status for the removed file(s) will change to Not in version control.

47.3.4.8 Refreshing File Status


To ensure the state of files is up to date, use the Refresh command. This command can be used
at any time, but is especially useful when some external action has been performed, such as
checking in or out, directly in the VCS software.
Simply right-click on the project filename in the Files region of the Storage Manager panel and
select Refresh. The link between the project in Altium Designer and the project that resides in
the VCS is checked, and the status of the project and its related files is refreshed.
The corresponding status is updated both in the Storage Manager panel and in the right-hand
box next to each file's name in the Projects panel providing the Show VCS status option is
enabled in the associated options for the panel. Access these options on the System Projects
Panel page of the Preferences dialog (DXP Preferences). The F5 key can also be used on the
Storage Manager panel to refresh the VCS status.

Altium Essentials_July2013_Colby
10-July-2013

602

47.3.4.9 Displaying a File's Version History


The history of a file that is under version control can be viewed directly in the VCS Revisions, or
Time Line region of the Storage Manager panel (depending on whether the panel is configured
for Classic or Combined view). To view a specific revision of the file, simply select that revision,
right-click and choose the Open command the file will be opened in Altium Designer.

Altium Essentials_July2013_Colby
10-July-2013

603

Module 48: The Schematic


In Altium Designer, the start of a good design is a good schematic, and it is important to
remember that a schematic should not be drawn with only the netlist in mind. Schematic also
serves the important roles of providing good clean documentation, creating functional re-useable
design blocks, and it is the container for component and model information which will be used
downstream by editors and design processes. So, given its pre-eminence in the overall design
process, it is worth taking the time to create well documented schematics.

48.1 Creating Good Schematics


When used as the starting point for a PCB design, the schematic serves as the symbolic (logical
/ functional) representation of the design. At the barest minimum its purpose is to define the
connection netlist that describes how components are to be wired together. The layout designer
will then use this information to create a physical implementation of the design.
In addition to defining the circuit's connectivity, the schematic also serves as the primary
mechanism for a designer to communicate the broader functional intent of the design. To this
end, schematics should use conventions that will ensure clear communication and, where
necessary, include notes and annotations that will provide information about the design that
cannot be conveyed through graphics alone.

Figure 1. An example of a schematic captured for documentation and re-use

Figure 2. An example of a schematic drawn with only the netlist in mind

Altium Essentials_July2013_Colby
10-July-2013

604

Recognizing the importance that schematics play in defining and communicating the purpose of
the design are key to ensuring that schematics are an accurate representation of the design
intent. Creating good schematics means a lot more than simply building the connectivity model.
Figure 1 and Figure 2. are two representations of the same circuit but these questions can be
helpful in determining which document communicates the most effectively:

Which one's function is easier to comprehend?

Which one's main signal path is easier to determine?

Which one's power and ground is easier to find?

Which one would be easier to debug or fix?

What is the purpose of C7?


While both schematics satisfy the requirements for defining component connectivity, one is
clearly a more effective tool for human-human communication. It is up to the designer to ensure
that the full intent and function of their designs are documented and drawn in a way which helps
those working downstream from the Schematic Capture to do their jobs better.
The time spent in creating schematics that are easy to read and diagnose will be saved many
times over throughout a product's lifetime.
For those who are interested, the circuit is for an inline electret microphone pre-amp.

48.2 Rules of Good Schematics


To ensure that schematics communicate all that they need to, and are easy to understand, the
following tips will help:

Schematics should read left to right, top to bottom

Ensure schematic documents are appropriately labeled

Name nets and group related signals together

Avoid 4-way ties

Make use of Design Hierarchy

Make liberal use of color and graphical annotations

Reuse known good circuit blocks in a consistent manner

Use Annotations and Directives to stipulate design intent and constraints

Use SI Units and Measures

Use Informative Reference Designators

Be aware of Special Rules concerning Power Signals

Locate Decoupling Capacitors Close to the Components they Serve

The key point to remember is that the purpose of a schematic is not just to connect pins of
components together to form a netlist. Its purpose is to document effectively for all who might
read it. To this end, it can sometimes be helpful asking for input from colleagues about the
effectiveness of communication in new designs.

Altium Essentials_July2013_Colby
10-July-2013

605

48.2.1

Schematics should read left to right, top to bottom.

Schematics should
read left to right,
top to bottom.

Figure 3. Schematics should read left to right, top to bottom.

In general, schematics should read like a book with inputs on the left and outputs on the right.
Signal paths should flow left to right, top to bottom. This principle also holds for digital logic too.
Flip flops and gates are best oriented with inputs on the left and outputs on the right.

48.2.2

Ensure schematic documents are appropriately labeled

Include a title block with appropriate information about the document so those reading it can
quickly identify its purpose. Consider how others might locate the electronic version of a
document if all they have access to is a printout of the original schematic.

Figure 4. Use a title block to provide relevant information about the document.

Special strings can be very helpful for embedding information about the document and
its parent project.

Altium Essentials_July2013_Colby
10-July-2013

606

48.2.3

Name nets and group related signals together.

Name nets and


group related signals
into busses and/or
signal harnesses.

Figure 5. Name nets and group related signals into busses and/or signal harnesses.

Group related signals together and use meaningful net names.

Busses are related signals that have the same name but different numerical suffixes. For
example Data0, Data1, Data2 would all be nets of the bus Data[2..0].

Signal Harnesses are related signals that don't share the same name but are conceptually
related. Signals harnesses can contain busses, wires and other signal harnesses.

48.2.4

Avoid 4-way ties.

Bad

Good

Figure 6. Avoid 4-way ties.

If people are likely to reference a design using printouts rather than onscreen, 4-way ties should
be avoided. There are too many inconsistencies in how they are interpreted and even when
junctions are used to make cross connections explicit, they can quickly become a blur after
repeated photocopying. A far better option is given at the bottom of Figure 6.
Altium Essentials_July2013_Colby
10-July-2013

607

48.2.5

Make use of Design Hierarchy


Use design hierarchy to
split the design into
logical blocks.

Figure 7. An example of the use of design hierarchy

By abstracting circuits into functional blocks, it is much easier to digest higher level functionality.
Some organizations may still require complete designs to exist on a single design but that is
rapidly becoming an outdated mode of working and does not allow designers to leverage the
benefits of design reuse or multi-channel design.

48.2.6

Make liberal use of color and graphical annotations.


Make liberal use of
color and graphical
annotations

Figure 8. Make liberal use of color and graphical annotations.

Color is a very effective means for grouping related circuitry together into functional blocks. It can
also be useful in indicating the primary power rails and signal path. Be sure to use lightly
saturated colors that will not obscure text when printed on black and white printers. Dashed or
dotted lines are also very effective in the absence of color.
High Voltage, or otherwise dangerous signals, should be clearly marked on the
schematic with appropriate warning messages.

Altium Essentials_July2013_Colby
10-July-2013

608

48.2.7

Reuse known good circuit blocks in a consistent manner.

Reuse known
good circuits

Figure 9. Reuse known good circuits.

Recycling known good circuits into new designs saves time and minimizes risk. Also, layout
processes can reference previous instances of the same circuit blocks to speed up the routing
process.

48.2.8 Use Annotations and Directives to stipulate design intent


and constraints.

Use directives such


as Differential Pairs
to stipulate design
intent.

Figure 10. Use Annotations and Directives to stipulate design intent.

The more information that can be included in a schematic, the better. Annotations and directives
that give an indication of the intended use of a circuit, critical signal trace or design blocks will
help influence decisions made by downstream processes.

Altium Essentials_July2013_Colby
10-July-2013

609

48.2.9 Use SI Units and Measurements


Unit

Description

R/

Resistance (ohms)

Current (Amps)

Capacitance (Farad)

Inductance (Henry)

Power (Watts)

Table 19. Standard measurement units

Factor

Symbol

Prefix

-15

femto-

-12

pico-

-9

nano-

-6

micro-

-3

milli-

kilo-

mega-

giga-

12

terra-

15

peta-

10
10
10
10
10
10
10
10
10
10

Table 20. SI multipliers

In addition to the above tables, numerical component values should include leading zeros.
Good: 0.1uF
Good: 0.047uF
Bad: .1uF
Bad: .047uF

48.2.10 Use Informative Reference Designators


In general, for single-channel designs, all components on the schematic should be given a
reference designator composed of two strings: an uppercase alpha prefix indicating the
component type and a numerical suffix with the next available number of that type of component.
C7: Capacitor #7
R28: Resistor #28.
Following is a list of commonly used prefixes for the various component types.
A comprehensive list of component prefixes can be found in IEEE Std 315.

Altium Essentials_July2013_Colby
10-July-2013

610

Prefix

Description

Capacitor

Diode

Jack (Connector)

Relay

Inductor

Transistor

Resistor

Transformer

TP

Test Point

Integrated Circuit (IC)

Crystal Oscillator

Table 21. Standard prefixes used when


annotating common components

48.2.11 Be aware of Special Rules concerning Power Signals


In general, power signals can be considered as global signals and shouldn't require explicit
connection in and out of hierarchical blocks.
Avoid making any signals other than power and ground global. Typical culprits are global clock
and reset signals in digital circuits. These should be routed explicitly rather than being made
global.
Where power signals of multiple levels are in use, positive power signals should be indicated
with an upwards facing power port and negative power signals should be downwards facing.

Figure 11. Depiction of power signals

Exercise caution when using Vcc and Vdd signals instead of explicit voltages as the absolute
value of these signals can be open to interpretation. Also, using Vcc and Vdd signals
interchangeably can be problematic if they are not explicitly connected to one another at one
point in the design or if there is no annotation to indicate how they should be handled. If
components from different libraries are being mixed and they use both Vcc and Vdd signals, it
may be necessary to explicitly declare them as the same net. The same principles apply to Vee
and Vss signals.

Figure 12. Forcing explicit connections between different power nets.


Altium Essentials_July2013_Colby
10-July-2013

611

When a design calls for separate digital and analogue ground nets in order to maintain noise
immunity between analogue and digital circuitry, each ground net should use a different symbol.
These nets should be connected to the primary ground connection through a net tie component
to ensure the connection is only made at a single point in the design.

Figure 13. Connecting analogue and digital grounds at a single point.

48.2.12 Locate Decoupling Capacitors Close to the Components


they Serve
Decoupling (bypass) capacitors pose an interesting problem for many schematic designers who
are unsure if they should be treated as a power component and placed with the power supply
circuitry, or if they should be placed close to the components they are decoupling.
Given that decoupling capacitors can only fulfill their function if they are located close to the
components they are servicing, and the quantity and value of decoupling capacitors should be
tuned to the specific components they are filtering, decoupling capacitors should be located on
the schematic in close proximity to the components they are filtering.
Also, if the plan is to reuse circuitry across multiple designs, keeping the decoupling capacitors
close to the components they filter makes it quicker and easier to factor the design into reusable
design blocks.

Altium Essentials_July2013_Colby
10-July-2013

612

Module 49: The Printed Circuit Board (PCB)


Open up just about any electronic product and
inside will be a Printed Circuit Board (PCB). This
board provides the mechanical mounting for the
electronic components that make up the design
well as the electrical connections between them.
Having found common use in the electronics
industry for over half a century, PCBs have
evolved into complex items created by skilled
designers and manufactured using procession
processes.
While understanding the way a PCB is
manufactured is not mandatory for designers,
those who do have a grasp of the processes
Figure 657. The PCB is at the heart of just about
involved are far better equipped to design lower
every electronics product.
cost PCBs that benefit from higher manufacturing
yields. This module begins with an overview of the anatomy of a PCB followed by a discussion of
the manufacturing processes used in their creation. It concludes with a glossary of terms that will
likely be useful for emerging designers.

49.1 The Anatomy of a PCB


49.1.1

Single-Sided PCB

The simplest PCB to manufacture is called a single-sided PCB because it only has conductors
on one side; usually the bottom side.

Figure 15. A Single-Sided PCB with room for components on the top side and soldering on the bottom side.

Single-Sided PCBs begin their life in much the same way as all PCBs and that is as an insulating
substrate called the Core. The Core is coated completely on one side with a thin layer of copper.
After drilling the holes that will later be used for mounting the components, unwanted copper is
removed, using a chemical etching process, to leave the tracks and pads needed to electrically
connect the circuits components together.
The top side of the board is called the Component Side because through-hole components are
usually mounted on this side so that their leads protrude through the board to the bottom side
where they can be more easily soldered to the copper pads and tracks. Surface mount
components are the exception to this rule since they need to be mounted directly to the copper
pads and can only ever exist on the Solder Side according to Figure 15.

49.1.2

Double-Sided PCB

Only slightly more complex than the single-sided PCB is a double-sided PCB with copper traces
on both the top and bottom sides of the core. This allows for more complex routing. By
convention, through-hole components remain mounted on the Top Layer and surface mount
components on the Bottom Layer as per single sided PCBs.

Altium Essentials_July2013_Colby
10-July-2013

613

Figure 16. A Double-Sided PCB with conductive tracks on both top and bottom sides of the board.

49.1.3

Plated Through Holes (PTH)

Figure 16 shows a PCB with copper traces on both top and bottom layers but without any
electrical connection between these layers. Boards of this nature rely on the leads of throughhole components to provide the electrical connection between top and bottom layers, but this is
not always possible since traces will sometimes need to traverse between the two layers at
locations that dont coincide with a component lead. Therefore, a common addition to doublesided PCBs is Plated Through Holes (PTH).

Figure 17. A Double-Sided PCB with Plated Through Holes.

Hole plating is achieved using an electrolysis process to deposit copper inside the hole after it
has been drilled. This creates a conduction path between copper on the top and bottom layers
without relying on the lead of a through-hole component.

49.1.4

Top and Bottom Solder Masks

Most PCBs assemblies are soldered using either wave or reflow soldering processes. In either
case, there is the potential for solder bridging to occur between adjacent traces unless a solder
mask is applied. The solder mask, as its name implies, provides a repellant (or mask) that helps
prevent solder from indiscriminately adhering to copper in areas of the board that would
otherwise cause a malfunction. As a secondary benefit, solder masks also prevent the otherwise
exposed copper on the PCB traces from corroding.

Figure 18. A Double-Sided PCB with Plated Through Holes and Solder Mask.

While just about any color is possible, solder masks have traditionally been colored green and
are responsible for the characteristic green that most people recognize PCBs as having. The
solder mask is painted onto the top and bottom layers of the PCB using a precision screen
printing process.

49.1.5

Silkscreen Layers

When visible information such as company logos, part numbers or instructions need to be
to the board, silk screening is used to apply the text to the outer surface of the circuit board. Silk
screen information is usually colored white so as to contrast with the chosen solder mask
however any color can be used. Where spacing allows, screened text can indicate component
Altium Essentials_July2013_Colby
10-July-2013

614

designators, switch setting requirements and additional features to assist in the assembly
process.

Figure 19. Top side of a PCB with Silkscreen information added to indicate component designators.

49.1.6

Boards with more than Two Layers

So far, only PCBs containing one or two copper layers have been described, however it is
possible to create PCBs that contain many more layers. These PCBs are called multi-layered
PCBs and they can offer much denser routing topologies as well as better electrical noise
characteristics. Each layer within a multi-layered PCB will either be a signal or plane layer.
Signal Layers: Signal layers are reserved entirely for carrying electrical signals from one
component to another.
Plane Layers: Plane layers are made up of large blocks of copper and are generally used for
power supply sources such as VCC and Ground. By utilizing a large surface area, plane layers
are excellent at preventing and suppressing electrical noise.

Figure 20. An exploded PCB view including signal layers in red, aqua and light brown, and plane layers in
green and dark brown.

Multi-layered PCBs can be manufactured in a couple of different ways but the simplest involves
laminating multiple thin, double-sided PCBs together using a prepreg layer between each. The
ratio of double-sided PCBs to prepreg layers can be defined according to cost, weight and
electro-mechanical considerations as shown below.
Altium Essentials_July2013_Colby
10-July-2013

615

Figure 21. An 8-Layered PCB with a bias towards outer layer pairs

Figure 22. An 8-Layered PCB with a bias towards inner layer pairs

Figure 23. An 8-Layered PCB created from a single core built up with several prepreg layers

Based on the PCBs depicted in the figures above, the PCB in Figure 21 would require the least
complex manufacturing process and the PCB in Figure 23 would require the most complex
process. This has to do with the number of times the board has needed to pass through the
copper etching process.
Altium Essentials_July2013_Colby
10-July-2013

616

In the layer stack of Figure 21, the copper on all four cores can be etched simultaneously and
then sandwiched together (laminated) around layers of prepreg.
In the layer stack of Figure 22, the three cores can be etched simultaneously but then the outer
prepreg and copper layers must be added separate as part of the laminating process. The PCB
as a whole must then pass through the etching process one more time to remove unwanted
copper from the recently added outer layers.
In the layer stack of Figure 23, a single PCB core is progressively built up using multiple layers of
prepreg and copper. Each time a new prepreg and copper layer is added, the PCB must past
through the etching process again to remove unwanted copper from the recently added outer
layer. This will occur sequentially for each of the 6 different prepreg layers.

49.1.7

Blind and Buried Vias

Because the cores used in creating multi-layered PCBs can be etched, drilled and plated
individually before being laminated together into a complete stack, it is possible to create vias
that are only connected to internal layers and which do not surface on one or even both sides of
the final board. This means that the land area that otherwise would have been occupied by the
via on the outer layers of the PCB can now be used for routing.
Vias that only surface on one side of the PCB are called blind vias.
Vias that dont surface on any side of the PCB are called buried vias.
Although the use of blind and buried vias is becoming increasingly common in advanced PCB
designs, careful consideration needs to be given to the layer stackup of the PCB to ensure that
the board is, in fact, able to be manufactured. Consider the layer stackup in Figure 24 that
consists of 3 double-sided cores sandwiched around 2 prepreg layers. Consider also the via
arrangement called for by an unwitting designer.

Figure 24. A typical 6 layered PCB stackup (top) and impossible via arrangement.

The via arrangement in Figure 24 is impossible because it is not possible to drill (and plate) a
rd
th
hole that only passes through a prepreg layer i.e. the 3 and 5 vias (counting from the left)
cannot be drilled.
To overcome this, the designer would need to drill through one of the adjacent core layers and
apply precise depth control to create a more plausible design.
Altium Essentials_July2013_Colby
10-July-2013

617

Figure 25. Drilling through an adjacent core and applying precise depth control to drop a via across a
prepreg layer.

While the design of Figure 25 is more plausible, it limits the way the layers can be laminated
together and some PCB manufacturers may not allow this. In any case, what is proposed in
Figure 25 is far from efficient. The workflow would follow something like this:
3. Etch, drill and plate each of the double-sided core boards.
4. Laminate boards covering inner layers 2 to the bottom layer together
5. Using controlled depth drilling, drill and plate the fifth via from left (above).
6. Add the final prepeg layer followed by the outer core covering the top and inner layer 1.
7. Using controlled depth drilling, drill and plate the third via from the left (above).
This process is quite involved and requires multiple passes through the drill, plate, and laminate
processes. A better option would be to reduce steps 2-4 above into a single step by laminating
all cores together in one process and using controlled depth drilling to create the two blind vias.

Figure 26. An improved approach to drilling across a prepreg layer.

Figure 27. Using complete through hole drilling for vias that must traverse a single prepreg layer.

Finally, if controlled drilling depth is not possible with a given manufacture, there may be no
option but to drill the board all the way through at the points where a via connection is required
across the prepreg layer. Clearly this means that the land area occupied by the via on the outer
layers of the PCB can no longer be used for routing however this may be the compromise
necessary to yield a PCB design that can still be manufactured for a reasonable price.

Altium Essentials_July2013_Colby
10-July-2013

618

49.2 The PCB Manufacturing Process


The process of manufacturing a PCB is reasonably straightforward and unlikely to change
significantly between PCB vendors. Understanding how this process operates helps designers
create PCBs that are better suited to standardized manufacturing processes. A typical step by
step flow of the process used to manufacture multi-layer PCBs is given as a guide below:
Material selection

The core and prepreg layers required for the final assembly are
selected and cut to size.

Blind / Buried vias


required?

No: Skip to Laminate / Expose / Develop Photoresist


Yes: Continue below

Drill & Metalize blind / Drill vias and coat the via barrels with a metallization layer to
buried vias
ensure conduction through the core
Apply a photo-resistive coating to the copper clad cores. This is
then exposed to UV light through a negative image of the layers
artwork. Once developed, the exposed photoresist will harden so
that it is impervious to the etchant used in the next step.
Unexposed photoresist is washed away leaving exposed copper
underneath.

Etch

Immerse in an acid bath to remove the unprotected copper.

Strip Resist

The photoresist used to protect the copper artwork is no longer


required and is removed.

Core

Laminate / Expose /
Develop Photoresist

Laminate cores
Stack the cores in order on top of one another with layers of
together with prepreg prepreg in between. When placed into a heated press, the
to create Panel
prepreg will melt into an epoxy glue and will bind the core layers
together to form a complete layer stack panel.

Panel

Drill & Metalize holes / Drill vias and holes through the complete panel and coat the
vias
barrels with a metallization layer to ensure conduction.
Laminate / Expose /
Develop Photoresist

Apply a photo-resistive coating to the outer layers. This is then


exposed to UV light through a negative image of the outer layers
artwork. Once developed, the exposed photoresist will harden so
that it is impervious to the etchant used in the next step.
Unexposed photoresist is washed away leaving exposed copper
underneath.

Etch

Immerse in an acid bath to remove the unprotected copper.

Strip Resist

The photoresist used to protect the copper artwork is no longer


required and is removed.

Print Solder Mask

Print the solder mask onto the board to both protect the underlying
copper artwork from oxidization as well as preventing solder from
adhering to unintended portions of the PCB.

Apply Surface Finish

Apply a surface finish to exposed copper areas to both protect


them from the elements as well as providing a suitable surface for
component mounting and soldering.

Print Silkscreen

Print the silkscreen text and graphics onto the completed PCB

Route

CNC Route the completed PCB to shape.

Pack and Ship


Complete PCB

Encase the PCB in packaging that will protect the PCB from
moisture and corrosion before shipping the completed PCB to its
customer.

Table 22. A typical PCB manufacturing process

Altium Essentials_July2013_Colby
10-July-2013

619

49.3 PCB Glossary of Terms


Automated Test Equipment (ATE) automated equipment designed to analyze and test the
functional parameters performance of an electronic device.
Built-In Self Test an electrical testing method that allows devices to test themselves with
specific hardware.
CAD - Abbreviation for Computer Aided Design. CADs are computer programs to design circuitry
patterns and circuit boards electronically rather than requiring physical drawing or drafting.
CAM - Abbreviation for Computer Aided Manufacturing Software of programs designed to
simulate and check the manufacturability of a product.
Chip - an individual circuit or component of a silicon wafer, the lead-less form of an electronic
component.
Design For Manufacturing (DFM) a process to check that the design fits the fabrication
process requirements and checks for minimal trace width, minimal trace-to-trace distance,
minimal hole clearance, as well as additional information.
Dielectric - the insulating material between conductors.
DIP - dual in-line package with two rows of leads from the base in standard spacing between the
leads and row. DIP is a through-hole mounting package.
DRC - Design Rule Check.
Dry Film Resist - an ultraviolet light sensitive photopolymer (photoresist) used in the imaging
process
Edge Connector is a connector on the circuit substrate edge in the form of plated pads or
lines of coated holes used to connect to other circuit board or electronic device.
Electronic Component is a part of the printed circuit board, including resistors, capacitors,
transistors, etc.
Fine Pitch also called surface-mount components with a lead pitch of 25 mils or less.
Footprint refers to the size and shape of the pads for soldering certain electronic component.
Functional Test - the electrical testing of an assembled electronic device with simulated function
generated by the test hardware and software.
Gerber File a commonly used file used in controlling a photo-plotter.
Ground Plane - a conductive plane as a common ground reference in a multi-layer board for
current returns of the circuit elements and shielding.
IC the abbreviation for an Integrated Circuit.
In-Circuit Test is the electrical testing of individual components or parts of a circuit board
rather than testing the whole circuit.
Lamination - Many printed circuit boards are made up of multiple layers, these are referred to as
multi-layer printed circuit boards. They consist of several thin etched boards or trace layers and
are bonded together through the process of lamination.
Lead-free finishes -refer to a variety of lead-free finishes available today that meet RoHS
compliance but it is important to understand the pros and cons of each finishing option and which
to choose for your application.
Leakage Current - A small amount of current that flows across the dielectric area between two
adjacent conductors.
Legend Letters, numbers or symbols that are printed on a circuit board which may include part
numbers and product number or logos.
Minimum Conductor Width refers to the minimum width of any conductors, such as traces,
on a board.
Minimum Conductor Space - The minimum distance between two adjacent conductors, such
as traces, on a circuit board.
Net refers to a set of pads to be connected electrically on the board.
Netlist - List of parts and their connection points which are connected in each net of a circuit.
Altium Essentials_July2013_Colby
10-July-2013

620

NPTH Abbreviation for Non-plated through-hole.


Pad refers to the metalized or plated area of the board for connection and attachment of
electronic components.
PCB - Abbreviation for Printed Circuit Board.
PWB - Abbreviation for Printed Wiring Board ( an older term for PCB)
Prepreg - Ready-to-mold material in sheet form, which may be cloth, mat or paper impregnated
with resin. The resin is partially cured when supplied to the fabricator, who lays up the finished
shape and completes the cure with heat and pressure.
Pin or pinout is a part of an electronic component which is soldered to the board.
Pitch refers to the center-to-center spacing between conductors, such as pads and pins, on a
board.
PTH -Abbreviation for (plated-through hole) which is a plated hole used as a conducting
interconnection between different layers or sides of a board either used as connection for
through-hole component or as a via.
Reflow Soldering - A form of component soldering that uses ovens to melt solder paste to the
pins of the components that have been attached to the PCB.
RoHS - Abbreviation for Restriction on Use of Hazardous Substances, RoHS restrictions took
effect on July 1, 2006.
Routing (tracing) - the process of placing electronic connections (traces) between pads on the
board.
Signal layer - layer of a board, in which traces can be placed. For a two-sided board two signal
layers are available - the Top and the Bottom layers.
Silk screen - a layer designed for placing legend elements on the top or bottom side of the
board. Two corresponding layers are available - the Top Silk and the Bottom Silk.
Small Outline Integrated Circuit (SOIC) - an integrated circuit with two parallel rows of pins in
surface mount package.
SMD - Abbreviation for Surface Mount Device.
SMT - Abbreviation for Surface Mount Technology.
Substrate - circuit board layers are separated by a substrate which is a laminated insulator that
separates the circuitry design
Test Point is a specific point on a circuit board used to test functional adjustment or quality
test in the circuit-based device.
Thermal pad is a special form pad used when it is connected to copper pours. Thermal pads
improve the soldering of a joint and reducing the chance of a cold solder joint.
Through-hole refers to a drilled hole in the board, usually for mounting purposes.
Trace (or Route) - a layout or wiring of an electrical connection.
Via (or VIAs) refers to a plated-through hole used for interconnection of conductors on
different sides or layers of a circuit board.
Wave Soldering is when solder joints are soldered simultaneously using a wave of molten
solder.

Altium Essentials_July2013_Colby
10-July-2013

621

Module 50: Approaches to the Routing


Challenge
Successfully completing a PCB and seeing the first prototypes come to life can be one of the
most satisfying and rewarding experiences an electronics designer can have. There is nothing
quite like seeing something that youve created take on a life of its own, but to get to that point,
there is quite a bit of planning and experience that helps good board designers get the job done
more effectively. While a new designer might expect to press the Go Autorouter button to
activate their computer to take over while they go get a coffee, a seasoned designer can tell you
that theres a lot more to it than that.
Altium has created a number of hardware products of its own and, over the years, this
perspective has helped Altium to refine and document the routing challenges faced into a
repeatable process that can be followed by just about any designer. In this module, well explore
some of the lessons learned by Altium over the years so that we can share this experience in
order to help you approach the routing challenge.

50.1 Component Placement


50.1.1

Accurately Place Critical Mechanical Components

Theres no point routing a PCB if critical components have not been positioned in the right place.
Connectors and interface items such as displays, LEDs and push buttons will all need to be
carefully positioned so that they line up accurately with the enclosure design. This includes any
mechanical (STEP) items that must interface with the PCB. Ensure that they are located on the
board so that the remaining real estate available for component placement is clearly visible.

50.1.2

Define Rooms for the Various Sub-Systems

Next, rough out the location of sub-systems within the design. Ensure that analog and digital
circuits are kept separate from one another and have sufficient room to maintain electrical and
physical isolation.
Where appropriate, consider using Rooms to define regions for the power supply, memory
subsystems, IO interfaces etc. This will not only help with roughing out the design and specifying
the general location of individual items, it will allow entire blocks of components to be moved
together.

50.1.3

Locate Support Components around Critical Components

Having settled on the location of critical mechanical components and the location of the various
sub-systems, move the remaining support components into a loose position around the subsystems they support. Ensure that decoupling capacitors are located close to the components
they are filtering and that the length of high-speed signal traces are kept to a minimum.
Consider creating component unions (Tools Convert Create Union from selected
components) to group several components together into a union so that graphically moving one
will move them all.
When placing components, familiarize yourself with features such as the alignment
tools (Edit Align) and Reposition Selected Components (Tools Component
Placement Reposition Selected Components). These tools are tremendous time
savers when used effectively.

Altium Essentials_July2013_Colby
10-July-2013

622

50.2 Use Pin Swapping to your Advantage


Pin and Part swapping is not just for FPGA devices. It can be used to great advantage with any
component that has interchangeable inputs or multiple parts within the one package.
Components to consider as eligible pin swapping contenders are:

connectors (where the mating connection is yet to be defined),

items that package multiple versions of the same component into a single package such as
discrete logic circuits,

resistor arrays

etc.
In some situations, pin swapping can be applied even when the pins being swapped are not
strictly interchangeable. For example, the address lines of a memory device can sometimes be
swapped without affecting the operation of the circuit. The same is true for the data lines too.
So long as the same path is used to read and write data into the memory device, swapping two
address lines may change where data is written inside the device but wont alter its functional
operation within a circuit. Of course, appropriate care should be exercised when performing
these sorts of pins swaps.
Pin swapping can be set up from the Tools Pin / Part Swapping menu item.

50.3 Set up Board Layers


A number of factors will guide the decision on how many copper layers to use in the PCB. These
will include:

Board Size / Density

Density of pins on component packages

Target cost

Electrical noise limitations / requirements

Mechanical strength

Current carrying capacity

Thermal considerations
Spending a bit of time to make some initial calculations up front will save a huge amount of time
in reworking efforts. Once the layer composition has been decided, the PCB designer can then
determine the best overall routing strategy to use. This might include targeting specific layers for
horizontal, vertical or diagonal routes as well as how plane layers are to be used. As well as
routing direction, nets are often assigned to pairs of layers to separate noisy nets (such as
address lines) from quiet nets (such as data lines).
As a general guide, fanning out the most densely populated component will determine the
minimum number of signal layers required. And as a very rough approximation, you should
budget at least one plane layer for every 2 signal layers.
A further consideration for the layer stackup will be whether blind or buried vias will be required.
If they are needed then appropriate layer pairs will also need to be defined as part of the process
of setting up the board layers.
Copper layers are set up in the Layer Stack Manager (Design Layer Stack Manager).

50.4 Set up for Impedance Controlled Routing


As well as the routing width and layer stackup, impedance controlled routing uses the layer
composition information to make its calculations (Design Layer Stack Manager). If the design
requires impedance controlled routing the layer stackup and composition must be carefully
configured before routing commences, as changing either the stackup or the composition mid
stream could lead to a significant amount of rework.
Altium Essentials_July2013_Colby
10-July-2013

623

If impedance controlled routing is being used it is essential to ensure that termination


components are catered for before starting the routing process. Altium Designers signal
integrity analysis engine includes a termination advisor, which can help with the termination
design process (Tools Signal Integrity). Signal integrity analysis can commence as soon as
the schematic is complete, based on average track impedances and routing lengths.

50.5 Define Keep-out Areas


In every design there will be areas on the board that routing is allowed, and areas where it is not
allowed which may be on all routing layers or may be on specific routing layers. No-go areas
that apply on all layers are defined by placing objects (lines, fills and regions) on the Keep-out
layer, which typically includes a boundary around, but slightly in from the edge of the board.
Layer-specific no-go areas are defined by placing layer-specific keep-out objects. Lines, fills,
regions and arcs can be used as layer-specific keep-outs by enabling their Keep-out checkbox.
Layer-specific keep-out objects are not included in fabrication output files, such as Gerber files.

Figure 28. A keep-out boundary defined around the edge of a PCB cutout, this prevents copper (routing and
polygons) from getting too close to the cutout.

50.6 Setup Design Rules


Design Rules are the guard rails that help guide the layout process and provide a protection
barrier against the complexity that must be managed when creating a PCB. Altium Designer
supports a whole host of design rules that can assist the PCB designer but the most common
starting point will be the standard copper width and clearance rules.
The minimum copper width and clearance rules will have an impact on how easily a board can
be manufactured while also limiting the maximum achievable routing density. Setting clearance
rules too coarsely can cause a blowout in the number of layers required to route the board while
setting them too finely can lead to more challenging (and costly) manufacturing issues. Prior to
setting the clearance rules it is usually best to check the capabilities of your preferred PCB
manufacturer to ensure they will be able to manufacture the board to your requirements.
There are a myriad of other design rules to consider but the important point is that if possible, as
many rules as possible should be set as early in the layout process as practical to ensure
minimum rework later on.

50.7 Fanout Densely Packaged Components


Its much easier to route densely packaged components if their pins have first been fanned out
(routed) to the boundary outline of the component. For very densely packaged components,
as BGAs, the small geometries will only offer limited options for routing connections to all pins.
Altium Essentials_July2013_Colby
10-July-2013

624

Using Altium Designers auto fannout capabilities helps speed up the process of accessing
copper to these pins and provides a better platform for creating connections between
components.

50.8 Route Components in Groups


Rather than trying to route the entire board all at once, its often helpful to pick a small section of
related components and route those in isolation. When doing so, keep a copy of the schematic
handy as well so that you can see the relationship between components and you can tweak the
component placement while you go to get the best possible routing result. Once the routing is
complete, consider using features such as the create union (Tools Convert Create Union
from Selected Objects) command to combine all the components and routing as a single block.
That way you can adjust the location of the group of components easily without affecting the
routing between them.
In some cases it may even be beneficial to move a group of components off the PCB area and
route them in isolation before re-introducing them back into the main board area.

50.9 Ensure Low Impedance Power Access


The switching speed of digital circuitry can cause huge surges in power requirements. Current
draw can go from milliamps to tens of amps in a matter of microseconds. If the traces supplying
power to and from heavily switching circuits are not low impedance, significant noise can be
introduced onto the power supply lines that can greatly impact the operation of the circuit.
Key points to focus on for creating low impedance power feeds is to ensure both the power and
ground signal paths:
8. use the largest possible track size,
9. are routed into ground and power planes as quickly as practical,
10. have plenty of decoupling capacitance close to each switching device,
11. are augmented with polygons, and
12. make liberal use of vias to stitch polygons and planes to one another.

Altium Essentials_July2013_Colby
10-July-2013

625

Figure 29. Polygons, fills, wide tracks and multiple vias have been used to ensure low a impedance feed on
this 1.2V supply rail.

50.10

Route in Order of Priority

While it might make sense to route signals in their order of priority, some care will need to be
exercised determining what, exactly, that order should be. As a general rule, higher speed
signals while require more attention and therefore should be prioritized over lower speed signals.
Likewise, high current signals will require fatter tracks that will consume more board area. They
should be routed in priority over lower current tracks.
Also, consider groups of nets that must have a specific nominal length (or similar length across
the group). Route the longest net first and check that it is within tolerance. Route the rest of the
signals in the group and make use of excess space to route serpentine configurations to match
the net lengths (Tools Interactive Length Tuning).

Altium Essentials_July2013_Colby
10-July-2013

626

Figure 30. Tuning the routing length to ensure matched lengths in this set of nets.

50.11

Use Subnet Jumpers

Subnet Jumpers are a unique feature introduced into Altium Designer to make pin swapping
configurable devices much simpler. The general process for using Subnet Jumpers is as
follows:
1. Fan out all pin swappable devices to the edge of their component outline
2. Route traces from outer devices to the edge of the fanned out device and stop just short of
completing the connection. At first, dont worry too much about whether the tracks are from
the same net.
3. Perform an automated pin swap to allow Altium Designer to attempt to swap signals across
the disconnect
4. Select the Auto Route Add Subnet Jumpers command to complete the route across the
disconnection boundary.
Using Subnet Jumpers is particularly useful when there is a possibility that signals will need to be
pin swapped several times throughout the routing process. If a new pin swap is required, Subnet
Jumpers can be quickly removed (Auto Route Remove Subnet Jumpers) so that the signals
can be unencumbered during pin swapping, and then added back again to complete the tracks
again.

Altium Essentials_July2013_Colby
10-July-2013

627

Figure 31. The use of subnet jumpers (hatched sections of track) allows pin swapping to be performed on
partially routed nets, greatly simplifying the overall routing process.

50.12

Place Polygons

The placement of polygons should generally be delayed until all point-to-point routing has been
completed. If they are placed too early during the routing process, it will give rise to the need to
forever turn them off or redraw them as additional tracks are placed or edited. Also, the number
of geometries involved in polygons can slow down online DRCs and cause general routing
processes to take longer than necessary.
If polygons have been placed onto the PCB and additional edits to the board are still required,
the shelve polygons command (Tools Polygon Pours Shelve n Polygons) will temporarily
suspend selected polygons without deleting them entirely. This allows edits to be made to the
routing without being encumbered with DRC violations caused by the polygons presence.
Once all track edits have been completed, the shelved polygons can be returned to their normal
state (Tools Polygon Pours Restore n Shelved Polygons) and re-poured to take into
account any changes that have been made to the PCB traces.

50.13

Interactive Routing

Interactive routing (Place Interactive Routing) is an intelligent process. The designer clicks on
a pad to select a connection to be routed, Altium Designer then attempts to define a route path
from that pad to the current cursor location. How the interactive router responds to existing
objects, such as pads on other nets, depends on the current Routing Conflict Resolution
The current mode is displayed on the Status bar, for example one mode is Walkaround
Obstacles. Use the Shift+R shortcut to cycle through the enabled modes. Walkaround, Hug
and Push, and Push are the most commonly used modes. These modes, along with other
Altium Essentials_July2013_Colby
10-July-2013

628

important interactive routing options, are configured in the PCB Editor Interactive Routing
page of the Preferences dialog.
While interactive routing, pressing the tilde key (~) will display the in-command shortcuts such as
the Ctrl+click keys press this to instruct the Interactive Routing engine to attempt to complete
the route automatically.

Figure 32. Press the tilde(~) key while routing to display the shortcut keys specific to that command.

Altium Essentials_July2013_Colby
10-July-2013

629

This course was assembled on Wednesday, July 10, 2013 at 16:01 from the following modules:
A ACE_Course_FrontPage_EN.docx
A ACE_CopyrightNotice.docx
A ACE_TableOfContents.docx
1
T-20006 - Your Relationship with Altium_EN.docx
2
T-20007 - Getting Help_EN.docx
3
T-20008 - The Altium Designer Environment_EN.docx
4
T-20009 - Design Documents_EN.docx
5
T-20010 - Design Projects_EN.docx
6
T-20015 - The Schematic Editor_EN.docx
7
T-20019 - Schematic Document Options_EN.docx
8
T-20016 - Placing Schematic Objects_EN.docx
9
T-20017 - Selecting and Editing Schematic Objects_EN.docx
10 T-20171 - Schematic Object Reference_EN.docx
11 T-20020 - Schematic Placement and Wiring_EN.docx
12 T-20021 - Multi-sheet design & Design Hierarchy_EN.docx
13 T-20024 - Schematic Annotation_EN.docx
14 T-20026 - Compiling and Verifying the PCB Project_EN.docx
15 T-20033 - The PCB Editor_EN.docx
16 T-20027 - Footprint Manager_EN.docx
17 T-20038 - Defining the Board Shape_EN.docx
18 T-20039 - Design Transfer_EN.docx
19 T-20034 - Working with the PCB Panel_EN.docx
20 T-20035 - PCB Layers_EN.docx
21 T-20036 - PCB Objects_EN.docx
22 T-20207 - Introduction to Classes and Rooms_EN.docx
23 T-20044 - Introduction to PCB Design Rules_EN.docx
24 T-20037 - PCB Grids, Guides & Options_EN.docx
25 T-20048 - Positioning Components on the PCB_EN.docx
26 T-20051 - Interactive Routing_EN.docx
27 T-20174 - An Introduction to PCB Global Editing_EN.docx
28 T-20040 - PCB Selection & FSO_EN.docx
29 T-20060 - Polygons_EN.docx
30 T-20114 - Managing Parts and Libraries_EN.docx
31 T-20073 - What is a component_EN.docx
32 T-20074 - Schematic (Symbol) Libraries_EN.docx
33 T-20075 - Schematic Component Creation_EN.docx
34 T-20084 - Supplier Links_EN.docx
35 T-20076 - PCB Libraries_EN.docx
36 T-20175 - PCB Component Creation 1_EN.docx
37 T-20078 - Including 3D Models in PCB Components_EN.docx
38 T-20072 - Creating an Integrated Library_EN.docx
39 T-20169 - Creating a Bill of Materials (BOM)_EN.docx
40 T-20092 - Outjobs_EN.docx
41 Appendix_CoverPage.docx
42 T-20022 - Advanced Schematic Editing Techniques_EN.docx
43 T-20025 - Schematic Design Directives_EN.docx
44 T-20023 - Parameters and Parameter Management_EN.docx
45 T-20173 - Design Refactoring_EN.docx
46 T-20013 - Installing and Updating Altium Designer_EN.docx
47 T-20129 - Shortcut Keys_EN.docx
48 T-20012 - Putting Version Control to Work_EN.docx
49 T-20014 - The Schematic_EN.docx
50 T-20032 - The Printed Circuit Board (PCB)_EN.docx
51 T-20063 - Approaches to the Routing Challenge_EN.docx

Altium Essentials_July2013_Colby
10-July-2013

630

Das könnte Ihnen auch gefallen