Shared KiCad and CAD assets for the OpenMuscle ecosystem: schematic symbols, PCB footprints, 3D models, and mechanical parts reused across FlexGrid, LASK5, and other devices.
The goal is one canonical home for parts, so a new board reuses the ESP32-S3, the ICM-42688-P IMU, the USB connector, the charging circuit, and the flex sensor footprint instead of copying them from the last project.
Part of the OpenMuscle Hub ecosystem. See the architecture and repo layout.
symbols/
OpenMuscle.kicad_sym original OpenMuscle symbols
vendor/ manufacturer / SnapEDA symbols (third-party licensing)
footprints/
OpenMuscle.pretty/ original OpenMuscle footprints
vendor/ third-party footprint libraries
3dmodels/ KiCad 3D models referenced by footprints (.step, .wrl)
mechanical/ original CAD parts for assemblies (.step, .stl)
datasheets/ optional vendor datasheets (.pdf)
Original OpenMuscle parts and third-party (vendor) parts are kept separate so licensing stays clear. See Licensing.
Binary CAD assets (.step, .stp, .wrl, .stl, .pdf) are stored with
Git LFS. Install it once before cloning or committing:
git lfs install
git clone https://github.com/Open-Muscle/OpenMuscle-Library.gitIf you cloned before installing LFS, run git lfs pull to fetch the binaries.
The tracking rules live in .gitattributes; new binary types
should be added there.
Projects reference this library through a single environment variable, OM_LIB,
so every board points at the same canonical parts.
In KiCad: Preferences > Configure Paths, add a path variable named OM_LIB
pointing at your clone of this repo, for example:
| Name | Path |
|---|---|
OM_LIB |
D:\path\to\OpenMuscle-Library |
In Preferences > Manage Symbol Libraries (Global) add the symbol libraries,
and in Preferences > Manage Footprint Libraries (Global) add the footprint
libraries, using ${OM_LIB} in the path. Ready-made table rows are provided:
You can copy these rows into your KiCad global tables, or merge the files directly if you do not already have global entries.
Daily work tracks the tip of main. When a board is sent to fab, tag the library
at that point (for example flexgrid-v4-tapeout) so the exact parts used are
recoverable later:
git tag flexgrid-v4-tapeout
git push origin flexgrid-v4-tapeoutTo rebuild that board exactly, check out the tag.
- Put original symbols in
symbols/OpenMuscle.kicad_sym, original footprints infootprints/OpenMuscle.pretty/. - Put vendor parts under the matching
vendor/folder and note the source and license in NOTICE.md. - Place 3D models in
3dmodels/and reference them from the footprint with a${OM_LIB}/3dmodels/...path so the link resolves on any machine. - Commit. Binary models are handled by Git LFS automatically.
Original OpenMuscle parts in this repo are licensed under CC BY 4.0 (see LICENSE), chosen so the parts drop cleanly into any project with attribution.
Third-party parts under vendor/ folders retain their original licenses from the
manufacturer or source. Those are listed in NOTICE.md. When you add a
vendor part, add its attribution there.