PCB_Milling_And_Drilling_With_Cheap_And_Simple_Height Probing - rmu75/linuxcnc-wiki GitHub Wiki


date: '2015-02-22T21:40:07' title: PCB Milling And Drilling With Cheap And Simple Height-Probing

INTRODUCTION

Please read about here: http://phk.freebsd.dk/CncPcb/

A solution using a Python code running on Linux, Mac OS and Windows can be found [here(http://www.cnczone.com/forums/showthread.php?t=82628)]. The solution was tested using Gerber files generated by KiCad and Eagle.

A modified implementation based on the same idea is available at https://github.com/hase-berlin/pcbGcodeZprobing The basic principle is what Poul-Henning Kamp developed, implemented in Python as an import filter for LinuxCNC: The surface of the PCB is probed, the height profile is stored in G-Code variables and the milling moves are replaced with subroutine calls; the subroutine calculates the Z-height to follow the probed height profile. The implementation done by hase (Hartmut "hase" Semken) works with the G-Code generated by Eagle and probably others.

We will be updating this page documenting.

Workflow

    * export the Gerber files from KiCad (select Plot Origin as Auxiliar Axis)
    * use pcb2gcode to convert Gerber files to Gcode, by executing on command line: pcb2gcode --verbose --zup=0.4 --zchange=1 --offset=0,010 --zdown=0,01 --max-deviation=0 --dpi=1000 --toolpath-smoothing-passes=0 example-Component.pho
    * execute etch_z_adjust.py: python etch_z_adjust.py
    * open the Gcode files with EMC2, run it and it will automatically probe and mill the PCB