molex_can_node fabrication package
==================================

Fabrication artwork and assembly data, with the recorded checks and limitations.
Written by copperlayer 0.1.0 from molex_can_node.board.

BOARD
-----
  outline        56.00 x 22.00 mm
  copper layers  4
  assembly       25 BOM line(s), 27 placement(s)

WHAT TO SEND WHERE
------------------
  gerbers/       the bare-board order. Gerber X2 artwork (one file per layer),
                 the Excellon drill file, and the Gerber job file that names
                 them and states the stackup. Most fabricators accept this
                 whole folder zipped, or this archive as it stands.
  bom.csv        the assembly order: what to buy.
  cpl.csv        the assembly order: where each part goes.
  drc.json       the recorded fabrication DRC findings, including advisories.
  board.kicad_pcb
                 the routed board every file above was plotted from (KiCad 9).
                 Not needed to order; included so the artwork is never the
                 only copy of the design.

FILES IN THIS ARCHIVE
---------------------
     899641  board.kicad_pcb
       1303  bom.csv
       3598  cpl.csv
       4674  drc.json
      12323  gerbers/board-B_Cu.gbr
      39250  gerbers/board-B_Mask.gbr
        127  gerbers/board-B_Paste.gbr
      53818  gerbers/board-B_SilkS.gbr
       1343  gerbers/board-Edge_Cuts.gbr
      71331  gerbers/board-F_Cu.gbr
     111595  gerbers/board-F_Mask.gbr
      52008  gerbers/board-F_Paste.gbr
      70316  gerbers/board-F_SilkS.gbr
     242430  gerbers/board-In1_Cu.gbr
     297409  gerbers/board-In2_Cu.gbr
        342  gerbers/board-NPTH.drl
       1482  gerbers/board-PTH.drl
       2237  gerbers/board-job.gbrjob

bom.csv COLUMNS
---------------
  Designators    the reference designators sharing this line, comma-joined
  Qty            how many of them
  Value          the value the part's model card publishes (100nF, AMS1117-3.3)
  Footprint      library-qualified footprint id, verbatim (LCSC:C6186)
  LCSC           catalog id to order against; empty means you supply the part

One line is one value + orderable part group. Two lines can share a catalog id
when the design gives one part two values in two roles; that is reported rather
than merged, because merging would print a value string no card publishes.
Parts marked do-not-populate are in neither file.

cpl.csv COLUMNS
---------------
  Designator     one placed part
  Value          as above
  Footprint      as above
  PosX_mm        the footprint's reference point (its anchor), millimetres from
  PosY_mm        the board file origin, X right and Y UP — the same frame the
                 drill file and the Gerbers are written in, so one origin
                 registers the artwork and the placements with no offset.
                 This is the placement anchor, not a computed body centroid.
  Rotation_deg   the placement angle as emitted, KiCad convention. NO vendor
                 rotation correction has been applied — those tables are
                 community-sourced and a wrong entry scraps a reel.
  Side           top or bottom
  LCSC           as above

FABRICATOR CAPABILITY CHECK
---------------------------
  This board's geometry was measured against every published capability
  table we have transcribed that describes a 4-layer process, at exactly
  the vendor's own numbers:

  JLCPCB multilayer  REFUSES — text_height: emitted 0.8000 mm, published minimum 1.0000 mm — Text
  PCBWay             REFUSES — annular_width: emitted 0.1000 mm, published minimum 0.1500 mm — Via [BSL_INVOKE], Via [GND], Via [IO1] (+11 more)
  AISLER 4L HD       passes the measured capability rules

  Pages read:
    JLCPCB multilayer — https://jlcpcb.com/capabilities/pcb-capabilities (read 2026-08-15)
    PCBWay — https://www.pcbway.com/capabilities.html (read 2026-08-08)
    AISLER 4L HD — https://community.aisler.net/posts/6035/raw (read 2026-08-11)

  A table not listed was not consulted. A rule a vendor does not publish is
  not measured and is never counted as a pass.

FABRICATION FINDINGS
--------------------
  errors requiring correction  0
  warnings to review           7
  excluded findings            0
  Warning: Land of RFB1 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C843870 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    RFB1 [LCSC:C843870]
  Warning: Land of RFB2 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C844890 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    RFB2 [LCSC:C844890]
  Warning: Land of R3 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C843870 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    R3 [LCSC:C843870]
  Warning: Land of R4 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C844890 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    R4 [LCSC:C844890]
  Warning: Land of R2 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C2089026 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    R2 [LCSC:C2089026]
  Warning: Land of R5 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C844890 (drawn Z/G/X 2.313/0.700/0.864 mm, compared to nothing)
    R5 [LCSC:C844890]
  Warning: Land of X1 was not checked against IPC-7351B: no registered package could be identified for library id LCSC:C1670009 (drawn Z/G/X 3.600/0.800/1.200 mm, compared to nothing)
    X1 [LCSC:C1670009]
  Information: Rail `V12`'s copper is rated against 1.24 A, a figure conditional on the engineering assumption U1 Efficiency, U1 Fsw.
  Information: Rail `V3V3`'s copper is rated against 0.8037 A, a figure conditional on the engineering assumption U1 Fsw.
  Information: Branch `L1.1 to L1.2`'s copper is rated against a mean-square figure conditional on the engineering assumption U1 Fsw.
  Review the findings and drc.json before ordering. Excluded findings are
  omitted from the active counts; exclusion does not resolve the finding.

SOURCE FILE
-----------
  source           molex_can_node.board

Archive entries are stored uncompressed with a fixed 1980-01-01 timestamp.
The output directory also contains molex_can_node.artifact.json, which records hashes
of this archive and the other outputs, along with the source, footprint
and model inputs used by the build.
