(kicad_pcb (version 20240108) (generator "iemi_garageone_board") (generator_version "1")
  (general (thickness 1.6) (legacy_teardrops no))
  (paper "A2")
  (title_block (title "GarageOne opener-head boards rev A") (date "2026-11-04") (rev "A") (company "IEMI Labs") (comment 1 "8-layer main board 280 x 164 with a camera tab and two 2-layer light strips; 4-layer power board 280 x 164 with a heat-camera tab"))
  (layers (0 "F.Cu" signal) (1 "In1.Cu" signal) (2 "In2.Cu" signal) (31 "B.Cu" signal) (32 "B.Adhes" user "B.Adhesive") (33 "F.Adhes" user "F.Adhesive") (34 "B.Paste" user) (35 "F.Paste" user)
    (36 "B.SilkS" user "B.Silkscreen") (37 "F.SilkS" user "F.Silkscreen") (38 "B.Mask" user) (39 "F.Mask" user) (40 "Dwgs.User" user "User.Drawings")
    (41 "Cmts.User" user "User.Comments") (44 "Edge.Cuts" user) (45 "Margin" user) (46 "B.CrtYd" user "B.Courtyard") (47 "F.CrtYd" user "F.Courtyard")
    (48 "B.Fab" user) (49 "F.Fab" user))
  (setup (pad_to_mask_clearance 0))
  (net 0 "")
  (gr_poly (pts (xy -140 -228) (xy 140 -228) (xy 140 -392) (xy -140 -392)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_poly (pts (xy -140 -34) (xy 140 -34) (xy 140 -198) (xy -140 -198)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_poly (pts (xy -270 -235) (xy -160 -235) (xy -160 -390) (xy -270 -390)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_poly (pts (xy 160 -235) (xy 270 -235) (xy 270 -390) (xy 160 -390)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_poly (pts (xy 292 -340) (xy 308 -340) (xy 308 -356) (xy 292 -356)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_poly (pts (xy 292 -76) (xy 308 -76) (xy 308 -92) (xy 292 -92)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_text "tab hinges 40 mm and strip folds (drawn apart); leads L1 0.6 m, L2 0.35 m" (at -60 -404 0) (layer "Cmts.User") (effects (font (size 1.5 1.5) (thickness 0.2))))
  (footprint "U1_14x14" (layer "F.Cu") (at -60 -330 0)
    (property "Reference" "U1" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Rockchip RV1126B, FCCSP-409, 0.65 mm pitch, side A under a finned aluminium heat sink into the door bay" (at 0 7.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "HS1_25x25" (layer "F.Cu") (at -60 -330 0)
    (property "Reference" "HS1" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Finned aluminium heat sink 25 × 25 × 12 with a gap pad on the RV1126B, its fins in the door bay's air, 6 mm clear of the wall" (at 0 13.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -12.5 -12.5) (end 12.5 12.5) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -12.5 -12.5) (end 12.5 12.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U2_10x14.5" (layer "F.Cu") (at -28 -330 0)
    (property "Reference" "U2" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "LPDDR4X 16 Gbit ×32 (2 GB), 200-ball FBGA" (at 0 8.05 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5 -7.25) (end 5 7.25) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -5 -7.25) (end 5 7.25) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U11_11.5x13" (layer "F.Cu") (at -95 -330 0)
    (property "Reference" "U11" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "eMMC 5.1 16 GB industrial, 153-ball FBGA (shipped empty, so the card always starts first; our loader on the card reads the card first; keeps the call and door log)" (at 0 7.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5.75 -6.5) (end 5.75 6.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -5.75 -6.5) (end 5.75 6.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "BZ1_12x12" (layer "F.Cu") (at 0 -245 0)
    (property "Reference" "BZ1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "SMD piezo transducer 12 × 12 × 3 (PUI AT-1220 class) behind the tone holes, sealed to them by a Ø16 foam ring: the call tones and the UL 325 close warning" (at 0 6.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -6 -6) (end 6 6) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -6 -6) (end 6 6) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "C1_14x14" (layer "B.Cu") (at -60 -330 0)
    (property "Reference" "C1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "RV1126B decoupling field (behind the chip, side B)" (at 0 7.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U3_14x12" (layer "B.Cu") (at -60 -305 0)
    (property "Reference" "U3" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Power: rails for the RV1126B (core, NPU, logic, DDR, 1.8/3.3 V) from the 5 V rail" (at 0 6.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -7 -6) (end 7 6) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -7 -6) (end 7 6) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "Y1_2.5x2" (layer "B.Cu") (at -40 -350 0)
    (property "Reference" "Y1" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "24 MHz MEMS oscillator (SiTime SiT8008 class)" (at 0 1.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.25 -1) (end 1.25 1) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.25 -1) (end 1.25 1) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "Y2_2x1.6" (layer "B.Cu") (at -34 -350 0)
    (property "Reference" "Y2" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "32.768 kHz MEMS oscillator (SiTime SiT1533 class)" (at 0 1.6 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -0.8) (end 1 0.8) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1 -0.8) (end 1 0.8) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U8_3x2" (layer "B.Cu") (at 20 -360 0)
    (property "Reference" "U8" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Microchip ATECC608B security chip, UDFN-8: signs every garage call and every door move it asks for, into the append-only log" (at 0 1.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.5 -1) (end 1.5 1) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.5 -1) (end 1.5 1) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U9_2x3" (layer "B.Cu") (at 26 -360 0)
    (property "Reference" "U9" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "ID EEPROM 2 kbit (product, board version, serial, the camera's aim at fitting)" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1.5) (end 1 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1 -1.5) (end 1 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J1_14x15" (layer "B.Cu") (at 60 -370 0)
    (property "Reference" "J1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "microSD socket with a hinged, latched lid (Amphenol 101-00660 class), fitted on every board: our software starts from the card; reached by taking off the cover" (at 0 8.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -7 -7.5) (end 7 7.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -7 -7.5) (end 7 7.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U90_2x2" (layer "B.Cu") (at 60 -379 0)
    (property "Reference" "U90" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "microSD card power switch (TPS22917-class load switch, 3.3 V, driven by the card power-enable pin) with a 10 kΩ discharge resistor: a stuck card can be power-cycled" (at 0 1.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U91_3x1.35" (layer "B.Cu") (at 60 -361 0)
    (property "Reference" "U91" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "microSD ESD and filter array, 6 lines (TPD6F003-class), with 22 Ω series resistors on CLK, CMD and D0–D3 and the card-detect line" (at 0 1.475 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.5 -0.675) (end 1.5 0.675) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.5 -0.675) (end 1.5 0.675) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U5_12x12" (layer "B.Cu") (at -110 -365 0)
    (property "Reference" "U5" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "AMPAK AP6256 Wi-Fi 5 + Bluetooth 5 module (certified, RV1126B SDK default): the home Wi-Fi and BLE pairing for the family's phones" (at 0 6.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -6 -6) (end 6 6) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -6 -6) (end 6 6) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "Y3_2.5x2" (layer "B.Cu") (at -110 -355 0)
    (property "Reference" "Y3" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "37.4 MHz MEMS oscillator for the AP6256 Wi-Fi/BT module (SiTime SiT8008 class, shock-rated)" (at 0 1.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.25 -1) (end 1.25 1) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.25 -1) (end 1.25 1) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT1_10x3" (layer "B.Cu") (at -128 -386 0)
    (property "Reference" "ANT1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "2.4/5 GHz chip antenna at the board's top left corner with its keep-out, the corner farthest from the opener's steel motor frame" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5 -1.5) (end 5 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -5 -1.5) (end 5 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J2_21x10" (layer "B.Cu") (at 115 -245 0)
    (property "Reference" "J2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Molex Micro-Fit 3.0 43045-1012 10-pin vertical header, positive latch (5 V ×2, GND ×3, I²C ×2, I²S ×3) for lead L1" (at 0 5.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -10.5 -5) (end 10.5 5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -10.5 -5) (end 10.5 5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U42_6x5" (layer "B.Cu") (at 90 -245 0)
    (property "Reference" "U42" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI TPS25947 class eFuse (3.5 A, reverse block) + TVS on the 5 V from the power board" (at 0 3.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -2.5) (end 3 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -2.5) (end 3 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U21_10x4" (layer "B.Cu") (at 80 -320 0)
    (property "Reference" "U21" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Door camera LDOs 2.9 / 1.8 / 1.1 V and its 37.125 MHz MEMS oscillator" (at 0 2.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5 -2) (end 5 2) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -5 -2) (end 5 2) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U25_4x3" (layer "B.Cu") (at 100 -300 0)
    (property "Reference" "U25" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "ESD array on the camera lines" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2 -1.5) (end 2 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2 -1.5) (end 2 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U62_3x3" (layer "B.Cu") (at 130 -300 0)
    (property "Reference" "U62" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "74LVC1T45 level shifter for the call-light data line out to both strips" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.5 -1.5) (end 1.5 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.5 -1.5) (end 1.5 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U63_3x3" (layer "B.Cu") (at 0 -265 0)
    (property "Reference" "U63" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Piezo driver transistor and resistor" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.5 -1.5) (end 1.5 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.5 -1.5) (end 1.5 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "TP1_10x6" (layer "B.Cu") (at -120 -250 0)
    (property "Reference" "TP1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Factory pads: USB 2.0, debug serial, boot, rails, current sense" (at 0 3.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5 -3) (end 5 3) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -5 -3) (end 5 3) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL1_2x2" (layer "F.Cu") (at -248.75 -260 0)
    (property "Reference" "DL1" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL2_2x2" (layer "F.Cu") (at -243.25 -260 0)
    (property "Reference" "DL2" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL3_2x2" (layer "F.Cu") (at -237.75 -260 0)
    (property "Reference" "DL3" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL4_2x2" (layer "F.Cu") (at -232.25 -260 0)
    (property "Reference" "DL4" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL5_2x2" (layer "F.Cu") (at -226.75 -260 0)
    (property "Reference" "DL5" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL6_2x2" (layer "F.Cu") (at -221.25 -260 0)
    (property "Reference" "DL6" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL7_2x2" (layer "F.Cu") (at -215.75 -260 0)
    (property "Reference" "DL7" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DL8_2x2" (layer "F.Cu") (at -210.25 -260 0)
    (property "Reference" "DL8" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR1_2x2" (layer "F.Cu") (at 181.25 -260 0)
    (property "Reference" "DR1" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR2_2x2" (layer "F.Cu") (at 186.75 -260 0)
    (property "Reference" "DR2" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR3_2x2" (layer "F.Cu") (at 192.25 -260 0)
    (property "Reference" "DR3" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR4_2x2" (layer "F.Cu") (at 197.75 -260 0)
    (property "Reference" "DR4" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR5_2x2" (layer "F.Cu") (at 203.25 -260 0)
    (property "Reference" "DR5" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR6_2x2" (layer "F.Cu") (at 208.75 -260 0)
    (property "Reference" "DR6" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR7_2x2" (layer "F.Cu") (at 214.25 -260 0)
    (property "Reference" "DR7" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DR8_2x2" (layer "F.Cu") (at 219.75 -260 0)
    (property "Reference" "DR8" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "WS2812B-2020 RGB LED behind the side call-light slot: green, amber, red and the white flash of the close warning" (at 0 1.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -1 -1) (end 1 1) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U7_2.9x2.8" (layer "B.Cu") (at 210 -387 0)
    (property "Reference" "U7" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI TMAG5273 3D Hall chip at the strip's top edge, under a Ø8 × 3 magnet in a boss under the cover: taking off the cover is logged and signed" (at 0 2.2 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.45 -1.4) (end 1.45 1.4) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.45 -1.4) (end 1.45 1.4) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U31_1.5x1.5" (layer "F.Cu") (at 110 -56 0)
    (property "Reference" "U31" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Sensirion SHT45 temperature and humidity chip behind the back-wall vents, on an island cut free by a slot so the supply's warmth does not reach it" (at 0 1.55 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -0.75 -0.75) (end 0.75 0.75) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -0.75 -0.75) (end 0.75 0.75) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U32_3.5x2.65" (layer "B.Cu") (at 110 -76 0)
    (property "Reference" "U32" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI/InvenSense ICS-43434 bottom-port I²S MEMS mic over a board hole, its port to side A and a foam gasket to the back-wall vents: the home's smoke and CO alarm patterns and an engine left running" (at 0 2.125 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1.75 -1.325) (end 1.75 1.325) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1.75 -1.325) (end 1.75 1.325) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J10_22.5x12" (layer "B.Cu") (at -115 -181 0)
    (property "Reference" "J10" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "WAGO 2604 class 3-pole spring-clamp PCB terminal for the opener's own 120 V mains tap (L, N, PE), 7.5 mm pitch, behind a printed shield" (at 0 6.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -11.25 -6) (end 11.25 6) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -11.25 -6) (end 11.25 6) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "F10_20x10" (layer "B.Cu") (at -85 -181 0)
    (property "Reference" "F10" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "1 A slow fuse, 150 V varistor and the class II creepage slot" (at 0 5.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -10 -5) (end 10 5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -10 -5) (end 10 5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "PS1_45.7x25.4" (layer "B.Cu") (at -95 -141 0)
    (property "Reference" "PS1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Mean Well IRM-10-5 PCB-mount 5 V 2 A 10 W supply (class II, listed), the same part as the bench head" (at 0 13.5 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -22.85 -12.7) (end 22.85 12.7) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -22.85 -12.7) (end 22.85 12.7) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J11_37.5x12" (layer "B.Cu") (at -20 -178 0)
    (property "Reference" "J11" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "WAGO 2604 class 5-pole spring-clamp terminal for lead L2 to the opener's own logic board: wall-button pair, door-position output, backup-battery plus and common" (at 0 6.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -18.75 -6) (end 18.75 6) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -18.75 -6) (end 18.75 6) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U70_6.4x4.4" (layer "B.Cu") (at 5 -156 0)
    (property "Reference" "U70" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Panasonic AQY212 class photo-MOS relay across the opener's wall-button pair: a momentary press, isolated, exactly like the wall control's own button" (at 0 3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3.2 -2.2) (end 3.2 2.2) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3.2 -2.2) (end 3.2 2.2) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U71_4.4x4" (layer "B.Cu") (at 20 -156 0)
    (property "Reference" "U71" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Optocoupler on the opener board's door-position output" (at 0 2.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.2 -2) (end 2.2 2) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2.2 -2) (end 2.2 2) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U72_8x5" (layer "B.Cu") (at 35 -156 0)
    (property "Reference" "U72" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI ADS1115 ADC (the opener's backup-battery voltage through a divider) and a TCA9534 I/O expander (relay drive, position input), on the I²C of lead L1" (at 0 3.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4 -2.5) (end 4 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -4 -2.5) (end 4 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U73_4x3" (layer "B.Cu") (at 50 -156 0)
    (property "Reference" "U73" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TVS array on every opener line" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2 -1.5) (end 2 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2 -1.5) (end 2 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "BT1_77x21" (layer "B.Cu") (at 20 -106 0)
    (property "Reference" "BT1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Keystone 1042 class 18650 holder, soldered, with one Samsung INR18650-35E cell: keeps the watching and the alerts going in a power cut" (at 0 11.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -38.5 -10.5) (end 38.5 10.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -38.5 -10.5) (end 38.5 10.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "RT1_2x1.2" (layer "B.Cu") (at 20 -121 0)
    (property "Reference" "RT1" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "10 k NTC thermistor against the cell, read by the charger" (at 0 1.4 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -1 -0.6) (end 1 0.6) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -1 -0.6) (end 1 0.6) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U50_8x8" (layer "B.Cu") (at 75 -136 0)
    (property "Reference" "U50" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI BQ25895 class charger with power-path: charges the cell at 0.5 A only between 0 and 45 °C" (at 0 4.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4 -4) (end 4 4) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -4 -4) (end 4 4) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U23_6x4" (layer "B.Cu") (at -80 -68 0)
    (property "Reference" "U23" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "3.3 V LDO for the MLX90640" (at 0 2.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -2) (end 3 2) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -2) (end 3 2) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J12_21x10" (layer "B.Cu") (at 115 -176 0)
    (property "Reference" "J12" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Molex Micro-Fit 3.0 43045-1012 10-pin vertical header, positive latch, for lead L1" (at 0 5.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -10.5 -5) (end 10.5 5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -10.5 -5) (end 10.5 5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "TP2_10x6" (layer "B.Cu") (at 115 -116 0)
    (property "Reference" "TP2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Factory pads: rails, charger, I²C, relay test" (at 0 3.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5 -3) (end 5 3) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -5 -3) (end 5 3) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U200_10.6x9.2" (layer "F.Cu") (at 300 -348 0)
    (property "Reference" "U200" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Sony IMX415-AAQR-C 8 MP colour camera chip (C1, 3840 × 2160), 25° down through the door-end window: the door, the doorway, both bays and the driveway when open" (at 0 5.4 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -5.3 -4.6) (end 5.3 4.6) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -5.3 -4.6) (end 5.3 4.6) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U240_9.2x9.2" (layer "F.Cu") (at 300 -84 0)
    (property "Reference" "U240" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Melexis MLX90640ESF-BAA 32 × 24 heat chip, 110° × 75° lens in its TO39 can, 40° down through the HDPE back window: the water heater's pan and the back of the bay" (at 0 5.4 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4.6 -4.6) (end 4.6 4.6) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -4.6 -4.6) (end 4.6 4.6) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
)
