Reference library for the incutec OpenDrone hardware line: a semi-maintained mirror of parts we have already used and stocked. Its job is lookup, not enforcement. If a part is here, we have shipped it on a board, so it is already sourced and footprinted and reusing it is cheaper than drawing something new.
Local project libraries are the working default for board design. Nothing requires a part to live here first.
Live, mirror role since 2026-08-06. Assembled 2026-08-04 from the per-project libraries; footprints and symbols upgraded to KiCad 10 format from Bastian's branch 2026-08-06.
Open question, being settled in person: whether board repos keep the submodule
copy or point at one shared clone through an environment variable. No board
currently references Incutec:, so nothing depends on the answer yet.
| Path | Contents |
|---|---|
symbol/Incutec.kicad_sym |
105 symbols, one library, nickname Incutec |
footprint/Incutec.pretty/ |
195 footprints |
3dmodel/ |
336 model files (175 STEP, 161 WRL). Footprints reference the WRL, plus 19 STEP; the rest of the STEP set is the MCAD counterpart |
tools/bump-all.sh |
Re-pins the submodule in every consuming repo |
PARTS-USED.md |
Every LCSC part used on a board, and which boards use it |
tools/build-parts-index.py |
Regenerates PARTS-USED.md from the schematics |
Git submodule plus project-local lib tables. No global libraries. Every consuming repo pins this library at a fixed path:
<repo>/
├─ .gitmodules # pins OpenDrone-hw/KiCad-Library
├─ libs/KiCad-Library/ # the submodule
└─ hardware/ # KiCad project, one level below repo root
├─ <board>.kicad_pro
├─ sym-lib-table # project-local, references the submodule
└─ fp-lib-table
Add it to a repo:
git submodule add https://github.com/OpenDrone-hw/KiCad-Library.git libs/KiCad-LibraryProject-local table entries (KiCad: Preferences -> Manage Symbol/Footprint Libraries -> Project Specific, or edit the tables directly):
(lib (name "Incutec")(type "KiCad")(uri "${KIPRJMOD}/../libs/KiCad-Library/symbol/Incutec.kicad_sym")(options "")(descr "incutec shared library"))
(lib (name "Incutec")(type "KiCad")(uri "${KIPRJMOD}/../libs/KiCad-Library/footprint/Incutec.pretty")(options "")(descr "incutec shared library"))
Cloning a consuming repo:
git clone --recursive <repo-url>
# or, after a plain clone:
git submodule update --initFootprint 3D model paths are written as ${KIPRJMOD}/../libs/KiCad-Library/3dmodel/<file>. This resolves only when:
- the submodule lives at
<repo>/libs/KiCad-Library, and - the KiCad project directory sits exactly one level below the repo root (
hardware/, or a named project dir likeOpenRX-Lite/).
All current repos follow this. Keep new ones on the same shape.
- Edit here, following CONTRIBUTING.md.
- Commit, push, PR to
main. - Bump the pin in consuming repos: run
tools/bump-all.shfrom the directory that contains the hardware repos. It updates and commits every submodule pin.
Repos always build against their pinned commit. Nothing changes under a board until its pin is bumped.
Membership. A symbol, footprint or 3D model belongs here only if it is used
on a board whose repo is at status-alpha or beyond. Alpha means the board was
manufactured, so everything here has been through a real assembly run. Parts
that exist only on a planned or in-progress design do not qualify, however good
they look on paper. When a board reaches alpha, its parts join.
Copy out, do not reference. Board repos keep their own local libraries and
copy what they need out of this one. A board then keeps working when this
library changes. No board currently references Incutec: and none needs to.
Check before you trust it. python3 tools/build-parts-index.py --check
reports every symbol whose part is on no manufactured board, every symbol with
no LCSC number, and every manufactured part still missing from the library.
Run it after any change here and after any board reaches alpha.
Authoring rules for library edits (editing method, naming, property names, pre-PR validation) are in CONTRIBUTING.md.
Licensed under CERN-OHL-S-2.0, the same license as the boards. See LICENSE.
- 2026-08-04: library assembled by merging the per-project board libraries: 105 symbols, 195 footprints, full 3D model set. LCSC property unified to
LCSC, verified FC redraws adopted (ESP32-C3FH4,SX1281IMLTRT).tools/bump-all.shfixed to commit via pathspec. - 2026-06-29: initial
Incutec.kicad_symfrom the OpenRX lineage (21 symbols).