(kicad_pcb (version 20240108) (generator "iemi_farmone_board") (generator_version "1")
  (general (thickness 1.6) (legacy_teardrops no))
  (paper "A2")
  (title_block (title "FarmOne valve-cover board rev A") (date "2026-11-04") (rev "A") (company "IEMI Labs") (comment 1 "8-layer main wing and 4-layer power wing joined by a 30 mm flex bridge; four camera tabs, two lamp strips and an end strip on flex stubs"))
  (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 512 -312) (xy 615 -312) (xy 615 -324) (xy 594 -324) (xy 594 -334) (xy 646 -334) (xy 646 -324) (xy 625 -324) (xy 625 -312) (xy 760 -312) (xy 760 -190) (xy 772 -190) (xy 772 -198) (xy 788 -198) (xy 788 -60) (xy 772 -60) (xy 772 -180) (xy 760 -180) (xy 760 -56) (xy 546 -56) (xy 546 56) (xy 740 56) (xy 740 312) (xy 625 312) (xy 625 324) (xy 646 324) (xy 646 334) (xy 594 334) (xy 594 324) (xy 615 324) (xy 615 312) (xy 512 312) (xy 512 156) (xy 498 156) (xy 498 158) (xy 482 158) (xy 482 142) (xy 498 142) (xy 498 144) (xy 512 144) (xy 512 85) (xy 500 85) (xy 500 86) (xy 488 86) (xy 488 74) (xy 500 74) (xy 500 75) (xy 512 75) (xy 512 56) (xy 516 56) (xy 516 -56) (xy 512 -56) (xy 512 -75) (xy 500 -75) (xy 500 -74) (xy 488 -74) (xy 488 -86) (xy 500 -86) (xy 500 -85) (xy 512 -85) (xy 512 -144) (xy 498 -144) (xy 498 -142) (xy 482 -142) (xy 482 -158) (xy 498 -158) (xy 498 -156) (xy 512 -156)) (stroke (width 0.1) (type solid)) (fill none) (layer "Edge.Cuts"))
  (gr_text "bridge flex 30 mm, flat on the cover floor between the face and the inlet riser" (at 531 0 90) (layer "Cmts.User") (effects (font (size 1 1) (thickness 0.15))))
  (gr_text "camera and heat tabs on flex stubs (drawn short): posed 30 deg out, 15 / 10 deg down" (at 470 0 90) (layer "Cmts.User") (effects (font (size 1 1) (thickness 0.15))))
  (footprint "U1_14x14" (layer "F.Cu") (at 640 -140 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 down under a heat block to the cover floor" (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_20x20" (layer "F.Cu") (at 640 -140 0)
    (property "Reference" "HS1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Aluminium block 20 × 20 with 1 mm gap pads, from the RV1126B down to the cover floor over the shaded float bay" (at 0 10.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -10 -10) (end 10 10) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -10 -10) (end 10 10) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "J1_14x15" (layer "F.Cu") (at 700 -200 0)
    (property "Reference" "J1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (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 lifting the valve cover off" (at 0 8.3 0) (layer "F.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 "F.CrtYd"))
    (fp_rect (start -7 -7.5) (end 7 7.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U90_2x2" (layer "F.Cu") (at 700 -209 0)
    (property "Reference" "U90" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (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 "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 "U91_3x1.35" (layer "F.Cu") (at 700 -191 0)
    (property "Reference" "U91" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (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 "F.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 "F.CrtYd"))
    (fp_rect (start -1.5 -0.675) (end 1.5 0.675) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U12_4.9x2.5" (layer "F.Cu") (at 750 -120 0)
    (property "Reference" "U12" (at 0 0 0) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "ST VL53L1X time-of-flight chip (27° cone) over the Ø10 floor window, looking down at the float" (at 0 2.05 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.45 -1.25) (end 2.45 1.25) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.45 -1.25) (end 2.45 1.25) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "SW1_5.8x12.8" (layer "F.Cu") (at 517.5 -300 0)
    (property "Reference" "SW1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Omron D2F-01, plunger down through the Ø4 floor hole onto a 5 mm pin on the bay partition: pressed while the cover sits on the trough" (at 0 7.2 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.9 -6.4) (end 2.9 6.4) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.9 -6.4) (end 2.9 6.4) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "TP1_10x6" (layer "F.Cu") (at 700 -90 0)
    (property "Reference" "TP1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Factory pads: USB 2.0, debug serial, boot, rails, current sense" (at 0 3.8 0) (layer "F.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 "F.CrtYd"))
    (fp_rect (start -5 -3) (end 5 3) (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 640 -140 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 (over 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 "U2_10x14.5" (layer "B.Cu") (at 660 -140 0)
    (property "Reference" "U2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "LPDDR4X 8 Gbit ×32 (1 GB), 200-ball FBGA" (at 0 8.05 0) (layer "B.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 "B.CrtYd"))
    (fp_rect (start -5 -7.25) (end 5 7.25) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U11_11.5x13" (layer "B.Cu") (at 620 -140 0)
    (property "Reference" "U11" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "eMMC 5.1 8 GB industrial, 153-ball FBGA; shipped empty (the processor tries the eMMC before the card, so an image here would win): our loader on the card is set to read the card first (shipped empty, so the card always starts first; our loader on the card reads the card first)" (at 0 7.3 0) (layer "B.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 "B.CrtYd"))
    (fp_rect (start -5.75 -6.5) (end 5.75 6.5) (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 640 -166 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 cell rail, switched off while it sleeps" (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 640 -120 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 650 -120 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 690 -160 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 call and the daily summary" (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 696 -160 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, calibration)" (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 "U40_18x25.5" (layer "B.Cu") (at 600 -298.45 0)
    (property "Reference" "U40" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Espressif ESP32-S3-WROOM-1-N8R8 (certified): always awake on 0.1 W, reads the meter, float, heat chips and mic, wakes the RV1126B when stock come; BLE to the farmer's phone at the trough" (at 0 13.55 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -9 -12.75) (end 9 12.75) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -9 -12.75) (end 9 12.75) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT1_24x7" (layer "B.Cu") (at 600 -308.5 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" "ESP32-S3 PCB antenna keep-out at the +y edge: no copper pour, no parts on either side" (at 0 4.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -12 -3.5) (end 12 3.5) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -12 -3.5) (end 12 3.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT1A_24x7" (layer "F.Cu") (at 600 -308.5 0)
    (property "Reference" "ANT1A" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Antenna keep-out, side A" (at 0 4.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -12 -3.5) (end 12 3.5) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -12 -3.5) (end 12 3.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U41_23.6x19.9" (layer "B.Cu") (at 690 -280 0)
    (property "Reference" "U41" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Quectel BG95-M3 LTE-M / NB-IoT modem with GNSS, LCC (calls and clips to the farmer off-site)" (at 0 10.75 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -11.8 -9.95) (end 11.8 9.95) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -11.8 -9.95) (end 11.8 9.95) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U42_5x6" (layer "B.Cu") (at 712 -292 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" "MFF2 eSIM, soldered (no SIM socket)" (at 0 3.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -3) (end 2.5 3) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2.5 -3) (end 2.5 3) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT2_12x40" (layer "B.Cu") (at 754 -270 0)
    (property "Reference" "ANT2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "LTE-M chip antenna at the +x edge (Ignion NN03-310 class, est.), keep-out both sides; the cover is HDPE, no metal over it" (at 0 20.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -6 -20) (end 6 20) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -6 -20) (end 6 20) (stroke (width 0.12) (type solid)) (fill none) (layer "B.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT2A_12x40" (layer "F.Cu") (at 754 -270 0)
    (property "Reference" "ANT2A" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "LTE antenna keep-out, side A" (at 0 20.8 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -6 -20) (end 6 20) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -6 -20) (end 6 20) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "ANT3_25x25" (layer "B.Cu") (at 715 -225 0)
    (property "Reference" "ANT3" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "25 × 25 ceramic GNSS patch facing up through the HDPE top, beside the solar panel (trough location and theft tracking)" (at 0 13.3 0) (layer "B.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 "B.CrtYd"))
    (fp_rect (start -12.5 -12.5) (end 12.5 12.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U43_3x3" (layer "B.Cu") (at 690 -240 0)
    (property "Reference" "U43" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "GNSS low-noise amplifier and SAW filter for the patch" (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 "U36_2x2" (layer "B.Cu") (at 620 -230 0)
    (property "Reference" "U36" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Level shifter for the call-light data lines (3.3 to 5 V)" (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 "U21_6x3" (layer "B.Cu") (at 590 -200 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" "Camera LDOs 2.9 / 1.8 / 1.1 V for the paddock A camera chip" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U22_6x3" (layer "B.Cu") (at 590 -210 0)
    (property "Reference" "U22" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Camera LDOs 2.9 / 1.8 / 1.1 V for the paddock B camera chip (over the bridge)" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U14_3x3" (layer "B.Cu") (at 744 -120 0)
    (property "Reference" "U14" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "VL53L1X 2.8 V LDO and I²C pull-ups" (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 "U25_3x3" (layer "B.Cu") (at 744 -90 0)
    (property "Reference" "U25" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "I²C and PDM buffers for the end strip" (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 "U50_4x4" (layer "B.Cu") (at 560 100 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 BQ25798 class buck-boost charger with MPPT from the 6 W panel, up to 1 A into the cells, NTC input, 0–45 °C charge window" (at 0 2.8 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2 -2) (end 2 2) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2 -2) (end 2 2) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "L50_5x5" (layer "B.Cu") (at 572 100 0)
    (property "Reference" "L50" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "1 µH shielded inductor for the charger" (at 0 3.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U51_6x5" (layer "B.Cu") (at 560 120 0)
    (property "Reference" "U51" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "3.3 V buck for the always-on rail and the eFuse to the RV1126B rails over the bridge" (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 "U53_6x4" (layer "B.Cu") (at 580 140 0)
    (property "Reference" "U53" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "TI BQ2970 1-cell Li-ion protector + dual N-FET on the four-cell pack (short, over-current, over-discharge cut-off at 2.8 V)" (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 "U52_3x3" (layer "B.Cu") (at 560 140 0)
    (property "Reference" "U52" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "MAX17260 class cell fuel gauge: the app shows days of cloud left" (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 "BZ1_12x12" (layer "B.Cu") (at 650 200 0)
    (property "Reference" "BZ1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Piezo sounder Ø12 under the tone holes in the cover top (call tone)" (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 "U31_3x3" (layer "B.Cu") (at 630 200 0)
    (property "Reference" "U31" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Sounder driver" (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 "PD1_6x3" (layer "B.Cu") (at 560 70 0)
    (property "Reference" "PD1" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Solder pads for the 6 W panel lead, strain-relief slot beside them" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "PD2_6x3" (layer "B.Cu") (at 700 70 0)
    (property "Reference" "PD2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Solder pads for the water meter's reed pulse wires" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -3 -1.5) (end 3 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "PD3_8x3" (layer "B.Cu") (at 725 160 0)
    (property "Reference" "PD3" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Solder pads for the DS18B20 water probe's three wires (the probe stays in the water through its gland)" (at 0 2.3 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4 -1.5) (end 4 1.5) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -4 -1.5) (end 4 1.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 "F.Cu") (at 600 250 0)
    (property "Reference" "TP2" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Factory pads: cell rail, charger status, panel in" (at 0 3.8 0) (layer "F.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 "F.CrtYd"))
    (fp_rect (start -5 -3) (end 5 3) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U20A_10.6x9.2" (layer "F.Cu") (at 490 -150 0)
    (property "Reference" "U20A" (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, 1/2.8 in), looking 30° out over paddock A and 15° down" (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 "LH1A_14x14" (layer "F.Cu") (at 490 -150 0)
    (property "Reference" "LH1A" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "M12 low-profile lens holder with a 102° × 67° lens; lens front just inside the water-side face" (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 "Dwgs.User"))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "Y20A_2.5x2" (layer "B.Cu") (at 490 -153 0)
    (property "Reference" "Y20A" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Camera 37.125 MHz MEMS oscillator" (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 "U24A_9.6x9.6" (layer "F.Cu") (at 494 -80 0)
    (property "Reference" "U24A" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Melexis MLX90640ESF-BAA heat-camera chip, 110° × 75°, TO-39 can (leads through the tab)" (at 0 5.6 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4.8 -4.8) (end 4.8 4.8) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -4.8 -4.8) (end 4.8 4.8) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U26A_4x3" (layer "B.Cu") (at 494 -80 0)
    (property "Reference" "U26A" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "MLX90640 3.3 V LDO and I²C pull-ups" (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 "U20B_10.6x9.2" (layer "F.Cu") (at 490 150 0)
    (property "Reference" "U20B" (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, 1/2.8 in), looking 30° out over paddock B and 15° down" (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 "LH1B_14x14" (layer "F.Cu") (at 490 150 0)
    (property "Reference" "LH1B" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "M12 low-profile lens holder with a 102° × 67° lens; lens front just inside the water-side face" (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 "Dwgs.User"))
    (fp_rect (start -7 -7) (end 7 7) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "Y20B_2.5x2" (layer "B.Cu") (at 490 147 0)
    (property "Reference" "Y20B" (at 0 0 0) (layer "B.Fab") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Camera 37.125 MHz MEMS oscillator" (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 "U24B_9.6x9.6" (layer "F.Cu") (at 494 80 0)
    (property "Reference" "U24B" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Melexis MLX90640ESF-BAA heat-camera chip, 110° × 75°, TO-39 can (leads through the tab)" (at 0 5.6 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -4.8 -4.8) (end 4.8 4.8) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -4.8 -4.8) (end 4.8 4.8) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U26B_4x3" (layer "B.Cu") (at 494 80 0)
    (property "Reference" "U26B" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "MLX90640 3.3 V LDO and I²C pull-ups" (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 "MK1_4x3" (layer "F.Cu") (at 780 -190 90)
    (property "Reference" "MK1" (at 0 0 90) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Infineon IM69D130 MEMS mic, port to the end face through a 2 mm gasket (calving, distress calls, the pump)" (at 0 2.3 90) (layer "F.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 "F.CrtYd"))
    (fp_rect (start -2 -1.5) (end 2 1.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "GK1_5x5" (layer "F.Cu") (at 780 -190 90)
    (property "Reference" "GK1" (at 0 0 90) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Silicone sound gasket Ø5 × 2 from the mic to the end-face port" (at 0 3.3 90) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "Dwgs.User"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.Fab"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "U27_1.5x1.5" (layer "F.Cu") (at 780 -70 90)
    (property "Reference" "U27" (at 0 0 90) (layer "F.Fab") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "Sensirion SHT45 temperature and humidity chip behind the end vents (frost and heat stress), slot cut round it in the strip" (at 0 1.55 90) (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 "DA1_5x5" (layer "F.Cu") (at 600.4 -329 0)
    (property "Reference" "DA1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA2_5x5" (layer "F.Cu") (at 606 -329 0)
    (property "Reference" "DA2" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA3_5x5" (layer "F.Cu") (at 611.6 -329 0)
    (property "Reference" "DA3" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA4_5x5" (layer "F.Cu") (at 617.2 -329 0)
    (property "Reference" "DA4" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA5_5x5" (layer "F.Cu") (at 622.8 -329 0)
    (property "Reference" "DA5" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA6_5x5" (layer "F.Cu") (at 628.4 -329 0)
    (property "Reference" "DA6" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA7_5x5" (layer "F.Cu") (at 634 -329 0)
    (property "Reference" "DA7" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DA8_5x5" (layer "F.Cu") (at 639.6 -329 0)
    (property "Reference" "DA8" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB1_5x5" (layer "F.Cu") (at 600.4 329 0)
    (property "Reference" "DB1" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB2_5x5" (layer "F.Cu") (at 606 329 0)
    (property "Reference" "DB2" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB3_5x5" (layer "F.Cu") (at 611.6 329 0)
    (property "Reference" "DB3" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB4_5x5" (layer "F.Cu") (at 617.2 329 0)
    (property "Reference" "DB4" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB5_5x5" (layer "F.Cu") (at 622.8 329 0)
    (property "Reference" "DB5" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB6_5x5" (layer "F.Cu") (at 628.4 329 0)
    (property "Reference" "DB6" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB7_5x5" (layer "F.Cu") (at 634 329 0)
    (property "Reference" "DB7" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "DB8_5x5" (layer "F.Cu") (at 639.6 329 0)
    (property "Reference" "DB8" (at 0 0 0) (layer "F.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12))))
    (property "Value" "RGB LED with driver, 5050 (WS2812B class), under the call-light slot: green water OK, amber look, red call" (at 0 3.3 0) (layer "F.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.05) (type solid)) (fill none) (layer "F.CrtYd"))
    (fp_rect (start -2.5 -2.5) (end 2.5 2.5) (stroke (width 0.12) (type solid)) (fill none) (layer "F.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
  (footprint "BT1_77x21" (layer "B.Cu") (at 650 85 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 SMT holder for one 18650 cell (Samsung INR18650-35E)" (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 "BT2_77x21" (layer "B.Cu") (at 650 108 0)
    (property "Reference" "BT2" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E)" (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 "BT3_77x21" (layer "B.Cu") (at 650 131 0)
    (property "Reference" "BT3" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E)" (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 "BT4_77x21" (layer "B.Cu") (at 650 154 0)
    (property "Reference" "BT4" (at 0 0 0) (layer "B.SilkS") (effects (font (size 0.8 0.8) (thickness 0.12)) (justify mirror)))
    (property "Value" "Keystone 1042 SMT holder for one 18650 cell (Samsung INR18650-35E)" (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_1.6x0.8" (layer "B.Cu") (at 650 96.5 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" "NTC thermistor 10 k, 0603, between the first two cell holders, read by the charger so charging holds outside 0–45 °C" (at 0 1.2 0) (layer "B.Fab") hide (effects (font (size 0.5 0.5) (thickness 0.08))))
    (fp_rect (start -0.8 -0.4) (end 0.8 0.4) (stroke (width 0.05) (type solid)) (fill none) (layer "B.CrtYd"))
    (fp_rect (start -0.8 -0.4) (end 0.8 0.4) (stroke (width 0.12) (type solid)) (fill none) (layer "B.SilkS"))
    (attr board_only exclude_from_pos_files exclude_from_bom)
  )
)
