Once the modules have been connected to each other on the multi-board schematic, the board-to-board connectivity can be verified. This will detect net-to-pin assignment errors and pin-to-pin interconnection wiring errors. These errors can be resolved and corrections pushed down into the affected PCB projects or bought back up to the source system schematic.
Altium Designer can check your multi-board design for logical, electrical, and drafting errors between the design content and project checking settings. There are a number of checks that can be performed on the validated multi-board design. These are for violations concerning the connections between the modules on the sheet, as well as problems associated with mated parts, and these checks are configured as part of the project options.
Configuring the Verification Options and Running the Validation
Select the Project » Project Options command from the main menus to open the Project Options dialog and select its Error Reporting tab. The Report Mode of each violation can be changed to one of four values by clicking on it and selecting the desired value in the drop-down.

Configure the required violation checks on the Error Reporting tab of the Project Options dialog.
To validate your multi-board design, choose the Design » Run ERC command from the main menus or the design space right-click menu.

Validate your multi-board design using the Run ERC command.
Interpreting Messages and Locating Violations
If validation errors and warnings are detected in the design, a notification is displayed in the Messages panel.
Note that the Messages panel will only open automatically if there is at least one Error or Fatal Error condition. To check for a Warning, you will need to open the panel manually by clicking the
button on the bottom-right of the design space and choosing Messages. Once the project has been validated, the panel will list any warnings and errors that have been detected.

The Messages panel displays the warnings and errors detected in the multi-board design project.
The Messages panel is command central for presenting violations. Things to be aware of include:
-
The Messages panel has two regions – the upper grid region summarizes the violations; the lower region gives details of the currently selected violation.
-
Double-click on a message to cross-probe to that violation. Double-click on a detail to show that specific object.
-
You can click on any of the Messages panel column headings (e.g., Class, Document, Message) to assist in sorting the errors and warnings.
-
Right-click in the Messages panel then use the Group By sub-menu options to group the errors and warnings by specific criteria.
-
Right-click in the Messages panel then use the appropriate Clear command to delete messages or use the Export To Report command to export the messages to a report.
Clearing messages does not necessarily mean the messages have been resolved. The same unresolved messages will be listed after performing validation again. Message clearance is a visual aid when resolving errors in the design that allows you to manually remove messages as you feel they have been resolved. Validation must be launched again to obtain an up-to-date picture of any violations that still exist.
Multi-board Design Violation Types
The sections below include detailed information about each violation check available for multi-board designs.
Violations Associated with Connections
Different Net Names
This violation occurs when the name of the net associated with a connection on the multi-board schematic is not the same as the net associated with the corresponding pin of the connector on the child design project.
Notification
A notification is displayed in the Messages panel in the following format:
Net Name "<ConnectionNetName>" for connection "<ConnectionDesignator>" does not match with Net "<ConnectorPinNetName>" of "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
where:
-
ConnectionNetName
– the name of the net (on the multi-board schematic) associated with the connection that connects from the indicated pin.
-
ConnectionDesignator
– the designator of the connection.
-
ConnectorPinNetName
– the name of the net associated with the indicated pin of the connector on the child design project.
-
ConnectorDesignator-PinNumber
– the designator of the connector component in the child design represented by the module's entry and the pin of that connector.
-
ModuleDesignator
– the designator of the module on the multi-board schematic that is used to reference the child design project.
-
ChildProjectName
– the name, including extension, of the child project referenced by the module.
Recommendation for Resolution
This violation typically arises when the name of the net on the connector pin in one child project is different from that in the mated connector pin in another child project, i.e., the two boards being connected by a connection between the relevant parent modules on the multi-board schematic document.
Use the Connection Manager dialog to view the net names currently being used. The Net Name entry shows the name used for the connection on the multi-board schematic document. With the connection selected, this can also be seen visually in the Conflict Resolution area of the dialog. Where the connector pins have different nets associated with them in both child projects, the Net Name for the connection defaults to <FromPinNetName>/<ToPinNetName>
. These net names are reflected in the Module Net fields for the From and To pins, respectively. Resolution can be in two ways:
-
Use the
buttons in the Conflict Resolution area for both modules to quickly set the module net in each case to be the same as the net name for the connection. Then apply the changes and pass those changes back to the child projects using the Design » Update Child Projects command. The nets associated with the respective connector pins in those projects will be updated accordingly through use of an ECO.
-
Change the naming for the net associated with the relevant connector pin in one of the child projects to be the same as that used for the connector pin in the other project. Then compile the child project and bring the change back to the multi-board schematic by using the Design » Import From Child Projects command. The net name for the connection will be updated accordingly through use of an ECO.
Refer to the Working with Connections page to learn more about working with the Connection Manager dialog.
No Net
This violation occurs when a connector pin represented in a module entry on the multi-board schematic is not connected to any net in the child design project referenced by that module.
Notification
A notification is displayed in the Messages panel in the following format:
"Pin <ConnectorDesignator-PinNumber>" is not connected in child project "Module <ModuleDesignator>(<ChildProjectName>)"
where:
-
ConnectorDesignator-PinNumber
– the designator of the connector component in the child design represented by the module's entry and the offending pin of that connector.
-
ModuleDesignator
– the designator of the module on the multi-board schematic that is used to reference the child design project.
-
ChildProjectName
– the name, including extension, of the child project referenced by the module, and containing the connector whose indicated pin is not connected to a net.
Recommendation for Resolution
This violation can arise in a number of situations. Consider the following when resolving a violation of this type:
-
If the pin of the referenced connector is not to be used within the design, tie it to the appropriate power line (e.g., GND
).
-
Ensure that any wiring to the connector pin is making electrical contact, i.e., the wire or bus connects to the pin's electrical hot spot.
-
If the connector pin is intended to have a short wire and a net label, ensure that the net label exists and has been attached to the wire correctly.
Unresolved Conflict
This violation occurs when a conflict exists in the connectivity between two connected boards in the system.
Notification
A notification is displayed in the Messages panel in the following format:
Unresolved conflict exists: Net "<OldModuleNetName>" has been renamed to "<NewModuleNetName>" for "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
where:
-
OldModuleNetName
– the name of the net associated with the indicated pin of the connector on the child design project, currently held in the multi-board schematic editor’s existing connectivity data map.
-
NewModuleNetName
– the name of the net now associated with the indicated pin of the connector on the child design project, after importing changes made to that child project.
-
ConnectorDesignator-PinNumber
– the designator of the connector component in the child design represented by the module's entry, and the pin of that connector.
-
ModuleDesignator
– is the designator of the module on the multi-board schematic that is used to reference the child design project.
-
ChildProjectName
– is the name, including extension, of the child project referenced by the module.
Recommendation for Resolution
This violation typically arises when a change has been made in relation to the connector in one child project, and when that change is imported back to the multi-board schematic document, it will break the existing connectivity defined between two connected boards. For example, the nets assigned to two pins of the connector might have been swapped in one child project, meaning that there is now a mismatch when following those pins through to another target board's connector.
Use the Connection Manager dialog to view unresolved conflicts. The Connection Manager dialog listing will highlight any connections that are considered as in conflict, or in practice, any imported connection update that does not agree with the Multi-board Schematic editor’s existing connectivity data map.
Refer to the Working with Connections page to learn more about working with the Connection Manager dialog and available conflict resolution options.
Violations Associated with Mated Parts
Entry Is Empty
This violation occurs when a module entry does not currently reference a connector component in the child design project referenced by its parent module.
Notification
A notification is displayed in the Messages panel in the following format:
Entry "<EntryDesignator>" is empty in "Module <ModuleDesignator>(<ChildProjectName>)"
where:
-
EntryDesignator
– the designator of the offending module entry.
-
ModuleDesignator
– the designator of the module on the multi-board schematic that is used to reference the child design project.
-
ChildProjectName
– the name, including extension, of the child project referenced by the module.
Recommendation for Resolution
This violation can arise when:
-
A connector component in the referenced child project and currently associated with an existing module entry has had its special System:Connector
parameter removed, and that change has been inadvertently imported to the multi-board schematic document. In this case, add the parameter back to the component then import the change back to the multi-board schematic document.
-
A new entry has been placed manually within the parent module. In this case, import changes from the child project to synchronize the required entries with their underlying connectors then remove the redundant entry.
Typically, you would ensure that the connector(s) in the child project are placed and have been given the System:Connector
parameter. Then use one of the Import from Child Project commands to have the entries automatically created in the empty/shell parent module referencing that child project. This is the quickest and safest method to have the module entries in the multi-board design created in-sync with their underlying connectors in the child projects.
No Mated Part
This violation occurs when a module entry is not currently connected to another module in the design.
Notification
A notification is displayed in the Messages panel in the following format:
Part "<ConnectorDesignator>" (Entry <EntryDesignator>) doesn't have Mated Part in "Module <ModuleDesignator>(<ChildProjectName>)"
where:
-
ConnectorDesignator
– the designator of the connector component in the referenced child project.
-
EntryDesignator
– the designator of the offending module entry (which is reflective of, and synchronized with, the underlying connector in the referenced child project).
-
ModuleDesignator
– the designator of the module on the multi-board schematic that is used to reference the child design project.
-
ChildProjectName
– the name, including extension, of the child project referenced by the module.
Recommendation for Resolution
Ensure that the offending module entry is connected to the required entry in a target module – making a connection between the connector on one child board with that on another. Choose the type of connection and wire it up between the two module's entries accordingly.
Refer to the Working with Connections page to learn more.