This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
geda:pcb-quick_reference [2012/06/27 16:14] dj [All Keystrokes] |
geda:pcb-quick_reference [2016/02/10 17:50] ptay [Examples] added three more examples |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | //Translations of this page are also available in the following languages:// [[pcb-quick_reference.fr|Français]], [[pcb-quick_reference.ru|Русский]]. | ||
+ | |||
====== PCB: Quick Reference ====== | ====== PCB: Quick Reference ====== | ||
+ | |||
+ | ===== Additional information ===== | ||
+ | More information on PCB you can find in the PCB Command reference | ||
+ | (//''refcard.pdf''//) containing description of all PCB shortcuts | ||
+ | and in the PCB Manual (//''pcb.pdf''// or //''pcb.html''//) | ||
+ | residing in the //''doc/''// directory of your PCB installation | ||
+ | (its path may vary on various systems). | ||
+ | |||
===== Default Key Mapping ===== | ===== Default Key Mapping ===== | ||
Line 5: | Line 15: | ||
==== All Keystrokes ==== | ==== All Keystrokes ==== | ||
- | ^ Key ^ Mnemonic ^ Description ^ | + | ^ Key ^ Mnemonic ^ Description ^ |
- | | <key>esc</key> | select | enter select mode (same as [space], or [F11]) | | + | | <key>esc</key> | select | enter select mode (same as <key>space</key>, or <key>F11</key>) | |
- | | esc | end of action | terminate the current action, e.g. stop drawing tracks | | + | | <key>esc</key> | end of action | terminate the current action, e.g. stop drawing tracks | |
- | | insert | insert point | enter insert point mode. Click and drag on track to insert a point | | + | | <key>insert</key> | insert point | enter insert point mode. Click and drag on track to insert a point | |
- | | return | click | same as a click on the left mouse button | | + | | <key>return</key> | click | same as a click on the left mouse button | |
- | | space | select | enter select mode (same as [esc], or [F11]) | | + | | <key>space</key> | select | enter select mode (same as <key>esc</key>, or <key>F11</key>) | |
- | | tab | flip up/down | view: vertical flip | | + | | <key>tab</key> | flip up/down | view: vertical flip | |
- | | shift-tab | flip left/right | view: horizontal flip | | + | | <key>S-tab</key> | flip left/right | view: horizontal flip | |
- | | ctrl-shift-tab | far side | view: exchange the roles of front side and far side | | + | | <key>C-S-tab</key> | far side | view: exchange the roles of front side and far side | |
- | | del | delete | delete object under the mouse cursor | | + | | <key>del</key> | delete | delete object under the mouse cursor | |
- | | shift-del | del-sel | delete objects in selection | | + | | <key>S-del</key> | del-sel | delete objects in selection | |
- | | backspace | del-sel | delete objects in selection | | + | | <key>backspace</key> | del-sel | delete objects in selection | |
- | | shift-backspace | del-copper | deletes connected copper under the cursor. Rats are considered a connection. | | + | | <key>S-backspace</key> | del-copper | deletes connected copper under the cursor. Rats are considered a connection. | |
- | | <nowiki>|</nowiki> | thin-draw | toggles thin draw mode | | + | | <key><nowiki>|</nowiki></key> | thin-draw | toggles thin draw mode | |
- | | a | set same | read the parameters to use for new objects from the object below the cursor. | | + | | <key>a</key> | set same | read the parameters to use for new objects from the object below the cursor. | |
- | | alt-a | select-all | select all objects on active layers. Deactivated layers are ignored. | | + | | <key>A-a</key> | select-all | select all objects on active layers. Deactivated layers are ignored. | |
- | | shift-alt-a | unselect | clear selection | | + | | <key>S-A-a</key> | unselect | clear selection | |
- | | b | to other side | flip object to the other side of the board | | + | | <key>b</key> | to other side | flip object to the other side of the board | |
- | | c | center | view: center display at cursor position | | + | | <key>c</key> | center | view: center display at cursor position | |
- | | ctrl-c | copy to buffer| copy selection to buffer and unselect | | + | | <key>C-c</key> | copy to buffer | copy selection to buffer and unselect | |
- | | d | display name | display pin or pad name | | + | | <key>d</key> | display name | display pin or pad name | |
- | | shift-d | pinout dialog | open pinout window for element under mouse cursor | | + | | <key>S-d</key> | pinout dialog | open pinout window for element under mouse cursor | |
- | | e | eliminate rats| delete all rats | | + | | <key>e</key> | eliminate rats | delete all rats | |
- | | shift-e | eliminate some rats | delete selected rats | | + | | <key>S-e</key> | eliminate some rats| delete selected rats | |
- | | f | find | highlight connections to object under mouse cursor. This includes rats and objects on invisible layers | | + | | <key>f</key> | find | highlight connections to object under mouse cursor. This includes rats and objects on invisible layers | |
- | | ctrl-f | add to found | add connections to object under mouse cursor to the set of found objects | | + | | <key>C-f</key> | add to found | add connections to object under mouse cursor to the set of found objects | |
- | | shift-f | un-find | un-highlight found connections | | + | | <key>S-f</key> | un-find | un-highlight found connections | |
- | | g | incr grid mil | increment grid by configured imperial increment | | + | | <key>g</key> | incr grid mil | increment grid by configured imperial increment | |
- | | shift-g | decr grid mil | decrement grid by configured imperial increment | | + | | <key>S-g</key> | decr grid mil | decrement grid by configured imperial increment | |
- | | ctrl-g | incr grid mm | increment grid by configured metric increment | | + | | <key>C-g</key> | incr grid mm | increment grid by configured metric increment | |
- | | ctrl-shift-g | decr grid mm | decrement grid by configured metric increment | | + | | <key>C-S-g</key> | decr grid mm | decrement grid by configured metric increment | |
- | | h | hide | toggle the visibility of the refdes or value attached to the component under the cursor | | + | | <key>h</key> | hide | toggle the visibility of the refdes or value attached to the component under the cursor | |
- | | shift-h | hide sel | toggle the visibility of the refdes or value attached to selected components | | + | | <key>S-h</key> | hide sel | toggle the visibility of the refdes or value attached to selected components | |
- | | ctrl-h | holeplate | toggle plating of a via. Used to produce non metalized mounting holes | | + | | <key>C-h</key> | holeplate | toggle plating of a via. Used to produce non metalized mounting holes | |
- | | j | lineclear | toggle the polygon clear flag of the line under the cursor | | + | | <key>j</key> | lineclear | toggle the polygon clear flag of the line under the cursor | |
- | | shift-j | lineclear sel | toggle the polygon clear flag of selected lines | | + | | <key>S-j</key> | lineclear sel | toggle the polygon clear flag of selected lines | |
- | | k | klear | increment clearance (soldermask to copper edge) | | + | | <key>k</key> | klear | increment clearance (soldermask to copper edge) | |
- | | shift-k | klear (-) | decrement clearance (soldermask to copper edge (NOTE: can go negative!)) | | + | | <key>S-k</key> | klear (-) | decrement clearance (soldermask to copper edge (NOTE: can go negative!)) | |
- | | ctrl-k | klear sel | increment clearance of selected objects (soldermask to copper edge) | | + | | <key>C-k</key> | klear sel | increment clearance of selected objects (soldermask to copper edge) | |
- | | shift-ctrl-k | klear sel (-) | decrement clearance of selected objects (soldermask to copper edge) | | + | | <key>S-C-k</key> | klear sel (-) | decrement clearance of selected objects (soldermask to copper edge) | |
- | | l | increase line | increment width of the line tool, adds to the settings of the current line style | | + | | <key>l</key> | 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 | | + | | <key>S-l</key> | decrease line | reduce the current linewidth | |
- | | m | move to layer | move the object under the cursor to the current layer | | + | | <key>m</key> | 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 [[geda:pcb_tips#how_do_i_move_one_set_of_layer_tracks_to_another_layer|pcb tip]]) | | + | | <key>S-m</key> | move selection to layer | move selected objects to the current working layer (see [[geda:pcb_tips#how_do_i_move_one_set_of_layer_tracks_to_another_layer|pcb tip]]) | |
- | | ctrl-m | move origin | set the origin to the current position of the mouse pointer | | + | | <key>C-m</key> | move origin | set the origin to the current position of the mouse pointer | |
- | | n | name | show object refdes / pin number at mouse pointer | | + | | <key>n</key> | name | show object refdes / pin number at mouse pointer | |
- | | shift-n | next | Select the shortest unselected rat on the board | | + | | <key>S-n</key> | next | Select the shortest unselected rat on the board | |
- | | o | optimize rats | optimize and redraw all rats | | + | | <key>o</key> | optimize rats | optimize and redraw all rats | |
- | | shift-o | optimize some rats | optimize and redraw selected nets only | | + | | <key>S-o</key> | optimize some rats | optimize and redraw selected nets only | |
- | | ctrl-o | octagon | toggle the octagon flag of the object under the cursor | | + | | <key>C-o</key> | octagon | toggle the octagon flag of the object under the cursor | |
- | | shift-p | polygon close | connect the first point of a polygon with the last | | + | | <key>S-p</key> | polygon close | connect the first point of a polygon with the last | |
- | | q | square toggle | toggle square/round corners on pads | | + | | <key>q</key> | square toggle | toggle square/round corners on pads | |
- | | shift-r | redo | redo what was undone with undo | | + | | <key>S-r</key> | redo | redo what was undone with undo | |
- | | ctrl-r | report | show object report | | + | | <key>C-r</key> | report | show object report | |
- | | s | size | increment size of the object under the cursor | | + | | <key>s</key> | size | increment size of the object under the cursor | |
- | | shift-s | size (-) | decrement size of the object under the cursor | | + | | <key>S-s</key> | size (-) | decrement size of the object under the cursor | |
- | | alt-s | sizehole | increase the hole of the object under the cursor | | + | | <key>A-s</key> | sizehole | increase the hole of the object under the cursor | |
- | | alt-shift-s | sizehole (-) | decrease the hole of the object under the cursor | | + | | <key>A-S-s</key> | sizehole (-) | decrease the hole of the object under the cursor | |
- | | ctrl-s | sizehole | increase the hole of the object under the cursor | | + | | <key>C-s</key> | sizehole | increase the hole of the object under the cursor | |
- | | ctrl-shift-s | sizehole (-) | decrease the hole size | | + | | <key>C-S-s</key> | sizehole (-) | decrease the hole size | |
- | | t | text tool size | increase the size of new text by 10 mil | | + | | <key>t</key> | text tool size | increase the size of new text by 10 mil | |
- | | shift-t | text tool size (-)| decrease the size of new text by 10 mil | | + | | <key>S-t</key> | text tool size (-) | decrease the size of new text by 10 mil | |
- | | v | view extents | global view of working area | | + | | <key>v</key> | view extents | global view of working area | |
- | | shift-v | via tool dia | increase the diameter of new vias by 5 mil | | + | | <key>S-v</key> | via tool dia | increase the diameter of new vias by 5 mil | |
- | | ctrl-shift-v | via tool dia (-)| decrease the diameter of new vias by 5 mil | | + | | <key>C-v</key> | paste buffer | paste from buffer | |
- | | alt-v | via tool drill | increase the drill diameter of new vias by 5 mil | | + | | <key>C-S-v</key> | via tool dia (-) | decrease the diameter of new vias by 5 mil | |
- | | alt-shift-v | via tool drill (-) | decrease the drill diameter of new vias by 5 mil | | + | | <key>A-v</key> | via tool drill | increase the drill diameter of new vias by 5 mil | |
- | | z | zoom | view: zoom in | | + | | <key>S-A-v</key> | via tool drill (-) | decrease the drill diameter of new vias by 5 mil | |
- | | shift-z | un-zoom | view: zoom out | | + | | <key>C-x</key> | cut to buffer | cut selection to buffer | |
- | | F1 | via | enter via tool | | + | | <key>z</key> | zoom | view: zoom in | |
- | | F2 | line | enter line tool | | + | | <key>S-z</key> | un-zoom | view: zoom out | |
- | | F3 | arc | enter arc tool | | + | | <key>F1</key> | via | enter via tool | |
- | | F4 | text | enter text tool | | + | | <key>F2</key> | line | enter line tool | |
- | | F5 | rectangle | enter rectangle tool| | + | | <key>F3</key> | arc | enter arc tool | |
- | | F6 | polygon | enter polygon tool | | + | | <key>F4</key> | text | enter text tool | |
- | | F7 | buffer | enter buffer mode | | + | | <key>F5</key> | rectangle | enter rectangle tool| |
- | | F8 | delete | enter remove mode | | + | | <key>F6</key> | polygon | enter polygon tool | |
- | | F9 | rotate | enter rotate mode | | + | | <key>F7</key> | buffer | enter buffer mode | |
- | | F10 | file menu | file menu | | + | | <key>F8</key> | delete | enter remove mode | |
- | | F11 | select | enter select mode (same as [space], or [esc]) | | + | | <key>F9</key> | rotate | enter rotate mode | |
- | | F12 | lock | enter lock mode | | + | | <key>F10</key> | file menu | file menu | |
+ | | <key>F11</key> | select | enter select mode (same as <key>space</key>, or <key>esc</key>) | | ||
+ | | <key>F12</key> | lock | enter lock mode | | ||
==== Viewport Keystrokes ==== | ==== Viewport Keystrokes ==== | ||
- | ^ Key ^ Mnemonic ^ Description ^ | + | ^ Key ^ Mnemonic ^ Description ^ |
- | | v | view extents | global view of working area | | + | | <key>v</key> | view extents | global view of working area | |
- | | c | center | centers view on cursor | | + | | <key>c</key> | center | centers view on cursor | |
- | | z | zoom | zoom in | | + | | <key>z</key> | zoom | zoom in | |
- | | shift-z | un-zoom | zoom out | | + | | <key>S-z</key> | un-zoom | zoom out | |
- | | <nowiki>|</nowiki> | thin-draw | toggles thin draw mode | | + | | <key><nowiki>|</nowiki></key> | thin-draw | toggles thin draw mode | |
- | | tab | flip up/down | vertical flip | | + | | <key>tab</key> | flip up/down | vertical flip | |
- | | shift-tab | flip left/right | horizontal flip | | + | | <key>S-tab</key> | flip left/right | horizontal flip | |
- | | ctrl-shift-tab | far side | exchange the roles of front and far side | | + | | <key>C-S-tab</key> | far side | exchange the roles of front and far side | |
==== Layers ==== | ==== Layers ==== | ||
- | ^ Key ^ Mnemonic ^ Description ^ | + | ^ Key ^ Mnemonic ^ Description ^ |
- | | 1 to 9 | - | select layers 1 to 9 | | + | | <key>1</key> to <key>9</key> | - | select layers 1 to 9 | |
- | | 0 | - | select layer 10 (*) | | + | | <key>0</key> | - | select layer 10<sup>*</sup> | |
- | | alt-1 to alt-9 | - | select layers 11 to 19 (*) | | + | | <key>A-1</key> to <key>A-9</key> | - | select layers 11 to 19<sup>*</sup> | |
- | | alt-0 | - | select layer 20 (*) | | + | | <key>A-0</key> | - | select layer 20<sup>*</sup> | |
- | | ctrl-1 to ctrl-9 | - | toggle visibility of layers 1 to 9 (*) | | + | | <key>C-1</key> to <key>C-9</key> | - | toggle visibility of layers 1 to 9<sup>*</sup> | |
- | | ctrl-0 | - | toggle visibility of layer 10 (*) | | + | | <key>C-0</key> | - | toggle visibility of layer 10<sup>*</sup> | |
- | | ctrl-alt-1 to ctrl-alt-9 | - | toggle visibility of 11 to 19 (*) | | + | | <key>C-A-1</key> to <key>C-A-9</key> | - | toggle visibility of 11 to 19<sup>*</sup> | |
- | | ctrl-alt-0 | - | toggle visibility of 20 (*) | | + | | <key>C-A-0</key> | - | toggle visibility of 20<sup>*</sup> | |
- | (*): These accels are available in PCB, GTK GUI in versions after august 2011 | + | <sup>*</sup> <sub>These accels are available in PCB, GTK GUI in versions after August 2011</sub> |
- | ====== Footprint Reference ====== | + | ====== Footprint Quick Reference ====== |
The Master document for footprint creation is the [[http://pcb.geda-project.org/manual.html|PCB Manual]]. There is also Stuart Brorson’s [[http://www.brorson.com/gEDA/land_patterns_20050129.pdf|Footprint Creation for the Open-Source Layout Program PCB]]. | The Master document for footprint creation is the [[http://pcb.geda-project.org/manual.html|PCB Manual]]. There is also Stuart Brorson’s [[http://www.brorson.com/gEDA/land_patterns_20050129.pdf|Footprint Creation for the Open-Source Layout Program PCB]]. | ||
===== General syntax ===== | ===== General syntax ===== | ||
A pcb footprint file may contain any of the following commands: | 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]''** | + | * **''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]''** | * **''Pad [x1 y1 x2 y2 thickness clearance mask name pad_number flags]''** | ||
* **''Pin [x y thickness clearance mask drillholedia name number flags]''** | * **''Pin [x y thickness clearance mask drillholedia name number flags]''** | ||
Line 121: | Line 133: | ||
* **''ElementLine [x1 y1 x2 y2 thickness] –> thickness != 1000 = 10 mils almost for all footprints''** | * **''ElementLine [x1 y1 x2 y2 thickness] –> thickness != 1000 = 10 mils almost for all footprints''** | ||
* Comment lines start with the ‘**''#''**’-sign | * Comment lines start with the ‘**''#''**’-sign | ||
+ | |||
+ | ===== PCB Units ===== | ||
+ | PCB handles metric and imperial units in the following way: | ||
+ | * The base Imperial unit is the "centimil", or 1/100 of a thousandth, or 1/100,000 inch, or 0.00001 inch. | ||
+ | * Allowable imperial value range: "0.04" (0.0000004 inches) to approx. "78740000" (about 78-3/4") | ||
+ | * The base Metric unit is 1nm (one nanometer). PCB parses in metric if the number has a "mm" behind it. | ||
+ | * Allowable metric value range: "0.000001mm" to "2000mm" | ||
+ | * NOTES: | ||
+ | * use "mm" after number to specify metric | ||
+ | * imperial and metric may be mixed within a footprint (!) | ||
===== Elements ===== | ===== Elements ===== | ||
- | **''Element [element_flags, description, pcb-name, value, mark_x, mark_y, text_x, text_y, text_direction, text_scale, text_flags]''** | + | **''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 ^ | + | ^ ^ Allowed value (unit = 1e-5 inches) ^ Allowed Value (mm) ^ explanation ^ comment ^ |
| element_flags | unsigned hex value | | | | | element_flags | unsigned hex value | | | | ||
- | | description | string | text description of footprint |written by footprint author | | + | | description | string | | text description of footprint | user-defined | |
- | | pcb name | string | refdes used on this particular pcb |xxx | | + | | pcb_name | string | | generic refdes (R?, U? etc.) | user-defined | |
- | | value | string | value of component on this particular pcb layout |xxx | | + | | value | string | | component value (layout specific) | user-defined (blank) | |
- | | mark_x | 1/100th mils | | | | + | | mark_x | "1" to ~ "78740000" | "0.000001mm" to "2000mm" | (x,y) loc. of center mark | | |
- | | mark_y | 1/100th mils | | | | + | | mark_y | "1" to ~ "78740000" | "0.000001mm" to "2000mm" | | | |
- | | text_x | 1/100th mils | | | | + | | text_x | "1" to ~ "78740000" | "0.000001mm" to "2000mm" | (x,y) loc. of REFDES | | |
- | | text_y | 1/100th mils | | | | + | | text_y | "1" to ~ "78740000" | "0.000001mm" to "2000mm" | | | |
- | | text direction | decimal integer | 0=horiz; 1=ccw90; 2=180; 3=cw90 | | | + | | text_direction | decimal integer | | 0=horiz; 1=ccw90; 2=180; 3=cw90 | | |
- | | text_scale | decimal integer | |usu. set 100 | | + | | text_scale | decimal integer | | | usu. set to 100 | |
- | | text_flags | unsigned hex | | | | + | | text_flags | unsigned hex | | | | |
===== Pads ===== | ===== Pads ===== | ||
Line 149: | Line 171: | ||
| clearance | 1/100 mils | distance to any other copper on any layer |actually 1/2 of this number is used! | | | 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 | | | 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 | | + | | 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. | | | pad_number | string | pad # | used for nets. it MUST be consistent with the definitions on the netlist. | | ||
| flags | hex or string | | examples: | | | flags | hex or string | | examples: | | ||
Line 168: | Line 190: | ||
===== Examples ===== | ===== Examples ===== | ||
- | * **''Pad[-24606 14760 -19538 14760 1181 2000 3181 “” “16” “square”]''** | + | * **''%%Pad[-24606 14760 -19538 14760 1181 2000 3181 "" "16" "square"]%%''** |
- | * **''Pad[-14760 19538 -14760 24606 1181 2000 3181 “” “17” “square,edge2”]''** | + | * **''%%Pad[-14760 19538 -14760 24606 1181 2000 3181 "" "17" "square,edge2"]%%''** |
- | * **''Pin[0 0 12000 2000 12500 6400 “” “1” 0×00000001]''** | + | * **''%%Pad[-240.00mil 0.0000 -80.00mil 0.0000 40.00mil 20.00mil 46.00mil "2" "2" "onsolder,square"]%%''** |
- | * **''ElementArc [0 0 6800 6800 0 360 1000]''** | + | * **''%%Pad[80.00mil 0.0000 240.00mil 0.0000 40.00mil 20.00mil 46.00mil "1" "1" "onsolder,square,edge2"]%%''** |
- | * **''ElementLine [-26696 -26696 26696 -26696 1000]''** | + | * **''%%Pin[0 0 12000 2000 12500 6400 "" "1" 0×00000001]%%''** |
- | * **''# notes within PCB Footprints go after the pound sign''** | + | * **''%%Pin[0 0 11500 11800 35000 12500 "" "1" 0x08]%%''** <-- unplated / nonplated hole |
+ | * **''%%ElementArc [0 0 6800 6800 0 360 1000]%%''** | ||
+ | * **''%%ElementLine [-26696 -26696 26696 -26696 1000]%%''** | ||
+ | * **''%%# notes within PCB Footprints go after the pound sign%%''** | ||