← Back to team overview

kicad-developers team mailing list archive

Re: About MCAD integration


On Sun, May 05, 2013 at 06:50:50PM -0700, Cirilo Bernardo wrote:
> checking information such as panel cutouts for PCB mounted parts. In
> practice I've taken IDF3 files and replaced critical components with
> adequate 3D MCAD models; this isn't so bad in many (most?) cases, but
> I believe we can improve that. :)

*If* you can import IDF3 usually the important stuff (connector,
switches, display, that kind of thing) can be inserted aligning on a pin
hole. I do this with DXF :D

BTW can DXF with heights be imported in MCADs? that would be a really
quick way (and would give 99% of the informations found in the IDF3).

> someone has to put in the time to create the footprints and manage
> them.  This is a big job and it is why I haven't put any effort into
> IDF3 export.

IDF3 is using prismatic approximations, so it wouldn't be a big burden
to maintain. For most things you simply give an height to the silk
outline, like eagle people do (I hope to see some kind a layer when we
get to them).

> people seem to use PSI5 (like STEP, you pay $$$ for the

Never heard of it... maybe an american standard little used in europe?

> Don't even think about implementing a STEP library; that's a job which
> would take a large team many years. It is best for us to make use of

*If* the target is only exporting the board outline with holes and maybe
the component extrusion (the equivalent of IDF3), it can be feasible
even in house. In the boundary representation mode for 'simple' thing
by face/edge/vertex it's no more difficult than, say, a 3ds file.
I tried adding a hole and it only added an edge (from a cylindrical
surface, directly from origin/radius/length!). However anything more
would be a *huge* work.

> existing tools like OpenCascade, but I also suggest that MCAD support
> should be done by external tools and we should not make KiCAD
> dependent on any specific MCAD.  A scheme I suggested last year should
> work OK and require minimal support in KiCAD - basically a few more
> tags to point to 3D models, which is similar to what is currently done
> for VRML.  The 3D model associations will have to be abstracted so
> that KiCAD can manage the associations without really caring about the
> specifics of the 3D tool (MCAD, VRML, etc).

Technically the board could be generated from the outline gerber and the
pick and place file (it works that way in *real life*:D)

> Ultimately STEP is probably the most supported format for exchanging
> 3D information; however it is an inconvenient format to use within an
> MCAD due to the memory consumption.  My idea was to wait until FreeCAD

I don't think anybody would use this internally. The 'E' in STEP IIRC
stands for Exchange...

> 3D effort can also be concentrated on native FreeCAD descriptions and

Let's be real... nobody in real life uses freecad in production... we
need something that could be eaten by solidworks/inventor or at least

> someone was asking about IDF3 support on the user list because their
> company required IDF3 and a STEP generated via VRML->STL->STEP was not

IDF3 is (almost easily, the *whole* spec is 41 pages!) feasible with
additional information. To be useful we need to know the 'important'
holes (the difference between component holes and mounting holes) and
some way to add component height boundaries. The swap-in of models for
important components AFAIK is already a common workflow.

> For 3D MCAD models I wonder if it is good enough to just model the
> rough volumes (for example, pins on a QFP would be 4 wide tabs on each
> side of the package rather than individual pins) or if there is
> currently any need or foreseeable future need for much better fine
> detail in the model. Obviously with better detail the MCAD can produce

A QFP would be only a box wide as the whole QFT without pins or stuff.
Just to be sure it doesn't it against the box.
A BNC connector OTOH needs a whole detailed model for panel fitting
purposes. At the moment IDF3 workflows use a (manual/scripted) model
substitution for these.

Lorenzo Marcantonio
Logos Srl

Follow ups