Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.

Keyswitch Kicad Library


This is a footprint library for KiCad, a Cross Platform and Open Source EDA.

It has footprints for most popular keyboard switches.



Versions prior to v2.1.2 have incorrect dimensions for Kailh choc V1 switches (as well as wrong name as it's actually V1 and V2 compatible), so please use the latest version if you want to use these. see issue #26.

Supported footprints

Cherry MX and equivalent, Plate and PCB mount.
Alps/Matias or equivalent.
Hybrid footprints for Cherry MX and Alps/Matias (accepts both).
Kailh Choc low profile switches V1 (CPG1350).
Kailh Choc low profile switches V2 (CPG1353).
Kailh Hotswap sockets for Cherry MX equivalent switches.
Kailh Hotswap sockets for Choc low profile switches
Kailh KH CPG1280
Kailh CPG1425
Kailh Choc Mini CPG1232

If you find any issues, missing footprints or want another family of switches supported please open an issue about it!


Stabilizers are provided as seperate footprints in order to offer more flexibility and reduce the total number of switch footprint variants.

Currently there are footprints for Cherry MX PCB mount equivalent stabilizers in 2u 6u 6.25u 7u and 8u.

3D Models

The library includes the following 3d models:

SW_Hotswap_Kailh (MX)

We are looking for contributors for the missing 3d models.


These footprints are generated with kicad-footprint-generator with the scripts located in scripts.

Using the library

As of v2.0 the library is meant to be installed via kicads Plugin and Content Manager, this is only available in the nightly builds of kicad (aka Kicad v6), if you are using kicad v5, please head to the old version of this library (v1.0.0)

If you want to use git simply clone this repo to the directory where you want your library stored and include them manually on your footprints table Preferences -> Manage Footprint Libraries... (Note: with this method the 3d models will not be linked automatically/correctly)

If you want to use the RECOMMENDED method, open the content manager, where you will find this library in the libraries tab (you can also download the arquive from the releases and install from file...) Note that you need to add the libraries to the library table manually.

The following entries needs to be added:

Name Location
Mounting_Keyboard_Stabilizer ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Mounting_Keyboard_Stabilizer.pretty
Switch_Keyboard_Alps_Matias ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Switch_Keyboard_Alps_Matias.pretty
Switch_Keyboard_Cherry_MX ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Switch_Keyboard_Cherry_MX.pretty
Switch_Keyboard_Hotswap_Kailh ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Switch_Keyboard_Hotswap_Kailh.pretty
Switch_Keyboard_Hybrid ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Switch_Keyboard_Hybrid.pretty
Switch_Keyboard_Kailh ${KICAD6_3RD_PARTY}/footprints/com_github_perigoso_keyswitch-kicad-library/Switch_Keyboard_Kailh.pretty


All screenshots are of the 1u keycap switch.

Warning: some footprints are missing or may have changed, this is out of date

cherrymx_plate cherrymx_pcb alps_matias hybrids kailh_Choc kailh_hotswap

Demo board for real life testing



If you're reading this from outside GitHub, you can find the source for this library here:

Contribuitors and Acknowledgements


The library is dual licensed under MIT and CC-BY-SA 4.0.