Skip to content

Blunk-electronic/eagle_CAM_processor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EAGLE CAM Processor mkcam

A bash shell script that generates CAM files from Eagle-Designs. The script takes as arguments the board file and the number of signal layers. It generates two kinds of CAD/CAM data sets: One for the designer and another for the manufacturing and assembly folks. Remember: Never give design files away to the fab ! The fab gets plot and drill data, BOM, ... the CAM files.

general steps before releasing a PCB design

These are general steps. They are mostly independent of the CAE system. The order in which they are executed may differ. However, all steps should be taken. Some steps might be required to be repeated once a design error or other mistake has been detected.

  • global attributes in sch/brd

  • update schematic and layout from all libraries (optional)

  • check net class settings

  • renumber sheets

  • check assembly variants (if any)

  • run statistics-schematic ulp to check for proper net names, prefixes, ...

  • run ERC

  • identify parts to be mounted or not to be mounted (attribute "BOM")

  • mind accessories (cables, wires, screws, clamps, washers, ...)

  • check orientation of connectors (pin 1, cable insertion, ...)

  • check board contours, size and position of mounting holes

  • check polygons (width, isolation, rank, bottlenecks, orphans, ...)

  • check plated millings in inner layers (if any)

  • ratsnet supply signals or ratsnet whole board (output should read "nothingn to do")

  • check stop mask of areas exposed due to fiducials or other objects (tracks might be exposed)

  • check stop mask between pads of fine pitch components

  • run DRC on signal layers exclusively

  • run DRC on keepout

  • inspect layer brd_placement notes (optional)

  • check silk screen (text size, font, ratio)

  • Make sure interactive parts (switches, connectors, LEDs, ...) have a text in silk screen that tells the purpose.

  • avoid silk screen on vias

  • value placement in brd (text size, font, ratio)

  • export netlist/partlist (pick & place) (optional, mkcam cares for that)

  • check layer markers in ALL layers (TOP, BOT, L2, L15, ...)

  • check fiducials (even positions)

  • check t/bCopper layer objects (layers 53/54)

  • draw measures

  • delete uselsess layers

  • update drill symbols (optional)

  • display all layers except tVal and bValue -> run DRC (mind assembly variants, if any)

  • export BOM from inside the schematic editor (in csv format, separator semicolon), send it to Stock Manager and copy the result in directory "bom" (see below)

  • make cam data with mkcam (see below)

  • review CAM files

  • ask for quoation at pcb-house (findings ?)

  • release

Installation

By default the "installer" just copies the script "mkcam" to $HOME/bin. This way the user is free to modifiy "mkcam" as she whishes. The bin directory must be created manually if not existing already. Make sure the $PATH environment variable is set properly.

sh install.sh

A target directory may be specified by the user like:

sh install.sh /home/ecad/bin

In order to have mkcam available for all users run the following command. This requires root privileges of course:

sh install.sh /usr/local/bin

Prerequisites

Mkcam expects in the EAGLE project directory a subdirectory named "bom". A BOM file generated by Stock_Mangager should live there (see https://github.com/Blunk-electronic/stock_manager).

Usage

Change into the EAGLE project:

cd eagle/projects/my_project

The board file should be there:

ls my_project.brd

If your board file contains four signal layers, launch mkcam this way:

mkcam my_project.brd 4

The outcome will be a subdirectory named CAD_CAM where the archives can be found.

About

A bash shell script that generates CAM files from Eagle-Designs.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages