Fabrication Toolkit export of hbox-watchdog-v4 (EinarBoard 2.0), verified
before ordering. Board is 155.00 x 100.00 mm, 4 layers, 1.6 mm.
New in production/:
HBOX_v4_PROD.zip 15 gerber + drill files
HBOX_v4_PROD_bom.csv 102 lines, 25 with an LCSC number
HBOX_v4_PROD_positions.csv 187 rows
HBOX_v4_PROD_designators.csv toolkit by-product, not a JLC input
hbox-watchdog-v4.kicad_pcb is modified only because the toolkit's AUTO FILL
refilled zones and re-saved on export. Diffed before/after: 0 footprints
moved, 0 rotated, 0 changed side; tracks 1989 -> 1989, vias 351 -> 351,
zones 5 -> 5, filled polygons 41 -> 41. Zone fill data only.
Verification (details in the order walkthrough):
- Row counts matched a prediction registered before the export existed:
CPL 187, BOM 102, 35 machine-placed. No duplicate designators, no
collisions from the toolkit's uppercasing of refdes, nothing truncated.
- All 30 pre-registered rotation predictions matched exactly, 0 mismatches.
The five previously-unproven packages resolved as J10 +0 deg and
U10/U11/U13/U15 +270 deg.
- Every non-zero rotation correction is externally backed: six packages
(SOT-23, SOIC-8, SOIC-8-1EP, QFN-24-1EP, CP_Elec_6.3x7.7, Arduino_UNO_R3)
are byte-identical to the v3 CPL that JLC built; the other four (LQFP-48,
SOIC-16, SOIC-16W, TSSOP-28) match KiBot's published JLCPCB rotation
table. KiBot's generic ^QFN- rule says 270 where the toolkit applied +90
to U6 - v3 hardware settles it in the toolkit's favour.
- Positions: 22 rows carry an AUTO TRANSLATE offset. 19 of 22 identical to
the v3 export, 20 of 22 equal the pad bounding-box centroid to 0.02 mm.
J10 is the only machine-placed part with a translation and it matches the
centroid exactly.
- Gerbers: 4 copper layers populated, both mask, both silk, F.Paste 40
apertures. B_Paste empty is correct (the one bottom-side part has no
paste). 523 PTH holes 0.30-1.63 mm, 6 NPTH at 3.20/3.25 mm.
Open before ordering: J10 (C12074 HR911105A) is the only through-hole part
carrying an LCSC number, so JLC's standard SMT line will not place it.
Also gitignore **/_to_delete/ (scratch folder for manual deletion).
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GSKKes8GsS4YHAMWJ44tCm