kicad-developers team mailing list archive
Mailing list archive
Re: Internal PCB Units?
--- In kicad-devel@xxxxxxxxxxxxxxx, "Lorenzo" <lomarcan@...> wrote:
> Actually it's not so... european and japanese are metric, american suppliers often use mils (thous) as governing unit. There also exists an unified grid which rounds up everything to 0.05mm. Here in Italy, for example, manyfacilities wants mixed units: it's not uncommon to have gerbers in inches,and pick'n'place metric... our flying probes importer want taxatively imperial gencad files!
Ok, i know what there are both mm and inches used by manufacturers.
As everyone knows processes are becoming finer and finer, so it WILL be problem. For example, 0.05 mm grid is already too rough as there are board manufacturers giving tolerances like 0.24 mm (not 0.25).
> You have to rewrite mostly everything AND supply proper backward compatibility to old files :D a similar unit was also proposed IIRC
I've reviewed code and already know this. :) Lot of work may be done in trunk, as it will not change default behavior.
For example we may find all code parts like "* 0.0254" and change them to unit conversion macros/procedures, which may be easy changed in future.
> IMHO the best thing for a project like this is a parallel branch, while redesigning file formats (there were/are talks about that, even).
> Just remember that the discrepancy isn't too serious, anyway: even most fine processes is 4 mils at most and mechanical steps (routing and drilling)have often a 0,2 mm tolerance... so until you hit laser evaporated microvias I think you wouldn't have any serious problem :D
> BTW for what you need such precision? it shouldn't be an exactly cheap process with those tolerances...
Main reason is exactness, not exceeding precision. As i wrote before, rounding sometimes makes bad thing. Values like 0.1992 mm may fail DRC at manufacturer side causing board not to be produced.
This is why quantum should be metric: every inch value may be represented exactly in metric units, but not wise versa.