KiCAD/FreeCAD mechanical collaboration


@maui: my collegs works with SolidWorks and Inventor-Pro, so we use STEP models mostly.
And, honestly, its fine for me…:wink:
(Ok, I use privatly FreeCAD with extentions as well…:wink: )
Is it Cadance on your gif?

Kicad Future Development Goals

[edit Joan]
@SebastianKulik referring MCAD integration have you tried StepUp?

[end edit]

but this extension gives you the opportunity to handle revisions on your boards (i.e. edge changes, 3d model positions because of enclosure needs). The nice thing is that you don’t need to ask your MCAD department to use FreeCAD, but you can give them your 3D STEP model and ask them to change position on board models, then get the STEP model back and update your board accordingly.
This is called ECAD-MCAD Collaboration
some nice video here

yes, it is a gif to show how 3D model visibility (& transparency) could be handled directly in the 3D viewer, without the need to go to pcb editor to change this property inside the footprint.


@maui: Im about 30 years in developer business and have a huge experience in collaboration as well.
As I wrote: I use FreeCAD privatly, but as developers from FreeCAD write themselfs “Please note that FreeCAD has still not reached a version 1.0 status in our view, and might not be ready for production use”.
I work for industy, so, they never will use CAD that not ready for production use. Most popular still SolidWorks, Inventor, SolidEdge etc for a lot of reasons (from air-liquid-thermal flow simulations etc etc etc), and , honestly, its not a point of discussion anyway. FreeCAD is great, I often talk about with M-CAD developers, but mostly all of them means:

  1. its not even ready for professional production
  2. no any company will use different CAD-Systems because of many reasons
  3. every company have allready well working infrastructure and you must take care of “well-working-system”

We as electronic developers need to accept compomises at collaboration with mechanical-guys anyway.
Exchange and compare from generic STE/IGS converted models are huge help thinking in “old-days”…:wink:
It will be awesome to export PCB to SW, AI, SE etc, but every MCAD have even own data-format and such kind of export-API will be very complex (and I guess buggy too).
KiCAD-FreeCAD collaboration is awesome, honestly, I ask me why KiCAD still not support FCSTD file format?
Really, I check every nightly-build for FCSTD-support cause it will make my work so much easier (I desigh all 3-D models for custom parts in lovely FreeCAD).
On professional side of things we need to wait till FreeCAD get Version 1.0 and will be ready for production use- every manager/company will say you the same, or similar words.
Very first what Ill do when FreeCAD V1.0 out: Ill speak with cheef of mechanical development to switch all to FreeCAD, really…:wink:
Best regards from Germany,


It is just a number and they may be more honest/conservative about their work than the guys pushing it out for a living. :wink: Testing for YOUR use case of any software needs to be the gold standard. I’m not trying to change your mind or corporate culture just making a point. When I hear, “No one has ever been fired for buying Microsoft or Cisco.”, I want to replay, “Maybe they should!”


STEP format support/compatibility is in many cases much better in FreeCAD than in other proprietary cad.
I use it since 2014 to exchange STEP data with many customers which are using commercial CADs without issues. You need to know what you do with the sw, commercial or not.
Moreover, if you send your 3D model as STEP to your mechanical department, you ALREADY are using FreeCAD.
You probably didn’t even noticed that ALL the 3D models of KiCAD library are designed in FreeCAD and are exported with StepUp… so you shouldn’t even send anything to your MCAD guys.
If you judge the sw only by the commercial branding, you should drop KiCAD too.

This is a conservative assumption that developers use to defend themselves from any liability.
FreeCAD is used within AirBus contractors as an alternative to Catia to produce STEP models for CAD interoperability.

You miss the point in this ECAD/MCAD collaboration :rofl: … you don’t need to give your MCAD department a FreeCAD file, you just send them the STEP file of all your board and when they give you the modified STEP file, with new placement, you can update/synchronize your board to their mechanical changes.

Anyway, my best regards


Dear Maurice, I wrote allready: I design all my 3-D models usinf FreeCAD only anyway, doesent matter what M-CAD gusy using…:wink:
KiCAD and FreeCAD have my absolute limitless loyalty- its my point.
And, nope, I dont miss the point of ECAD/MCAD collaboration at all. Moreover: in most cases MCAD guys fixes mechanical collisions themselfs according my PCB…:wink: Yeah, ok, sometimes its my job on PCB, but its very very rare workaround…


@SebastianKulik - I’m having a Solidwork macro that take old pcbnew file, or fab outputs (gerbers, BOM of 3D models, components’ location) to reconstruct the PCB in Solidwork. I used it for my work 5 year ago, but I had not have a change to actively work on it since then. I thinking to find some spare time to see if it still work and if it worthy to publishing it or not. Wounder if you interesting in it? To count as a motivation of publishing :wink:


oh, yeah! It will be great!!!


Here it is - it not that great, but may be usable for you


Generate SolidWorks Model directly from PCB fabricated files (Gerber, component positions, 3D BOM)

Ill take a look!


I’m not yet repair an example of a .brd file, and one with 3D-BOM to show to convertion feature. I need to make sure the example do not contains too much sensitive information by removing. Current example allow you to test a board with only drill file, or with drill file and pcb edge file. I also let out the silk layer because I had not yet remove sensitive information.


Hi @nhatkhai,

I’ve downloaded your program and imported the files into a new macro but when I run that macro nothing happens. I assume because the Main() function is empty. Which function should that call for the gerber-to-solidworks?



The Main() are in macros/gerber_to_solidwork/*, or macros/kicad_to_solidwork files which will pop-up a dialog when run. Be sure you import one of those? may be the instruction in not clear. If you like, you can open issue in gitlab so we can discus there instead. We also need to figure out how did I generate 3D BOM files 6 years+ ago. But I can share with you what the 3DBOM header like in my old backup file. But I need to work on the script to generate 3D-BOM from new board format file, I think, there are some code doing that with the old board format file in the macro.



This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.