Where are the momentary bush-button switches located?

Symbols are in Switches.lib

You might try SW_SPST_B3S-1100 in Buttons_Switches_SMD.pretty for a starter.

1 Like

I’m obviously missing something…

In eeschem I only see analog_switches…
No other buttons/switches listed.

Yes, I’m new at KiCad.

Maybe you don’t have the current libs added to the fp-lib-table.
(you can test that by opening the footprint editor and trying to select the “missing” lib as your working lib. If it does not exist in this list, you don’t have it in the table)

How to get all current libs from github into your fp-lib-table:

Open pcb_new or the footprint editor.
open the libary wizard:
preferences->footprint library wizard

In the window that opens select from github and make sure the text field contains: https://github.com/KiCad
If you always want the newest footprints deactivate save local copy.
(Otherwise this tool will download the current libs and add this local copy to the fp-lib-table. If you want that you need to first delete all old entries from the table. for that you can use the library manager in the preferences menu.)
press next
select all (or only the libs you want, depends on your preferences.)
finish the dialog. (press next a few times until you can press finish.)

If the libs are in the fp-lib-table

Another option why you can not assign the footprints is if you use cvpcb and have some filter enabled.

I updated all footprints yesterday.

Allow me to clarify…
I haven’t gotten to the point of assigning footprints to the schematic, yet.
I’m just trying to find a switch to place on the schematic.

Ok scrap my first answer.
I get it now. The switch symbols are in device.lib

The switches.lib exists on github and should be provided by the latest kicad version (4.0.6)
You can also download it yourself if you want:

@Rene_Poschl: now I’m confused. I have them in switches.lib. Rotary encoders are in the device.lib (lord knows why), but not switches.

@grpace: maybe you check the libraries you have loaded. Goto Part Library Editor->Preferences->Components libraries.
There all SYMBOL libraries KiCad is aware of are listed. You can also “Add” one there.

Symbol libs are not updated automatically from github.
I think between 4.0.5 and 4.0.6 the library has been reorganized.

If he has not installed the latest kicad version or the package he is using does not supply the latest library, he has them still in devises.lib

If you either use nightly or 4.0.6 and always update the library you of course have the current state of the lib

@Rene_Poschl likes to get confused between symbols and footprints, and then spread that confusion to everyone else :slight_smile:

SYMBOL (component) = EESCHEMA

FOOTPRINT = PCBNEW/CvPCB/fp-lib-table

If we don’t nail this, it’s only going to get more confusing later.

2 Likes

@Rene_Poschl: No. When installing a nighty, I only install the help files, nothing else.

But then you are right: I recently pulled down the current SYMBOL libraries.
Will never do that again in the future. I am one of the guys working with their own libraries and
using the KiCad libs as a base or even unchanged, where they suit me.

Ok…

I’m on Linux/Ubuntu. In eeschem, I had to navigate to /usr/share/kicad/libraries and add the switches.lib for the schematic. Switches now show up as a choice for placing components.

But why did I have to do this ?
Why aren’t they included by default ?

Well i looked into it a bit. The switches.lib was created after release 4.0.4 but before 4.0.5 so it should already be included in 4.0.5 and 4.0.6.
(It exists since october last year.)

@grpace: oh, sorry. I’m all Windows.

The symbol libraries that are automatically added to every new project you create are determined by what is listed in the standard template file located (in linux) under /usr/share/kicad/template/kicad.pro
If you add the symbols.lib to this file (using a text editor) it will be added to every project you create from now on. (Otherwise you will need to do this for every new project you create.)

Well maybe @SchrodingersGat or @jkriege2 know about that.
I don’t even know where this standard template lives on github. (It is not in the kicad library repo under templates where i would have expected it to be)


Disclaimer for everyone reading this in 2018: KiCad version 5 does no longer need this stuff! Here the symbol libs are handled via a library table similar to how the v4 footprints had been handled (and are still handled)

.[quote=“Rene_Poschl, post:18, topic:5695”]
the standard template file located (in linux) under /usr/share/kicad/template/kicad.proIf you add the symbols.lib to this file (using a text editor) it will be added to every project you create from now on.
[/quote]
Then that would require me editing that file as “root”.

Well, maybe don’t have to edit it as “root”.
Just loaded the file. Here’s what I see in the libraries section:
LibDir=
[eeschema/libraries]
LibName1=power
LibName2=device
LibName3=transistors
LibName4=conn
LibName5=linear
LibName6=regul
LibName7=74xx
LibName8=cmos4000
LibName9=adc-dac
LibName10=memory
LibName11=xilinx
LibName12=microcontrollers
LibName13=dsp
LibName14=microchip
LibName15=analog_switches
LibName16=motorola
LibName17=texas
LibName18=intel
LibName19=audio
LibName20=interface
LibName21=digital-audio
LibName22=philips
LibName23=display
LibName24=cypress
LibName25=siliconi
LibName26=opto
LibName27=atmel
LibName28=contrib
LibName29=valves

Yes, I would have to edit it as “root”.
Tried making changes… Can’t save it as a normal user.

1st… Where/what would I edit to make this happen ?
2nd… Shouldn’t have to do this.
3rd… Forcefully making changes as “root” in Linux is generally not a good idea.
4th… Will the edits remain intact after a version upgrade ?

Yours looks similar to mine. I did not update my kicad for nearly a year now. (stupid fedora gets no new nightlies.)
If you look under /usr/share/kicad/library/ you will find that there are a lot more libraries than the 29 that are in the standard template. If you want to use all libs that are supplied with your kicad version you either have to add them to the template or add them to every project you create by hand.

Sadly yes. And i fear this will not change until we get the new library format where we will have a symbol library table similar to the footprint library table within the users personal profile.

1 Like

Well…

I can (somewhat) understand someone having to add their own custom libraries to be available for a schematic, but I do not feel that having to manually add the default libraries should be necessary.

So…
I wasn’t comfortable doing it, but I edited the /usr/share/kicad/template/kicad.pro file to include all libraries on my system:

[eeschema]
version=1
LibDir=
[eeschema/libraries]
LibName1=74xgxx
LibName2=74xx
LibName3=ac-dc
LibName4=actel
LibName5=adc-dac
LibName6=allegro
LibName7=Altera
LibName8=analog_devices
LibName9=analog_switches
LibName10=atmel
LibName11=audio
LibName12=battery_management
LibName13=bbd
LibName14=bosch
LibName15=brooktre
LibName16=cmos4000
LibName17=cmos_ieee
LibName18=conn
LibName19=contrib
LibName20=cypress
LibName21=dc-dc
LibName22=device
LibName23=digital-audio
LibName24=diode
LibName25=display
LibName26=dsp
LibName27=elec-unifil
LibName28=ESD_Protection
LibName29=ftdi
LibName30=gennum
LibName31=graphic
LibName32=hc11
LibName33=intel
LibName34=interface
LibName35=intersil
LibName36=ir
LibName37=Lattice
LibName38=leds
LibName39=linear
LibName40=logo
LibName41=maxim
LibName42=mechanical
LibName43=memory
LibName44=microchip_dspic33dsc
LibName45=microchip
LibName46=microchip_pic10mcu
LibName47=microchip_pic12mcu
LibName48=microchip_pic16mcu
LibName49=microchip_pic18mcu
LibName50=microchip_pic24mcu
LibName51=microchip_pic32mcu
LibName52=microcontrollers
LibName53=modules
LibName54=motor_drivers
LibName55=motorola
LibName56=motors
LibName57=msp430
LibName58=nordicsemi
LibName59=nxp_armmcu
LibName60=nxp
LibName61=onsemi
LibName62=opto
LibName63=Oscillators
LibName64=philips
LibName65=powerint
LibName66=power
LibName67=Power_Management
LibName68=pspice
LibName69=references
LibName70=regul
LibName71=relays
LibName72=rfcom
LibName73=sensors
LibName74=silabs
LibName75=siliconi
LibName76=stm32
LibName77=supertex
LibName78=switches
LibName79=texas
LibName80=transf
LibName81=transistors
LibName82=triac_thyristor
LibName83=ttl_ieee
LibName84=valves
LibName85=video
LibName86=wiznet
LibName87=Worldsemi
LibName88=Xicor
LibName89=xilinx
LibName90=zetex
LibName91=Zilog

However…
It appears KiCad maxes out at 87 entries… For whatever reason, the last 4 aren’t being included, and they definitely are there.

Feel free to copy and edit yours if you’d like.

1 Like