(kicad_sch (version 20211123) (generator eeschema)

  (uuid 3785b88e-f652-4024-afb0-be4c22cdaea8)

  (paper "A4")

  (title_block
    (title "icE1usb - E1 interface bias generation")
    (date "2022-09-05")
    (rev "1.1")
    (comment 1 "CERN-OHL-S")
    (comment 2 "(C) 2020-2022 Sylvain Munaut")
  )

  (lib_symbols
    (symbol "Device:C_Small" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "C" (id 0) (at 0.254 1.778 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "C_Small" (id 1) (at 0.254 -2.032 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "capacitor cap" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Unpolarized capacitor, small symbol" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "C_*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "C_Small_0_1"
        (polyline
          (pts
            (xy -1.524 -0.508)
            (xy 1.524 -0.508)
          )
          (stroke (width 0.3302) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy -1.524 0.508)
            (xy 1.524 0.508)
          )
          (stroke (width 0.3048) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "C_Small_1_1"
        (pin passive line (at 0 2.54 270) (length 2.032)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -2.54 90) (length 2.032)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "Device:R_Small" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "R" (id 0) (at 0.762 0.508 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "R_Small" (id 1) (at 0.762 -1.016 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "~" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "R resistor" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Resistor, small symbol" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_fp_filters" "R_*" (id 6) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "R_Small_0_1"
        (rectangle (start -0.762 1.778) (end 0.762 -1.778)
          (stroke (width 0.2032) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "R_Small_1_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.27 1.27))))
          (number "2" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:+3V3" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "+3V3" (id 1) (at 0 3.556 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"+3V3\"" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "+3V3_0_1"
        (polyline
          (pts
            (xy -0.762 1.27)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 0)
            (xy 0 2.54)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
        (polyline
          (pts
            (xy 0 2.54)
            (xy 0.762 1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "+3V3_1_1"
        (pin power_in line (at 0 0 90) (length 0) hide
          (name "+3V3" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "power:GND" (power) (pin_names (offset 0)) (in_bom yes) (on_board yes)
      (property "Reference" "#PWR" (id 0) (at 0 -6.35 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Value" "GND" (id 1) (at 0 -3.81 0)
        (effects (font (size 1.27 1.27)))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_keywords" "power-flag" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (property "ki_description" "Power symbol creates a global label with name \"GND\" , ground" (id 5) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "GND_0_1"
        (polyline
          (pts
            (xy 0 0)
            (xy 0 -1.27)
            (xy 1.27 -1.27)
            (xy 0 -2.54)
            (xy -1.27 -1.27)
            (xy 0 -1.27)
          )
          (stroke (width 0) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "GND_1_1"
        (pin power_in line (at 0 0 270) (length 0) hide
          (name "GND" (effects (font (size 1.27 1.27))))
          (number "1" (effects (font (size 1.27 1.27))))
        )
      )
    )
    (symbol "s47-passive:R_Pack04_Split" (pin_numbers hide) (pin_names (offset 0.254) hide) (in_bom yes) (on_board yes)
      (property "Reference" "RN" (id 0) (at 0.762 0.508 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Value" "s47-passive_R_Pack04_Split" (id 1) (at 0.762 -1.016 0)
        (effects (font (size 1.27 1.27)) (justify left))
      )
      (property "Footprint" "" (id 2) (at 0 0 0)
        (effects (font (size 1.524 1.524)))
      )
      (property "Datasheet" "" (id 3) (at 0 0 0)
        (effects (font (size 1.524 1.524)))
      )
      (property "ki_fp_filters" "Resistor_* R_*" (id 4) (at 0 0 0)
        (effects (font (size 1.27 1.27)) hide)
      )
      (symbol "R_Pack04_Split_0_1"
        (rectangle (start -0.762 1.778) (end 0.762 -1.778)
          (stroke (width 0.2032) (type default) (color 0 0 0 0))
          (fill (type none))
        )
      )
      (symbol "R_Pack04_Split_1_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "1" (effects (font (size 1.016 1.016))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "8" (effects (font (size 1.016 1.016))))
        )
      )
      (symbol "R_Pack04_Split_2_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "2" (effects (font (size 1.016 1.016))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "7" (effects (font (size 1.016 1.016))))
        )
      )
      (symbol "R_Pack04_Split_3_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "3" (effects (font (size 1.016 1.016))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "6" (effects (font (size 1.016 1.016))))
        )
      )
      (symbol "R_Pack04_Split_4_1"
        (pin passive line (at 0 2.54 270) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "4" (effects (font (size 1.016 1.016))))
        )
        (pin passive line (at 0 -2.54 90) (length 0.762)
          (name "~" (effects (font (size 1.016 1.016))))
          (number "5" (effects (font (size 1.016 1.016))))
        )
      )
    )
  )

  (junction (at 127 63.5) (diameter 0) (color 0 0 0 0)
    (uuid 086ab04d-4086-427c-992f-819b91a9021d)
  )
  (junction (at 134.62 63.5) (diameter 0) (color 0 0 0 0)
    (uuid 0d678ff1-21aa-4e6f-ae06-abf24406f3c8)
  )
  (junction (at 76.2 114.3) (diameter 0) (color 0 0 0 0)
    (uuid 42b7a68a-3837-4773-af68-a35059da48c3)
  )
  (junction (at 127 88.9) (diameter 0) (color 0 0 0 0)
    (uuid 43b7aab0-ec9b-4c58-bfa1-8dda8fccb53f)
  )
  (junction (at 71.12 63.5) (diameter 0) (color 0 0 0 0)
    (uuid 96815f61-f3f5-43c2-b68f-856577233f16)
  )
  (junction (at 76.2 88.9) (diameter 0) (color 0 0 0 0)
    (uuid b7340f23-0eaa-48ae-aea8-b5b53a0ae99a)
  )
  (junction (at 76.2 63.5) (diameter 0) (color 0 0 0 0)
    (uuid e8cb6cb3-dd2b-4328-8592-132e369ebb71)
  )

  (wire (pts (xy 76.2 88.9) (xy 76.2 91.44))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 0667208e-872f-444a-9ed0-78a1b5f392d2)
  )
  (wire (pts (xy 139.7 139.7) (xy 101.6 139.7))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 08d1dac8-0d6e-4029-9a06-c8863d7fbd51)
  )
  (wire (pts (xy 76.2 63.5) (xy 76.2 66.04))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 098afe52-27f0-4ec0-bf39-4eb766d2a851)
  )
  (wire (pts (xy 71.12 63.5) (xy 76.2 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 1558a593-7554-4709-a27f-f70400a2199d)
  )
  (wire (pts (xy 134.62 114.3) (xy 139.7 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 25b39db8-8576-4473-b331-b912323e85f4)
  )
  (wire (pts (xy 68.58 63.5) (xy 71.12 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 2ff15691-c9f8-4e08-a694-3230522780fc)
  )
  (wire (pts (xy 127 93.98) (xy 127 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3c5840eb-164e-426c-ab78-faa89624b9dc)
  )
  (wire (pts (xy 76.2 121.92) (xy 76.2 124.46))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 3f1d3b22-3ba1-4783-af8d-526bce7c36db)
  )
  (polyline (pts (xy 190.5 66.04) (xy 190.5 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 41fc1c23-edd4-45a5-8036-7f62b013770f)
  )

  (wire (pts (xy 68.58 114.3) (xy 76.2 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 449cc181-df4b-4d3b-93ef-0653c2171fe8)
  )
  (wire (pts (xy 116.84 63.5) (xy 101.6 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 51bdd1cb-8a01-4b1c-940a-3ff4dd1de87c)
  )
  (wire (pts (xy 50.8 88.9) (xy 63.5 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 524dc8d0-13b4-43fe-b274-8ac08bc4b894)
  )
  (wire (pts (xy 127 63.5) (xy 121.92 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 59246647-4e57-4b5f-9f1e-b0cc1fb90bb2)
  )
  (wire (pts (xy 127 88.9) (xy 139.7 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5968c877-7376-4e25-b8db-5e755d570d06)
  )
  (wire (pts (xy 127 68.58) (xy 127 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5aa0e472-160b-49ac-864f-0fa7cd9cf9b0)
  )
  (wire (pts (xy 76.2 71.12) (xy 76.2 73.66))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 5b29962f-685a-409c-915c-9c4a92ed442a)
  )
  (wire (pts (xy 116.84 68.58) (xy 101.6 68.58))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 6025c071-1487-4c03-a645-f67437519813)
  )
  (wire (pts (xy 121.92 88.9) (xy 127 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 67320774-1745-4c89-bec7-2213f7bb7ecc)
  )
  (wire (pts (xy 68.58 88.9) (xy 76.2 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7aad0cca-fb50-4041-9a10-5380cb0860ac)
  )
  (wire (pts (xy 71.12 63.5) (xy 71.12 66.04))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7cbc8c8d-fbc1-4902-ac93-6c241131aada)
  )
  (wire (pts (xy 60.96 60.96) (xy 60.96 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7cc510d9-2339-42a7-bb31-eff1142f0636)
  )
  (wire (pts (xy 76.2 96.52) (xy 76.2 99.06))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 7fd11519-eb9e-4413-8ca2-e43e38c699f6)
  )
  (wire (pts (xy 71.12 71.12) (xy 71.12 73.66))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 8e247c2e-b63e-4a70-8c32-64933e91ced0)
  )
  (wire (pts (xy 116.84 88.9) (xy 101.6 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 911557e5-adec-4d13-9794-a18b325eb4ea)
  )
  (wire (pts (xy 63.5 114.3) (xy 50.8 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 969d876f-dc87-40bf-9e96-03cbb9ea5e82)
  )
  (polyline (pts (xy 165.1 71.12) (xy 241.3 71.12))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9b4851fe-4e2f-4de0-a685-8e53004d88aa)
  )

  (wire (pts (xy 76.2 63.5) (xy 88.9 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid 9e5b0177-ea58-4f76-8b57-ff1c6e52d9df)
  )
  (wire (pts (xy 134.62 63.5) (xy 134.62 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a2c0fc07-9ed2-42e8-8fef-f02fce3412ee)
  )
  (wire (pts (xy 60.96 63.5) (xy 63.5 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid a60f8360-f38f-439d-b446-391101ae4282)
  )
  (wire (pts (xy 127 63.5) (xy 134.62 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid b79d8d99-88b5-4d84-a010-b6d768d67ec8)
  )
  (wire (pts (xy 121.92 93.98) (xy 127 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid cab0d0a9-e089-4f0b-8483-22b4e0addcae)
  )
  (wire (pts (xy 116.84 93.98) (xy 101.6 93.98))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid d40ed1bf-6a69-492a-acf3-f71f1c7a81f2)
  )
  (wire (pts (xy 76.2 88.9) (xy 88.9 88.9))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid dfa2c928-7d9a-4cd3-90db-112716296421)
  )
  (wire (pts (xy 134.62 63.5) (xy 139.7 63.5))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid e7c8f673-e523-47ce-91b8-92cf1c7605ce)
  )
  (wire (pts (xy 76.2 114.3) (xy 76.2 116.84))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid eec347af-8fb3-4b2d-8e93-6e7176516f57)
  )
  (wire (pts (xy 76.2 114.3) (xy 88.9 114.3))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid f9e60890-c09c-4221-9409-43a2ec4885e8)
  )
  (wire (pts (xy 121.92 68.58) (xy 127 68.58))
    (stroke (width 0) (type default) (color 0 0 0 0))
    (uuid ffde4898-4c0e-4c24-bd8c-aadcd7279172)
  )

  (text "B+" (at 218.44 68.58 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 00e39da0-4b3e-4884-a91e-86d729914953)
  )
  (text "Fixed" (at 218.44 83.82 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 0d32fbdb-2a37-4863-af10-fc85c1c6174f)
  )
  (text "Single Sensitivity\nDual Rail bias adjust" (at 167.64 76.2 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 18b6dcb6-5ab3-481b-b998-33e8cf6d281f)
  )
  (text "B-" (at 231.14 68.58 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 25ca9482-069d-43de-b77e-6f2ad77fa017)
  )
  (text "Bias 1" (at 231.14 73.66 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 539dec9e-2c45-4201-ab13-cbbbab8fc31b)
  )
  (text "A+" (at 193.04 68.58 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 6ceb10bf-4340-4309-8250-882c2b60a70e)
  )
  (text "Bias 0" (at 218.44 73.66 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 7308e13a-4809-4e8e-af65-9905819aa376)
  )
  (text "Bias 1" (at 231.14 83.82 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 75d5a810-84fd-42c4-a0b7-6b82d09662a2)
  )
  (text "Fixed" (at 193.04 83.82 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 7be13a36-eb8e-440f-aaac-2fd6665d9f61)
  )
  (text "Bias 0" (at 193.04 73.66 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 91c69423-de51-44fe-bc70-fec455b50634)
  )
  (text "A-" (at 205.74 68.58 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 946a171e-cd55-473d-bab9-8d2c7c34161c)
  )
  (text "Bias 0" (at 205.74 83.82 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid a072347a-1cac-4ead-8c61-cfe38fd40342)
  )
  (text "f_c = 16 Hz for single pole RC" (at 53.34 137.16 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid a6460cc6-b11c-4dff-a0ea-9de680e68ca8)
  )
  (text "Bias 1" (at 205.74 73.66 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid f58742f8-e57e-4646-a6f5-0463e0eceeb8)
  )
  (text "Dual Sensitivity\nSingle Rail bias adjust" (at 167.64 86.36 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid fa16f237-4e21-4b18-8c54-f7de4e62bbb6)
  )

  (label "bias_1" (at 101.6 93.98 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 054f8e07-0141-451f-a3c4-ea786b83b680)
  )
  (label "bias_fixed" (at 101.6 63.5 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 1cd85cce-d94a-4a92-8af2-23d3a2b66793)
  )
  (label "bias_1" (at 88.9 114.3 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid 3d19e22b-2666-4e7d-825d-37a04ed07fa1)
  )
  (label "bias_1" (at 101.6 139.7 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid 40962e92-90b6-487d-b0dc-0a6c42b5ebc2)
  )
  (label "bias_0" (at 101.6 68.58 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid a26bc030-7d8a-4b19-aa84-9206cc0de2b0)
  )
  (label "bias_0" (at 88.9 88.9 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid c374668c-56af-42dd-a650-35352e96de63)
  )
  (label "bias_0" (at 101.6 88.9 0)
    (effects (font (size 1.27 1.27)) (justify left bottom))
    (uuid d66c8b0e-b6b3-43ea-8c6d-9724edcc57d6)
  )
  (label "bias_fixed" (at 88.9 63.5 180)
    (effects (font (size 1.27 1.27)) (justify right bottom))
    (uuid f630bdcd-b048-45d2-91a0-928349b89dad)
  )

  (hierarchical_label "bias0" (shape input) (at 50.8 88.9 180)
    (effects (font (size 1.27 1.27)) (justify right))
    (uuid 0fffb828-f291-41d3-a83c-4eaa3df13f3a)
  )
  (hierarchical_label "bias_b_p" (shape output) (at 139.7 114.3 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 1bb16fed-1537-47fa-90f6-8dc136da5d16)
  )
  (hierarchical_label "bias_a_n" (shape output) (at 139.7 88.9 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 45245258-c97a-4586-bc43-2154c85c0ef6)
  )
  (hierarchical_label "bias_a_p" (shape output) (at 139.7 63.5 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid 72733f59-fc61-4ff2-8fe5-0440be71758a)
  )
  (hierarchical_label "bias_b_n" (shape output) (at 139.7 139.7 0)
    (effects (font (size 1.27 1.27)) (justify left))
    (uuid dd01ca49-c8a2-4580-af9a-2e9bce9769bc)
  )
  (hierarchical_label "bias1" (shape input) (at 50.8 114.3 180)
    (effects (font (size 1.27 1.27)) (justify right))
    (uuid f8e927af-4836-4b0f-8a57-dbca5a18a442)
  )

  (symbol (lib_id "Device:R_Small") (at 119.38 63.5 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4d7d0d)
    (property "Reference" "R20" (id 0) (at 119.38 58.5216 90))
    (property "Value" "0R" (id 1) (at 119.38 60.833 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 119.38 63.5 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 119.38 63.5 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 39dd64e4-af0d-4c99-bae8-be8cc86b1cb4))
    (pin "2" (uuid 8520d116-3cd8-47fc-8007-e4ded6b6d0ac))
  )

  (symbol (lib_id "Device:C_Small") (at 76.2 93.98 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4d81da)
    (property "Reference" "C27" (id 0) (at 78.5368 92.8116 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "1u" (id 1) (at 78.5368 95.123 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 76.2 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 76.2 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 33bbbb76-f346-4dc9-93fb-99322940ea78))
    (pin "2" (uuid d2bc1ac5-6f08-47dc-abc6-8919b8ec5fba))
  )

  (symbol (lib_id "Device:C_Small") (at 76.2 119.38 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4d8409)
    (property "Reference" "C28" (id 0) (at 78.5368 118.2116 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "1u" (id 1) (at 78.5368 120.523 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 76.2 119.38 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 76.2 119.38 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid 94857e64-d8d9-4fa5-b0e6-9bce77f39a2f))
    (pin "2" (uuid f0cd2f6a-13e3-4422-92eb-7464963ad5dd))
  )

  (symbol (lib_id "power:GND") (at 76.2 99.06 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4d8911)
    (property "Reference" "#PWR057" (id 0) (at 76.2 105.41 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 76.327 103.4542 0))
    (property "Footprint" "" (id 2) (at 76.2 99.06 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 76.2 99.06 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f36fb098-4af1-4fc6-b63a-daf696aaba47))
  )

  (symbol (lib_id "power:GND") (at 76.2 124.46 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4d8c18)
    (property "Reference" "#PWR058" (id 0) (at 76.2 130.81 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 76.327 128.8542 0))
    (property "Footprint" "" (id 2) (at 76.2 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 76.2 124.46 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid d51356de-7a08-4f61-8d59-ec2de526438e))
  )

  (symbol (lib_id "Device:C_Small") (at 76.2 68.58 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4da17f)
    (property "Reference" "C26" (id 0) (at 78.5368 67.4116 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Value" "1u" (id 1) (at 78.5368 69.723 0)
      (effects (font (size 1.27 1.27)) (justify left))
    )
    (property "Footprint" "Capacitor_SMD:C_0603_1608Metric" (id 2) (at 76.2 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 76.2 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f545883e-1c6b-4d7c-b4c7-981e804da4c4))
    (pin "2" (uuid 2a6a4e4e-7b7a-48cf-b5e3-77a3f8724515))
  )

  (symbol (lib_id "s47-passive:R_Pack04_Split") (at 66.04 63.5 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dcadf)
    (property "Reference" "RN7" (id 0) (at 66.04 58.5216 90))
    (property "Value" "10k" (id 1) (at 66.04 60.833 90))
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 66.04 63.5 0)
      (effects (font (size 1.524 1.524)) hide)
    )
    (property "Datasheet" "" (id 3) (at 66.04 63.5 0)
      (effects (font (size 1.524 1.524)))
    )
    (pin "1" (uuid 35f3c689-1acd-4f9d-8a20-40aa0367785d))
    (pin "8" (uuid 077d5522-c76b-482a-bb37-34c61cd35bac))
    (pin "2" (uuid c1da01fc-5cc9-4cb2-b5a2-a67a6ddb557d))
    (pin "7" (uuid 2b5f6a0c-ec41-452c-924f-5206c6aa30fa))
    (pin "3" (uuid e296677e-d90e-4ef5-a94e-86904ac83217))
    (pin "6" (uuid 7f0ec413-2db8-488d-bdfb-55d8b8baedd1))
    (pin "4" (uuid 4f28254c-e64c-4ea0-b11b-08b904f13c0f))
    (pin "5" (uuid 7d377868-7d84-45e1-bc79-5bd0516e32c7))
  )

  (symbol (lib_id "s47-passive:R_Pack04_Split") (at 71.12 68.58 0) (unit 2)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dcf84)
    (property "Reference" "RN7" (id 0) (at 69.6214 67.4116 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Value" "10k" (id 1) (at 69.6214 69.723 0)
      (effects (font (size 1.27 1.27)) (justify right))
    )
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 71.12 68.58 0)
      (effects (font (size 1.524 1.524)) hide)
    )
    (property "Datasheet" "" (id 3) (at 71.12 68.58 0)
      (effects (font (size 1.524 1.524)))
    )
    (pin "1" (uuid a425ffde-2a3b-4d8a-81bb-3c199658af2b))
    (pin "8" (uuid 2d5313e5-cae9-4d1d-8758-b7a2cf49a20a))
    (pin "2" (uuid e4fcdd73-1b73-41d5-86e8-fa708452c6d3))
    (pin "7" (uuid 3a3f9037-f8ab-4c3f-ac7e-8096ebf1654a))
    (pin "3" (uuid bab0c4de-04fc-4c63-9309-84d5dff6b46b))
    (pin "6" (uuid befe21eb-3c19-43c8-8b58-44fb4e3d5372))
    (pin "4" (uuid d3d1c555-800b-423c-a69d-f90c9c349a9e))
    (pin "5" (uuid a1ea06fd-5c8a-4ae4-ac01-03845ee28612))
  )

  (symbol (lib_id "s47-passive:R_Pack04_Split") (at 66.04 114.3 270) (unit 4)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dd23c)
    (property "Reference" "RN7" (id 0) (at 66.04 109.3216 90))
    (property "Value" "10k" (id 1) (at 66.04 111.633 90))
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 66.04 114.3 0)
      (effects (font (size 1.524 1.524)) hide)
    )
    (property "Datasheet" "" (id 3) (at 66.04 114.3 0)
      (effects (font (size 1.524 1.524)))
    )
    (pin "1" (uuid 3a3c70de-d6ff-43fe-85c3-16c7baef6a8a))
    (pin "8" (uuid 665e0186-1e82-4412-93fd-cb594d016a6b))
    (pin "2" (uuid b7e97f03-f5da-4978-adcd-8e4f8d4bfe23))
    (pin "7" (uuid 26a5f2fa-002a-4f24-8116-b98575eeb40c))
    (pin "3" (uuid 847e9d41-32cf-4b9b-b21b-85937766ecf2))
    (pin "6" (uuid 03d746fa-73ce-4846-b873-6c70884e58a8))
    (pin "4" (uuid 390741a1-056f-4471-96af-67e5a38ee177))
    (pin "5" (uuid 3df76baa-4dfb-41a2-92fb-21917056c777))
  )

  (symbol (lib_id "s47-passive:R_Pack04_Split") (at 66.04 88.9 270) (unit 3)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dd9e1)
    (property "Reference" "RN7" (id 0) (at 66.04 83.9216 90))
    (property "Value" "10k" (id 1) (at 66.04 86.233 90))
    (property "Footprint" "Resistor_SMD:R_Array_Convex_4x0603" (id 2) (at 66.04 88.9 0)
      (effects (font (size 1.524 1.524)) hide)
    )
    (property "Datasheet" "" (id 3) (at 66.04 88.9 0)
      (effects (font (size 1.524 1.524)))
    )
    (pin "1" (uuid 8a7177f1-2650-4b33-b676-f0748f18db4e))
    (pin "8" (uuid 46250e08-d0a4-4f5f-9be2-36b79354a540))
    (pin "2" (uuid e3dbaf53-c316-4e3a-a69f-a191d28d56c7))
    (pin "7" (uuid 9c79276a-64e1-4dd3-91cd-65bef364111e))
    (pin "3" (uuid 20e5627d-98f3-42e2-b022-a05b56e0f484))
    (pin "6" (uuid 292ad88c-c609-4a34-b081-e3c201e5b969))
    (pin "4" (uuid 073d4ba8-3ca4-44a8-bfa7-bfaae23298d0))
    (pin "5" (uuid b26dabd8-0d10-4720-aac2-589f724ea8b3))
  )

  (symbol (lib_id "power:GND") (at 76.2 73.66 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dfc15)
    (property "Reference" "#PWR056" (id 0) (at 76.2 80.01 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 76.327 78.0542 0))
    (property "Footprint" "" (id 2) (at 76.2 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 76.2 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid f729dd27-4e07-452e-9fff-b04cfa035a63))
  )

  (symbol (lib_id "power:GND") (at 71.12 73.66 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4dfee3)
    (property "Reference" "#PWR055" (id 0) (at 71.12 80.01 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "GND" (id 1) (at 71.247 78.0542 0))
    (property "Footprint" "" (id 2) (at 71.12 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 71.12 73.66 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid a201db9e-baf7-4871-be5a-ff795414340c))
  )

  (symbol (lib_id "power:+3V3") (at 60.96 60.96 0) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4e01fd)
    (property "Reference" "#PWR054" (id 0) (at 60.96 64.77 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Value" "+3V3" (id 1) (at 61.341 56.5658 0))
    (property "Footprint" "" (id 2) (at 60.96 60.96 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "" (id 3) (at 60.96 60.96 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid fcbbeefe-3039-4d5e-b86c-9c72c7ae9bfc))
  )

  (symbol (lib_id "Device:R_Small") (at 119.38 68.58 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f4e23e9)
    (property "Reference" "R21" (id 0) (at 119.38 71.2216 90))
    (property "Value" "0R" (id 1) (at 119.38 73.533 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 119.38 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 119.38 68.58 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "DNP" "DNP" (id 4) (at 119.38 75.8444 90))
    (pin "1" (uuid cbe5ee8f-62c2-4029-9056-b2f9e38d44f7))
    (pin "2" (uuid 1b39aee1-14bb-4f57-949c-af5946eea388))
  )

  (symbol (lib_id "Device:R_Small") (at 119.38 88.9 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f50bc9b)
    (property "Reference" "R22" (id 0) (at 119.38 83.9216 90))
    (property "Value" "0R" (id 1) (at 119.38 86.233 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 119.38 88.9 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 119.38 88.9 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (pin "1" (uuid e5d566b5-604a-4348-bb23-43d85bcaf394))
    (pin "2" (uuid 3f337261-bd0b-4a3c-af5d-41e4f20b8d2b))
  )

  (symbol (lib_id "Device:R_Small") (at 119.38 93.98 270) (unit 1)
    (in_bom yes) (on_board yes)
    (uuid 00000000-0000-0000-0000-00005f50bf56)
    (property "Reference" "R23" (id 0) (at 119.38 96.6216 90))
    (property "Value" "0R" (id 1) (at 119.38 98.933 90))
    (property "Footprint" "Resistor_SMD:R_0603_1608Metric" (id 2) (at 119.38 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "Datasheet" "~" (id 3) (at 119.38 93.98 0)
      (effects (font (size 1.27 1.27)) hide)
    )
    (property "DNP" "DNP" (id 4) (at 119.38 101.2444 90))
    (pin "1" (uuid 5c99a6ab-e247-47b9-aa50-cb98a25ea96f))
    (pin "2" (uuid a6891bb5-a357-4c05-8e0e-ce8ff96bc5b7))
  )
)
