Test autofill some parts; seems to be working

This commit is contained in:
Kelvin Ly 2019-11-22 08:12:12 -05:00
parent a5616f2c07
commit be10465b29
2 changed files with 67 additions and 17 deletions

View File

@ -104,6 +104,22 @@ def quotify(s):
s = s + '"'
return s
# TODO maybe add electrolytics to capacitor footprints
SMD_SIZES = ["0201_0603", "0402_1005", "0603_1608", "0805_2012", "1206_3216"]
C_FOOTPRINTS = dict()
R_FOOTPRINTS = dict()
L_FOOTPRINTS = dict()
for sz in SMD_SIZES:
C_FOOTPRINTS[sz] = "Capacitor_SMD:C_" + sz + "Metric"
R_FOOTPRINTS[sz] = "Resistor_SMD:R_" + sz + "Metric"
L_FOOTPRINTS[sz] = "Inductor_SMD:L_" + sz + "Metric"
FOOTPRINT_HINTS = {
"C": C_FOOTPRINTS,
"L": L_FOOTPRINTS,
"R": R_FOOTPRINTS
}
def infer_components(components, interactive):
# dictionaries in dictionaries:
# distributor = (distributor_type, id) so that non-unique ids can be captured
@ -181,11 +197,19 @@ def infer_components(components, interactive):
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()
extra = ""
if c.cls in FOOTPRINT_HINTS.keys():
HINTS = FOOTPRINT_HINTS[c.cls]
extra = " ["+" ".join(map(lambda k: "{} => {}".format(k, HINTS[k]), HINTS.keys())) + "] "
new_footprint = input("enter a footprint for {} ({}) (leave empty to skip): {}".format(c.cls, c.value, extra)).strip()
if len(new_footprint) == 0:
skipped[c.cls][c.value] = True
continue
new_footprint = quotify(new_footprint)
if c.cls in FOOTPRINT_HINTS.keys() and new_footprint in HINTS.keys():
new_footprint = quotify(HINTS[new_footprint])
else:
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)]))

View File

@ -265,6 +265,7 @@ F 0 "C30" H 8910 2120 50 0000 L CNN
F 1 "10 uF" H 8910 1970 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 8900 2050 50 0001 C CNN
F 3 "~" H 8900 2050 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 8900 2050 50 0001 C CNN "Mouser"
1 8900 2050
-1 0 0 -1
$EndComp
@ -323,6 +324,7 @@ F 0 "C32" H 9160 1820 50 0000 L CNN
F 1 "47 nF X5R 25V" H 9160 1670 50 0000 L CNN
F 2 "Capacitor_SMD:C_0402_1005Metric" H 9150 1750 50 0001 C CNN
F 3 "~" H 9150 1750 50 0001 C CNN
F 4 "810-CGA2B2X5R1E473KA" H 9150 1750 50 0001 C CNN "Mouser"
1 9150 1750
0 1 -1 0
$EndComp
@ -340,8 +342,9 @@ U 1 1 5DD068D2
P 11350 2250
F 0 "C45" H 11360 2320 50 0000 L CNN
F 1 "1 uF X5R 6.3V" H 11360 2170 50 0000 L CNN
F 2 "" H 11350 2250 50 0001 C CNN
F 2 "0402" H 11350 2250 50 0001 C CNN
F 3 "~" H 11350 2250 50 0001 C CNN
F 4 "603-CC402KRX5R5BB105" H 11350 2250 50 0001 C CNN "Mouser"
1 11350 2250
0 -1 1 0
$EndComp
@ -353,6 +356,7 @@ F 0 "C29" H 8710 1620 50 0000 L CNN
F 1 "1 uF X5R 25V" H 8710 1470 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 8700 1550 50 0001 C CNN
F 3 "~" H 8700 1550 50 0001 C CNN
F 4 "603-CC603KRX5R8BB105" H 8700 1550 50 0001 C CNN "Mouser"
1 8700 1550
0 1 -1 0
$EndComp
@ -392,8 +396,9 @@ U 1 1 5DD17052
P 11100 1850
F 0 "C43" H 11110 1920 50 0000 L CNN
F 1 "0.47 uF X5R 16V" H 11110 1770 50 0000 L CNN
F 2 "" H 11100 1850 50 0001 C CNN
F 2 "0603" H 11100 1850 50 0001 C CNN
F 3 "~" H 11100 1850 50 0001 C CNN
F 4 "603-CC603KRX5R7BB474" H 11100 1850 50 0001 C CNN "Mouser"
1 11100 1850
0 -1 -1 0
$EndComp
@ -432,6 +437,7 @@ F 0 "C48" H 12260 2270 50 0000 L CNN
F 1 "10 uF" H 12260 2120 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 12250 2200 50 0001 C CNN
F 3 "~" H 12250 2200 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 12250 2200 50 0001 C CNN "Mouser"
1 12250 2200
0 -1 -1 0
$EndComp
@ -579,8 +585,9 @@ U 1 1 5DD643DB
P 12350 2600
F 0 "R37" H 12380 2620 50 0000 L CNN
F 1 "10kR" H 12380 2560 50 0000 L CNN
F 2 "" H 12350 2600 50 0001 C CNN
F 2 "0402" H 12350 2600 50 0001 C CNN
F 3 "~" H 12350 2600 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 12350 2600 50 0001 C CNN "Mouser"
1 12350 2600
1 0 0 -1
$EndComp
@ -590,8 +597,9 @@ U 1 1 5DD64801
P 12350 2900
F 0 "R38" H 12380 2920 50 0000 L CNN
F 1 "10kR" H 12380 2860 50 0000 L CNN
F 2 "" H 12350 2900 50 0001 C CNN
F 2 "0402" H 12350 2900 50 0001 C CNN
F 3 "~" H 12350 2900 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 12350 2900 50 0001 C CNN "Mouser"
1 12350 2900
1 0 0 -1
$EndComp
@ -713,8 +721,9 @@ U 1 1 5DDB175C
P 11600 3450
F 0 "R32" H 11630 3470 50 0000 L CNN
F 1 "10kR" H 11630 3410 50 0000 L CNN
F 2 "" H 11600 3450 50 0001 C CNN
F 2 "0402" H 11600 3450 50 0001 C CNN
F 3 "~" H 11600 3450 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 11600 3450 50 0001 C CNN "Mouser"
1 11600 3450
0 -1 1 0
$EndComp
@ -724,8 +733,9 @@ U 1 1 5DDB1151
P 11600 3350
F 0 "R31" H 11630 3370 50 0000 L CNN
F 1 "10kR" H 11630 3310 50 0000 L CNN
F 2 "" H 11600 3350 50 0001 C CNN
F 2 "0402" H 11600 3350 50 0001 C CNN
F 3 "~" H 11600 3350 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 11600 3350 50 0001 C CNN "Mouser"
1 11600 3350
0 -1 -1 0
$EndComp
@ -1178,6 +1188,7 @@ F 0 "C56" H 15560 2670 50 0000 L CNN
F 1 "10 uF" H 15560 2520 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 15550 2600 50 0001 C CNN
F 3 "~" H 15550 2600 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 15550 2600 50 0001 C CNN "Mouser"
1 15550 2600
1 0 0 -1
$EndComp
@ -2391,8 +2402,9 @@ U 1 1 5EDB4734
P 6150 8650
F 0 "R19" H 6180 8670 50 0000 L CNN
F 1 "10kR" H 6180 8610 50 0000 L CNN
F 2 "" H 6150 8650 50 0001 C CNN
F 2 "0402" H 6150 8650 50 0001 C CNN
F 3 "~" H 6150 8650 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 6150 8650 50 0001 C CNN "Mouser"
1 6150 8650
-1 0 0 -1
$EndComp
@ -2553,6 +2565,7 @@ F 0 "C35" H 10010 7420 50 0000 L CNN
F 1 "10 uF" H 10010 7270 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 10000 7350 50 0001 C CNN
F 3 "~" H 10000 7350 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 10000 7350 50 0001 C CNN "Mouser"
1 10000 7350
-1 0 0 1
$EndComp
@ -2790,8 +2803,9 @@ U 1 1 5F65E73B
P 8100 7550
F 0 "R25" H 8130 7570 50 0000 L CNN
F 1 "10kR" H 8130 7510 50 0000 L CNN
F 2 "" H 8100 7550 50 0001 C CNN
F 2 "0402" H 8100 7550 50 0001 C CNN
F 3 "~" H 8100 7550 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 8100 7550 50 0001 C CNN "Mouser"
1 8100 7550
-1 0 0 -1
$EndComp
@ -2801,8 +2815,9 @@ U 1 1 5F65F099
P 8250 7550
F 0 "R26" H 8280 7570 50 0000 L CNN
F 1 "10kR" H 8280 7510 50 0000 L CNN
F 2 "" H 8250 7550 50 0001 C CNN
F 2 "0402" H 8250 7550 50 0001 C CNN
F 3 "~" H 8250 7550 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 8250 7550 50 0001 C CNN "Mouser"
1 8250 7550
1 0 0 -1
$EndComp
@ -2828,8 +2843,9 @@ U 1 1 5F799D14
P 6250 8650
F 0 "R20" H 6280 8670 50 0000 L CNN
F 1 "10kR" H 6280 8610 50 0000 L CNN
F 2 "" H 6250 8650 50 0001 C CNN
F 2 "0402" H 6250 8650 50 0001 C CNN
F 3 "~" H 6250 8650 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 6250 8650 50 0001 C CNN "Mouser"
1 6250 8650
1 0 0 -1
$EndComp
@ -3003,6 +3019,7 @@ F 0 "C55" H 15460 1170 50 0000 L CNN
F 1 "10 uF" H 15460 1020 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 15450 1100 50 0001 C CNN
F 3 "~" H 15450 1100 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 15450 1100 50 0001 C CNN "Mouser"
1 15450 1100
1 0 0 -1
$EndComp
@ -3263,6 +3280,7 @@ F 0 "C10" H 4260 6170 50 0000 L CNN
F 1 "10 uF" H 4260 6020 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 4250 6100 50 0001 C CNN
F 3 "~" H 4250 6100 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 4250 6100 50 0001 C CNN "Mouser"
1 4250 6100
0 -1 -1 0
$EndComp
@ -3294,6 +3312,7 @@ F 0 "C7" H 3860 9820 50 0000 L CNN
F 1 "10 uF" H 3860 9670 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 3850 9750 50 0001 C CNN
F 3 "~" H 3850 9750 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 3850 9750 50 0001 C CNN "Mouser"
1 3850 9750
1 0 0 -1
$EndComp
@ -3394,6 +3413,7 @@ F 0 "C12" H 4360 8820 50 0000 L CNN
F 1 "10 uF" H 4360 8670 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 4350 8750 50 0001 C CNN
F 3 "~" H 4350 8750 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 4350 8750 50 0001 C CNN "Mouser"
1 4350 8750
0 -1 -1 0
$EndComp
@ -3458,6 +3478,7 @@ F 0 "C6" H 3760 7170 50 0000 L CNN
F 1 "10 uF" H 3760 7020 50 0000 L CNN
F 2 "Capacitor_SMD:C_0603_1608Metric" H 3750 7100 50 0001 C CNN
F 3 "~" H 3750 7100 50 0001 C CNN
F 4 "963-JMK107ABJ106KA-T" H 3750 7100 50 0001 C CNN "Mouser"
1 3750 7100
1 0 0 -1
$EndComp
@ -3615,8 +3636,9 @@ U 1 1 61977BE7
P 10950 5500
F 0 "R28" H 10980 5520 50 0000 L CNN
F 1 "10kR" H 10980 5460 50 0000 L CNN
F 2 "" H 10950 5500 50 0001 C CNN
F 2 "0402" H 10950 5500 50 0001 C CNN
F 3 "~" H 10950 5500 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 10950 5500 50 0001 C CNN "Mouser"
1 10950 5500
-1 0 0 -1
$EndComp
@ -3635,8 +3657,9 @@ U 1 1 61A0AC4D
P 12750 5650
F 0 "R40" H 12780 5670 50 0000 L CNN
F 1 "10kR" H 12780 5610 50 0000 L CNN
F 2 "" H 12750 5650 50 0001 C CNN
F 2 "0402" H 12750 5650 50 0001 C CNN
F 3 "~" H 12750 5650 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 12750 5650 50 0001 C CNN "Mouser"
1 12750 5650
-1 0 0 -1
$EndComp
@ -3646,8 +3669,9 @@ U 1 1 61A0AF3E
P 12900 5650
F 0 "R41" H 12930 5670 50 0000 L CNN
F 1 "10kR" H 12930 5610 50 0000 L CNN
F 2 "" H 12900 5650 50 0001 C CNN
F 2 "0402" H 12900 5650 50 0001 C CNN
F 3 "~" H 12900 5650 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 12900 5650 50 0001 C CNN "Mouser"
1 12900 5650
1 0 0 -1
$EndComp
@ -3805,8 +3829,9 @@ U 1 1 62411A94
P 14350 7650
F 0 "R43" H 14380 7670 50 0000 L CNN
F 1 "10kR" H 14380 7610 50 0000 L CNN
F 2 "" H 14350 7650 50 0001 C CNN
F 2 "0402" H 14350 7650 50 0001 C CNN
F 3 "~" H 14350 7650 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 14350 7650 50 0001 C CNN "Mouser"
1 14350 7650
0 -1 1 0
$EndComp
@ -3816,8 +3841,9 @@ U 1 1 6241A308
P 14350 7550
F 0 "R42" H 14380 7570 50 0000 L CNN
F 1 "10kR" H 14380 7510 50 0000 L CNN
F 2 "" H 14350 7550 50 0001 C CNN
F 2 "0402" H 14350 7550 50 0001 C CNN
F 3 "~" H 14350 7550 50 0001 C CNN
F 4 "71-CRCW040210K0FKEDC" H 14350 7550 50 0001 C CNN "Mouser"
1 14350 7550
0 -1 -1 0
$EndComp