| KEY | MNEMONIC | DESCRIPTION | 
|---|---|---|
| esc | panner | enter panning mode | 
| insert | insert point | enter insert point mode. Click and drag on track to insert a point | 
| space | select | enter select mode | 
| tab | flip view | view: flip board | 
| shift-del | del-cu | deletes connected copper (rats are considered a connection) | 
| \ | thin-draw | toggles thin draw mode | 
| shift-alt-a | unselect | clear selection | 
| b | to other side | flip object to the other side of the board | 
| shift-b | flip view | view: flip board | 
| c | center | view: center display at cursor position | 
| ctrl-c | copy to buffer | copy selection to buffer and unselect | 
| d | display name | display pin or pad name | 
| shift-d | pinout dialog | open pinout window for element under mouse cursor | 
| e | eliminate rats | delete all rats | 
| shift-e | eliminate some rats | delete selected rats | 
| f | find | highlight connections to object under mouse cursor | 
| shift-f | un-find | un-highlight found connections | 
| g | increase grid | increment grid by configured grid increment | 
| shift-g | decrease grid | decrement grid by configured grid increment | 
| h | hide | toggle the visiblity of the refdes or value attached to the current component | 
| ctrl-h | holeplate | toggle plating of a via. Used to produce non metalized mounting holes | 
| j | lineclear | toggles line clears polygon | 
| k | klearance | increment clearance (soldermask to copper edge) | 
| shift-k | klear (-) | decrement clearance (soldermask to copper edge (NOTE: can go negative!)) | 
| l | increase line | increment width of the line tool, adds to the settings of the current line style | 
| shift-l | decrease line | reduce the current linewidth | 
| m | move to layer | move the object under the cursor to the current layer | 
| shift-m | move selection to layer | move selected objects to the current working layer (see pcb tip) | 
| ctrl-m | move origin | set the origin to the current position of the mouse pointer | 
| n | name | show object refdes / pin number at mouse pointer | 
| shift-n | next | Select the shortest unselected rat on the board | 
| o | optimize rats | optimize and redraw all rats | 
| shift-o | optimize some rats | optimize and redraw selected nets only | 
| shift-p | polygon close | connect the first point of a polygon with the last | 
| q | square toggle | toggle square/round corners on pads | 
| ctrl-r | report | show object report | 
| s | solid-poly | toggles polygon-clear of lines and pins (compare: thermal) | 
| s | size | increment size | 
| shift-s | size (-) | decrement size | 
| alt-s | sizehole | increase the hole size | 
| alt-shift-s | sizehole (-) | decrease the hole size | 
| ctrl-s | sizehole | increase the hole size | 
| ctrl-shift-s | sizehole (-) | decrease the hole size | 
| v | view extents | global view of working area | 
| z | zoom | view: zoom in | 
| shift-z | un-zoom | view: zoom out | 
| F1 | via | enter via tool | 
| F2 | line | enter line tool | 
| F3 | arc | enter arc tool | 
| F4 | text | enter text tool | 
| F5 | rectangle | enter rectangle tool | 
| F6 | polygon | enter polygon tool | 
| F7 | buffer | enter buffer mode | 
| F8 | delete | enter remove mode | 
| F9 | rotate | enter rotate mode | 
| F10 | file menu | file menu | 
| F11 | select | enter select mode (same as [space]) | 
| F12 | lock | enter lock mode | 
| KEY | MNEMONIC | DESCRIPTION | 
|---|---|---|
| esc | panner | |
| v | view extents | global view of working area | 
| c | center | centers view on cursor | 
| z | zoom | zoom in | 
| shift-z | un-zoom | |
| \ | thin-draw on/off | toggles thin draw mode | 
| tab | flip view | flip board | 
| shift-b | flip view | flip board | 
The Master document for footprint creation is the PCB Manual. There is also Stuart Brorson’s Footprint Creation for the Open-Source Layout Program PCB.
A pcb footprint file may contain any of the following commands:
Element [element_flags, description, pcb-name, value, mark_x, mark_y, text_x, text_y, text_direction, text_scale, text_flags]Pad [x1 y1 x2 y2 thickness clearance mask name pad_number flags]Pin [x y thickness clearance mask drillholedia name number flags]ElementArc [x y r1 r2 startangle sweepangle thickness]ElementLine [x1 y1 x2 y2 thickness] –> thickness != 1000 = 10 mils almost for all footprints#’-sign
Element [element_flags, description, pcb-name, value, mark_x, mark_y, text_x, text_y, text_direction, text_scale, text_flags] 
| item | allowed value | explanation | comment | 
|---|---|---|---|
| element_flags | unsigned hex value | ||
| description | string | text description of footprint | written by footprint author | 
| pcb name | string | refdes used on this particular pcb | xxx | 
| value | string | value of component on this particular pcb layout | xxx | 
| mark_x | 1/100th mils | ||
| mark_y | 1/100th mils | ||
| text_x | 1/100th mils | ||
| text_y | 1/100th mils | ||
| text direction | decimal integer | 0=horiz; 1=ccw90; 2=180; 3=cw90 | |
| text_scale | decimal integer | usu. set 100 | |
| text_flags | unsigned hex | 
Pad[x1 y1 x2 y2 thickness clearance mask name pad_number flags] 
| Item | Allowed Value | Explanation | Comment | 
|---|---|---|---|
| x1 | 1/100th mils | x(1st point) | |
| y1 | 1/100th mils | y(1st point) | |
| x2 | 1/100th mils | x(2nd point) | |
| y2 | 1/100th mils | y(2nd point) | |
| thickness | 1/100 mils | width of metal surrounding line segment | see Brorson .pdf | 
| clearance | 1/100 mils | distance to any other copper on any layer | actually 1/2 of this number is used! | 
| mask | 1/100th mils | width of mask relief | actual width of the mask centered on pad copper | 
| name | string | name of pad (arb. string) | e.g. “pad_1” or “positive” or any other string | 
| pad_number | string | pad # | used for nets. it MUST be consistent with the definitions on the netlist. | 
| flags | hex value | xxx | 
Pin[x y thickness clearance mask drillholedia name number flags] 
| Item | Allowed Value | Explanation | Comment | 
|---|---|---|---|
| x | 1/100th mils | pin x coord. | |
| y | 1/100th mils | pin y coord. | |
| thickness | 1/100th mils | copper diameter | |
| clearance | 1/100th mils | 2*(cu to cu clearance) | if you want a 10 mil clearance, put 2000 (20 mils) here | 
| mask | 1/100th mils | diameter of mask aperture | actual dia. of hole in mask | 
| drillholedia | 1/100th mils | dia. of hole | |
| name | string | arb. pin name | |
| number | decimal integer | pin number used by nets/rats | |
| flags | hex | xxx | 
Pad[-24606 14760 -19538 14760 1181 2000 3181 “” “16” “square”]Pad[-14760 19538 -14760 24606 1181 2000 3181 “” “17” “square,edge2”]Pin[0 0 12000 2000 12500 6400 “” “1” 0×00000001]ElementArc [0 0 6800 6800 0 360 1000]ElementLine [-26696 -26696 26696 -26696 1000]# notes within PCB Footprints go after the pound sign