INTI-CMNB / KiBot

KiCad automation utility
GNU Affero General Public License v3.0
554 stars 65 forks source link

[FEATURE] Gerber X3 Support #500

Closed schneider-engineering closed 12 months ago

schneider-engineering commented 1 year ago

Is your feature request related to a problem? Please describe. Gerber X3 Position/Component export does not seem to be supported. (Or I could not find out how to enable it).

Describe the solution you'd like We would like to be able to export Gerber X3 Position files.

Additional context See below screenshots for how to export gerber X3 files. Despite having the term "gerber" in the name, in KiCad it is placed in "Component Placement".

context_menu generate_placement_files

Any help on this would be appreciated.

schneider-engineering commented 1 year ago

A colleague just noticed that kicad-cli actually supports x3 export already: kicad-cli pcb export pos --format gerber --use-drill-file-origin --side front kicad-cli pcb export pos --format gerber --use-drill-file-origin --side back

Would it be possible to include this in KiBot?

set-soft commented 12 months ago

Hi @schneider-engineering !

I'm adding some experimental support using the kicad-cli interface. It is available on the dev branch, you can try the kicad_auto_full:dev docker image. Is really experimental: new to KiBot and KiCad itself says is experimental. The command line help is wrong, your example helped to clarify it! Reading the help it says:

 --side                     Valid options: front,back,both. Gerber format only supports "both". [default: "both"]

But for gerber you must specify a side, both isn't supported. Then it says:

--use-drill-file-origin Use drill/place file origin (ascii or csv only)

But is also supported for gerbers, as you show in your example, and this option is the default KiCad behavior for other position files.

Can you try this functionality and let me know if the generated files are correct? BTW: are you using them for some particular manufacturer or for some particular machine?

schneider-engineering commented 11 months ago

Hey @set-soft,

thank you very much for your fast help. This works like a charm.

We are actually using the x3 pos data to convert gerbers to ODB++ using FAB 3000 as the EMS really wants ODB++.

From what I've heard eurocircuits will support x3 CPL any day now.