Working interactive autofill

This commit is contained in:
Kelvin Ly 2019-11-21 07:48:54 -05:00
parent 7db1980084
commit a5616f2c07
2 changed files with 111 additions and 40 deletions

View File

@ -10,6 +10,8 @@
import argparse
from six.moves import input
DISTRIBUTOR_VALUES = ["\"Mouser\""]
class Component(object):
@ -95,12 +97,22 @@ def parse_lines(f):
lines.append(line)
return (lines, components)
def infer_components(components):
def quotify(s):
if not s.startswith('"'):
s = '"' + s
if not s.endswith('"'):
s = s + '"'
return s
def infer_components(components, interactive):
# dictionaries in dictionaries:
# distributor = (distributor_type, id) so that non-unique ids can be captured
# filled_values[cls][value] = [(footprint, [designators], [distributors])]
filled_values = dict()
# used in interactive mode to store skipped components
skipped = dict()
# first pass to infer footprints and distributors, second pass to fill in details
for c in components:
if c.cls is None or len(c.cls) == 0:
@ -108,6 +120,8 @@ def infer_components(components):
else:
if c.cls not in filled_values:
filled_values[c.cls] = dict()
if c.cls not in skipped:
skipped[c.cls] = dict()
if c.value is not None and len(c.value) > 2:
if c.value not in filled_values[c.cls]:
@ -125,6 +139,22 @@ def infer_components(components):
if found is None:
distributors = []
if interactive and c.value not in skipped[c.cls] and len(c.distributors) == 0:
new_distr = input("enter a distributor for {} ({} {}) (leave empty to skip): ".format(c.cls, c.value, c.footprint)).strip()
if len(new_distr) == 0:
skipped[c.cls][c.value] = True
continue
if new_distr.startswith('m') or new_distr.startswith('M'):
new_distr = '"Mouser"'
if new_distr.startswith('d') or new_distr.startswith('D'):
new_distr = '"Digikey"'
new_partnum = input("enter a part number for {} ({} {}) (leave empty to skip): ".format(c.cls, c.value, c.footprint)).strip()
if len(new_partnum) == 0:
skipped[c.cls][c.value] = True
continue
new_distr = quotify(new_distr)
new_partnum = quotify(new_partnum)
distributors.append((new_distr, new_partnum))
for dist in c.distributors:
if len(c.distributors[dist].id) > 2 and len(dist) > 2:
distributors.append((dist, c.distributors[dist].id))
@ -137,11 +167,34 @@ def infer_components(components):
if not any([dist == m[0] and c.distributors[dist].id == m[1]
for m in tosearch[i][2]]):
tosearch[i][2].append((dist, c.distributors[dist].id))
elif interactive and c.value not in skipped[c.cls] and len(filled_values[c.cls][c.value]) == 0:
new_distr = input("enter a distributor for {} ({}) (leave empty to skip): ".format(c.cls, c.value)).strip()
if len(new_distr) == 0:
skipped[c.cls][c.value] = True
continue
if new_distr.startswith('m') or new_distr.startswith('M'):
new_distr = '"Mouser"'
if new_distr.startswith('d') or new_distr.startswith('D'):
new_distr = '"Digikey"'
new_partnum = input("enter a part number for {} ({}) (leave empty to skip): ".format(c.cls, c.value)).strip()
if len(new_partnum) == 0:
skipped[c.cls][c.value] = True
continue
new_footprint = input("enter a footprint for {} ({}) (leave empty to skip): ".format(c.cls, c.value)).strip()
if len(new_footprint) == 0:
skipped[c.cls][c.value] = True
continue
new_footprint = quotify(new_footprint)
new_distr = quotify(new_distr)
new_partnum = quotify(new_partnum)
filled_values[c.cls][c.value].append((new_footprint, [], [(new_distr, new_partnum)]))
return filled_values
def main():
parser = argparse.ArgumentParser(description="Autofills components in an Eeschema schematic")
parser.add_argument("-i", "--include", action="append", help="additional files to read in, for component inference")
parser.add_argument("-t", "--interactive", action="store_true", help="additional files to read in, for component inference")
parser.add_argument("input", help="file to autofill")
parser.add_argument("output", help="file to write autofilled schematic to")
@ -173,7 +226,7 @@ def main():
print("found {} more components without footprints".format(more_without_footprints))
all_components.extend(more_components)
filled_values = infer_components(all_components)
filled_values = infer_components(all_components, args.interactive)
entry_count = 0
conflicts = []

View File

@ -245,6 +245,7 @@ F 0 "C33" H 9310 2120 50 0000 L CNN
F 1 "1 uF X5R 16V" H 9310 1970 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 9300 2050 50 0001 C CNN
F 3 "~" H 9300 2050 50 0001 C CNN
F 4 "603-CC603KRX5R6BB105" H 9300 2050 50 0001 C CNN "Mouser"
1 9300 2050
0 -1 1 0
$EndComp
@ -262,7 +263,7 @@ U 1 1 5DCFB16E
P 8900 2050
F 0 "C30" H 8910 2120 50 0000 L CNN
F 1 "10 uF" H 8910 1970 50 0000 L CNN
F 2 "" H 8900 2050 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 8900 2050 50 0001 C CNN
F 3 "~" H 8900 2050 50 0001 C CNN
1 8900 2050
-1 0 0 -1
@ -417,8 +418,9 @@ U 1 1 5DD27CB7
P 12250 1950
F 0 "C47" H 12260 2020 50 0000 L CNN
F 1 "0.1 uF X5R 25V" H 12260 1870 50 0000 L CNN
F 2 "" H 12250 1950 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 12250 1950 50 0001 C CNN
F 3 "~" H 12250 1950 50 0001 C CNN
F 4 "81-GRM155R61H104KE9D" H 12250 1950 50 0001 C CNN "Mouser"
1 12250 1950
0 -1 -1 0
$EndComp
@ -428,7 +430,7 @@ U 1 1 5DD28318
P 12250 2200
F 0 "C48" H 12260 2270 50 0000 L CNN
F 1 "10 uF" H 12260 2120 50 0000 L CNN
F 2 "" H 12250 2200 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 12250 2200 50 0001 C CNN
F 3 "~" H 12250 2200 50 0001 C CNN
1 12250 2200
0 -1 -1 0
@ -682,8 +684,9 @@ U 1 1 5DD7C3FF
P 11200 3850
F 0 "C44" H 11210 3920 50 0000 L CNN
F 1 "0.1 uF X5R 25V" H 11210 3770 50 0000 L CNN
F 2 "" H 11200 3850 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 11200 3850 50 0001 C CNN
F 3 "~" H 11200 3850 50 0001 C CNN
F 4 "81-GRM155R61H104KE9D" H 11200 3850 50 0001 C CNN "Mouser"
1 11200 3850
1 0 0 -1
$EndComp
@ -1112,8 +1115,9 @@ U 1 1 5DF957F0
P 15250 2600
F 0 "C54" H 15260 2670 50 0000 L CNN
F 1 "0.1 uF" H 15260 2520 50 0000 L CNN
F 2 "" H 15250 2600 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 15250 2600 50 0001 C CNN
F 3 "~" H 15250 2600 50 0001 C CNN
F 4 "80-C0402C104M4P" H 15250 2600 50 0001 C CNN "Mouser"
1 15250 2600
1 0 0 -1
$EndComp
@ -1172,7 +1176,7 @@ U 1 1 5DFDCC1D
P 15550 2600
F 0 "C56" H 15560 2670 50 0000 L CNN
F 1 "10 uF" H 15560 2520 50 0000 L CNN
F 2 "" H 15550 2600 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 15550 2600 50 0001 C CNN
F 3 "~" H 15550 2600 50 0001 C CNN
1 15550 2600
1 0 0 -1
@ -1664,8 +1668,9 @@ U 1 1 5E36569F
P 7450 4600
F 0 "C24" H 7460 4670 50 0000 L CNN
F 1 "0.1 uF" H 7460 4520 50 0000 L CNN
F 2 "" H 7450 4600 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 7450 4600 50 0001 C CNN
F 3 "~" H 7450 4600 50 0001 C CNN
F 4 "80-C0402C104M4P" H 7450 4600 50 0001 C CNN "Mouser"
1 7450 4600
1 0 0 -1
$EndComp
@ -1799,7 +1804,7 @@ U 1 1 5E4A1C41
P 4250 4750
F 0 "C9" H 4260 4820 50 0000 L CNN
F 1 "1.5 nF" H 4260 4670 50 0000 L CNN
F 2 "" H 4250 4750 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 4250 4750 50 0001 C CNN
F 3 "~" H 4250 4750 50 0001 C CNN
1 4250 4750
1 0 0 -1
@ -2120,7 +2125,7 @@ U 1 1 5E4E886E
P 4200 9650
F 0 "R7" H 4230 9670 50 0000 L CNN
F 1 "100kR" H 4230 9610 50 0000 L CNN
F 2 "" H 4200 9650 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4200 9650 50 0001 C CNN
F 3 "~" H 4200 9650 50 0001 C CNN
1 4200 9650
1 0 0 -1
@ -2145,7 +2150,7 @@ U 1 1 5E6587C1
P 11850 7500
F 0 "R36" H 11880 7520 50 0000 L CNN
F 1 "100kR" H 11880 7460 50 0000 L CNN
F 2 "" H 11850 7500 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 11850 7500 50 0001 C CNN
F 3 "~" H 11850 7500 50 0001 C CNN
1 11850 7500
1 0 0 -1
@ -2156,7 +2161,7 @@ U 1 1 5E658CA1
P 11650 7100
F 0 "R33" H 11680 7120 50 0000 L CNN
F 1 "100kR" H 11680 7060 50 0000 L CNN
F 2 "" H 11650 7100 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 11650 7100 50 0001 C CNN
F 3 "~" H 11650 7100 50 0001 C CNN
1 11650 7100
1 0 0 -1
@ -2185,7 +2190,7 @@ U 1 1 5E657E86
P 11750 7300
F 0 "R35" H 11780 7320 50 0000 L CNN
F 1 "100kR" H 11780 7260 50 0000 L CNN
F 2 "" H 11750 7300 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 11750 7300 50 0001 C CNN
F 3 "~" H 11750 7300 50 0001 C CNN
1 11750 7300
1 0 0 -1
@ -2213,8 +2218,9 @@ U 1 1 5E956FF2
P 10700 9700
F 0 "C40" H 10710 9770 50 0000 L CNN
F 1 "0.1 uF" H 10710 9620 50 0000 L CNN
F 2 "" H 10700 9700 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 10700 9700 50 0001 C CNN
F 3 "~" H 10700 9700 50 0001 C CNN
F 4 "80-C0402C104M4P" H 10700 9700 50 0001 C CNN "Mouser"
1 10700 9700
1 0 0 -1
$EndComp
@ -2244,8 +2250,9 @@ U 1 1 5E9DE3C2
P 6600 7000
F 0 "C22" H 6610 7070 50 0000 L CNN
F 1 "0.1 uF" H 6610 6920 50 0000 L CNN
F 2 "" H 6600 7000 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 6600 7000 50 0001 C CNN
F 3 "~" H 6600 7000 50 0001 C CNN
F 4 "80-C0402C104M4P" H 6600 7000 50 0001 C CNN "Mouser"
1 6600 7000
-1 0 0 -1
$EndComp
@ -2276,8 +2283,9 @@ U 1 1 5EA9193C
P 8950 9650
F 0 "C31" H 8960 9720 50 0000 L CNN
F 1 "0.1 uF" H 8960 9570 50 0000 L CNN
F 2 "" H 8950 9650 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 8950 9650 50 0001 C CNN
F 3 "~" H 8950 9650 50 0001 C CNN
F 4 "80-C0402C104M4P" H 8950 9650 50 0001 C CNN "Mouser"
1 8950 9650
1 0 0 -1
$EndComp
@ -2325,8 +2333,9 @@ U 1 1 5EC7010D
P 8600 9300
F 0 "C28" H 8610 9370 50 0000 L CNN
F 1 "0.1 uF" H 8610 9220 50 0000 L CNN
F 2 "" H 8600 9300 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 8600 9300 50 0001 C CNN
F 3 "~" H 8600 9300 50 0001 C CNN
F 4 "80-C0402C104M4P" H 8600 9300 50 0001 C CNN "Mouser"
1 8600 9300
1 0 0 -1
$EndComp
@ -2356,7 +2365,7 @@ U 1 1 5ED43F9D
P 11450 2950
F 0 "R30" H 11480 2970 50 0000 L CNN
F 1 "100kR" H 11480 2910 50 0000 L CNN
F 2 "" H 11450 2950 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 11450 2950 50 0001 C CNN
F 3 "~" H 11450 2950 50 0001 C CNN
1 11450 2950
0 -1 1 0
@ -2514,8 +2523,9 @@ U 1 1 5F00BAF5
P 10150 7350
F 0 "C37" H 10160 7420 50 0000 L CNN
F 1 "0.1 uF" H 10160 7270 50 0000 L CNN
F 2 "" H 10150 7350 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 10150 7350 50 0001 C CNN
F 3 "~" H 10150 7350 50 0001 C CNN
F 4 "80-C0402C104M4P" H 10150 7350 50 0001 C CNN "Mouser"
1 10150 7350
1 0 0 1
$EndComp
@ -2541,7 +2551,7 @@ U 1 1 5F05C90A
P 10000 7350
F 0 "C35" H 10010 7420 50 0000 L CNN
F 1 "10 uF" H 10010 7270 50 0000 L CNN
F 2 "" H 10000 7350 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 10000 7350 50 0001 C CNN
F 3 "~" H 10000 7350 50 0001 C CNN
1 10000 7350
-1 0 0 1
@ -2568,7 +2578,7 @@ U 1 1 5F0AA767
P 10250 9300
F 0 "C38" H 10260 9370 50 0000 L CNN
F 1 "10 nF" H 10260 9220 50 0000 L CNN
F 2 "" H 10250 9300 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 10250 9300 50 0001 C CNN
F 3 "~" H 10250 9300 50 0001 C CNN
1 10250 9300
1 0 0 -1
@ -2579,8 +2589,9 @@ U 1 1 5F0DA717
P 10500 9300
F 0 "C39" H 10510 9370 50 0000 L CNN
F 1 "0.1 uF" H 10510 9220 50 0000 L CNN
F 2 "" H 10500 9300 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 10500 9300 50 0001 C CNN
F 3 "~" H 10500 9300 50 0001 C CNN
F 4 "80-C0402C104M4P" H 10500 9300 50 0001 C CNN "Mouser"
1 10500 9300
1 0 0 -1
$EndComp
@ -2639,8 +2650,9 @@ U 1 1 5F17BAC2
P 5400 7750
F 0 "C15" H 5410 7820 50 0000 L CNN
F 1 "0.1 uF" H 5410 7670 50 0000 L CNN
F 2 "" H 5400 7750 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 5400 7750 50 0001 C CNN
F 3 "~" H 5400 7750 50 0001 C CNN
F 4 "80-C0402C104M4P" H 5400 7750 50 0001 C CNN "Mouser"
1 5400 7750
-1 0 0 -1
$EndComp
@ -2688,7 +2700,7 @@ U 1 1 5F3E27F6
P 11050 9700
F 0 "C42" H 11060 9770 50 0000 L CNN
F 1 "10 uF DNP" H 11060 9620 50 0000 L CNN
F 2 "" H 11050 9700 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 11050 9700 50 0001 C CNN
F 3 "~" H 11050 9700 50 0001 C CNN
1 11050 9700
1 0 0 -1
@ -2719,7 +2731,7 @@ U 1 1 5F46830A
P 9300 9650
F 0 "C34" H 9310 9720 50 0000 L CNN
F 1 "10 uF DNP" H 9310 9570 50 0000 L CNN
F 2 "" H 9300 9650 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 9300 9650 50 0001 C CNN
F 3 "~" H 9300 9650 50 0001 C CNN
1 9300 9650
1 0 0 -1
@ -2839,7 +2851,7 @@ U 1 1 5F8F59EA
P 4300 9800
F 0 "R9" H 4330 9820 50 0000 L CNN
F 1 "100kR" H 4330 9760 50 0000 L CNN
F 2 "" H 4300 9800 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4300 9800 50 0001 C CNN
F 3 "~" H 4300 9800 50 0001 C CNN
1 4300 9800
1 0 0 -1
@ -2865,7 +2877,7 @@ U 1 1 5F9E0448
P 4150 6900
F 0 "R6" H 4180 6920 50 0000 L CNN
F 1 "100kR" H 4180 6860 50 0000 L CNN
F 2 "" H 4150 6900 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4150 6900 50 0001 C CNN
F 3 "~" H 4150 6900 50 0001 C CNN
1 4150 6900
1 0 0 -1
@ -2876,7 +2888,7 @@ U 1 1 5F9E044E
P 4250 7100
F 0 "R8" H 4280 7120 50 0000 L CNN
F 1 "100kR" H 4280 7060 50 0000 L CNN
F 2 "" H 4250 7100 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4250 7100 50 0001 C CNN
F 3 "~" H 4250 7100 50 0001 C CNN
1 4250 7100
1 0 0 -1
@ -2887,7 +2899,7 @@ U 1 1 5F9E0454
P 4350 7250
F 0 "R10" H 4380 7270 50 0000 L CNN
F 1 "100kR" H 4380 7210 50 0000 L CNN
F 2 "" H 4350 7250 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4350 7250 50 0001 C CNN
F 3 "~" H 4350 7250 50 0001 C CNN
1 4350 7250
1 0 0 -1
@ -2927,7 +2939,7 @@ U 1 1 5FF81CEA
P 1750 9350
F 0 "R2" H 1780 9370 50 0000 L CNN
F 1 "100kR" H 1780 9310 50 0000 L CNN
F 2 "" H 1750 9350 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 1750 9350 50 0001 C CNN
F 3 "~" H 1750 9350 50 0001 C CNN
1 1750 9350
-1 0 0 -1
@ -2973,7 +2985,7 @@ U 1 1 5F8F5DB3
P 4400 9950
F 0 "R12" H 4430 9970 50 0000 L CNN
F 1 "100kR" H 4430 9910 50 0000 L CNN
F 2 "" H 4400 9950 50 0001 C CNN
F 2 "Resistor_SMD:R_0402_1005Metric" H 4400 9950 50 0001 C CNN
F 3 "~" H 4400 9950 50 0001 C CNN
1 4400 9950
1 0 0 -1
@ -2989,7 +3001,7 @@ U 1 1 603E813F
P 15450 1100
F 0 "C55" H 15460 1170 50 0000 L CNN
F 1 "10 uF" H 15460 1020 50 0000 L CNN
F 2 "" H 15450 1100 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 15450 1100 50 0001 C CNN
F 3 "~" H 15450 1100 50 0001 C CNN
1 15450 1100
1 0 0 -1
@ -3000,8 +3012,9 @@ U 1 1 603E878E
P 15150 1100
F 0 "C53" H 15160 1170 50 0000 L CNN
F 1 "0.1 uF" H 15160 1020 50 0000 L CNN
F 2 "" H 15150 1100 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 15150 1100 50 0001 C CNN
F 3 "~" H 15150 1100 50 0001 C CNN
F 4 "80-C0402C104M4P" H 15150 1100 50 0001 C CNN "Mouser"
1 15150 1100
1 0 0 -1
$EndComp
@ -3236,8 +3249,9 @@ U 1 1 60DBF04E
P 4250 6400
F 0 "C11" H 4260 6470 50 0000 L CNN
F 1 "0.1 uF" H 4260 6320 50 0000 L CNN
F 2 "" H 4250 6400 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 4250 6400 50 0001 C CNN
F 3 "~" H 4250 6400 50 0001 C CNN
F 4 "80-C0402C104M4P" H 4250 6400 50 0001 C CNN "Mouser"
1 4250 6400
0 -1 -1 0
$EndComp
@ -3247,7 +3261,7 @@ U 1 1 60DBF054
P 4250 6100
F 0 "C10" H 4260 6170 50 0000 L CNN
F 1 "10 uF" H 4260 6020 50 0000 L CNN
F 2 "" H 4250 6100 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 4250 6100 50 0001 C CNN
F 3 "~" H 4250 6100 50 0001 C CNN
1 4250 6100
0 -1 -1 0
@ -3268,6 +3282,7 @@ F 0 "C5" H 3560 9820 50 0000 L CNN
F 1 "0.1 uF" H 3560 9670 50 0000 L CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 3550 9750 50 0001 C CNN
F 3 "~" H 3550 9750 50 0001 C CNN
F 4 "80-C0402C104M4P" H 3550 9750 50 0001 C CNN "Mouser"
1 3550 9750
1 0 0 -1
$EndComp
@ -3365,8 +3380,9 @@ U 1 1 61129BB4
P 4350 9050
F 0 "C13" H 4360 9120 50 0000 L CNN
F 1 "0.1 uF" H 4360 8970 50 0000 L CNN
F 2 "" H 4350 9050 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 4350 9050 50 0001 C CNN
F 3 "~" H 4350 9050 50 0001 C CNN
F 4 "80-C0402C104M4P" H 4350 9050 50 0001 C CNN "Mouser"
1 4350 9050
0 -1 -1 0
$EndComp
@ -3376,7 +3392,7 @@ U 1 1 61129BBA
P 4350 8750
F 0 "C12" H 4360 8820 50 0000 L CNN
F 1 "10 uF" H 4360 8670 50 0000 L CNN
F 2 "" H 4350 8750 50 0001 C CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 4350 8750 50 0001 C CNN
F 3 "~" H 4350 8750 50 0001 C CNN
1 4350 8750
0 -1 -1 0
@ -3539,8 +3555,9 @@ U 1 1 61464188
P 8550 5350
F 0 "C26" H 8560 5420 50 0000 L CNN
F 1 "0.1 uF" H 8560 5270 50 0000 L CNN
F 2 "" H 8550 5350 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 8550 5350 50 0001 C CNN
F 3 "~" H 8550 5350 50 0001 C CNN
F 4 "80-C0402C104M4P" H 8550 5350 50 0001 C CNN "Mouser"
1 8550 5350
0 1 -1 0
$EndComp
@ -3658,8 +3675,9 @@ U 1 1 61BDB2F4
P 10750 5250
F 0 "C41" H 10760 5320 50 0000 L CNN
F 1 "0.1 uF" H 10760 5170 50 0000 L CNN
F 2 "" H 10750 5250 50 0001 C CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 10750 5250 50 0001 C CNN
F 3 "~" H 10750 5250 50 0001 C CNN
F 4 "80-C0402C104M4P" H 10750 5250 50 0001 C CNN "Mouser"
1 10750 5250
0 1 -1 0
$EndComp