Library Conventions | KiCad EDA

Version 3.0.45

Library maintainer rules & guidelines

Revision History

Revision History

3.0.46 - 2024-12-09

  • Withdraw G1.2 rule for limiting library size as it’s no longer a performance issue

3.0.45 - 2024-11-27

  • Insert G3.2 rule for generic naming of audio connectors

3.0.44 - 2024-11-08

  • Update F7.6: removed indents in the listing since this had no effect any way

  • Update Home page of KLC to include a section for KiCad Libraries Wiki

3.0.43 - 2024-03-30

  • Update G1.9 to explicitly specify coordinate order

3.0.42 - 2024-02-09

  • Revise Pin1 Silkcreen Rule

3.0.41 - 2024-02-08

  • Update S6.3 to mandate solid zone connections for heatsink pads

3.0.40 - 2024-01-25

  • Update F7.6 to specify that the hole size is the finished hole size

3.0.39 - 2024-01-21

  • Update S5.2 to mandate EP size in footprint filters if needed for disambiguation

3.0.38 - 2024-01-04

  • Update F6.3 to specify pad properties for heatsink and BGA pads

  • Update F6.3: require rounded rectangles for SMD pads

  • Improve S4.2 Pin location rule: allow in-out-style voltage regulators

  • Add dash and underscore escape convention in filters (S5.2)

  • Improve hints for paste-only pads (F6.3)

  • Add new rule to disallow de-morgan style (S3.9)

3.0.37 - 2023-12-19

  • Specify a tilde for the datasheet link of a generic symbol (S6.2)

3.0.36 - 2023-12-17

  • Update S2.2 with guidelines on functional variant codes

3.0.35 - 2023-10-18

  • Add rule G3.1 about relay pin numbering

3.0.34 - 2022-04-17

  • Remove outdated kicad4 info from F6.1, describe the checkboxes

  • Update F8.1 rule to v6

3.0.33 - 2022-02-25

  • Update S4.4 example picture

  • Update F6.1 example picture

  • Add AE for antennas to S6.1

  • Remove S1.1 text regarding .dcm and .lib files

3.0.32 - 2022-02-24

  • Rework all references to the "alias" function of kicad5, replace with the new "derive" wording

3.0.31 - 2022-02-24

  • Update S7.1 for power symbols

  • Update S7.2 for graphic symbols

  • Update F5.2 for reference designator

3.0.30 - 2022-02-06

  • Update S4.7 Active low pins

  • Rework F4.5 rule for keepout areas

3.0.29 - 2022-02-06

  • Update overbar syntax to use the new curly bracket syntax (S4.7)

3.0.28 - 2020-09-18

  • Rework ruleset for 3d model contributions

  • Clarify restrictions for third party contributions (M1.1)

  • Remove rule M1.2 as it implied models provided by manufacturers are preferred

  • Clarify what counts as source files and add note about script contributions (M1.3)

  • Clarify that all contributions must be made with both wrl and step models (M2.1)

  • Clarify that Freecad is the preferred design tool (M2.3)

3.0.27 - 2020-09-12

  • Change general guidelines (G) to mention templates and 3D models

3.0.26 - 2020-01-18

  • Clarify that contributions must be made with the current stable version (G1.8)

3.0.25 - 2020-01-18

  • Update section about symbol documentation to KiCad 5.1 GUI (combined S6.2 and S6.3)

3.0.24 - 2019-11-16

  • Clarify rule for parts with toleranced dimensions

  • Fab comes from the nominal component dimensions (F5.2)

  • Courtyards, where based on component sizes (as opposed to where the courtyard comes from the pads), are referenced to the nominal body size. This is an IPC rule. (F5.3)

3.0.23 - 2019-09-23

  • Clarify that the silk below tht exception is only for additional silk markings

  • Clearer screenshots for polarized and non polarized silk markings

3.0.22 - 2019-09-20

  • Clarified KiCad footprint assignment workflows as generic vs fully specified symbols (G2.1)

  • Replace the word atomic with fully specified as this term better fits the used methodology (G2.1, S2.x)

  • Added a small definition where generic symbols are to be used (G2.1)

  • Specified when a separate symbol needs to be drawn vs when an alias is enough (S2.3)

3.0.21 - 2019-09-01

  • Clarify rules regarding NC pins

  • Clarify handling of hidden pins

3.0.20 - 2019-06-30

  • Update F9.1 screenshots and terms to match current GUI

3.0.19 - 2019-06-19

  • Clarify symbol naming for symbols with multiple manufactureres with different package suffixes (S2.1)

  • Added more details on silk-to-pad clearance (F5.1)

  • Specified that thermal pads with vias need a bottom copper pad (F4.4)

  • Expanded details for selecting pin length (S4.1)

  • Minor edits for style, wording, and grammar

3.0.18 - 2019-02-15

  • Document rules for overlapping/duplicate graphic elements (new rule F5.4)

3.0.17 - 2018-12-31

  • Correct Pin length definition for staggered TO (image in F3.5)

  • Document rules for handling oval holes (new rule F7.7)

  • Document circular hole suffix (F2.1)

  • Document suffix for multi unit parts (S2.1)

  • Document clearance requirement between exposed pads and normal pads (F6.3)

3.0.16 - 2018-12-22

  • Remove inverse 45-degree direction for connectors. (image in F3.6)

  • Clarify footprint filter rules. Especially regarding exposed pads. (S5.2)

  • Better wording for pin stack requirements (S4.3)

  • Include suggestion for exposed pad size in pad requirements rules (F6.3)

  • Fix TabUp suffix writing style (image in F3.5)

3.0.15 - 2018-12-21

  • Correct pin layout field description for connectors with different pins per row (F3.6).

  • Clarify fab layer text sizes and placements to fit current library state (F5.2)

  • Clearer language for 3d model settings of footprints. (F9.3)

3.0.14 - 2018-09-16

  • Clarify active low pins in symbols (S4.7).

3.0.13 - 2018-08-17

  • Clarify footprint naming and pin numbers for parts with shield or mounting pins.

3.0.12 - 2018-08-17

  • Allow the use of rounded rectangle pads for marking pin 1 in THT parts.

3.0.11 - 2018-01-25

  • Remove mentions of ThermalPad(s) suffix from all rules. (The only thermals related suffix is ThermalVias)

3.0.10 - 2018-01-24

  • Clarification of fontsize requirements for symbol fields (S3.2)

3.0.9 - 2018-01-19

  • Specify solderpaste coverage for exposed pads

3.0.8 - 2018-01-02

  • extended S5.2 to explain pin-count in FPFilters

3.0.7 - 2017-12-29

  • Clarification/Correction of NC-pin rules

3.0.6 - 2017-12-05

  • Clarification of courtyard clearance.

3.0.5 - 2017-12-05

  • Fix examples in connector naming convention

3.0.4 - 2017-11-30

  • Fix naming convention for tantal caps

    • move size code towards the back to avoid impression that these are manufacturer specific

3.0.3 - 2017-11-14

  • Allow pin name offset values less than 20mils (mustshould)

3.0.2 - 2017-11-10

  • Require Layout field in BGA packages to have prefix

  • Body size must be first parameter for BGA packages

3.0.1 - 2017-11-08

  • Added allowance for + character in filenames

  • Added allowance for , character in filenames

3.0.0 - 2017-10-22

  • KLC moved from GitHub wiki to KiCad website

  • KLC rules organized into logical groups, rather than single sequential set of rule numbers

  • Complete reorganization of the rules as per the above change

  • Each KLC rule now has its own page, allowing for better descriptions

  • Most rules have been overhauled and significantly improved

Older Revisions

Old KLC revision can be found on the (deprecated) kicad-library Wiki page.