← Commit history
design/bom-jlcpcb.csvadded+31
@@ -0,0 +1,31 @@+ref,value,function,mpn,manufacturer,package,source,lcsc,fit,stock_checked_2026-10-05,note+U1,TPS54202DDCR,sync buck 4.5-28 V 2 A 500 kHz,TPS54202DDCR,Texas Instruments,SOT-23-6 (DDC),JLCPCB,C191884,,180809,thin stock; order early for builds beyond prototypes+L1,15uH,output inductor,HCMA-0530-150-M,YOUCHI,5.6x5.2x2.8 mm (datasheet p3; 5.7x5.3x2.8 max),JLCPCB,C49190153,,1670 (checked 2026-10-05),"substitute for AMPLH5030S-150MT, verified: design/swaps/L1.result.json; Isat 3.7 A / Irms 3.5 A (datasheet p2) >= 2.5 A HS limit min; DCR 98 typ / 118 max mOhm"+C1,47uF 35V,input bulk (cable damping),EEE-FK1V470P,Panasonic,SMD alu 6.3x5.8 (D),JLCPCB,C178565,,25240,ESR damps cable L against ceramics+C2,10uF 25V X7R,input ceramic,CC1206KKX7R8BB106,Yageo,1206,JLCPCB,C70462,,247390,+C3,10uF 25V X7R,input ceramic,CC1206KKX7R8BB106,Yageo,1206,JLCPCB,C70462,,247390,+C4,100nF 50V X7R,VIN pin HF bypass,CC0603KRX7R9BB104,YAGEO,0603,JLCPCB,C14663,,57469770 (checked 2026-10-05),"substitute for 0603B104J500CT, verified: design/swaps/C4.result.json; closest to VIN/GND pins"+C5,100nF 50V X7R,BOOT-SW,CC0603KRX7R9BB104,YAGEO,0603,JLCPCB,C14663,,57469770 (checked 2026-10-05),"substitute for 0603B104J500CT, verified: design/swaps/C4.result.json"+C6,22uF 10V X5R,output ceramic,CL21A226MAQNNNE,Samsung,0805,JLCPCB,C45783,,3963342 (checked 2026-10-05),"substitute for CL21A226MPQNNNE, verified: design/swaps/C6.result.json; ~55% effective at 5 V bias"+C7,22uF 10V X5R,output ceramic,CL21A226MAQNNNE,Samsung,0805,JLCPCB,C45783,,3963342 (checked 2026-10-05),"substitute for CL21A226MPQNNNE, verified: design/swaps/C6.result.json"+C8,22uF 10V X5R,output ceramic,CL21A226MAQNNNE,Samsung,0805,JLCPCB,C45783,,3963342 (checked 2026-10-05),"substitute for CL21A226MPQNNNE, verified: design/swaps/C6.result.json"+C9,68pF C0G,feed-forward across Rtop,0402N680J500CT,Walsin,0402,JLCPCB,C301990,,417,chosen by ngspice loop sweep (fc ~29 kHz)+R1,68k,FB top (series part 1),CR0402-FX-6802GLF,Bourns,0402,JLCPCB,C2085395,,7500,Rtop = R1 + R2 = 73.6k+R2,5.6k,FB top (series part 2),CR0402-FX-5601GLF,Bourns,0402,JLCPCB,C2077074,,30,+R3,10k,FB bottom,0402WGF1002TCE,UNI-ROYAL,0402,JLCPCB,C25744,,21539575 (checked 2026-10-05),"substitute for CR0402-FX-1002GLF, verified: design/swaps/R3.result.json; VOUT = 0.596 x (1 + 73.6/10) = 4.98 V"+R4,1M,EN UVLO top,0402WGF1004TCE,UNI-ROYAL,0402,JLCPCB,C26083,,2465211 (checked 2026-10-05),"substitute for CR0402-FX-1004GLF, verified: design/swaps/R4.result.json; start 8.58 V / stop 6.87 V"+R5,150k,EN UVLO bottom,CR0402-FX-1503GLF,Bourns,0402,JLCPCB,C21547414,,90,+R6,2.2k,LED resistor,0402WGF2201TCE,UNI-ROYAL,0402,JLCPCB,C25879,,2192872 (checked 2026-10-05),"substitute for CR0402-FX-2201GLF, verified: design/swaps/R6.result.json; 1.4 mA"+R7,10k,VMON divider top (VOUT to VMON),0402WGF1002TCE,UNI-ROYAL,0402,JLCPCB,C25744,,21539575 (checked 2026-10-05),"substitute for CR0402-FX-1002GLF, verified: design/swaps/R3.result.json; VMON = VOUT/2 = 2.5 V for a 3.3 V ADC"+R8,10k,VMON divider bottom (VMON to GND),0402WGF1002TCE,UNI-ROYAL,0402,JLCPCB,C25744,,21539575 (checked 2026-10-05),"substitute for CR0402-FX-1002GLF, verified: design/swaps/R3.result.json; VMON source impedance 5 k"+D1,green LED,5 V power-good indicator,XL-1608UGC-04,XINGLIGHT,0603,JLCPCB,C965804,,6367682 (checked 2026-10-05),"substitute for IN-S63BTG, verified: design/swaps/D1.result.json"+J1,MachineContactMedium,molecule contact (VIN),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+J2,MachineContactMedium,molecule contact (GND),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+J3,MachineContactMedium,molecule contact (EN),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+J4,MachineContactMedium,molecule contact (VOUT),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+J5,MachineContactMedium,molecule contact (GND),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+J6,MachineContactMedium,molecule contact (VMON),MachineContactMedium,Adom,MachineContactMedium (1.3 mm pad / 0.78 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+MP1,MachinePinMediumShort,molecule machine pin (GND),MachinePinMediumShort,Adom,MachinePinMediumShort (1.6 mm pad / 1.2 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+MP2,MachinePinMediumShort,molecule machine pin (GND),MachinePinMediumShort,Adom,MachinePinMediumShort (1.6 mm pad / 1.2 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+MP3,MachinePinMediumShort,molecule machine pin (GND),MachinePinMediumShort,Adom,MachinePinMediumShort (1.6 mm pad / 1.2 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)+MP4,MachinePinMediumShort,molecule machine pin (GND),MachinePinMediumShort,Adom,MachinePinMediumShort (1.6 mm pad / 1.2 mm drill),Adom stock,,post,,pressed in after assembly (molecule contact / machine pin)
design/swaps/C4.jsonadded+45
@@ -0,0 +1,45 @@+{+ "ref": "C4",+ "kind": "capacitor",+ "profile": "jlcpcb",+ "reason": "basic-part",+ "original": {+  "mpn": "0603B104J500CT",+  "manufacturer": "Walsin",+  "datasheet": "LCSC C119027 (100 nF 50 V X7R +/-5% 0603)",+  "params": {+   "C_uF": 0.1,+   "tol_pct": 5,+   "voltage_V": 50,+   "dielectric": "X7R",+   "temp_C": [+    -55,+    125+   ]+  }+ },+ "candidate": {+  "mpn": "CC0603KRX7R9BB104",+  "manufacturer": "YAGEO",+  "lcsc": "C14663",+  "stock": 57469770,+  "stockChecked": "2026-10-05",+  "datasheet": "JLCPCB part page (100 nF 50 V X7R +/-10% 0603)",+  "params": {+   "C_uF": 0.1,+   "tol_pct": 10,+   "voltage_V": 50,+   "dielectric": "X7R",+   "temp_C": [+    -55,+    125+   ]+  },+  "jlcLibrary": "Basic",+  "jlcLibraryChecked": "2026-10-05 jlcpcb.com/partdetail/C14663"+ },+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line.",+ "waive": {+  "tolerance": "bypass (C4) and bootstrap (C5) capacitors: +/-10% on 100 nF changes nothing the design depends on (TPS54202 datasheet asks for 0.1 uF, no tolerance)"+ }+}\ No newline at end of file
design/swaps/C4.result.jsonadded+48
@@ -0,0 +1,48 @@+{+ "ref": "C4",+ "original": "0603B104J500CT",+ "candidate": "CC0603KRX7R9BB104",+ "lcsc": "C14663",+ "verdict": "PASS",+ "checks": [+  {+   "check": "C_uF",+   "pass": true,+   "detail": "0.1 vs 0.1 (original +/-5 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": false,+   "detail": "10 % vs 5 %; WAIVED: bypass (C4) and bootstrap (C5) capacitors: +/-10% on 100 nF changes nothing the design depends on (TPS54202 datasheet asks for 0.1 uF, no tolerance)",+   "info": true+  },+  {+   "check": "voltage_V",+   "pass": true,+   "detail": "50 vs original 50 (needs >=)",+   "info": false+  },+  {+   "check": "dielectric",+   "pass": true,+   "detail": "X7R vs X7R",+   "info": false+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 125] covers [-55, 125]",+   "info": false+  },+  {+   "check": "candidate is a JLCPCB basic part",+   "pass": true,+   "detail": "Basic (checked on 2026-10-05 jlcpcb.com/partdetail/C14663)",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:36+00:00",+ "facts": "design/swaps/C4.json",+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/C6.jsonadded+42
@@ -0,0 +1,42 @@+{+ "ref": "C6",+ "kind": "capacitor",+ "profile": "jlcpcb",+ "reason": "basic-part",+ "original": {+  "mpn": "CL21A226MPQNNNE",+  "manufacturer": "Samsung",+  "datasheet": "Samsung CL21A226MPQNNNE (22 uF 10 V X5R +/-20% 0805)",+  "params": {+   "C_uF": 22,+   "tol_pct": 20,+   "voltage_V": 10,+   "dielectric": "X5R",+   "temp_C": [+    -55,+    85+   ]+  }+ },+ "candidate": {+  "mpn": "CL21A226MAQNNNE",+  "manufacturer": "Samsung",+  "lcsc": "C45783",+  "stock": 3963342,+  "stockChecked": "2026-10-05",+  "datasheet": "JLCPCB part page (22 uF 25 V X5R +/-20% 0805)",+  "params": {+   "C_uF": 22,+   "tol_pct": 20,+   "voltage_V": 25,+   "dielectric": "X5R",+   "temp_C": [+    -55,+    85+   ]+  },+  "jlcLibrary": "Basic",+  "jlcLibraryChecked": "2026-10-05 jlcpcb.com/partdetail/C45783"+ },+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line. 25 V rating instead of 10 V: less DC-bias loss at 5 V, so more effective output capacitance than the original."+}\ No newline at end of file
design/swaps/C6.result.jsonadded+48
@@ -0,0 +1,48 @@+{+ "ref": "C6",+ "original": "CL21A226MPQNNNE",+ "candidate": "CL21A226MAQNNNE",+ "lcsc": "C45783",+ "verdict": "PASS",+ "checks": [+  {+   "check": "C_uF",+   "pass": true,+   "detail": "22 vs 22 (original +/-20 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": true,+   "detail": "20 % vs 20 %",+   "info": false+  },+  {+   "check": "voltage_V",+   "pass": true,+   "detail": "25 vs original 10 (needs >=)",+   "info": false+  },+  {+   "check": "dielectric",+   "pass": true,+   "detail": "X5R vs X5R",+   "info": false+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 85] covers [-55, 85]",+   "info": false+  },+  {+   "check": "candidate is a JLCPCB basic part",+   "pass": true,+   "detail": "Basic (checked on 2026-10-05 jlcpcb.com/partdetail/C45783)",+   "info": false+  }+ ],+ "checkedAt": "2026-10-06T13:30:39+00:00",+ "facts": "design/swaps/C6.json",+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line. 25 V rating instead of 10 V: less DC-bias loss at 5 V, so more effective output capacitance than the original."+}\ No newline at end of file
design/swaps/D1.jsonadded+79
@@ -0,0 +1,79 @@+{+ "ref": "D1",+ "kind": "led",+ "profile": "jlcpcb",+ "original": {+  "mpn": "IN-S63BTG",+  "manufacturer": "Inolux",+  "datasheet": "LCSC C5740463 product data (Vf 3.3 V, 527 nm, -40 to 85 C); polarity from the board's symbol/footprint (pin 1 = K)",+  "params": {+   "wavelength_nm": 527,+   "vf_V": 3.3,+   "temp_C": [+    -40,+    85+   ]+  },+  "polarity": {+   "pad": "1",+   "is": "cathode"+  },+  "lcscSearch": {+   "queries": [+    "IN-S63BTG (listed as C5740463, out of stock, not orderable)"+   ],+   "found": false,+   "inStock": false,+   "checked": "2026-10-05",+   "where": "LCSC C5740463: listed, Out of Stock"+  }+ },+ "candidate": {+  "mpn": "XL-1608UGC-04",+  "manufacturer": "XINGLIGHT",+  "lcsc": "C965804",+  "stock": 6367682,+  "stockChecked": "2026-10-05",+  "datasheet": "https://www.lcsc.com/datasheet/C965804.pdf (XINGLIGHT XL-1608UGC-04, p3 ratings and optics, p7 outline and polarity)",+  "params": {+   "wavelength_nm": 525,+   "vf_V": 3.0,+   "if_max_mA": 20,+   "temp_C": [+    -40,+    85+   ]+  },+  "body_mm": {+   "L": 1.6,+   "W": 0.8,+   "H": 0.4+  },+  "polarity": {+   "pad": "1",+   "is": "cathode"+  },+  "terminals": [+   {+    "pad": "1",+    "x": -0.625,+    "y": 0,+    "w": 0.35,+    "h": 0.7+   },+   {+    "pad": "2",+    "x": 0.625,+    "y": 0,+    "w": 0.35,+    "h": 0.7+   }+  ]+ },+ "drive": {+  "supply_V": 5.0,+  "R_ohm": 2200,+  "min_mA": 0.5+ },+ "notes": "The Inolux part is listed on LCSC but out of stock. Same 0603 emerald green (dominant 515-535 nm, peak 525 nm), Vf 2.6-3.4 V at 20 mA (bin M19-3 3.0-3.1 V), pin 1 = cathode as on the board; R6 2.2k from 5 V gives about 0.9 mA, a visible power-good glow well under the 20 mA rating."+}\ No newline at end of file
design/swaps/D1.result.jsonadded+54
@@ -0,0 +1,54 @@+{+ "ref": "D1",+ "original": "IN-S63BTG",+ "candidate": "XL-1608UGC-04",+ "lcsc": "C965804",+ "verdict": "PASS",+ "checks": [+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-40, 85] covers [-40, 85]",+   "info": false+  },+  {+   "check": "colour",+   "pass": true,+   "detail": "dominant 525 nm vs 527 nm (within 15)",+   "info": false+  },+  {+   "check": "land fit pad 1",+   "pass": true,+   "detail": "100 % of the terminal on pad 1 (0.88 x 0.95 at -0.79, 0.00)",+   "info": false+  },+  {+   "check": "land fit pad 2",+   "pass": true,+   "detail": "100 % of the terminal on pad 2 (0.88 x 0.95 at 0.79, 0.00)",+   "info": false+  },+  {+   "check": "polarity",+   "pass": true,+   "detail": "original {'pad': '1', 'is': 'cathode'}, candidate {'pad': '1', 'is': 'cathode'}",+   "info": false+  },+  {+   "check": "LED current",+   "pass": true,+   "detail": "0.91 mA through 2200 ohm from 5 V (Vf 3 V)",+   "info": false+  },+  {+   "check": "original not on LCSC",+   "pass": true,+   "detail": "searched IN-S63BTG (listed as C5740463, out of stock, not orderable) on 2026-10-05: not found",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:23+00:00",+ "facts": "design/swaps/D1.json",+ "notes": "The Inolux part is listed on LCSC but out of stock. Same 0603 emerald green (dominant 515-535 nm, peak 525 nm), Vf 2.6-3.4 V at 20 mA (bin M19-3 3.0-3.1 V), pin 1 = cathode as on the board; R6 2.2k from 5 V gives about 0.9 mA, a visible power-good glow well under the 20 mA rating."+}\ No newline at end of file
design/swaps/L1.jsonadded+93
@@ -0,0 +1,93 @@+{+ "ref": "L1",+ "kind": "inductor",+ "profile": "jlcpcb",+ "original": {+  "mpn": "AMPLH5030S-150MT",+  "manufacturer": "Abracon",+  "datasheet": "Abracon AMPLH5030S datasheet p2 (electrical), p3 (dimensions)",+  "params": {+   "L_uH": 15,+   "tol_pct": 20,+   "isat_A": 3.7,+   "irms_A": 3.5,+   "dcr_mohm_max": 118,+   "temp_C": [+    -55,+    125+   ]+  },+  "body_mm": {+   "L": 5.6,+   "W": 5.2,+   "H": 2.8+  },+  "lcscSearch": {+   "queries": [+    "AMPLH5030S-150MT",+    "AMPLH5030S150MT",+    "AMPLH5030S"+   ],+   "found": false,+   "checked": "2026-10-05"+  }+ },+ "candidate": {+  "mpn": "HCMA-0530-150-M",+  "manufacturer": "YOUCHI",+  "lcsc": "C49190153",+  "stock": 1670,+  "stockChecked": "2026-10-05",+  "datasheet": "https://www.lcsc.com/datasheet/C49190153.pdf (YOUCHI HCMA-0530-XXX-M spec, p2 table, p3 dimensions)",+  "params": {+   "L_uH": 15,+   "tol_pct": 20,+   "isat_A": 3.0,+   "irms_A": 2.5,+   "dcr_mohm_max": 165,+   "temp_C": [+    -55,+    125+   ]+  },+  "body_mm": {+   "L": 5.4,+   "W": 5.2,+   "H": 2.8+  },+  "terminals": [+   {+    "pad": "1",+    "x": -1.95,+    "y": 0,+    "w": 1.5,+    "h": 2.2+   },+   {+    "pad": "2",+    "x": 1.95,+    "y": 0,+    "w": 1.5,+    "h": 2.2+   }+  ]+ },+ "requires": {+  "isat_A": [+   ">=",+   2.5,+   "calcs.json inductor.Isat_required_A (TPS54202 high-side current limit, min)"+  ],+  "irms_A": [+   ">=",+   1.009,+   "calcs.json inductor.Irms_A"+  ],+  "dcr_mohm_max": [+   "<=",+   200,+   "loss budget: 1.009 A rms squared x 200 mOhm = 0.20 W, about 2 % of the 10 W output; Idc 2.5 A (40 C rise) leaves the part at about 6 C rise at 1 A"+  ]+ },+ "notes": "Abracon AMPLH5030S is not stocked at JLCPCB/LCSC. Same 15 uH, same 2.8 mm height, molded, shielded, 5.4 x 5.2 mm body whose 1.5 x 2.2 mm terminals land inside the existing 2.15 x 3.5 mm pads. Weaker than the Abracon (Isat 3.0 vs 3.7 A, DCR 165 vs 118 mOhm max) but inside every limit the design sets."+}\ No newline at end of file
design/swaps/L1.result.jsonadded+90
@@ -0,0 +1,90 @@+{+ "ref": "L1",+ "original": "AMPLH5030S-150MT",+ "candidate": "HCMA-0530-150-M",+ "lcsc": "C49190153",+ "verdict": "PASS",+ "checks": [+  {+   "check": "L_uH",+   "pass": true,+   "detail": "15 vs 15 (original +/-20 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": true,+   "detail": "20 % vs 20 %",+   "info": false+  },+  {+   "check": "isat_A",+   "pass": false,+   "detail": "3.0 vs original 3.7 (the design limit below decides)",+   "info": true+  },+  {+   "check": "irms_A",+   "pass": false,+   "detail": "2.5 vs original 3.5 (the design limit below decides)",+   "info": true+  },+  {+   "check": "dcr_mohm_max",+   "pass": false,+   "detail": "165 vs original 118 (the design limit below decides)",+   "info": true+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 125] covers [-55, 125]",+   "info": false+  },+  {+   "check": "height",+   "pass": true,+   "detail": "2.8 mm vs 2.8 mm",+   "info": false+  },+  {+   "check": "design: isat_A >= 2.5",+   "pass": true,+   "detail": "3.0 (from calcs.json inductor.Isat_required_A (TPS54202 high-side current limit, min))",+   "info": false+  },+  {+   "check": "design: irms_A >= 1.009",+   "pass": true,+   "detail": "2.5 (from calcs.json inductor.Irms_A)",+   "info": false+  },+  {+   "check": "design: dcr_mohm_max <= 200",+   "pass": true,+   "detail": "165 (from loss budget: 1.009 A rms squared x 200 mOhm = 0.20 W, about 2 % of the 10 W output; Idc 2.5 A (40 C rise) leaves the part at about 6 C rise at 1 A)",+   "info": false+  },+  {+   "check": "land fit pad 1",+   "pass": true,+   "detail": "100 % of the terminal on pad 1 (2.15 x 3.50 at -2.17, 0.00)",+   "info": false+  },+  {+   "check": "land fit pad 2",+   "pass": true,+   "detail": "100 % of the terminal on pad 2 (2.15 x 3.50 at 2.17, 0.00)",+   "info": false+  },+  {+   "check": "original not on LCSC",+   "pass": true,+   "detail": "searched AMPLH5030S-150MT, AMPLH5030S150MT, AMPLH5030S on 2026-10-05: not found",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:20+00:00",+ "facts": "design/swaps/L1.json",+ "notes": "Abracon AMPLH5030S is not stocked at JLCPCB/LCSC. Same 15 uH, same 2.8 mm height, molded, shielded, 5.4 x 5.2 mm body whose 1.5 x 2.2 mm terminals land inside the existing 2.15 x 3.5 mm pads. Weaker than the Abracon (Isat 3.0 vs 3.7 A, DCR 165 vs 118 mOhm max) but inside every limit the design sets."+}\ No newline at end of file
design/swaps/R3.jsonadded+44
@@ -0,0 +1,44 @@+{+ "ref": "R3",+ "kind": "resistor",+ "profile": "jlcpcb",+ "reason": "basic-part",+ "original": {+  "mpn": "CR0402-FX-1002GLF",+  "manufacturer": "Bourns",+  "datasheet": "Bourns CR Series datasheet REV. 03/21 (thick film, 1%, 1/16 W, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 10000,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  }+ },+ "candidate": {+  "mpn": "0402WGF1002TCE",+  "manufacturer": "UNI-ROYAL",+  "lcsc": "C25744",+  "stock": 21539575,+  "stockChecked": "2026-10-05",+  "datasheet": "JLCPCB/LCSC part page (UNI-ROYAL 0402WGF series: thick film 1%, 62.5 mW, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 10000,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  },+  "jlcLibrary": "Basic",+  "jlcLibraryChecked": "2026-10-05 jlcpcb.com/partdetail/C25744"+ },+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/R3.result.jsonadded+54
@@ -0,0 +1,54 @@+{+ "ref": "R3",+ "original": "CR0402-FX-1002GLF",+ "candidate": "0402WGF1002TCE",+ "lcsc": "C25744",+ "verdict": "PASS",+ "checks": [+  {+   "check": "R_ohm",+   "pass": true,+   "detail": "10000 vs 10000 (original +/-1 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": true,+   "detail": "1 % vs 1 %",+   "info": false+  },+  {+   "check": "voltage_V",+   "pass": true,+   "detail": "50 vs original 50 (needs >=)",+   "info": false+  },+  {+   "check": "power_W",+   "pass": true,+   "detail": "0.0625 vs original 0.0625 (needs >=)",+   "info": false+  },+  {+   "check": "tcr_ppm",+   "pass": true,+   "detail": "100 vs original 100 (needs <=)",+   "info": false+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 155] covers [-55, 155]",+   "info": false+  },+  {+   "check": "candidate is a JLCPCB basic part",+   "pass": true,+   "detail": "Basic (checked on 2026-10-05 jlcpcb.com/partdetail/C25744)",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:26+00:00",+ "facts": "design/swaps/R3.json",+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/R4.jsonadded+44
@@ -0,0 +1,44 @@+{+ "ref": "R4",+ "kind": "resistor",+ "profile": "jlcpcb",+ "reason": "basic-part",+ "original": {+  "mpn": "CR0402-FX-1004GLF",+  "manufacturer": "Bourns",+  "datasheet": "Bourns CR Series datasheet REV. 03/21 (thick film, 1%, 1/16 W, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 1000000.0,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  }+ },+ "candidate": {+  "mpn": "0402WGF1004TCE",+  "manufacturer": "UNI-ROYAL",+  "lcsc": "C26083",+  "stock": 2465211,+  "stockChecked": "2026-10-05",+  "datasheet": "JLCPCB/LCSC part page (UNI-ROYAL 0402WGF series: thick film 1%, 62.5 mW, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 1000000.0,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  },+  "jlcLibrary": "Basic",+  "jlcLibraryChecked": "2026-10-05 jlcpcb.com/partdetail/C26083"+ },+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/R4.result.jsonadded+54
@@ -0,0 +1,54 @@+{+ "ref": "R4",+ "original": "CR0402-FX-1004GLF",+ "candidate": "0402WGF1004TCE",+ "lcsc": "C26083",+ "verdict": "PASS",+ "checks": [+  {+   "check": "R_ohm",+   "pass": true,+   "detail": "1e+06 vs 1e+06 (original +/-1 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": true,+   "detail": "1 % vs 1 %",+   "info": false+  },+  {+   "check": "voltage_V",+   "pass": true,+   "detail": "50 vs original 50 (needs >=)",+   "info": false+  },+  {+   "check": "power_W",+   "pass": true,+   "detail": "0.0625 vs original 0.0625 (needs >=)",+   "info": false+  },+  {+   "check": "tcr_ppm",+   "pass": true,+   "detail": "100 vs original 100 (needs <=)",+   "info": false+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 155] covers [-55, 155]",+   "info": false+  },+  {+   "check": "candidate is a JLCPCB basic part",+   "pass": true,+   "detail": "Basic (checked on 2026-10-05 jlcpcb.com/partdetail/C26083)",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:30+00:00",+ "facts": "design/swaps/R4.json",+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/R6.jsonadded+44
@@ -0,0 +1,44 @@+{+ "ref": "R6",+ "kind": "resistor",+ "profile": "jlcpcb",+ "reason": "basic-part",+ "original": {+  "mpn": "CR0402-FX-2201GLF",+  "manufacturer": "Bourns",+  "datasheet": "Bourns CR Series datasheet REV. 03/21 (thick film, 1%, 1/16 W, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 2200,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  }+ },+ "candidate": {+  "mpn": "0402WGF2201TCE",+  "manufacturer": "UNI-ROYAL",+  "lcsc": "C25879",+  "stock": 2192872,+  "stockChecked": "2026-10-05",+  "datasheet": "JLCPCB/LCSC part page (UNI-ROYAL 0402WGF series: thick film 1%, 62.5 mW, 50 V, TCR +/-100 ppm, -55 to 155 C)",+  "params": {+   "R_ohm": 2200,+   "tol_pct": 1,+   "power_W": 0.0625,+   "voltage_V": 50,+   "tcr_ppm": 100,+   "temp_C": [+    -55,+    155+   ]+  },+  "jlcLibrary": "Basic",+  "jlcLibraryChecked": "2026-10-05 jlcpcb.com/partdetail/C25879"+ },+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file
design/swaps/R6.result.jsonadded+54
@@ -0,0 +1,54 @@+{+ "ref": "R6",+ "original": "CR0402-FX-2201GLF",+ "candidate": "0402WGF2201TCE",+ "lcsc": "C25879",+ "verdict": "PASS",+ "checks": [+  {+   "check": "R_ohm",+   "pass": true,+   "detail": "2200 vs 2200 (original +/-1 %)",+   "info": false+  },+  {+   "check": "tolerance",+   "pass": true,+   "detail": "1 % vs 1 %",+   "info": false+  },+  {+   "check": "voltage_V",+   "pass": true,+   "detail": "50 vs original 50 (needs >=)",+   "info": false+  },+  {+   "check": "power_W",+   "pass": true,+   "detail": "0.0625 vs original 0.0625 (needs >=)",+   "info": false+  },+  {+   "check": "tcr_ppm",+   "pass": true,+   "detail": "100 vs original 100 (needs <=)",+   "info": false+  },+  {+   "check": "temperature range",+   "pass": true,+   "detail": "[-55, 155] covers [-55, 155]",+   "info": false+  },+  {+   "check": "candidate is a JLCPCB basic part",+   "pass": true,+   "detail": "Basic (checked on 2026-10-05 jlcpcb.com/partdetail/C25879)",+   "info": false+  }+ ],+ "checkedAt": "2026-10-05T14:07:33+00:00",+ "facts": "design/swaps/R6.json",+ "notes": "Same value, package and ratings; JLCPCB basic part, so no $3 extended-part fee for this line."+}\ No newline at end of file