Code Monkey home page Code Monkey logo

sparkfun-kicad-libraries's Introduction

SparkFun Electronics KiCad Libraries

This repository contains the SparkFun KiCad Library of commonly used parts. It is a cultivated combination of KiCad parts (mostly symbols) and original SparkFun-designed Eagle footprints. This is a work in progress so be very cautious when using these symbols or footprints as they may contain errors.

Note: The SparkFun KiCad components contain internal part numbers for ease of manufacture for the SparkFun SMD lines.

Theory

KiCad is very good and has a large number of stock and industry common symbols and footprints. SparkFun has a large number of unique Eagle footprints and symbols that it has created over the years. KiCad can directly and easily import Eagle footprints, but it cannot easily import Eagle schematic symbols. Rather than converting all previous SparkFun Eagle libraries to KiCad, we are adding new parts to this library as we need them for new projects. This gives us the opportunity to clear out old badness, but opens the door to new badness (ie, incorrect footprints) so reader beware!

The SparkFun approach: when a new part needs to be added we decide whether to use a KiCad stock symbol, edit it for use, or create it from scratch. We give preference to the stock KiCad symbol. We give heavy preference to using the original SparkFun footprint, but look at the stock KiCad footprint for inspiration as well. We'll try to follow the KiCad Library Conventions where it makes sense.

Additionally, SparkFun needs to assign various unique manufacturing data (ie, internal part numbers) to parts. To alleviate this, there is a large number of components with an identical symbol each with their own production ID information. For example, capacitors:

List of SparkFun capacitors in KiCad

We use the following naming conventions to create our 'bubble gum' parts:

  • [capacity]_[size]_[voltage]_[tolerance]
  • [resistance]_[size]_[wattage optional]_[tolerance optional]
  • [inductance]_[size]_[max current]
  • [led color]_[size]_[wavelength optional]

Contents

License

This library is released under the Creative Commons Attribution 4.0 International license. You are welcome to use this library for commercial purposes. For attribution, we ask that when you begin to sell your device using our footprint, you email us with a link to the product being sold. We want bragging rights that we helped (in a very small part) to create your 8th world wonder. We would like the opportunity to feature your device on our homepage.

Please consider contributing back to this library or others to help the open-source hardware community continue to thrive and grow!

sparkfun-kicad-libraries's People

Contributors

andyengland521 avatar bboyho avatar kennethlimcp avatar lewispg228 avatar marshalltaylorsfe avatar npoole avatar nseidle avatar paulzc avatar pete-o avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sparkfun-kicad-libraries's Issues

KiCad 7.0 Error: Invalid zero-sized pad pinned to 1µm

Hey guys, nice lib, but you still have some errors in 5 of your footprints. KiCad 7 does not like having a pad size of 0 (zero).
The second parameter of the ‘size’ attribute is 0 (such as ‘(size 1.8796 0)’), which must be a minimum of 1µm for KiCad 7.0+

The problematic footprints are:
1X01_OFFSET.kicad_mod
1X40_OFFSET.kicad_mod
2X3_OFFSET.kicad_mod
PSP_CONNECTOR.kicad_mod
STEREOJACK2.5MM_SPECIAL_POGOPINS.kicad_mod

I have attached an ugly, long error log for identifying the footprints with wrong sizes.
Should be a quick fix.

15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X01_OFFSET.kicad_mod
line: 20
offset: 113
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 175
offset: 112
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 176
offset: 115
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 177
offset: 115
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 178
offset: 115
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 179
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 180
offset: 115
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 181
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 182
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 183
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 184
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 185
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 186
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 187
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 188
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 189
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 190
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 191
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 192
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 193
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 194
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 195
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 196
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 197
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 198
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 199
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 200
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 201
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 202
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 203
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 204
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 205
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 206
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 207
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 208
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 209
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 210
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 211
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 212
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 213
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/1X40_OFFSET.kicad_mod
line: 214
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 41
offset: 120
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 42
offset: 121
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 43
offset: 116
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 44
offset: 117
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 45
offset: 119
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/2X3_OFFSET.kicad_mod
line: 46
offset: 120
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/PSP_CONNECTOR.kicad_mod
line: 12
offset: 32
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/STEREOJACK2.5MM_SPECIAL_POGOPINS.kicad_mod
line: 21
offset: 128
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/STEREOJACK2.5MM_SPECIAL_POGOPINS.kicad_mod
line: 22
offset: 129
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/STEREOJACK2.5MM_SPECIAL_POGOPINS.kicad_mod
line: 23
offset: 123
15:59:01: Invalid zero-sized pad pinned to 1µm in
file: SparkFun-KiCad-Libraries-master\Footprints\SparkFun-Connectors.pretty/STEREOJACK2.5MM_SPECIAL_POGOPINS.kicad_mod
line: 24
offset: 121

New v8 Search / Filter box limits part discovery

In v7, the searching the word 'SparkFun Push' allowed discovery of all SparkFun available push button switches because the search box included the file names ("SparkFun-Switch.pretty" was included). In v8, the file names are not searched, so only the FPs that have the word sparkfun explicitly in the keyword/description box is included in the search results.

I put 'SparkFun' in front of nearly all my searches to remove the kicad default libs, but this is hindering v8 use. This is a problem for symbol search as well.

Possible solutions:

  • Add the keyword SparkFun to all FPs and symbols.
  • Make users not import/use default KiCad libs/symbols, just search without the word SparkFun
  • Allow import of default libraries, make user wade through

@PaulZC I'm leaning towards adding the keyword but it feels brute force to me. Have you got any ideas?

image

image

And symbols as well:
image

unable to install SparkFun library to KiCad 7.0.10

running latest version of Raspberry Pi os on Raspberry Pi 5 8Gb
Discovered a problem, and was advised to upgrade KiCad, which I did via Flatpak, to see if solved.
Now version 7.0.10

2 methods, but essentially still the same problem:

  1. downloaded .zip file, copied to /usr/share/kicad/3rd_party/sparkfun/sparkfun_kicad_libraries, unzipped.
    I then set global variables in KiCad to point at the Footprint & Symbol libraries.
    Looking at both Symbol and Footprint libraries, I see only one of the two, it's marked as sparkfun, and it's not
    expandable to show individual parts. To ensure they were correct, I had navigated to the directories I created then
    did 'pwd' and copy/pasted that.

  2. used the plugin & content manager, selected libraries tab, install from file, navigated to original sparkfun.zip,
    selected it. after a few seconds I get the error message "Archive does not contain a valid metadata .json file"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.