Collaborating between SOLIDWORKS PCB and SOLIDWORKS

Today's sophisticated electronic products come in all manner of unusual shapes and sizes - designing these products demands close collaboration between the mechanical and electronic design teams throughout the development process.

SOLIDWORKS PCB can help with this, allowing the ecad and mcad designers to directly pass design changes back and forth between SOLIDWORKS PCB and SOLIDWORKS®. Make a change to the board shape or the positioning of a critical component in SOLIDWORKS PCB, then click a button to pass those changes across to your fellow designer in SOLIDWORKS.

Underlying these collaboration capabilities is an ECAD-MCAD Project Collaboration Server. As well as providing secure storage for the ecad design, it also acts as the conduit between the design spaces, transferring changes to the board shape and components, as well as the designers' comments.

Design changes are passed between SOLIDWORKS and SOLIDWORKS PCB transparently through the Collaboration Server.

The SOLIDWORKS PCB PCB project must be stored in the Collaboration Server as a managed project, for SOLIDWORKS PCB and SOLIDWORKS to be able to collaborate on it. As well as being used to store the ecad data, the Collaboration Server also stores the shared design elements, including the board shape and an mcad model of each component. The other function of the Collaboration Server is for storing the collaboration change history.
Before you can collaborate, ensure that you have fulfilled the requirements for collaboration. For full details on what's needed, see Installation Overview.

How the Applications Collaborate

SOLIDWORKS and SOLIDWORKS PCB collaborate with each other through an ECAD-MCAD Project Collaboration Server, whose behind-the-scenes role is quite transparent. The designer working in each application uses a Collaboration panel to Push and Pull design changes from one space to the other. Notifications about incoming changes appear automatically in the Collaboration panel, as soon as a Push is performed on the other side.

Collaboration Panels

To display the Collaboration panel:

  • SOLIDWORKS PCB - click the View | System | button on the ribbon.
  • SOLIDWORKS - select the Task Pane tab from the set of tabs down the right of the application.

Each application has a Collaboration panel, through which local changes are either Pushed into the Collaboration Server/Vault, or Pulled from the Collaboration Server/Vault.

The panels become available once the SOLIDWORKS PCB SOLIDWORKS Collaboration extension is installed in SOLIDWORKS PCB, and the SOLIDWORKS PCB - SOLIDWORKS Collaboration add-in has been installed for SOLIDWORKS.

The Push button is used to push changes from the active application into the Collaboration Server, the Pull button is used to pull changes from the Collaboration Server into the active application.

Component Requirements

3D component models can be passed back and forth during collaboration.

On the SOLIDWORKS PCB side, the model must be part of the component (placed in the PCB Library editor). Free 3D models placed directly on the PCB are not supported.

The following 3D model formats are supported:

  • SOLIDWORKS PCB 3D Body Objects
  • SOLIDWORKS parts - *.SldPrt (up to 2015 format)
  • Parasolid Models - *.x_t and *.x_b (up to V27)
  • STEP models - *.Stp and *.Step (203 & 214 formats)

At this stage, parts cannot be placed in SOLIDWORKS and pushed across to SOLIDWORKS PCB.

Where are my Components?

When a Push is performed in SOLIDWORKS PCB, each PCB component is saved as a Parasolid model and uploaded to the Collaboration Server. For this to occur, the 3D Body object that holds the component must be visible in the SOLIDWORKS PCB workspace, if it is not visible, then the component is not uploaded to the Collaboration Server. In SOLIDWORKS PCB, the visibility of 3D Bodies is controlled in the Show/Hide tab of the View Configurations dialog, if the 3D Bodies option is set to Hidden then the components will not be uploaded.

Board Shape Requirements

Any shape defined in SOLIDWORKS PCB will transfer correctly to SOLIDWORKS. While there is strong support for SOLIDWORKS shapes, not all are fully supported, as described below.

Support for SOLIDWORKS Slot, Spline, Ellipse and Parabolic Shapes

SOLIDWORKS has a broader range of drawing shapes, which can be used to define the board shape, and cutouts within the board. There is a high level of support for these shape in SOLIDWORKS PCB, with slot, ellipse and parabolic shapes being supported. Currently, spline and conic shapes are not fully supported, however it may be possible that the spline shape you create in SOLIDWORKS does transfer correctly to SOLIDWORKS PCB.

Supported shapes can be used to define the board shape and/or board cutouts in SOLIDWORKS. As the board shape or a cutout, these shapes behave as regions in SOLIDWORKS PCB. Where possible the shape will also be editable, but this is not possible for all shapes.

SOLIDWORKS shapes can be used and transferred to SOLIDWORKS PCB.

Starting the Collaboration Process in SOLIDWORKS PCB

In SOLIDWORKS PCB, each project is created and stored as a managed project, in an ECAD-MCAD Project Collaboration Server.

To commence collaboration from SOLIDWORKS PCB:

  1. The schematic design is developed in the usual manner.
  2. Add a PCB to the project, and save the project. You can commence the collaboration process now using the blank board, or if you prefer, you can transfer the components from the schematic to the board first, in the usual manner (Design » Update PCB Document <PcbFilename>).
  3. Save All modifed files (Files menu).
  4. Select Home | Project | Project » Commit Project to commit all changes into the Collaboration Server.
  5. Make the PCB the active document in SOLIDWORKS PCB.
  6. In the SOLIDWORKS Collaboration panel, click the Push button. You will be prompted to enter a comment, do this, then click the Post button to complete the process, as shown in the images below. This action will:
    • Create a Parasolid model file for the board and each component in the design, and store them in the \<ProjectName> SOLIDWORKS Collaboration\Exported 3D Models\ folder in the working copy of the ecad project folder.
    • Release these models to the \Mechatronic 3D Models\ folder in the Collaboration Server.

The steps to collaborating from SOLIDWORKS PCB - click Push in the Collaboration panel, then Post a message to upload the shared elements (board shape and components).

A managed project is not automatically available for collaboration, you must also perform a Push in the Collaboration panel to save the required collaboration elements into the Collaboration Server.

To then access this project from SOLIDWORKS:

  1. In SOLIDWORKS, click the  icon to open the SOLIDWORKS PCB Collaboration panel.
  2. Click the Create from Repository button. The Select Project dialog will open, listing all of the managed projects in the Collaboration Server, that the current SOLIDWORKS user has permission to open. 
  3. Select the project from the list of managed projects, and click OK. Here you are letting SOLIDWORKS know which managed project you want to open the board from, this step will fail if the board has not been Commited in SOLIDWORKS PCB.
  4. The next step is to save the SOLIDWORKS assembly that will hold the board design on the SOLIDWORKS side. The Save As dialog will appear, configure this to save the SOLIDWORKS assembly in a suitable location.
  5. The Altium SOLIDWORKS Collaboration dialog will then appear, showing the status of the various steps of the process: such as Pulling Design from Server... Applying Component Change..., and so on. This process will:
    • Read the board shape from the the Collaboration Server and create a SOLIDWORKS assembly of it (*.sldsam),
    • Download the Parasolid component models into the \Temperature Sensor Electronic Parts\Downloaded Models\ mcad folder,
    • Create a SOLIDWORKS component (*.sldprt) from each of the Parasolid component models,
    • Position the components on the board.
  6. You can now reshape the board and move the components in SOLIDWORKS, Push those changes back into the Collaboration Server, and then Pull the updated PCB design into SOLIDWORKS PCB.

Starting the Collaboration Process in SOLIDWORKS

The workflow can also commence in SOLIDWORKS and then move to SOLIDWORKS PCB if required.

The approach to working in this direction is:

  1. In SOLIDWORKS, click the  icon in the set of panel icons on the right of SOLIDWORKS to open the SOLIDWORKS PCB Collaboration panel.
  2. Click the Create New Board Assembly button in the panel.
  3. The Select Project dialog will open, now you can either:
    • create a board for an existing project by selecting the required managed project in the list, or
    • click the Create New Project button to make a new managed project in the Collaboration Server. If you choose this option the Create New Server Project dialog will open, enter a suitable Name and Description for the project. The Repository setting is the repository used by the Collaboration Server to store managed projects, typically it will be set to the DefaultRepository, click OK and the dialogs will close.
  4. The Save As dialog will then open - ready to name the SOLIDWORKS assembly. Select/enter a suitable location and name, then Save the assembly.
  5. You will be presented with a default board shape in SOLIDWORKS, edit the shape as required, save it, and return to the assembly editor (note that SOLIDWORKS runs as multiple applications, you can be in the part editor or the assembly editor).
  6. With the *.sldasm as the active document in SOLIDWORKS, the SOLIDWORKS PCB Collaboration panel will show the Pull and Push buttons, click Push to push the design into the Collaboration Server.

You can now access this new board shape from SOLIDWORKS PCB:

  1. In SOLIDWORKS PCB, select File » Open Project, the Open Managed Project dialog will appear.
  2. Select the required managed project in the list and click OK to open the project.
  3. Next you need to add a blank PCB to the project, select Home |Project | Project » Add new PCB, the Enter File Name dialog will appear, name the new PCB and click OK to save it as part of the project - it will be opened, ready for editing.
  4. The next step will be to update this board based on the shape defined in SOLIDWORKS and Pushed to the Collaboration Server. It is easier to see the updates when the board is displayed in 3D mode, press the 3 shortcut to switch to 3D Display mode.
  5. If it is not visible, open the SOLIDWORKS Collaboration panel, it will detect that there is a board active and flag that New changes have been detected!
  6. Click the View Changes button, the panel will change to list all the changes detected, click on a change to view the change in the workspace, it will flash 3 times in purple.
  7. Enable the checkbox for the change(s) you wish to accept, and click the Accept button. The board shape / cutouts will change to match the proposed purple shape.
  8. Right-click on the board in the SOLIDWORKS PCB Projects panel and select Save.
  9. Right-click on the project in the Projects panel and select Save Project.
  10. Right-click on the project in the Projects panel and select Commit Project, this will save the project file and commit all changed files to the Collaboration Server.

Examining and Accepting Changes

Both SOLIDWORKS PCB and SOLIDWORKS present potential changes using a simple animation, flashing or animating a purple shape to represent the new object / location.

The animated GIF below shows an example of three component relocations being passed from SOLIDWORKS to SOLIDWORKS PCB. Click on a proposed change to animate it in the workspace, enable the Accept checkbox to update the design to include that change. Use the commands in the right-click menu to toggle the state of multiple checkboxes.

The objects that have changed are presented in purple, making it easy to identify the before and after states. Enable the Accept checkbox for each change you want to make.


You are reporting an issue with the following selected text and/or image within the active document: