kicad StepUp is a new approach to export kicad board and assemblies in STEP AP214 (with colors).
The kicad StepUp script maintains the usual way to work with kicad, but improves the process to work in a collaborative way with mechanical designers bringing near ECAD and MCAD environments.
The Hack is done reverting the usual workflow: instead of exporting 3D from kicad to VRML and then convert VRML to STEP (that will produce very bad results) I started from STEP models, converted STEP to VRML, and assembled STEP models in MCAD to have the same layout that will be displayed in kicad 3d VRML viewer.
the workflow is very simple and maintains the usual way to work with kicad:
the user has just to substitute Wings3D as modeler with FreeCAD.
You can start to add models to your library creating 3D models in FreeCAD,
or getting models from online libs or from the parametric 3D lib expressly done to kicad (https://github.com/easyw/kicad-3d-models-in-freecad/tree/master/cadquery/FCAD_script_generator).
Once you have your 3D MCAD models, you need to have a copy of that in STEP and VRML format, and export the board to IDF.
Just put your models in the same folder in which normally you are used to put vrml models, and the script will assembly the MCAD board and models as in 3d-viewer of kicad.
here there is the demo video
The script is Open Source and works in Windows, Linux and OSX.
Here the fully contained demo board with 3D parts in VRML and STEP
I tested the script with many boards and here some of them:
HackRF-one kicad board
Crazyflie copter
The conversion from ECAD to MCAD can be done with all the modules or with bounding boxes of all or all but e.g. connectors and edge parts, so to have the accuracy of the pcb assemblies only when needed, maintaining the model light as required.
kicad StepUp rendered with Blender (MCAD parts converted to VRML)
feedback are welcome :)
Maurice
interactive align 3d model to pcbnew footprint in ‘Altium’ style
With 'kicad-StepUp-tools' it is possible to load the kicad footprint in FreeCAD and align the 3D part with a visual real time feedback of the 3d model and footprint reciprocal position.
Once the 3D part is aligned to the footprint pads and silk, the model can be exported in STEP format and in VRML format for kicad 3d-rendering, just clicking on the Scale to kicad VRML button.
That will align EDA to MCAD 3d viewers. No need to reiterate the aligning process or empiric calculate offset and rotation to apply to VRML model.
With this tool is possible to download a part from on-line libraries (e.g. 3dcontentcentral, grabcad, etc), align the model to kicad footprint and export the model to wrl. That will produce a 3d VRML model exactly aligned to footprint as in mechanical CAD.
Generating smaller 3D model using bounding boxes
Sometimes the need would be just a 3D MCAD model for analysis or simple space constraints, so a nice detailed component models in MCAD system may be not required or desired; in that case it is possible to configure the exporter to:
- skip 3D models by name
- skip models with a volume < of an assigned value
- skip models with a height < of an assigned value
- convert the remaining parts, or all but edge connectors, to bounding boxes
The result 3D MCAD model will have the accuracy of the pcb and assemblies only when needed, maintaining the model light as required.
3D parametric models library
here some 3D parametric models that are generated by some FreeCAD scripts I've done:
https://github.com/easyw/kicad-3d-models-in-freecad/
https://github.com/easyw/kicad-3d-models-in-freecad/tree/master/cadquery/FCAD_script_generator
Feb 2016:
Kicad StepUp GUI
and here the video tutorial
Kicad StepUp 3D viewer with Material Properties
here a small video to see crazyflie board with all VRML models and Material Properties added by kicad StepUp VRML exporter
Playing with Blender and Materials
and a small Blender animation where the part has been converted using Material Properties
Read more »
Hey Maurice,
Nice work on StepUp , thank you for this.
I would love to use your library, can you recommend a best-practice how to take your generated 3d library and make them available in KiCad, preferably as default 3d parts?