Mechanical Integration With KiCad

Eagle and Fusion are getting all the respect for integrating electronic and mechanical design, but what about KiCad? Are there any tools out there that allow you to easily build an enclosure for your next printed circuit board? [Maurice] has one solution, and it seamlessly synchronizes KiCad and FreeCAD. KiCad will give you the board, FreeCAD will give you the enclosure, and together you have full ECAD and MCAD synchronization.

This trick comes in the form of a FreeCAD macro (on the Github, with a bunch of documentation) that loads a KiCad board and components into FreeCAD and export them as a STEP file. You can align the KiCad board in FreeCAD, convert STEPs to VRMLs, check interference and collision, and create an enclosure around a KiCad board.

KiCad has gotten some really great visualization tools over the past few years, and we would be remiss if we didn’t mention it’s one of the best ways to visualize a completed circuit board before heading to production. Taking that leap from electronic CAD to mechanical CAD is still something that’s relatively rare in the KiCad ecosystem, and more tools to make this happen is always wanted.

KiCad Script Hack For Better Mechanical CAD Export

Open source EDA software KiCad has been gaining a lot of traction recently. CERN has been devoting resources to introduce many new advanced features such as differential pair tracks, push and shove routing and this plenty more scheduled in the pipeline. One important requirement of EDA packages is a seamless interface with mechanical CAD packages by exporting 3D models in industry common formats. This improves collaboration and allows further engineering designs such as enclosures and panels to be produced.

KiCad has had a 3D viewer available for quite a long time. But it uses the VRML mesh format (.wrl files) and there are compatibility issues which prevent it from rendering certain versions of VRML files. Moreover, the VRML mesh export is not particularly useful since it cannot be easily manipulated in mechanical CAD software. Recent versions of KiCad now offer IDFv3 format export – the Intermediate Data Format, a mechanical data exchange specification for the design and analysis of printed wiring assemblies. Taking advantage of this new feature, [Maurice] created KiCad StepUp – an export script that allows collaborative exchange between KiCad and FreeCAD.

A FreeCAD macro and a corresponding configuration file are added to the KiCad project folder. You start with .STEP files for all the components used in the KiCad design. The next step is to convert and save all .STEP files as .WRL format using FreeCAD. On the KiCad side, you use the .WRL files as usual. When you want to export the board, use the IDFv3 option in KiCad. When [Maurice]’s StepUp script is run (outside of KiCad) it replaces all instances of .WRL files with the equivalent .STEP versions and imports the board as well as the components in to FreeCAD as .STEP models. The result is a board and its populated components which can be manipulated as regular 3D objects.

Continue reading “KiCad Script Hack For Better Mechanical CAD Export”

Generating MIDI With Ruby

[Giles Bowkett] has been working on a music library for Ruby called Archaeopteryx. He describes it as a “Ruby MIDI DJing/live-coding thing“. In the video above, He’s using it to generate and then morph rhythms. The Ruby code is directly controlling the step sequencer in Reason. It’s an interesting approach to music development. The video above gives a full intro to the probability approach to generation. To really get a feel for the library, we suggest you watch his presentation from RubyFringe. It shows him playing music by editing a live block of code. Check out his Vimeo feed for many more demo videos.

[via CDM]