31 Replies Latest reply on Sep 5, 2014 1:00 PM by Pete Yodis

    Altium to SolidWorks

    Craig Siebert
      At my office we utilize SolidWorks (SW) and Altium which is like Circuit Works (CW). Our engineers cannot figure how to get a single board assembly saved as one part instead of a 400 part assembly. Just give me someting easy to handle and deal with people!!!!!

      How can i get a single body circuit board assembly out of this program and into a SW part not assembly format????
        • Altium to SolidWorks
          Jason B

          I do not think that it is possible to export a CircuitWorks model into a SolidWorks part. Your best option would probably to be to export the CircuitWorks model into SolidWorks assembly and then save the assembly as a part with all components visible. This would give you a part file with all of the information and components of the assembly.

          • Re: Altium to SolidWorks
            Craig Siebert

            Ok guys,

            Let's get back on track.


            This thread is about ALTIUM not Circuit Works.


            I said it's like Circuit Works.


            Does anyone inside of the SW community understand ALTIUM?


            If so please enlighten me as how to manipulate it to giving me and this community populated SW models.


            Thanks for refocusing guys.

              • Re: Altium to SolidWorks
                Jason Capriotti
                Altium is a PCB design cad software....much like SolidWorks is a Mechanical design cad software. Circuitworks is an intermediate step between the two, its not a PCB design software like Altium. Are you using Circuitworks?
                  • Re: Altium to SolidWorks
                    Kirk Jess
                    If you are not using the circuit works function, then you are stuck with exporting from Altium using the IDF extension and then import that into Solidworks. Circuitworks does this step for you and is much cleaner. When I did this, without buying circuit works, this is how I did it. Not pretty but does it.
                    • Re: Altium to SolidWorks
                      Craig Siebert

                      No I am not using Circuit Works.

                      My electronics engineer gave me an iges file that was like huge!

                      It gave me the pcb as an assembly with all and I mean all 600+ components, as you guessed it, individual part files.

                      This was a complete monstrosity.  I only care about a single part which is the part number they use, and not maintaining all the other part files and what not.  It would be nice if after extracting the bloated assemby, to save it to a part. and only have the single model file to deal with.

                        • Re: Altium to SolidWorks
                          Jim Zink



                          You're not listening.  CircuitWorks is NOT a PCB layout program.  It is a IDF TRANSLATOR that facilitates the transfer of PCB designs from ECAD software like Altium to SolidWorks.  If you want an efficient and productive means to translate Altium files into SolidWorks, then CircuitWorks (or Desktop EDA, a third party alternative) is by far the best way to go.  YOU would purchase CircuitWorks, not your electronics dept or vendor.


                          If you can't get an IDF translator, then exporting STEP files from Altium is your next best option.  Once imported into SolidWorks, the assembly can be saved as a part.  It's not nearly as efficient or productive as using CircuitWorks, but it is better than IGES.

                    • Re: Altium to SolidWorks
                      Tounine Mayer

                      If you have CircuitWorks (Available w/ Premium) do the following:

                      1. From Altium do a SaveAs and choose .brd extension, it will create two files, but it only asks where to put the .brd file.  A .pro file is also created in the same directory as the Altium file being "SaveAs'd"
                      2. Make sure the .brd and.pro files are in the same location
                      3. Start CircuitWorks (you can do this through SolidWorks or independently from the Start menu)
                      4. Open the .brd file in CircuitWorks (it's pretty quick!)
                      5. Use the component button to filter small components like caps, that you don't need to see
                      6. export to SolidWorks ( you can set options like fixing the components in place by clicking the Circuitworks Icon at the top of the Circuitworks window)
                      7. If you truly want a part and not an assembly you will have to do a save as and save as a part in Solidworks.

                      This imports it very clean and easy, and quick.

                      If you don't have this you can do a Save As from Altium and save as a .stp file, which you can import into SolidWorks, but it's much bigger, more cumbersome and can take a long time to export and import.


                      Good Luck!

                        • Re: Altium to SolidWorks
                          Craig Siebert

                          Thanks for the input.  But as stated before, we do not use CircuitWorks.

                          One can only hope that the electronics department will convert over to that program sometime in the near future, but not likely.

                          So, as far as this thread is concerned, I am considering it finished and incomplete.

                          There seems to be a good sized following of CW users and how nice and efficient that must be when handing off components to mechanical guys using SW.  Hopefully someone with some Atium experience coupled with SW will be able to re-start this thread with some viable solutions.

                        • Re: Altium to SolidWorks

                          Altium is about the only ecad company attempting serious interoperability with mcad.  They seem to have decided STEP is the future interface between the two.


                          A Solidworks file, saved as STEP, can be brought into Altium with good success.


                          An Altium file, saved as STEP, has many problems when brought into any mcad program.  A valid 3D assembly file is created, the STEP protocol works very well.  But settings within Altium seem either difficult, ignored, or don't work:


                          • All components are rectangular blocks.
                          • Component names are not used, defaulting to Imported1, Imported2, etc.  For a PCB file of 500 - 1,000+ components this becomes extremely difficult to work with.
                          • PCB with arc cutouts sometimes flip to arc protrusions.
                          • Altium panel routing often replaces sharp external cornes with very small radii often whose endpoints are not properly terminated at linear edges: result is no PCB is built, but the sketch comes through successfully.
                          • Components Z direction is often one way: all components' height extrude in one direction regardless of PCB side they are on.
                          • Often all components are put on one side of PCB only.
                          • Often components float off PCB surface, uniformly though.


                          Some of the above is probably attributable to PCB designers not correctly setting defaults.  Some remain technological inconsistencies between these software.


                          The above problems are sufficient that I do not recommend using STEP out of Altium.  I've never had success producing a usable model Altium - STEP - Solidworks: models are there, but with any or all of above problems the file is just not usable.


                          To be fair, maybe if the PCB and the mechanical designer fully understood Altium's STEP configuration settings and started all project files new with said proper settings, it might work.  This is a difficult scenario.

                            • Re: Altium to SolidWorks
                              Phil Loughhead

                              Hi All,


                              My name is Phil and I work for Altium, as part of the team that develops educational material about Altium Designer (Altium's software). I'd like to follow up on this discussion, and let you all know that we're very keen to support you guys who are working with passing design data between SolidWorks and Altium Designer.


                              Firstly, some resources that you guys might find useful:



                              To summarise and respond to the commentary so far:

                              • Altium has backed STEP as the preferred interchange format (we currently support AP214). We added support a couple of versions back (Altium Designer 6?), and continue to improve the support with each new release. That means the later versions of Altium Designer have much better STEP format support than earlier versions.
                              • The board is always exported, the designer can then choose to include all or selected components and pad holes during export. The export is always a STEP assembly. The STEP format is our preferred interchange format. 
                              • Components in the STEP file are given the same name as they have on the board (we call it the component designator in ECAD land). If its called LED1 on the board, it'll be LED1 in the STEP file.
                              • PCB design is all about designing the underlying board (a bunch of layers), for that the components are represented by the pads where they attach to the board. To support modelling the actual 3D component that sits on those pads, we support 2 methods:
                                • imported STEP component models (created by guys like you, or downloaded from manufacturers websites, or downloaded from shared resource sites like the excellent 3D ContentCentral).
                                • 3D component models hand-crafted in Altium Designer from what we call 3D Body Objects (a simple set of 3D shapes that can be used to craft approximate component shapes, ideal when you can't find and don't need an accurate model for a given component)
                              • The board shape in the STEP file is derived from the board shape in Altium Designer - complex shapes with cutouts *should* be supported.
                              • Components can be mounted on either side of the board, as long as they have been defined correctly in Altium Designer they will export to the correct side in the STEP file.
                              • Altium Designer has support for displaying the board in 3D, including its case/enclosure. That means the electronics designer can check they have all the bits and bobs in the right place on the board before they pass the STEP file of the loaded board design to you.


                              I've attached the STEP file of the board used in the video that I mentioned above. On this board the critical components (the ones that interface with the case, including the connectors and the switch), are accurate STEP models of components, all others have been created in Altium Designer using 3d Body Objects.


                              If anyone has questions please feel free to ask. We're in the electronics design software (ECAD) game, not the MCAD game, so we can definitely learn from mechanical design experts like yourselves. I'm particularly interested in hearing about issues with the board shape, and would be happy to receive files that demonstrate shape translation issues, which I can pass on to our programmers.


                              best regards,


                              Altium Limited

                                • Re: Altium to SolidWorks
                                  Marc England

                                  Hi Phil

                                  I am curious as to why Altium has chosen not to support an industry standard interface (IDF) between ECAD and MCAD , but rather choose STEP format as its primary chioce?

                                    • Re: Altium to SolidWorks
                                      Phil Loughhead

                                      Hi Mark,


                                      One of the driving forces behind our decision to add support for exchanging data between the ECAD and MCAD domains was to deliver a high level of accuracy. Today's electronic product often comes in a compact, unusually shaped case, sometimes requiring a shaped board with cutouts and carefully placed components. Bringing this board and case together in the finished product would often result in last minute and costly design changes - but hey, I don't need to tell you guys that!


                                      We wanted the data to support interference checking between the board and its case so that clearance issues can be detected as early as possible in the design cycle. We also wanted that support to be available to both the ECAD and MCAD designers too, without requiring either designer to swap component models to achieve it.


                                      IDF did not offer the level of component modelling required to achieve this, well in V3 at least. Components are modeled as extruded shapes in the IDF data, requiring them to be replaced with accurate models in the respective domain, for complete interference checking.


                                      If you'd like to read more about the thinking behind this choice there are a couple of article on the Altium website, which can be downloaded as PDFs.

                                      Creating connections between electronics design and manufacturing

                                      MCAD-ECAD design - removing 25 years of pain


                                      best regards,


                                        • Re: Altium to SolidWorks
                                          Marc England

                                          Hi Phil,

                                          thanks for the info.

                                          In a way I have the best of both worlds as I do both PCB design (Cadstar,Allegro) and 3D (Inventor, now SolidWorks) so can and have created my IDF libraries. My dream though is to have a free for all 3D library based on the IPC-7351 footprint standards, in a neutral format. As orientations etc are all determined it would provide a foolproof interface between the ECAD and MCAD worlds.


                                            • Re: Altium to SolidWorks
                                              Daniel A

                                              Hi all,


                                              I have a similar question that relates to this thread. I am an electronics engineer using Altium designer Summer 09. I have exported a step file of a PCB design from altium and imported it into solidworks. After doing this some of the components of the circuit have been positioned at the board origin instead of in the correct location.


                                              Does this sound like a problem with the export from Altium or a problem with the step import settings within solidworks. In Solidworks the components that have been placed incorrectly are showing as solidworks parts where as all of the correctly placed components are showing as solidworks assembies in the design tree.


                                              As I am an electronics engineer my solidworks skills are limited so would appreciate any help.





                                                • Re: Altium to SolidWorks
                                                  Mark Larson

                                                  I believe what Altium refers to is the fact that PCB layout tools only allow for one Z dimension (height), thus everything you bring over from the layout side is a cylinder or a cube, or a combination. IOW, the part has a consistant but only one height. Many people in PCB layout also only have their X&Y info represented by the silk screen which more often than not doesn't represent the true size of the part. You can get around this by mapping the parts to models you have built or aquired from the component vendors.


                                                  Generally you only need the parts on the PCB that interface to the outside world, switches, connectors, LED's, potentiometers,...and the like . Keep the assembly small, although it does look cool to include everything. And the PCB layout people will love you if you keep all parts and edges on a 5 mil grid (or .125mm for metric folks) or at the very least don't give them the opposite measurement unit than they are using, things work out better if everything is on a grid for them in the unit they are using.

                                                  • Re: Altium to SolidWorks
                                                    Phil Loughhead

                                                    Hi Daniel,


                                                    Since you have some components correctly positioned and some that are not, there is a chance that the problem is in the STEP file coming out of Altium Designer.


                                                    My first suspicion would be the origin of those errant components - perhaps the component origin is not in a suitable location? To check, the easiest way to check would be to make a PCB library from the board (Design menu), go to one of those mis-placed components in that library and jump to the reference point (J, then R) - you'll be able to see immediately if the origin is off in the never-never. If the origin is away from the actual elements in the footprint, then once that footprint is placed on a board it could be that the component origin ends up with negative values with respect to the PCB workspace origin, which then could get reset to the board origin during export.


                                                    Just thinking out loud here, as a first thing to check. If that is not the problem then i'd suggest submitting the board (or a cut down version with a couple of those mis-placed components) to the Altium support people for investigation.


                                                    best regards,


                                                      • Re: Altium to SolidWorks
                                                        Daniel A

                                                        Hi Phil,


                                                        Thanks for the response. I have checked the reference points for the components concerned and they all appear to be in sensible locations. On closer inspection the components that have been placed at the origin after importing into solidworks are not actually components at all but 3D bodies for components. What I mean by this is the components themselves have been placed in the correct locations but some of the 3D bodies for these components have somehow become detached from the component and that is what is being placed at the origin. Some of the components have more than one 3D body and one of the bodies is correctly positioned with the component and one has been placed at the origin.


                                                        Any ideas? If not I will attempt to contact Altium support



                                              • Re: Altium to SolidWorks
                                                Chad Schmidt

                                                I'm a bit troubled by the zip file export you provided.  Why does everything come in as a separate part?  Shouldn't the resistors be instances of the same part and not separate part files?  How do you expect MCAD users to develop BOM's from an export like this?

                                                  • Re: Altium to SolidWorks
                                                    Phil Loughhead

                                                    Hi Chad,


                                                    That's an excellent question. In Altium Designer we see the schematic as the source, or reference, and the BOM is generated from it (it can include PCB info, like location or side of board, if needed). That means we keep the BOM-type information, like the component stock number, in the schematic.


                                                    On the PCB side, the one resistor footprint+3D body can even be used for different resistors, if that's how you've set it up. So right now, the info that you need to collate like parts is not available in the PCB.


                                                    Having said that, Altium Designer understands the connection between the schematic and the board, that means it is not impossible to extract schematic data during PCB type operations, like an export. I'll pass this idea on to our development team, as a potential improvement to the STEP exporter.


                                                    best regards,


                                              • Re: Altium to SolidWorks
                                                Chad Clarke



                                                We use Altium and SolidWorks and we purchased a SolidWorks Modeler for Altium which give us a SolidWorks assembly that we intern save as a part.





                                                • Re: Altium to SolidWorks
                                                  Chris Beckett

                                                  A related question is - can we have associativity between SolidWorks and Altium?


                                                  Created new thread here:



                                                  • Re: Altium to SolidWorks
                                                    Jody Smith


                                                    I have our electrical engineers uncheck the "export silkscreen" option in the Altium program when they export it is a step so that the thing is not so ungodly slow. That helps some, but as to your original question the answer is no.

                                                    • Re: Altium to SolidWorks
                                                      Colin Fitzpatrick


                                                      Any advice or recommendations storing ECAD and MCAD in a single vault? Our plans are to move from Workgroup PDM to ENOVIA V6 using Solidworks and Altium addin modules. I'm afraid of having overlap in file names (in Altium) in the vault. You might have a “D1” designator in one board assy and a “D1” in another assy using different part numbers and I would like to avoid files overwriting each other. This is one advantage saving the imported Altium STEP assy as a part in Solidworks.


                                                      Thank you,



                                                        • Re: Altium to SolidWorks
                                                          Pete Yodis



                                                             I also wouldn't mind hearing other's viewpoints on data management with Altium files.  We are moving from WorkGroup PDM to EPDM and considering purchasing Altium.  Altium has their own data management solution.  I would prefer everything be in EPDM, but I'm wondering how it might work.  Similar to your question.  Have you learned anything?