Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
533dc8e
feat(ecad): Update ecad / atopile and improve workflow
finger563 Jul 10, 2026
02886ea
add step file to repo
finger563 Jul 10, 2026
3876c05
add box-3 step file
finger563 Jul 10, 2026
90d9efc
improve workflow
finger563 Jul 11, 2026
805a719
update the action to latest and fix some bugs / spurious issues
finger563 Jul 11, 2026
37f08b2
remove legacy files
finger563 Jul 11, 2026
b15e3d0
update readme
finger563 Jul 11, 2026
2fd220b
update deprecations
finger563 Jul 11, 2026
269fe53
improve placement of components and robustness of scripts
finger563 Jul 13, 2026
e301bd8
nudge layouts some
finger563 Jul 13, 2026
b4043fe
further layout changes
finger563 Jul 13, 2026
e5772a7
fixing some issues
finger563 Jul 13, 2026
d98cd5e
fix broken ci
finger563 Jul 13, 2026
cba2344
minor update
finger563 Jul 19, 2026
46d52e4
simple layout
finger563 Jul 21, 2026
8d4bee9
update to work with latest atopile services (lack thereof)
finger563 Jul 27, 2026
7a9f6c6
update routing
finger563 Jul 28, 2026
fc2905b
fix(ecad): vendor atopile registry package for CI builds
finger563 Jul 28, 2026
778939b
fix(ecad): keep vendored package byte-exact (no EOL normalization)
finger563 Jul 28, 2026
b376ca8
fix(ci): disable baked-in ATO_FROZEN and normalize base layout serial…
finger563 Jul 28, 2026
4cfa929
feat(ecad): tidy silkscreen reference designator placement
finger563 Jul 29, 2026
3f394ae
fix(ecad): silkscreen labels placed with real text bounds, zero overlaps
finger563 Jul 29, 2026
e3eb3e2
feat(ecad): keep silkscreen labels adjacent to parts and neatly organ…
finger563 Jul 30, 2026
298ca13
fix(ecad): move d-pad pullups out of the membrane footprint area
finger563 Jul 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# Normalize EOL for all files that Git considers text files.
* text=auto eol=lf

# Vendored atopile package: byte-exact files (hash-checked against .package_meta.json)
ecad/.ato/modules/** -text
173 changes: 127 additions & 46 deletions .github/workflows/atopile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,70 +16,151 @@ on:
workflow_dispatch:

jobs:
Atopile:
atopile:
runs-on: ubuntu-latest

steps:

- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v7

- name: Build atopile project
uses: sethfischer/atopile-action@main
# Official atopile action: resolves the version from requires-atopile
# in ato.yaml and provides `ato` via the atopile-kicad container
# (which bundles kicad-cli), tagged locally as `atopile-local`.
- name: Setup atopile
uses: atopile/setup-atopile@v2
with:
path: 'ecad/' # atopile project directory
ato-config: ecad/ato.yaml

- name: Render Box-Emu PCB
uses: INTI-CMNB/KiBot@v2_k8
with:
# Required - kibot config file
config: ecad/config.kibot.yaml
# optional - prefix to output defined in config
dir: 'ecad/kibot-box-emu'
# optional - PCB design file
board: 'ecad/elec/layout/box-emu/box-emu.kicad_pcb'
# atopile's hosted components-picker API (components.atopileapi.com)
# was shut down in the 0.16 platform migration and the 0.15.x CLI has
# no public replacement endpoint. scripts/ato-build-offline.sh serves
# the picker from part data pinned in the repo instead. The `ato`
# wrapper from setup-atopile runs inside a docker container, so the
# stand-in binds all interfaces and is reached through the docker
# bridge gateway (ATO_* env vars are forwarded into the container).
- name: Resolve docker bridge gateway
id: dockergw
run: |
gw=$(docker network inspect bridge --format '{{(index .IPAM.Config 0).Gateway}}')
echo "gw=$gw" >> "$GITHUB_OUTPUT"

- name: Render Box-3-Emu PCB
uses: INTI-CMNB/KiBot@v2_k8
with:
# Required - kibot config file
config: ecad/config.kibot.yaml
# optional - prefix to output defined in config
dir: 'ecad/kibot-box-3-emu'
# optional - PCB design file
board: 'ecad/elec/layout/box-3-emu/box-3-emu.kicad_pcb'
# Verify every target builds from the checked-in sources WITHOUT
# modifying the checked-in layouts. We don't use `ato build --frozen`
# because atopile 0.15.x writes group member lists in nondeterministic
# order, making frozen flaky; instead we build, canonicalize that
# ordering, and require the working tree to be unchanged.
# The EasyEDA API (still used for footprints/symbols) is intermittently
# flaky, hence the retries.
- name: Build all targets
working-directory: ecad
env:
PARTS_CACHE_BIND: 0.0.0.0
PARTS_CACHE_URL: http://${{ steps.dockergw.outputs.gw }}:8471
# the atopile-kicad image bakes in ATO_FROZEN=1; we deliberately do
# NOT build frozen (frozen's in-memory diff is flaky, see comment
# above) and instead verify checked-in layouts below.
ATO_FROZEN: "0"
run: |
ok=0
for i in 1 2 3; do
if scripts/ato-build-offline.sh; then
ok=1; break
fi
echo "build failed (attempt $i), retrying in 60s..."; sleep 60
done
[ "$ok" = "1" ]

- name: Zip up box-emu files in the build output directory
- name: Verify checked-in layouts are unchanged
working-directory: ecad
run: |
cd ecad
# zip all files which match box-emu.* or box-emu-gerbers*.zip
zip -j box-emu.zip build/box-emu.* build/box-emu-gerbers*.zip kibot-box-emu/*.png kibot-box-emu/*.pdf kibot-box-emu/*.step
cd ..
python3 scripts/canonicalize-boards.py --all
if ! git diff --exit-code --stat -- elec/layout elec/src; then
echo "::error::Building modified the checked-in design files."
echo "::error::Run 'ato build' + 'scripts/canonicalize-boards.py --all' locally and commit the result."
exit 1
fi

- name: Zip up box-3-emu files in the build output directory
# Manufacturing artifacts for the two real boards:
# -t all -> gerber zip, pick & place, BOM, STEP, GLB
# -t 3d-image -> rendered PNG
- name: Export gerbers / STEP / PNG
working-directory: ecad
env:
PARTS_CACHE_BIND: 0.0.0.0
PARTS_CACHE_URL: http://${{ steps.dockergw.outputs.gw }}:8471
# the atopile-kicad image bakes in ATO_FROZEN=1; we deliberately do
# NOT build frozen (frozen's in-memory diff is flaky, see below) and
# instead verify the checked-in layouts stay unchanged after build.
ATO_FROZEN: "0"
run: |
cd ecad
# zip all files which match box-3-emu.* or box-3-emu-gerbers*.zip
zip -j box-3-emu.zip build/box-3-emu.* build/box-3-emu-gerbers*.zip kibot-box-3-emu/*.png kibot-box-3-emu/*.pdf kibot-box-3-emu/*.step
cd ..
ok=0
for i in 1 2 3; do
if scripts/ato-build-offline.sh -b box-emu -b box-3-emu -t all -t 3d-image; then
ok=1; break
fi
echo "build failed (attempt $i), retrying in 60s..."; sleep 60
done
[ "$ok" = "1" ]

- name: Upload Box-3-Emu
uses: actions/upload-artifact@v4
with:
name: box-3-emu
path: |
ecad/build/box-3-emu.*
ecad/build/box-3-emu-gerbers*.zip
ecad/kibot-box-3-emu/*
# PDFs are not an atopile target; render them with the kicad-cli
# bundled in the same atopile-kicad container the action pulled.
- name: Export PDFs
working-directory: ecad
run: |
for b in box-emu box-3-emu; do
docker run --rm -v "$PWD:/work" -w /work --entrypoint kicad-cli atopile-local \
pcb export pdf --layers "F.Cu,F.Mask,F.SilkS,Edge.Cuts" \
--output "build/builds/$b/$b.top.pdf" "elec/layout/$b/$b.kicad_pcb"
docker run --rm -v "$PWD:/work" -w /work --entrypoint kicad-cli atopile-local \
pcb export pdf --mirror --layers "B.Cu,B.Mask,B.SilkS,Edge.Cuts" \
--output "build/builds/$b/$b.bottom.pdf" "elec/layout/$b/$b.kicad_pcb"
done

- name: Collect release bundles
working-directory: ecad
run: |
for b in box-emu box-3-emu; do
zip -j "$b.zip" \
"build/builds/$b/$b.gerber.zip" \
"build/builds/$b/$b.pcba.step" \
"build/builds/$b/$b.pcba.png" \
"build/builds/$b/$b.pcba.glb" \
"build/builds/$b/$b.top.pdf" \
"build/builds/$b/$b.bottom.pdf" \
"build/builds/$b/$b.bom.csv" \
"build/builds/$b/$b.pick_and_place.csv" \
"build/builds/$b/$b.jlcpcb_pick_and_place.csv"
done

- name: Upload Box-Emu
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: box-emu
path: |
ecad/build/box-emu.*
ecad/build/box-emu-gerbers*.zip
ecad/kibot-box-emu/*
ecad/build/builds/box-emu/box-emu.gerber.zip
ecad/build/builds/box-emu/box-emu.pcba.step
ecad/build/builds/box-emu/box-emu.pcba.png
ecad/build/builds/box-emu/box-emu.pcba.glb
ecad/build/builds/box-emu/box-emu.top.pdf
ecad/build/builds/box-emu/box-emu.bottom.pdf
ecad/build/builds/box-emu/box-emu.bom.csv
ecad/build/builds/box-emu/box-emu.pick_and_place.csv
ecad/build/builds/box-emu/box-emu.jlcpcb_pick_and_place.csv

- name: Upload Box-3-Emu
uses: actions/upload-artifact@v7
with:
name: box-3-emu
path: |
ecad/build/builds/box-3-emu/box-3-emu.gerber.zip
ecad/build/builds/box-3-emu/box-3-emu.pcba.step
ecad/build/builds/box-3-emu/box-3-emu.pcba.png
ecad/build/builds/box-3-emu/box-3-emu.pcba.glb
ecad/build/builds/box-3-emu/box-3-emu.top.pdf
ecad/build/builds/box-3-emu/box-3-emu.bottom.pdf
ecad/build/builds/box-3-emu/box-3-emu.bom.csv
ecad/build/builds/box-3-emu/box-3-emu.pick_and_place.csv
ecad/build/builds/box-3-emu/box-3-emu.jlcpcb_pick_and_place.csv

- name: Attach files to release
uses: softprops/action-gh-release@v2
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:

steps:
- name: Checkout repo
uses: actions/checkout@v4
uses: actions/checkout@v7
with:
submodules: 'recursive'

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,4 @@ flash_data/
*-backups/
managed_components/
dependencies.lock
__pycache__
83 changes: 83 additions & 0 deletions ecad/.ato/modules/atopile/ti-tps63020/.package_meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
{
"schema_version": 1,
"identifier": "atopile/ti-tps63020",
"version": "0.4.0",
"source": {
"type": "registry",
"url": "https://packages.atopileapi.com",
"ref": null,
"path": null
},
"installed_at": "2026-07-08T23:17:15.282229",
"installed_by": "0.15.7",
"file_checksums": {
"usage.ato": "def0853be56f796adfc1d71011ea3e5aada7df63f9cf17473c9008c01fbbbcf1",
"ti-tps63020.ato": "507b57c306fa7dec4e798b93fb0fdbba0fb073badca6c374293a561c5212823d",
"ato.yaml": "5758003802ac456705de88b312246e8ceb5c257b6d19d47052ef6208d3fda41c",
"README.md": "0733f5f9a250d948456889d288787a4f3b20e608fcfdaefad7c54d643b6573e5",
"parts/UNI_ROYAL_0402WGF1004TCE/R0402.kicad_mod": "3fc9c73fe6345a2d2458165b9f3ce6e4b585852a6df34075ab10c1c59fd43fe1",
"parts/UNI_ROYAL_0402WGF1004TCE/0402WGF1004TCE.kicad_sym": "bbdf23eb345d13647d985d69ba3a90075c4b47f461a4ec6d11bff009ebb759d0",
"parts/UNI_ROYAL_0402WGF1004TCE/UNI_ROYAL_0402WGF1004TCE.ato": "51c0f2ccf9c5f5f4638d9c96e43ceb5bf1654182ea23f6d8be223974f0b006e7",
"parts/UNI_ROYAL_0402WGF1004TCE/R0402_L1.0-W0.5-H0.4.step": "134d58dd68899b29f9e19def208de6690d06010e01c304866fbd4d81c8640aa6",
"parts/UNI_ROYAL_0402WGF1004TCE/UNI-ROYAL-Uniroyal-Elec-0402WGF1004TCE_C26083.pdf": "11cd644d5d8a34a6d12775afb80bf58d8fc11f0c3b700dbd0f7a59942ceaa5ef",
"parts/Samsung_Electro_Mechanics_CL21A106KAYNNNE/C0805_L2.0-W1.3-H1.3.step": "99acc6b12df8e17000d6e7529bddac9ea44e1240f5635482742aae256f49b5df",
"parts/Samsung_Electro_Mechanics_CL21A106KAYNNNE/C0805.kicad_mod": "16dfa09a57f60f49ee7035d67e7d85ab9fa0f438113073cdf429793669e0058e",
"parts/Samsung_Electro_Mechanics_CL21A106KAYNNNE/Samsung_Electro_Mechanics_CL21A106KAYNNNE.ato": "3ef7aea6135dc48cd52f7121a99f54b9e2b27297c6cf84d304ffd56085f29e92",
"parts/Samsung_Electro_Mechanics_CL21A106KAYNNNE/Samsung-Electro-Mechanics-CL21A106KAYNNNE_C15850.pdf": "96baebe4bd0ce363e87be28b5b003f511f1502e084a6fc4f02333ded56c808f6",
"parts/Samsung_Electro_Mechanics_CL21A106KAYNNNE/CL21A106KAYNNNE.kicad_sym": "a70f9e3f0eba1169c6ac4f254c3bd89271086b6bc9cd20b21bd4e15547d48cf2",
"parts/cjiang_FHD4020S_1R0MT/cjiang_FHD4020S_1R0MT.ato": "276719f5539f967b6089c30a289344bb6276fc831f169222da202499c859010e",
"parts/cjiang_FHD4020S_1R0MT/IND-SMD_L4.0-W4.0-H1.9.STEP": "2fea655bdf2e7558c64e45b196447145aa25695be01b52d278a24db3755d8baf",
"parts/cjiang_FHD4020S_1R0MT/IND-SMD_L4.0-W4.0.kicad_mod": "2474694040678e7e2eb98cea701da30b4fb9312450682a09c31242ea585e32ea",
"parts/cjiang_FHD4020S_1R0MT/FHD4020S-1R0MT.kicad_sym": "ab353ba6eb96ebe537c7f941e7e0fae24524a7c74d52da9bcf5742fb65cb7fed",
"parts/cjiang_FHD4020S_1R0MT/2304140030_cjiang--Changjiang-Microelectronics-Tech-FHD4020S-1R0MT_C602028.pdf": "b0660c9bfa322ef354f765eadd567723a75ed13677fa9fc9657185326b27bca9",
"parts/Samsung_Electro_Mechanics_CL21A226MAQNNNE/C0805_L2.0-W1.3-H1.3.step": "99acc6b12df8e17000d6e7529bddac9ea44e1240f5635482742aae256f49b5df",
"parts/Samsung_Electro_Mechanics_CL21A226MAQNNNE/C0805.kicad_mod": "bdb32d7e2147d94a64c851f502fa252d724117acd6dd1057d30c339effa96839",
"parts/Samsung_Electro_Mechanics_CL21A226MAQNNNE/CL21A226MAQNNNE.kicad_sym": "3be6a6867690ae65a1762df54ff7db9ce3c00a0e417bd5e630ad1212ed61fc6b",
"parts/Samsung_Electro_Mechanics_CL21A226MAQNNNE/Samsung_Electro_Mechanics_CL21A226MAQNNNE.ato": "1cd3c955e96543c7452100153baf94a8e2226f601adb9c174c495fb73b3c9de8",
"parts/Samsung_Electro_Mechanics_CL21A226MAQNNNE/Samsung-Electro-Mechanics-CL21A226MAQNNNE_C45783.pdf": "96baebe4bd0ce363e87be28b5b003f511f1502e084a6fc4f02333ded56c808f6",
"parts/FOJAN_FRC0402F1912TS/FOJAN_FRC0402F1912TS.ato": "463b75ad46ab8fef368f044646592f02da033d2396668c52a8166c538ede8fbb",
"parts/FOJAN_FRC0402F1912TS/R0402.kicad_mod": "bcbdee35db9d119e24260ce405c9cea08aa7c4c074a0c94bfa9e24533985ceda",
"parts/FOJAN_FRC0402F1912TS/FRC0402F1912TS.kicad_sym": "5d76fd5faca8b92650574041a76eae2b614ff45c4426b1399fe9c16422de8458",
"parts/FOJAN_FRC0402F1912TS/R0402_L1.0-W0.5-H0.4.step": "134d58dd68899b29f9e19def208de6690d06010e01c304866fbd4d81c8640aa6",
"parts/FOJAN_FRC0402F1912TS/2308241947_FOJAN-FRC0402F1912TS_C2998158.pdf": "8a94aa475f0d8bce55c5e82fee61c387d482d0de039bb52e4596d2babe3458e2",
"parts/FOJAN_FRC0402F1023TS/FRC0402F1023TS.kicad_sym": "84a72a8e498fef0a009183be1165a4be39dfd6bbb3119c2e2c65f419e4642478",
"parts/FOJAN_FRC0402F1023TS/R0402.kicad_mod": "9dc731614c9b87aaf9fa78b1e216e45fc64dc9c5b7b4476d832ca590f40752d5",
"parts/FOJAN_FRC0402F1023TS/2308241947_FOJAN-FRC0402F1023TS_C2933066.pdf": "8a94aa475f0d8bce55c5e82fee61c387d482d0de039bb52e4596d2babe3458e2",
"parts/FOJAN_FRC0402F1023TS/R0402_L1.0-W0.5-H0.4.step": "134d58dd68899b29f9e19def208de6690d06010e01c304866fbd4d81c8640aa6",
"parts/FOJAN_FRC0402F1023TS/FOJAN_FRC0402F1023TS.ato": "fc47333d3733d761ba3d53b184d45ee22fd3f0adf9b0b90724649ede9af14943",
"parts/Murata_Electronics_LQM18FN100M00D/L0603.kicad_mod": "035980541a0a365ce15d180c357c870860a5e4db24c4bab628b2545c0c8252c1",
"parts/Murata_Electronics_LQM18FN100M00D/Murata_Electronics_LQM18FN100M00D.ato": "979fc90c29d1aa3b60b36870d9165d346dc1a155018e0024e0c94c363468bf6d",
"parts/Murata_Electronics_LQM18FN100M00D/LQM18FN100M00D.kicad_sym": "26071c72673c3b8085ff29be2c72a41987f8e3fb47e4768fa0f2da499a7422ae",
"parts/Murata_Electronics_LQM18FN100M00D/L0603_L1.6-W0.8-H0.5_BEAD.step": "37217a45ff91a07e901f84c89d522730f0830ea10d7b55693b6cfcf8faa2952e",
"parts/Texas_Instruments_TPS63020DSJR/Texas-Instruments-TPS63020DSJR_C15483.pdf": "dc0810f5fedbc7ab996cc00be2d09e7cb8ac9bd23bc57043f60d30c6d2abc2bf",
"parts/Texas_Instruments_TPS63020DSJR/VSON-14_L4.0-W3.0-P0.50-BL-EP_TI_DSJ.kicad_mod": "ae8de3d5dfbab702aa0fe48a12b06554fddaf09c4abe2900e318970648c69112",
"parts/Texas_Instruments_TPS63020DSJR/Texas_Instruments_TPS63020DSJR.ato": "dcefa5fc69365b1b05d087097ac69261b7b68975304d64ee33ae42b8445703b1",
"parts/Texas_Instruments_TPS63020DSJR/VSON-14_L4.0-W3.0-H1.0-P0.50.step": "7bd1a3f368d5e3efbf683aa6c372b8bf0e4eb270858b6688aebc30049d52ae7b",
"parts/Texas_Instruments_TPS63020DSJR/TPS63020DSJR.kicad_sym": "3cb352214ab6dcbc348093dad9b1d6270f95d337c04be3e251fa5951e307c297",
"parts/Samsung_Electro_Mechanics_CL05B104KO5NNNC/Samsung-Electro-Mechanics-CL05B104KO5NNNC_C1525.pdf": "96baebe4bd0ce363e87be28b5b003f511f1502e084a6fc4f02333ded56c808f6",
"parts/Samsung_Electro_Mechanics_CL05B104KO5NNNC/C0402.kicad_mod": "26cd7a3f1d346704d47bc66c928a911416484189642997f5a2db2652d930de35",
"parts/Samsung_Electro_Mechanics_CL05B104KO5NNNC/Samsung_Electro_Mechanics_CL05B104KO5NNNC.ato": "67b701a2ea4ae97c631b3d2dcc34e28eb21a37762f001a9711e32dae13ae5c31",
"parts/Samsung_Electro_Mechanics_CL05B104KO5NNNC/C0402_L1.0-W0.5-H0.5.step": "0ca13e031cb175d8dc5c0393959392c0e3213eb099cc9b61fe4118feffcebad8",
"parts/Samsung_Electro_Mechanics_CL05B104KO5NNNC/CL05B104KO5NNNC.kicad_sym": "206d27623f5c9447f71e0c8adca3f99a0b0bd3e59217f8d5fce4d05b73044636",
"parts/UNI_ROYAL_0402WGF1073TCE/R0402.kicad_mod": "c67f404f49b58ab80dc234f87a9597ccf2128da2d159c1e0f96b87116f66265f",
"parts/UNI_ROYAL_0402WGF1073TCE/UNI-ROYAL-Uniroyal-Elec-0402WGF1073TCE_C25743.pdf": "11cd644d5d8a34a6d12775afb80bf58d8fc11f0c3b700dbd0f7a59942ceaa5ef",
"parts/UNI_ROYAL_0402WGF1073TCE/0402WGF1073TCE.kicad_sym": "44b68f3089c5fce8c1f20a05d0c2fd69bcbbc7fd31620aa8b64a1236cae25db3",
"parts/UNI_ROYAL_0402WGF1073TCE/R0402_L1.0-W0.5-H0.4.step": "134d58dd68899b29f9e19def208de6690d06010e01c304866fbd4d81c8640aa6",
"parts/UNI_ROYAL_0402WGF1073TCE/UNI_ROYAL_0402WGF1073TCE.ato": "51ff98254883ba9a8b6c8ca7de1615c5349a297b28b96f538cfbbd4b45efe3ad",
"parts/FOJAN_FRC0402F3482TS/R0402.kicad_mod": "d0c9122b9c476a76970a4e64ed05a1136d51620a8fa565666552651fba129ee5",
"parts/FOJAN_FRC0402F3482TS/R0402_L1.0-W0.5-H0.4.step": "134d58dd68899b29f9e19def208de6690d06010e01c304866fbd4d81c8640aa6",
"parts/FOJAN_FRC0402F3482TS/FOJAN_FRC0402F3482TS.ato": "65422966d1eda460cab7af0eb2fb65be5279b4aadc13ff260e6909c621973419",
"parts/FOJAN_FRC0402F3482TS/FRC0402F3482TS.kicad_sym": "c4069e10a838f5af74a0aa35b4dbb7d4debd68b76fb13384fcc0a0330bb16f4c",
"parts/FOJAN_FRC0402F3482TS/2308241947_FOJAN-FRC0402F3482TS_C2998092.pdf": "8a94aa475f0d8bce55c5e82fee61c387d482d0de039bb52e4596d2babe3458e2",
"parts/TDK_MLF1608A1R2KTA00/L0603.kicad_mod": "34f63e59643ff2acbcc21f90a9ce99011606d80583f25481c87aac3c9d015aa0",
"parts/TDK_MLF1608A1R2KTA00/MLF1608A1R2KTA00.kicad_sym": "73b98921342d85718316eb0949b66fc6bb73133f6093e2c181565459caac84bd",
"parts/TDK_MLF1608A1R2KTA00/TDK_MLF1608A1R2KTA00.ato": "7f833a1ea1caeb78dce845bae53dd01c299ca2486d5dfec906d0ccef4e008333",
"parts/TDK_MLF1608A1R2KTA00/L0603_L1.6-W0.8-H0.5_BEAD.step": "37217a45ff91a07e901f84c89d522730f0830ea10d7b55693b6cfcf8faa2952e",
"layouts/default/default.kicad_pro": "66657b0bbd73567e92c5dd32f1e8720a797f57e7ae92a305a0af8e6f678cf618",
"layouts/default/fp-lib-table": "b2d70a5300067b22be62d73fc7bdffb39c0c7ceeb33ff91c9b490178b716b8c0",
"layouts/default/default.kicad_pcb": "dd85ea7b27308fbaa1d2ddfe63c825bc53d68258b7df06d92c010ffdd7f55036",
"layouts/usage/fp-lib-table": "3a6df60bbeda8f5cd16dec921ecb452d8a46018b361b1beebb096c8a8e52a05f",
"layouts/usage/usage.kicad_pcb": "2d8a1ad1f988d27b19a261bfdfe5c8b72a1286045c14315c121ed39fa5067029",
"layouts/usage/usage.kicad_pro": "3cd2ea8df97e191cc47ddfa9b722def2151c615a0cd7138f7507a1f00a1a792e"
}
}
Loading
Loading