abse/smart-ring-flex
A tscircuit package created by abse.
- Version
- 0.0.24
- License
- unset
- Stars
- 0
src/schematic-layout.json
{
"components": {
"U1": {
"sheet": "Radio",
"x": -8,
"y": 0,
"noteX": -10.4,
"noteY": -4.5,
"lines": [
"U1 - BLE microcontroller; reads",
"sensors and controls charging."
],
"description": "BLE microcontroller; reads sensors and controls charging.",
"section": "RADIO_MCU"
},
"C16": {
"sheet": "Radio",
"x": 4,
"y": 7,
"noteX": 1.6,
"noteY": 4.7,
"lines": [
"C16 - Crystal load capacitor:",
"sets clock loading."
],
"description": "Crystal load capacitor: sets clock loading.",
"section": "RADIO_CLOCK"
},
"C17": {
"sheet": "Radio",
"x": 11,
"y": 7,
"noteX": 8.6,
"noteY": 4.7,
"lines": [
"C17 - Crystal load capacitor:",
"sets clock loading."
],
"description": "Crystal load capacitor: sets clock loading.",
"section": "RADIO_CLOCK"
},
"Y1": {
"sheet": "Radio",
"x": 4,
"y": 2,
"noteX": 6,
"noteY": 1.6,
"lines": [
"Y1 - 32 MHz crystal: accurate",
"clock for BLE radio."
],
"description": "32 MHz crystal: accurate clock for BLE radio.",
"section": "RADIO_CLOCK"
},
"R15": {
"sheet": "Radio",
"x": -11,
"y": 6,
"noteX": -9,
"noteY": 6,
"lines": [
"R15 - RESET pull-up: holds the",
"MCU out of reset."
],
"description": "RESET pull-up: holds the MCU out of reset.",
"section": "RADIO_RESET"
},
"L1": {
"sheet": "Radio",
"x": 4,
"y": -3,
"noteX": -0.1,
"noteY": -5.3,
"lines": [
"L1 - RF matching inductor:",
"matches MCU to antenna."
],
"description": "RF matching inductor: matches MCU to antenna.",
"section": "RADIO_RF"
},
"R19": {
"sheet": "Radio",
"x": 11,
"y": -3,
"noteX": 8.6,
"noteY": -5.3,
"lines": [
"R19 - Zero-ohm link: allows",
"antenna matching changes."
],
"description": "Zero-ohm link: allows antenna matching changes.",
"section": "RADIO_RF"
},
"C18": {
"sheet": "Radio",
"x": 4,
"y": -7,
"noteX": 1.6,
"noteY": -9.3,
"lines": [
"C18 - RF shunt capacitor: tunes",
"antenna matching."
],
"description": "RF shunt capacitor: tunes antenna matching.",
"section": "RADIO_RF"
},
"ANT1": {
"sheet": "Radio",
"x": 11,
"y": -7,
"noteX": 8.6,
"noteY": -9.3,
"lines": [
"ANT1 - 2.4 GHz antenna: sends",
"and receives BLE RF."
],
"description": "2.4 GHz antenna: sends and receives BLE RF.",
"section": "RADIO_RF"
},
"C9": {
"sheet": "RadioSupply",
"x": -6,
"y": 7,
"noteX": -3.3,
"noteY": 7.05,
"lines": [
"C9 - DEC1 bypass: stabilizes",
"internal MCU supply."
],
"description": "DEC1 bypass: stabilizes internal MCU supply.",
"section": "BLOCK_RadioSupply"
},
"C10": {
"sheet": "RadioSupply",
"x": -6,
"y": 4,
"noteX": -3.3,
"noteY": 4.05,
"lines": [
"C10 - DEC3 bypass: stabilizes",
"internal MCU supply."
],
"description": "DEC3 bypass: stabilizes internal MCU supply.",
"section": "BLOCK_RadioSupply"
},
"C11": {
"sheet": "RadioSupply",
"x": -6,
"y": 1,
"noteX": -3.3,
"noteY": 1.05,
"lines": [
"C11 - DEC4 bypass: stabilizes",
"internal MCU supply."
],
"description": "DEC4 bypass: stabilizes internal MCU supply.",
"section": "BLOCK_RadioSupply"
},
"C12": {
"sheet": "RadioSupply",
"x": -6.45,
"y": -2,
"noteX": -3.3,
"noteY": -1.95,
"lines": [
"C12 - MCU supply bypass: shunts",
"fast supply noise."
],
"description": "MCU supply bypass: shunts fast supply noise.",
"section": "BLOCK_RadioSupply"
},
"C13": {
"sheet": "RadioSupply",
"x": -6.15,
"y": -3.5,
"noteX": -3.3,
"noteY": -3.45,
"lines": [
"C13 - MCU supply bypass: shunts",
"fast supply noise."
],
"description": "MCU supply bypass: shunts fast supply noise.",
"section": "BLOCK_RadioSupply"
},
"C14": {
"sheet": "RadioSupply",
"x": -5.85,
"y": -5,
"noteX": -3.3,
"noteY": -4.95,
"lines": [
"C14 - MCU supply bypass: shunts",
"fast supply noise."
],
"description": "MCU supply bypass: shunts fast supply noise.",
"section": "BLOCK_RadioSupply"
},
"C15": {
"sheet": "RadioSupply",
"x": -5.55,
"y": -6.5,
"noteX": -3.3,
"noteY": -6.45,
"lines": [
"C15 - MCU bulk bypass: supports",
"supply transients."
],
"description": "MCU bulk bypass: supports supply transients.",
"section": "BLOCK_RadioSupply"
},
"TP3": {
"sheet": "RingDebug",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"TP3 - SWD data pad: programs and",
"debugs firmware."
],
"description": "SWD data pad: programs and debugs firmware.",
"section": "BLOCK_RingDebug"
},
"TP4": {
"sheet": "RingDebug",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"TP4 - SWD clock pad: clocks",
"programming/debug data."
],
"description": "SWD clock pad: clocks programming/debug data.",
"section": "BLOCK_RingDebug"
},
"TP5": {
"sheet": "RingDebug",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"TP5 - Reset pad: resets MCU",
"during programming."
],
"description": "Reset pad: resets MCU during programming.",
"section": "BLOCK_RingDebug"
},
"TP6": {
"sheet": "RingDebug",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"TP6 - 1.8 V reference pad: sets",
"debugger I/O level."
],
"description": "1.8 V reference pad: sets debugger I/O level.",
"section": "BLOCK_RingDebug"
},
"TP7": {
"sheet": "RingDebug",
"x": -0.5,
"y": -3,
"noteX": -2.9,
"noteY": -5.3,
"lines": [
"TP7 - Debug ground pad: debugger",
"return connection."
],
"description": "Debug ground pad: debugger return connection.",
"section": "BLOCK_RingDebug"
},
"U2": {
"sheet": "Charging",
"x": -10,
"y": 6,
"noteX": -12.4,
"noteY": 3.7,
"lines": [
"U2 - Programmable cell charger",
"and system power-path",
"controller."
],
"description": "Programmable cell charger and system power-path controller.",
"section": "BLOCK_Charging"
},
"C1": {
"sheet": "Charging",
"x": -6,
"y": 6,
"noteX": -8.4,
"noteY": 3.7,
"lines": [
"C1 - Input bypass: smooths",
"charging-dock power."
],
"description": "Input bypass: smooths charging-dock power.",
"section": "BLOCK_Charging"
},
"C2": {
"sheet": "Charging",
"x": 9,
"y": 6,
"noteX": 6.6,
"noteY": 3.7,
"lines": [
"C2 - System reservoir: smooths",
"the VSYS supply."
],
"description": "System reservoir: smooths the VSYS supply.",
"section": "BLOCK_Charging"
},
"C3": {
"sheet": "Charging",
"x": -10,
"y": 0,
"noteX": -12.4,
"noteY": -2.3,
"lines": [
"C3 - Battery bypass: stabilizes",
"charger BAT node."
],
"description": "Battery bypass: stabilizes charger BAT node.",
"section": "BLOCK_Charging"
},
"R2": {
"sheet": "Charging",
"x": -0.5,
"y": 0,
"noteX": -5,
"noteY": -2.3,
"lines": [
"R2 - Thermistor shunt: adds",
"margin below 45 C charge limit."
],
"description": "Thermistor shunt: adds margin below 45 C charge limit.",
"section": "BLOCK_Charging"
},
"TP1": {
"sheet": "ChargingContacts",
"x": 0,
"y": 2,
"noteX": -2.4,
"noteY": -0.2999999999999998,
"lines": [
"TP1 - 5 V test pad; checks ring",
"charging input power."
],
"description": "5 V test pad; checks ring charging input power.",
"section": "BLOCK_ChargingContacts"
},
"TP2": {
"sheet": "ChargingContacts",
"x": 7,
"y": 2,
"noteX": 4.6,
"noteY": -0.2999999999999998,
"lines": [
"TP2 - Ground test pad; provides",
"ring power measurement return."
],
"description": "Ground test pad; provides ring power measurement return.",
"section": "BLOCK_ChargingContacts"
},
"J401": {
"sheet": "ChargingContacts",
"x": -7,
"y": 2,
"noteX": -9.4,
"noteY": -0.2999999999999998,
"lines": [
"J401 - JST XSR socket; connects",
"exterior charging targets to",
"ring."
],
"description": "JST XSR socket; connects exterior charging targets to ring.",
"section": "BLOCK_ChargingContacts"
},
"Q10": {
"sheet": "ChargeSafety",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"Q10 - Transistor level shifter;",
"keeps charging off until",
"enabled."
],
"description": "Transistor level shifter; keeps charging off until enabled.",
"section": "BLOCK_ChargeSafety"
},
"R23": {
"sheet": "ChargeSafety",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"R23 - Base-bias resistor; limits",
"charge-enable control current."
],
"description": "Base-bias resistor; limits charge-enable control current.",
"section": "BLOCK_ChargeSafety"
},
"R24": {
"sheet": "ChargeSafety",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"R24 - Pull-up; keeps charging",
"disabled when MCU power is",
"absent."
],
"description": "Pull-up; keeps charging disabled when MCU power is absent.",
"section": "BLOCK_ChargeSafety"
},
"R25": {
"sheet": "ChargeSafety",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"R25 - GPIO pull-up; keeps",
"charging disabled during reset."
],
"description": "GPIO pull-up; keeps charging disabled during reset.",
"section": "BLOCK_ChargeSafety"
},
"U6": {
"sheet": "Protection",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"U6 - Cell protection: detects",
"voltage/current faults."
],
"description": "Cell protection: detects voltage/current faults.",
"section": "BLOCK_Protection"
},
"U9": {
"sheet": "Protection",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"U9 - Dual MOSFET: disconnects",
"the cell on a fault."
],
"description": "Dual MOSFET: disconnects the cell on a fault.",
"section": "BLOCK_Protection"
},
"R6": {
"sheet": "Protection",
"x": 9,
"y": 4,
"noteX": 11,
"noteY": 4,
"lines": [
"R6 - Filters the battery",
"protector voltage input."
],
"description": "Filters the battery protector voltage input.",
"section": "BLOCK_Protection"
},
"R7": {
"sheet": "Protection",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"R7 - Limits current into",
"protector sense input."
],
"description": "Limits current into protector sense input.",
"section": "BLOCK_Protection"
},
"R8": {
"sheet": "Protection",
"x": -0.5,
"y": -3,
"noteX": -2.9,
"noteY": -5.3,
"lines": [
"R8 - Sense resistance: lowers",
"overcurrent trip level."
],
"description": "Sense resistance: lowers overcurrent trip level.",
"section": "BLOCK_Protection"
},
"C5": {
"sheet": "Protection",
"x": 9,
"y": -3,
"noteX": 6.6,
"noteY": -5.3,
"lines": [
"C5 - Protector bypass: filters",
"measured cell voltage."
],
"description": "Protector bypass: filters measured cell voltage.",
"section": "BLOCK_Protection"
},
"U7": {
"sheet": "Regulators",
"x": -4,
"y": 1,
"noteX": -6.4,
"noteY": -1.2999999999999998,
"lines": [
"U7 - Low-power regulator:",
"supplies 1.8 V logic."
],
"description": "Low-power regulator: supplies 1.8 V logic.",
"section": "BLOCK_Regulators"
},
"C6": {
"sheet": "Regulators",
"x": -7,
"y": 5,
"noteX": -9.4,
"noteY": 2.7,
"lines": [
"C6 - LDO input bypass: smooths",
"system supply."
],
"description": "LDO input bypass: smooths system supply.",
"section": "BLOCK_Regulators"
},
"C7": {
"sheet": "Regulators",
"x": 0,
"y": 1,
"noteX": -2.4,
"noteY": -1.2999999999999998,
"lines": [
"C7 - LDO output bypass:",
"stabilizes 1.8 V supply."
],
"description": "LDO output bypass: stabilizes 1.8 V supply.",
"section": "BLOCK_Regulators"
},
"R17": {
"sheet": "BatterySense",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"R17 - Upper divider resistor:",
"scales battery voltage."
],
"description": "Upper divider resistor: scales battery voltage.",
"section": "BLOCK_BatterySense"
},
"R18": {
"sheet": "BatterySense",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"R18 - Lower divider resistor:",
"scales battery voltage."
],
"description": "Lower divider resistor: scales battery voltage.",
"section": "BLOCK_BatterySense"
},
"C8": {
"sheet": "BatterySense",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"C8 - ADC filter: smooths",
"battery-voltage reading."
],
"description": "ADC filter: smooths battery-voltage reading.",
"section": "BLOCK_BatterySense"
},
"R20": {
"sheet": "BatterySense",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"R20 - Switches bias for the",
"separate cell-temperature probe."
],
"description": "Switches bias for the separate cell-temperature probe.",
"section": "BLOCK_BatterySense"
},
"U3": {
"sheet": "Optical",
"x": -10,
"y": 6,
"noteX": -12.4,
"noteY": 3.7,
"lines": [
"U3 - Optical AFE; drives LEDs and",
"samples two detectors sequentially."
],
"description": "Optical AFE; samples two photodiodes sequentially.",
"section": "BLOCK_Optical"
},
"LED1": {
"sheet": "Optical",
"x": -0.5,
"y": 6,
"noteX": -2.9,
"noteY": 3.7,
"lines": [
"LED1 - Green, red and IR",
"emitters: illuminate finger",
"tissue."
],
"description": "Green, red and IR emitters: illuminate finger tissue.",
"section": "BLOCK_Optical"
},
"PD1": {
"sheet": "Optical",
"x": 9,
"y": 6,
"noteX": 6.6,
"noteY": 3.7,
"lines": [
"PD1 - Photodiode 1: first",
"spatial optical measurement",
"path."
],
"description": "Photodiode 1: first spatial optical measurement path.",
"section": "BLOCK_Optical"
},
"PD2": {
"sheet": "Optical",
"x": -10,
"y": 0,
"noteX": -12.4,
"noteY": -2.3,
"lines": [
"PD2 - Photodiode 2: second",
"spatial optical measurement",
"path."
],
"description": "Photodiode 2: second spatial optical measurement path.",
"section": "BLOCK_Optical"
},
"R22": {
"sheet": "Optical",
"x": -0.5,
"y": 0,
"noteX": -2.9,
"noteY": -2.3,
"lines": [
"R22 - Pull-up for the dedicated",
"optical I2C data."
],
"description": "Pull-up for the dedicated optical I2C data.",
"section": "BLOCK_Optical"
},
"C21": {
"sheet": "Optical",
"x": 8.85,
"y": 0,
"noteX": 11.1,
"noteY": 0,
"lines": [
"C21 - Optical logic bypass:",
"filters 1.8 V noise."
],
"description": "Optical logic bypass: filters 1.8 V noise.",
"section": "BLOCK_Optical"
},
"C22": {
"sheet": "Optical",
"x": -10,
"y": -6,
"noteX": -12.4,
"noteY": -8.3,
"lines": [
"C22 - Reference bypass:",
"stabilizes optical ADC",
"reference."
],
"description": "Reference bypass: stabilizes optical ADC reference.",
"section": "BLOCK_Optical"
},
"C23": {
"sheet": "Optical",
"x": 3,
"y": 6,
"noteX": 0.6000000000000001,
"noteY": 3.7,
"lines": [
"C23 - 3.3V LED reservoir",
"supplies optical pulse charge."
],
"description": "LED reservoir: supplies optical LED pulses.",
"section": "BLOCK_Optical"
},
"C27": {
"sheet": "Optical",
"x": 9.15,
"y": -1.5,
"noteX": 11.1,
"noteY": -1.5,
"lines": [
"C27 - Analog supply reservoir",
"for optical AFE."
],
"description": "Analog supply reservoir for optical AFE.",
"section": "BLOCK_Optical"
},
"U4": {
"sheet": "Sensors",
"x": -10,
"y": 6,
"noteX": -12.4,
"noteY": 3.7,
"lines": [
"U4 - Temperature sensor:",
"measures local skin-side heat."
],
"description": "Temperature sensor: measures local skin-side heat.",
"section": "BLOCK_Sensors"
},
"U5": {
"sheet": "Sensors",
"x": -0.5,
"y": 5.7,
"noteX": -2.9,
"noteY": 3.4,
"lines": [
"U5: LIS2DW12 movement sensor",
"MCU steps; INT2 FIFO/activity"
],
"description": "Accelerometer: measures movement and activity.",
"section": "BLOCK_Sensors"
},
"R12": {
"sheet": "Sensors",
"x": 3,
"y": 6,
"noteX": -1,
"noteY": 8,
"lines": [
"R12 - SCL pull-up: holds I2C",
"clock high when idle."
],
"description": "SCL pull-up: holds I2C clock high when idle.",
"section": "BLOCK_Sensors"
},
"R13": {
"sheet": "Sensors",
"x": 3,
"y": 0,
"noteX": 0.6000000000000001,
"noteY": -2.3,
"lines": [
"R13 - SDA pull-up: holds I2C",
"data high when idle."
],
"description": "SDA pull-up: holds I2C data high when idle.",
"section": "BLOCK_Sensors"
},
"C24": {
"sheet": "Sensors",
"x": 5.7,
"y": 6,
"noteX": 8.3,
"noteY": 6.05,
"lines": [
"C24 - Sensor rail bypass:",
"filters the shared1.8V supply."
],
"description": "Filters the shared1.8V sensor supply.",
"section": "BLOCK_Sensors"
},
"C25": {
"sheet": "Sensors",
"x": 6,
"y": 4.5,
"noteX": 8.3,
"noteY": 4.55,
"lines": [
"C25 - Sensor rail bypass:",
"filters the shared1.8V supply."
],
"description": "Filters the shared1.8V sensor supply.",
"section": "BLOCK_Sensors"
},
"C26": {
"sheet": "Sensors",
"x": 6.3,
"y": 3,
"noteX": 8.3,
"noteY": 3.05,
"lines": [
"C26 - Sensor rail bypass:",
"filters the shared1.8V supply."
],
"description": "Filters the shared1.8V sensor supply.",
"section": "BLOCK_Sensors"
},
"JPOS": {
"sheet": "Battery",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"JPOS - Gold positive battery",
"contact; feeds the cell power",
"input."
],
"description": "Gold positive battery contact; feeds the cell power input.",
"section": "BLOCK_Battery"
},
"U_NEG": {
"sheet": "Battery",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"U_NEG - Gold negative battery",
"contact; provides the cell",
"return."
],
"description": "Gold negative battery contact; provides the cell return.",
"section": "BLOCK_Battery"
},
"U_TH1": {
"sheet": "Battery",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"U_TH1 - Cell thermistor;",
"provides hardware charge-",
"temperature sensing."
],
"description": "Cell thermistor; provides hardware charge-temperature sensing.",
"section": "BLOCK_Battery"
},
"U_TH2": {
"sheet": "Battery",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"U_TH2 - Independent cell",
"thermistor; supplies firmware",
"thermal guard."
],
"description": "Independent cell thermistor; supplies firmware thermal guard.",
"section": "BLOCK_Battery"
},
"TP_RXA": {
"sheet": "CoilStudy",
"x": -10,
"y": 2,
"noteX": -12.4,
"noteY": -0.2999999999999998,
"lines": [
"TP_RXA - Printed-coil test",
"terminal A; continuity",
"measurement only."
],
"description": "Printed-coil test terminal A; continuity measurement only.",
"section": "BLOCK_CoilStudy"
},
"TP_RXB": {
"sheet": "CoilStudy",
"x": -0.5,
"y": 2,
"noteX": -2.9,
"noteY": -0.2999999999999998,
"lines": [
"TP_RXB - Printed-coil test",
"terminal B; no charging receiver",
"installed."
],
"description": "Printed-coil test terminal B; no charging receiver installed.",
"section": "BLOCK_CoilStudy"
},
"J101": {
"sheet": "DockPower",
"x": -9.92,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"J101 - USB-C socket; accepts",
"dock power and programmer USB",
"data."
],
"description": "USB-C socket; accepts dock power and programmer USB data.",
"section": "BLOCK_DockPower"
},
"U102": {
"sheet": "DockPower",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"U102 - 3.3 V regulator; powers",
"the USB programmer electronics."
],
"description": "3.3 V regulator; powers the USB programmer electronics.",
"section": "BLOCK_DockPower"
},
"C101": {
"sheet": "DockPower",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"C101 - Input bypass capacitor;",
"smooths USB 5 V power."
],
"description": "Input bypass capacitor; smooths USB 5 V power.",
"section": "BLOCK_DockPower"
},
"C102": {
"sheet": "DockPower",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"C102 - Output bypass capacitor;",
"stabilizes programmer 3.3 V."
],
"description": "Output bypass capacitor; stabilizes programmer 3.3 V.",
"section": "BLOCK_DockPower"
},
"R101": {
"sheet": "DockPower",
"x": -13.08,
"y": 3,
"noteX": -15,
"noteY": 0.7,
"lines": [
"R101 - USB-C CC1 pull-down;",
"requests standard USB sink",
"power."
],
"description": "USB-C CC1 pull-down; requests standard USB sink power.",
"section": "BLOCK_DockPower"
},
"R102": {
"sheet": "DockPower",
"x": -6.5,
"y": 5,
"noteX": -8,
"noteY": 7.2,
"lines": [
"R102 - USB-C CC2 pull-down;",
"works with either cable",
"orientation."
],
"description": "USB-C CC2 pull-down; works with either cable orientation.",
"section": "BLOCK_DockPower"
},
"U101": {
"sheet": "DockCharge",
"x": -8,
"y": 0,
"noteX": -10.4,
"noteY": -2.3,
"lines": [
"U101 - Current-limited 5 V power",
"switch; supplies dock contacts."
],
"description": "Current-limited 5 V power switch; supplies dock contacts.",
"section": "BLOCK_DockCharge"
},
"C107": {
"sheet": "DockCharge",
"x": 0,
"y": 5,
"noteX": -2.4,
"noteY": 2.7,
"lines": [
"C107 - Input bypass capacitor;",
"filters dock power-switch",
"supply."
],
"description": "Input bypass capacitor; filters dock power-switch supply.",
"section": "BLOCK_DockCharge"
},
"C108": {
"sheet": "DockCharge",
"x": 9,
"y": 5,
"noteX": 6.6,
"noteY": 2.7,
"lines": [
"C108 - Output bypass capacitor;",
"smooths charging-contact power."
],
"description": "Output bypass capacitor; smooths charging-contact power.",
"section": "BLOCK_DockCharge"
},
"R109": {
"sheet": "DockCharge",
"x": -8,
"y": 6,
"noteX": -10.4,
"noteY": 3.7,
"lines": [
"R109 - FAULT pull-up; makes the",
"dock power fault signal",
"readable."
],
"description": "FAULT pull-up; makes the dock power fault signal readable.",
"section": "BLOCK_DockCharge"
},
"J103": {
"sheet": "DockCharge",
"x": 0,
"y": -3,
"noteX": -2.4,
"noteY": -5.3,
"lines": [
"J103 - Two-pin JST output; sends",
"5 V and ground to contact",
"island."
],
"description": "Two-pin JST output; sends 5 V and ground to contact island.",
"section": "BLOCK_DockCharge"
},
"U104": {
"sheet": "UsbProgrammer",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"U104 - CH552E USB MCU; runs the",
"USB-to-SWD bridge firmware."
],
"description": "CH552E USB MCU; runs the USB-to-SWD bridge firmware.",
"section": "BLOCK_UsbProgrammer"
},
"SW101": {
"sheet": "UsbProgrammer",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"SW101 - BOOT button; selects USB",
"programmer firmware download."
],
"description": "BOOT button; selects USB programmer firmware download.",
"section": "BLOCK_UsbProgrammer"
},
"C103": {
"sheet": "UsbProgrammer",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"C103 - Local bypass capacitor;",
"filters USB MCU supply noise."
],
"description": "Local bypass capacitor; filters USB MCU supply noise.",
"section": "BLOCK_UsbProgrammer"
},
"R103": {
"sheet": "UsbProgrammer",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"R103 - BOOT pull-up; selects",
"normal programmer startup."
],
"description": "BOOT pull-up; selects normal programmer startup.",
"section": "BLOCK_UsbProgrammer"
},
"U103": {
"sheet": "DockDebug",
"x": -10,
"y": 6,
"noteX": -12.4,
"noteY": 3.7,
"lines": [
"U103 - SWD level shifter;",
"translates 3.3 V signals to ring",
"1.8 V."
],
"description": "SWD level shifter; translates 3.3 V signals to ring 1.8 V.",
"section": "BLOCK_DockDebug"
},
"C105": {
"sheet": "DockDebug",
"x": -0.5,
"y": 6,
"noteX": 2,
"noteY": 6,
"lines": [
"C105 - 1.8 V bypass capacitor;",
"filters the SWD reference",
"supply."
],
"description": "1.8 V bypass capacitor; filters the SWD reference supply.",
"section": "BLOCK_DockDebug"
},
"C106": {
"sheet": "DockDebug",
"x": 9,
"y": 6,
"noteX": 6.6,
"noteY": 3.7,
"lines": [
"C106 - 3.3 V bypass capacitor;",
"filters level-shifter supply."
],
"description": "3.3 V bypass capacitor; filters level-shifter supply.",
"section": "BLOCK_DockDebug"
},
"R104": {
"sheet": "DockDebug",
"x": -10,
"y": 0,
"noteX": -12.4,
"noteY": -2.3,
"lines": [
"R104 - 1k default-OFF OE pulldown;",
"overrides MCU reset pullup."
],
"description": "Enable pull-down; disables SWD translation without ring power.",
"section": "BLOCK_DockDebug"
},
"R105": {
"sheet": "DockDebug",
"x": -0.5,
"y": 0,
"noteX": -2.9,
"noteY": -2.3,
"lines": [
"R105 - 100R MCU OE series resistor;",
"OE supports 3.3V logic, target stays1.8V."
],
"description": "Enable pull-up; enables translation when ring 1.8 V is present.",
"section": "BLOCK_DockDebug"
},
"R106": {
"sheet": "DockDebug",
"x": 9,
"y": 0,
"noteX": 6.6,
"noteY": -2.3,
"lines": [
"R106 - SWD data series resistor;",
"damps edges and limits pin",
"current."
],
"description": "SWD data series resistor; damps edges and limits pin current.",
"section": "BLOCK_DockDebug"
},
"R107": {
"sheet": "DockDebug",
"x": -10,
"y": -6,
"noteX": -12.4,
"noteY": -8.3,
"lines": [
"R107 - SWD clock series",
"resistor; damps edges and limits",
"pin current."
],
"description": "SWD clock series resistor; damps edges and limits pin current.",
"section": "BLOCK_DockDebug"
},
"TP101": {
"sheet": "FactoryTest",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"TP101 - Ground probe pad;",
"provides a test-fixture return."
],
"description": "Ground probe pad; provides a test-fixture return.",
"section": "BLOCK_FactoryTest"
},
"TP102": {
"sheet": "FactoryTest",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"TP102 - 1.8 V probe pad;",
"measures ring logic reference",
"voltage."
],
"description": "1.8 V probe pad; measures ring logic reference voltage.",
"section": "BLOCK_FactoryTest"
},
"TP103": {
"sheet": "FactoryTest",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"TP103 - SWD data probe pad;",
"carries programming and debug",
"data."
],
"description": "SWD data probe pad; carries programming and debug data.",
"section": "BLOCK_FactoryTest"
},
"TP104": {
"sheet": "FactoryTest",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"TP104 - SWD clock probe pad;",
"clocks programming and debug",
"data."
],
"description": "SWD clock probe pad; clocks programming and debug data.",
"section": "BLOCK_FactoryTest"
},
"TP106": {
"sheet": "FactoryTest",
"x": -0.5,
"y": -3,
"noteX": -2.9,
"noteY": -5.3,
"lines": [
"TP106 - 5 V probe pad; checks",
"the dock charging supply."
],
"description": "5 V probe pad; checks the dock charging supply.",
"section": "BLOCK_FactoryTest"
},
"R130": {
"sheet": "ServiceLinks",
"x": -10,
"y": 4,
"noteX": -12.4,
"noteY": 1.7000000000000002,
"lines": [
"R130 - Temporary 0-ohm link;",
"connects SWD clock before",
"cutting."
],
"description": "Temporary 0-ohm link; connects SWD clock before cutting.",
"section": "BLOCK_ServiceLinks"
},
"R131": {
"sheet": "ServiceLinks",
"x": -0.5,
"y": 4,
"noteX": -2.9,
"noteY": 1.7000000000000002,
"lines": [
"R131 - Temporary 0-ohm link;",
"connects SWD data before",
"cutting."
],
"description": "Temporary 0-ohm link; connects SWD data before cutting.",
"section": "BLOCK_ServiceLinks"
},
"R132": {
"sheet": "ServiceLinks",
"x": 9,
"y": 4,
"noteX": 6.6,
"noteY": 1.7000000000000002,
"lines": [
"R132 - Temporary 0-ohm link;",
"connects 1.8 V reference before",
"cutting."
],
"description": "Temporary 0-ohm link; connects 1.8 V reference before cutting.",
"section": "BLOCK_ServiceLinks"
},
"R133": {
"sheet": "ServiceLinks",
"x": -10,
"y": -3,
"noteX": -12.4,
"noteY": -5.3,
"lines": [
"R133 - Temporary 0-ohm link;",
"connects dock and ring ground",
"before cut."
],
"description": "Temporary 0-ohm link; connects dock and ring ground before cut.",
"section": "BLOCK_ServiceLinks"
},
"R134": {
"sheet": "ServiceLinks",
"x": -0.5,
"y": -3,
"noteX": -2.9,
"noteY": -5.3,
"lines": [
"R134 - Temporary 0-ohm link;",
"connects dock 5 V before",
"cutting."
],
"description": "Temporary 0-ohm link; connects dock 5 V before cutting.",
"section": "BLOCK_ServiceLinks"
},
"J301": {
"sheet": "ContactIsland",
"x": -10,
"y": 2,
"noteX": -12.4,
"noteY": -0.2999999999999998,
"lines": [
"J301 - Two-pin JST input;",
"receives dock 5 V and ground",
"cable."
],
"description": "Two-pin JST input; receives dock 5 V and ground cable.",
"section": "BLOCK_ContactIsland"
},
"PG301": {
"sheet": "DockPower",
"x": -0.5,
"y": -3,
"noteX": -2.9,
"noteY": -5.3,
"lines": [
"PG301 - Positive spring contact;",
"touches the ring charging",
"target."
],
"description": "Positive spring contact; touches the ring charging target.",
"section": "BLOCK_DockPower"
},
"PG302": {
"sheet": "DockPower",
"x": 9.0,
"y": -3,
"noteX": 6.6,
"noteY": -5.3,
"lines": [
"PG302 - Ground spring contact;",
"completes the ring charging",
"return."
],
"description": "Ground spring contact; completes the ring charging return.",
"section": "BLOCK_DockPower"
},
"R1": {
"sheet": "Charging",
"x": -0.5,
"y": -6,
"noteX": -2.9,
"noteY": -8.3,
"lines": [
"R1 - Pull-up: keeps charging off",
"until MCU verifies safe limits."
],
"description": "Pull-up: keeps charging off until MCU verifies safe limits.",
"section": "BLOCK_Charging"
},
"C28": {
"sheet": "Sensors",
"x": -7,
"y": -5,
"noteX": -9,
"noteY": -7,
"lines": [
"C28: 100nF supply bypass"
],
"section": "SEC_Sensors"
},
"C29": {
"sheet": "Sensors",
"x": 1,
"y": -5,
"noteX": -1,
"noteY": -7,
"lines": [
"C29: 10uF local bulk"
],
"section": "SEC_Sensors"
},
"U8": {
"sheet": "OpticalPower",
"x": -10,
"y": 6,
"noteX": -12.4,
"noteY": 3.7,
"lines": [
"U8 - Reverse-protected 3.3 V",
"regulator powers the LED rail."
],
"description": "TPS70933 reverse-protected 3.3 V supply for external LEDs.",
"section": "BLOCK_OpticalPower"
},
"R30": {
"sheet": "OpticalPower",
"x": -10,
"y": 0,
"noteX": -12.4,
"noteY": -2.3,
"lines": [
"R30 - 1k resistor limits inrush",
"into the LED supply reservoir."
],
"description": "1 kohm resistor limits input reservoir charging current.",
"section": "BLOCK_OpticalPower"
},
"C30": {
"sheet": "OpticalPower",
"x": -10,
"y": -5,
"noteX": -12.4,
"noteY": -7.3,
"lines": [
"C30 - Regulator input bulk",
"buffers pulsed supply current."
],
"description": "C30 - Regulator input bulk buffers pulsed supply current.",
"section": "BLOCK_OpticalPower"
},
"C32": {
"sheet": "OpticalPower",
"x": 1,
"y": 6,
"noteX": -1.4,
"noteY": 3.7,
"lines": [
"C32 - Local3.3V output bulk",
"stabilizes LED regulator."
],
"description": "C32 - Local3.3V output bulk stabilizes LED regulator.",
"section": "BLOCK_OpticalPower"
},
"C31": {
"sheet": "OpticalPower",
"x": 1,
"y": 0,
"noteX": -1.4,
"noteY": -2.3,
"lines": [
"C31 - ZSPD digital bypass",
"filters1.8V supply noise."
],
"description": "C31 - ZSPD digital bypass filters1.8V supply noise.",
"section": "BLOCK_OpticalPower"
},
"J105": {
"sheet": "DockDebug",
"x": -0.5,
"y": -6,
"noteX": -2.9,
"noteY": -8.3,
"lines": [
"J105 - service: 1 SWCLK; 2 SWDIO.",
"3 CLK; 4 DIO; 5 GND. Straight-through JST 102A."
],
"description": "J105 - keyed five-wire target service; Vref IN only, SWDIO, CLK, GND, RESET.",
"section": "BLOCK_DockDebug"
},
"Q106": {
"sheet": "DockReset",
"x": -5,
"y": 3,
"noteX": -7.4,
"noteY": 0.7,
"lines": [
"Q106 - sink-only 1.8V target reset;",
"no 3.3V pullup on ring reset."
],
"description": "Q106 - sink-only 1.8V target reset; no 3.3V pullup on ring reset.",
"section": "BLOCK_DockReset"
},
"R110": {
"sheet": "DockReset",
"x": 5,
"y": 3,
"noteX": 2.6,
"noteY": 0.7,
"lines": [
"R110 - holds reset gate low",
"when the USB programmer is unpowered."
],
"description": "R110 - holds reset gate low when the USB programmer is unpowered.",
"section": "BLOCK_DockReset"
},
"JSWD1": {
"sheet": "RingService",
"x": 0,
"y": 3,
"noteX": -6,
"noteY": -1,
"section": "BLOCK_RingService",
"lines": [
"JSWD1 - optional BOTTOM service header; DO NOT PLACE.",
"Only manually fit with the ring housing open.",
"1: nRESET; 2: target 1.8V reference IN; 3: SWCLK.",
"4: SWDIO; 5: GND. Use straight JST 102A cable."
],
"description": "Optional manual post-cut1.8V SWD connection; no factory placement."
}
},
"sheets": [
{
"name": "Radio",
"title": "BLE radio and clock",
"refs": [
"U1",
"C16",
"C17",
"Y1",
"R15",
"L1",
"R19",
"C18",
"ANT1"
]
},
{
"name": "RadioSupply",
"title": "Radio supply bypass",
"refs": [
"C9",
"C10",
"C11",
"C12",
"C13",
"C14",
"C15"
]
},
{
"name": "RingDebug",
"title": "Ring programming pads",
"refs": [
"TP3",
"TP4",
"TP5",
"TP6",
"TP7"
]
},
{
"name": "Charging",
"title": "Ring charger and input",
"refs": [
"U2",
"C1",
"C2",
"C3",
"R2"
]
},
{
"name": "ChargingContacts",
"title": "Exterior charging connection",
"refs": [
"TP1",
"TP2"
]
},
{
"name": "ChargeSafety",
"title": "Fail-safe charging control",
"refs": [
"Q10",
"R23",
"R24",
"R25"
]
},
{
"name": "Protection",
"title": "Battery fault protection",
"refs": [
"U6",
"U9",
"R6",
"R7",
"R8",
"C5"
]
},
{
"name": "Regulators",
"title": "Ring 1.8 V regulator",
"refs": [
"U7",
"C6",
"C7"
]
},
{
"name": "BatterySense",
"title": "Battery voltage and thermal bias",
"refs": [
"R17",
"R18",
"C8",
"R20"
]
},
{
"name": "Sensors",
"title": "Motion and skin temperature",
"refs": [
"U4",
"U5",
"R12",
"R13",
"C24",
"C25",
"C26",
"C28",
"C29"
]
},
{
"name": "Battery",
"title": "Battery contacts and thermistors",
"refs": [
"JPOS",
"U_NEG",
"U_TH1",
"U_TH2"
]
},
{
"name": "CoilStudy",
"title": "Unpowered printed-coil test",
"refs": [
"TP_RXA",
"TP_RXB"
]
},
{
"name": "DockPower",
"title": "Dock USB-C and 3.3 V power",
"refs": [
"J101",
"U102",
"C101",
"C102",
"R101",
"R102",
"PG301",
"PG302"
]
},
{
"name": "DockCharge",
"title": "Dock contact power output",
"refs": [
"U101",
"C107",
"C108",
"R109"
]
},
{
"name": "UsbProgrammer",
"title": "USB programmer controller",
"refs": [
"U104",
"SW101",
"C103",
"R103"
]
},
{
"name": "DockDebug",
"title": "SWD voltage translation",
"refs": [
"U103",
"C105",
"C106",
"R104",
"R105",
"R106",
"R107",
"J105"
]
},
{
"name": "FactoryTest",
"title": "2.54 mm test fixture pads",
"refs": [
"TP101",
"TP102",
"TP103",
"TP104",
"TP106"
]
},
{
"name": "ServiceLinks",
"title": "Temporary cut-off links",
"refs": [
"R130",
"R131",
"R132",
"R133",
"R134"
]
},
{
"name": "ContactIsland",
"title": "Dock spring-contact island",
"refs": []
},
{
"name": "Optical",
"title": "Optical measurement front end",
"refs": [
"U3",
"LED1",
"PD1",
"PD2",
"R22",
"C21",
"C22",
"C23",
"C27"
]
},
{
"name": "OpticalPower",
"title": "Optical supply compatibility",
"refs": [
"U8",
"R30",
"C30",
"C32",
"C31"
]
},
{
"name": "DockReset",
"title": "Target reset sink and safe default",
"refs": [
"Q106",
"R110"
]
},
{
"name": "RingService",
"title": "Post-cut ring programming access",
"refs": [
"JSWD1"
]
}
],
"sets": {
"service": [
"C101",
"C102",
"C103",
"C105",
"C106",
"C107",
"C108",
"J101",
"R101",
"R102",
"R103",
"R104",
"R105",
"R106",
"R107",
"R109",
"R130",
"R131",
"R132",
"R133",
"R134",
"SW101",
"TP101",
"TP102",
"TP103",
"TP104",
"TP106",
"U101",
"U102",
"U103",
"U104",
"J105",
"Q106",
"R110"
],
"contact": [
"PG301",
"PG302"
],
"interlock": [
"Q10",
"R23",
"R24",
"R25"
],
"battery": [
"JPOS",
"U_NEG",
"U_TH1",
"U_TH2"
],
"coil": [
"TP_RXA",
"TP_RXB"
],
"ring": [
"U1",
"Y1",
"ANT1",
"L1",
"U2",
"U6",
"U9",
"U7",
"U3",
"LED1",
"PD1",
"PD2",
"U4",
"U5",
"R20",
"R2",
"R6",
"R7",
"R8",
"R12",
"R13",
"R15",
"R17",
"R18",
"R22",
"R19",
"C1",
"C2",
"C3",
"C5",
"C6",
"C7",
"C8",
"C9",
"C10",
"C11",
"C12",
"C13",
"C14",
"C15",
"C16",
"C17",
"C18",
"C21",
"C22",
"C23",
"C27",
"C24",
"C25",
"C26",
"TP1",
"TP2",
"TP3",
"TP4",
"TP5",
"TP6",
"TP7",
"C28",
"C29",
"U8",
"R30",
"C30",
"C31",
"C32"
]
}
}