Shared 3D models¶
These six STEP files were extracted without alteration from the left-ear PCB
on 2026-10-17. SHA256SUMS records the extracted bytes. Keep one copy here
and reference it from boards and local footprint libraries instead of embedding
it in each document.
Models use ${KICAD_PROJECT_3D_DIR}/filename.step. Define that project text
variable as follows:
| Project | KICAD_PROJECT_3D_DIR |
|---|---|
espurr/espurr.kicad_pro |
${KIPRJMOD}/packages3D |
espurr/espurr-ears/espurr-ears.kicad_pro |
${KIPRJMOD}/../packages3D |
espurr/espurr-band/espurr-band.kicad_pro |
${KIPRJMOD}/../packages3D |
In KiCad 10, edit the variable in Board Setup → Text & Graphics → Text
Variables, or the corresponding Schematic Setup → Text Variables table.
It belongs in the project, not in the global Configure Paths dialog.
Generated boards must carry an appropriate project variable or receive an
equivalent explicit export override; do not assume their build-directory
${KIPRJMOD} has the same relative layout as a source project.
The two capacitor models, resistor, SOT-23 and LGA-14 models retain the KiCad /
kicad StepUp copyright and CC BY-SA 4.0 notices, including the electronic-design
exception, in their STEP headers. See the
KiCad 3D model licence.
ws2812c-2020.step is the model already supplied in the board and local LED
footprint; its STEP header does not identify an author or redistribution
licence. Extraction preserves it and does not establish new provenance or
mechanical acceptance.
The DNP D70/D71 diode footprints retain their pre-existing stock
D_0201_0603Metric.step reference. That model was neither embedded nor
installed in the inspected KiCad library, so no substitute is supplied here.
ESP32-S3-MINI-1¶
The local, gitignored ESP32-S3-MINI-1.step is Andi's unmodified manufacturer
download, retained on 2026-10-25 from
Espressif's STEP link.
Its header identifies ESP32-S3-MINI-1_V1-20240308.STEP, SolidWorks 2022,
2024-03-08. SHA-256:
cb7541280753aeadc86f2a2854bae1f8acb9dcbb3aad32de461bf87704400086.
It is approximately 7.7MB; no manufacturer redistribution licence was identified,
so the model bytes are kept local rather than added to the repository. The six
historical extraction records in SHA256SUMS are unchanged.
The historical MINI checkpoint's U101 model override used
${KICAD_PROJECT_3D_DIR}/ESP32-S3-MINI-1.step, scale 1:1, zero rotation and
offset X −7.70, Y −10.25, Z 0mm. The manufacturer's corner origin requires
that translation to the stock MINI land-pattern origin. A disposable native
KiCad top render checks alignment with the copper/body envelope and the 5.05mm
antenna overhang. The library footprint and its copper are unchanged. This is
visual alignment evidence, not a mounted fit or RF acceptance result.
Portable website/render model pool — 2026-11-02¶
Andi authorised copying the STEP models used by the current source boards into
this shared directory. The additional files in models.json are
byte-for-byte copies of the installed KiCad 10.0.8 library or her global model
library, with sizes, SHA-256 hashes and source/provenance notes. Existing original
models and the historical SHA256SUMS extraction record are preserved.
The selected stock bodies include the WROOM module, switches, inductor, SOT
packages, 0603 resistor and breakout headers. They retain their KiCad library
copyright, CC BY-SA 4.0 and electronic-design exception notices.
The five C*.step models are from the
JLCEDA/EasyEDA Official Library.
The pinned model downloads were checked against the user's local bytes.
781710002.step is her supplied Molex model; its exact original download route
was not independently recovered. Manufacturer/library rights remain with their
owners; copying these assets does not assign them a new licence or qualify fit.
The left-ear connector and headband's user-library model references now use
${KICAD_PROJECT_3D_DIR}/<filename>, including the flattened Molex filename.
Matching shared footprint-library model references use the same alias. Their
translations, rotations and scales are held. Native saved-board readback verifies
unchanged numbered pads/nets, component poses, tracks, outlines and zone geometry;
native footprint readback verifies the model transforms, and the model-only
library edit preserves the existing non-model bytes and UUIDs.
Stock KiCad references can still resolve through the installed library in the
GUI; the renderer resolves their exact basenames from this self-contained pool.
The global originals remain available to other projects.
The website publishes renders, not these STEP files. Frozen order inputs and previous manufacturing packages are not regenerated by this model-only change. The saved PCB/model-path hashes have changed, so later manufacturing rebuilds will record those new source inputs even though copper geometry is held.
EasyEDA / JLCEDA model attribution¶
The following models are sourced from the EasyEDA / JLCEDA Official Library. Credit for the supplied model assets belongs to that library and their respective creators and rights holders, not to ESPurr. The files retain their original bytes, including any embedded branding and notices.
| Local STEP file | Use in ESPurr | Original model download |
|---|---|---|
| C2912774.step | 0603 current-shunt body | EasyEDA model |
| C2971916.step | LTR-F216A ambient-light sensor | EasyEDA model |
| C324723.step | FPC connector body used for the HRS FH34SRJ connector | EasyEDA model |
| C7471906.step | HUSB320 package body | EasyEDA model |
| C963413.step | GT-USB-7010 USB-C receptacle body | EasyEDA model |
models.json records the exact download URLs, file sizes and SHA-256 hashes. These are visualisation assets; a model's catalogue identity does not establish an exact mechanical match to the selected component.
The project retains these models in the repository for board visualisation and reproducible renders. No model-specific redistribution licence has been established as of 2026-11-02. This attribution records provenance; it does not claim permission, relicense the assets or imply endorsement. See EasyEDA's terms, particularly section VII, and its library-sharing statement. Any explicit licence or permission subsequently identified should be recorded here and in the manifest.
For licensing concerns, contact @neggles at the email address listed on their GitHub profile. We will remove the affected models if requested.