breadkit 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.codespellignore +2 -0
- data/.yamllint +16 -0
- data/README.md +109 -6
- data/data/boards/double_full.yml +18 -0
- data/data/boards/stripboard.yml +9 -0
- data/data/boards/universal.yml +8 -0
- data/data/parts/2n3904.yml +11 -0
- data/data/parts/2n7000_onsemi_to92.yml +10 -0
- data/data/parts/74hc00.yml +22 -0
- data/data/parts/74hc04.yml +22 -0
- data/data/parts/74hc08.yml +22 -0
- data/data/parts/74hc14.yml +22 -0
- data/data/parts/74hc165.yml +24 -0
- data/data/parts/74hc32.yml +22 -0
- data/data/parts/74hc595.yml +24 -0
- data/data/parts/active_buzzer.yml +8 -0
- data/data/parts/ams1117_3v3.yml +12 -0
- data/data/parts/arduino_nano.yml +70 -0
- data/data/parts/arduino_uno.yml +29 -26
- data/data/parts/atmega328p.yml +37 -0
- data/data/parts/attiny85.yml +16 -0
- data/data/parts/battery_box.yml +8 -0
- data/data/parts/cd4017.yml +24 -0
- data/data/parts/ck_bd04.yml +29 -0
- data/data/parts/crystal.yml +7 -0
- data/data/parts/dc_jack_2wire.yml +8 -0
- data/data/parts/diode.yml +1 -0
- data/data/parts/esp32_devkitc_v4_wroom32e.yml +86 -0
- data/data/parts/irlz44n.yml +10 -0
- data/data/parts/l293d.yml +24 -0
- data/data/parts/led.yml +1 -0
- data/data/parts/lm358.yml +16 -0
- data/data/parts/lm393.yml +16 -0
- data/data/parts/ne555.yml +2 -2
- data/data/parts/ntc_thermistor.yml +7 -0
- data/data/parts/photoresistor.yml +8 -0
- data/data/parts/pico.yml +89 -0
- data/data/parts/resistor.yml +1 -0
- data/data/parts/sc56_11ewa.yml +30 -0
- data/data/parts/seeed_xiao_samd21.yml +37 -0
- data/data/parts/shillehtek_mb102_4pin.yml +23 -0
- data/data/parts/slide_switch_spst.yml +8 -0
- data/data/parts/sparkfun_pro_micro_5v.yml +58 -0
- data/data/parts/transistor.yml +0 -1
- data/data/parts/ua7805.yml +10 -0
- data/data/parts/uln2003a.yml +23 -0
- data/data/parts/wp154a4sureqbfzgc.yml +11 -0
- data/docs/CLI.md +108 -0
- data/docs/COMPATIBILITY.md +60 -0
- data/docs/DECLARATIVE.md +138 -0
- data/docs/IR.md +42 -0
- data/docs/JUMPER_KIT.md +45 -0
- data/docs/LOCK.md +75 -0
- data/docs/LSP.md +59 -0
- data/docs/MB102_POWER.md +11 -0
- data/docs/MCP.md +44 -0
- data/docs/RAKE.md +19 -0
- data/docs/dsl.md +197 -6
- data/exe/breadkit-lsp +13 -0
- data/exe/breadkit-mcp +12 -0
- data/lib/breadkit/analysis.rb +174 -50
- data/lib/breadkit/board.rb +152 -4
- data/lib/breadkit/cli.rb +229 -13
- data/lib/breadkit/color.rb +38 -0
- data/lib/breadkit/dc_analysis.rb +261 -0
- data/lib/breadkit/dsl.rb +205 -24
- data/lib/breadkit/exporters.rb +202 -0
- data/lib/breadkit/formatter.rb +52 -0
- data/lib/breadkit/fritzing_export.rb +256 -0
- data/lib/breadkit/ir.rb +154 -22
- data/lib/breadkit/jumper_kit.rb +127 -0
- data/lib/breadkit/lsp_server.rb +248 -0
- data/lib/breadkit/mcp_server.rb +133 -0
- data/lib/breadkit/model.rb +47 -5
- data/lib/breadkit/part_library.rb +156 -3
- data/lib/breadkit/part_lock.rb +107 -0
- data/lib/breadkit/patterns.rb +119 -0
- data/lib/breadkit/rake_task.rb +25 -0
- data/lib/breadkit/resolver.rb +160 -28
- data/lib/breadkit/structured_input.rb +275 -0
- data/lib/breadkit/templates/555.bk.rb +34 -0
- data/lib/breadkit/templates/arduino.bk.rb +17 -0
- data/lib/breadkit/templates/led.bk.rb +21 -0
- data/lib/breadkit/value.rb +42 -3
- data/lib/breadkit/version.rb +1 -1
- data/lib/breadkit/wire_suggestions.rb +106 -0
- data/lib/breadkit.rb +28 -3
- data/package.json +1 -1
- data/schema/board-v1.json +38 -0
- data/schema/ir-v1.json +56 -11
- data/schema/ir-v2.json +173 -0
- data/schema/part-v1.json +52 -4
- data/sig/breadkit.rbs +107 -5
- metadata +119 -14
- data/docs/assets/01_led_button.svg +0 -12
- data/site/assets/01_led_button.svg +0 -14
- data/site/assets/03_arduino_blink.svg +0 -14
- data/site/favicon.svg +0 -7
- data/site/guide/components/index.html +0 -113
- data/site/guide/dsl/index.html +0 -132
- data/site/guide/index.html +0 -163
- data/site/index.html +0 -95
- data/site/styles.css +0 -14
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Four separate SPST positions. PnA/PnB are logical position-side names, not manufacturer terminal numbers.
|
|
2
|
+
# The datasheet gives 7.55 mm between contact rows. Three breadboard pitches are 7.62 mm.
|
|
3
|
+
# https://www.littelfuse.com/assetdocs/littelfuse-ck-dip-bd-series-datasheet?assetguid=c1d4e4f2-7607-4309-afba-ad965b566d35
|
|
4
|
+
id: ck_bd04
|
|
5
|
+
category: switch
|
|
6
|
+
placement: footprint
|
|
7
|
+
straddle: true
|
|
8
|
+
datasheet_url: https://www.littelfuse.com/assetdocs/littelfuse-ck-dip-bd-series-datasheet?assetguid=c1d4e4f2-7607-4309-afba-ad965b566d35
|
|
9
|
+
pins:
|
|
10
|
+
- {num: P1A, type: passive}
|
|
11
|
+
- {num: P1B, type: passive}
|
|
12
|
+
- {num: P2A, type: passive}
|
|
13
|
+
- {num: P2B, type: passive}
|
|
14
|
+
- {num: P3A, type: passive}
|
|
15
|
+
- {num: P3B, type: passive}
|
|
16
|
+
- {num: P4A, type: passive}
|
|
17
|
+
- {num: P4B, type: passive}
|
|
18
|
+
footprint:
|
|
19
|
+
P1A: [0, 0]
|
|
20
|
+
P1B: [0, 3]
|
|
21
|
+
P2A: [1, 0]
|
|
22
|
+
P2B: [1, 3]
|
|
23
|
+
P3A: [2, 0]
|
|
24
|
+
P3B: [2, 3]
|
|
25
|
+
P4A: [3, 0]
|
|
26
|
+
P4B: [3, 3]
|
|
27
|
+
switch: [[P1A, P1B], [P2A, P2B], [P3A, P3B], [P4A, P4B]]
|
|
28
|
+
independent_switches: true
|
|
29
|
+
render: {shape: generic, label: C&K BD04}
|
data/data/parts/diode.yml
CHANGED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# https://docs.espressif.com/projects/esp-dev-kits/en/latest/esp32/esp32-devkitc/user_guide.html
|
|
2
|
+
# FLASH_* header pins are reserved for the module's SPI flash and must not be used for external wiring.
|
|
3
|
+
id: esp32_devkitc_v4_wroom32e
|
|
4
|
+
category: module
|
|
5
|
+
placement: footprint
|
|
6
|
+
straddle: true
|
|
7
|
+
pins:
|
|
8
|
+
- {num: 1, name: 3V3, type: power}
|
|
9
|
+
- {num: 2, name: EN, type: reset}
|
|
10
|
+
- {num: 3, name: VP, type: input, aliases: [GPIO36], max_voltage: 3.3}
|
|
11
|
+
- {num: 4, name: VN, type: input, aliases: [GPIO39], max_voltage: 3.3}
|
|
12
|
+
- {num: 5, name: IO34, type: input, aliases: [GPIO34], max_voltage: 3.3}
|
|
13
|
+
- {num: 6, name: IO35, type: input, aliases: [GPIO35], max_voltage: 3.3}
|
|
14
|
+
- {num: 7, name: IO32, type: gpio, aliases: [GPIO32], max_voltage: 3.3, output_capable: true}
|
|
15
|
+
- {num: 8, name: IO33, type: gpio, aliases: [GPIO33], max_voltage: 3.3, output_capable: true}
|
|
16
|
+
- {num: 9, name: IO25, type: gpio, aliases: [GPIO25], max_voltage: 3.3, output_capable: true}
|
|
17
|
+
- {num: 10, name: IO26, type: gpio, aliases: [GPIO26], max_voltage: 3.3, output_capable: true}
|
|
18
|
+
- {num: 11, name: IO27, type: gpio, aliases: [GPIO27], max_voltage: 3.3, output_capable: true}
|
|
19
|
+
- {num: 12, name: IO14, type: gpio, aliases: [GPIO14], max_voltage: 3.3, output_capable: true}
|
|
20
|
+
- {num: 13, name: IO12, type: gpio, aliases: [GPIO12], max_voltage: 3.3, output_capable: true}
|
|
21
|
+
- {num: 14, name: GND1, type: ground, aliases: [GND]}
|
|
22
|
+
- {num: 15, name: IO13, type: gpio, aliases: [GPIO13], max_voltage: 3.3, output_capable: true}
|
|
23
|
+
- {num: 16, name: FLASH_D2, type: data}
|
|
24
|
+
- {num: 17, name: FLASH_D3, type: data}
|
|
25
|
+
- {num: 18, name: FLASH_CMD, type: data}
|
|
26
|
+
- {num: 19, name: 5V, type: power}
|
|
27
|
+
- {num: 20, name: FLASH_CLK, type: data}
|
|
28
|
+
- {num: 21, name: FLASH_D0, type: data}
|
|
29
|
+
- {num: 22, name: FLASH_D1, type: data}
|
|
30
|
+
- {num: 23, name: IO15, type: gpio, aliases: [GPIO15], max_voltage: 3.3, output_capable: true}
|
|
31
|
+
- {num: 24, name: IO2, type: gpio, aliases: [GPIO2], max_voltage: 3.3, output_capable: true}
|
|
32
|
+
- {num: 25, name: IO0, type: gpio, aliases: [GPIO0], max_voltage: 3.3, output_capable: true}
|
|
33
|
+
- {num: 26, name: IO4, type: gpio, aliases: [GPIO4], max_voltage: 3.3, output_capable: true}
|
|
34
|
+
- {num: 27, name: IO16, type: gpio, aliases: [GPIO16], max_voltage: 3.3, output_capable: true}
|
|
35
|
+
- {num: 28, name: IO17, type: gpio, aliases: [GPIO17], max_voltage: 3.3, output_capable: true}
|
|
36
|
+
- {num: 29, name: IO5, type: gpio, aliases: [GPIO5], max_voltage: 3.3, output_capable: true}
|
|
37
|
+
- {num: 30, name: IO18, type: gpio, aliases: [GPIO18], max_voltage: 3.3, output_capable: true}
|
|
38
|
+
- {num: 31, name: IO19, type: gpio, aliases: [GPIO19], max_voltage: 3.3, output_capable: true}
|
|
39
|
+
- {num: 32, name: GND2, type: ground}
|
|
40
|
+
- {num: 33, name: IO21, type: gpio, aliases: [GPIO21], max_voltage: 3.3, output_capable: true}
|
|
41
|
+
- {num: 34, name: RX, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
42
|
+
- {num: 35, name: TX, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
43
|
+
- {num: 36, name: IO22, type: gpio, aliases: [GPIO22], max_voltage: 3.3, output_capable: true}
|
|
44
|
+
- {num: 37, name: IO23, type: gpio, aliases: [GPIO23], max_voltage: 3.3, output_capable: true}
|
|
45
|
+
- {num: 38, name: GND3, type: ground}
|
|
46
|
+
internal: [[GND1, GND2], [GND2, GND3]]
|
|
47
|
+
footprint:
|
|
48
|
+
"1": [0, 0]
|
|
49
|
+
"2": [1, 0]
|
|
50
|
+
"3": [2, 0]
|
|
51
|
+
"4": [3, 0]
|
|
52
|
+
"5": [4, 0]
|
|
53
|
+
"6": [5, 0]
|
|
54
|
+
"7": [6, 0]
|
|
55
|
+
"8": [7, 0]
|
|
56
|
+
"9": [8, 0]
|
|
57
|
+
"10": [9, 0]
|
|
58
|
+
"11": [10, 0]
|
|
59
|
+
"12": [11, 0]
|
|
60
|
+
"13": [12, 0]
|
|
61
|
+
"14": [13, 0]
|
|
62
|
+
"15": [14, 0]
|
|
63
|
+
"16": [15, 0]
|
|
64
|
+
"17": [16, 0]
|
|
65
|
+
"18": [17, 0]
|
|
66
|
+
"19": [18, 0]
|
|
67
|
+
"20": [18, 10]
|
|
68
|
+
"21": [17, 10]
|
|
69
|
+
"22": [16, 10]
|
|
70
|
+
"23": [15, 10]
|
|
71
|
+
"24": [14, 10]
|
|
72
|
+
"25": [13, 10]
|
|
73
|
+
"26": [12, 10]
|
|
74
|
+
"27": [11, 10]
|
|
75
|
+
"28": [10, 10]
|
|
76
|
+
"29": [9, 10]
|
|
77
|
+
"30": [8, 10]
|
|
78
|
+
"31": [7, 10]
|
|
79
|
+
"32": [6, 10]
|
|
80
|
+
"33": [5, 10]
|
|
81
|
+
"34": [4, 10]
|
|
82
|
+
"35": [3, 10]
|
|
83
|
+
"36": [2, 10]
|
|
84
|
+
"37": [1, 10]
|
|
85
|
+
"38": [0, 10]
|
|
86
|
+
render: {shape: module, label: ESP32 DevKitC V4, size_mm: [48.26, 27.94], fill: "#2C2C2A", stroke: "#171715", text_color: "#FFFFFF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Infineon TO-220AB, front view: gate, drain, source.
|
|
2
|
+
# https://www.infineon.com/assets/row/public/documents/24/49/infineon-irlz44n-datasheet-en.pdf
|
|
3
|
+
id: irlz44n
|
|
4
|
+
category: mosfet
|
|
5
|
+
placement: leads
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: gate, aliases: [g]}
|
|
8
|
+
- {num: 2, name: drain, aliases: [d]}
|
|
9
|
+
- {num: 3, name: source, aliases: [s]}
|
|
10
|
+
render: {shape: generic}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# https://www.ti.com/lit/ds/symlink/l293.pdf
|
|
2
|
+
id: l293d
|
|
3
|
+
category: ic
|
|
4
|
+
placement: dip
|
|
5
|
+
package: {pins: 16}
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: EN12, type: input}
|
|
8
|
+
- {num: 2, name: 1A, type: input}
|
|
9
|
+
- {num: 3, name: 1Y, type: output}
|
|
10
|
+
- {num: 4, name: GND1, type: ground}
|
|
11
|
+
- {num: 5, name: GND2, type: ground}
|
|
12
|
+
- {num: 6, name: 2Y, type: output}
|
|
13
|
+
- {num: 7, name: 2A, type: input}
|
|
14
|
+
- {num: 8, name: VCC2, type: power}
|
|
15
|
+
- {num: 9, name: EN34, type: input}
|
|
16
|
+
- {num: 10, name: 3A, type: input}
|
|
17
|
+
- {num: 11, name: 3Y, type: output}
|
|
18
|
+
- {num: 12, name: GND3, type: ground}
|
|
19
|
+
- {num: 13, name: GND4, type: ground}
|
|
20
|
+
- {num: 14, name: 4Y, type: output}
|
|
21
|
+
- {num: 15, name: 4A, type: input}
|
|
22
|
+
- {num: 16, name: VCC1, type: power}
|
|
23
|
+
internal: [[GND1, GND2], [GND2, GND3], [GND3, GND4]]
|
|
24
|
+
render: {shape: dip, label: L293D}
|
data/data/parts/led.yml
CHANGED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# https://www.ti.com/lit/ds/symlink/lm358.pdf
|
|
2
|
+
id: lm358
|
|
3
|
+
category: ic
|
|
4
|
+
placement: dip
|
|
5
|
+
package: {pins: 8}
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: OUT1, type: output}
|
|
8
|
+
- {num: 2, name: IN1_MINUS, type: input}
|
|
9
|
+
- {num: 3, name: IN1_PLUS, type: input}
|
|
10
|
+
- {num: 4, name: V_MINUS, type: power}
|
|
11
|
+
- {num: 5, name: IN2_PLUS, type: input}
|
|
12
|
+
- {num: 6, name: IN2_MINUS, type: input}
|
|
13
|
+
- {num: 7, name: OUT2, type: output}
|
|
14
|
+
- {num: 8, name: V_PLUS, type: power}
|
|
15
|
+
supply_range: [3, 30]
|
|
16
|
+
render: {shape: dip, label: LM358}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# https://www.ti.com/lit/ds/symlink/lm393.pdf
|
|
2
|
+
id: lm393
|
|
3
|
+
category: ic
|
|
4
|
+
placement: dip
|
|
5
|
+
package: {pins: 8}
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: OUT1, type: open_drain}
|
|
8
|
+
- {num: 2, name: IN1_MINUS, type: input}
|
|
9
|
+
- {num: 3, name: IN1_PLUS, type: input}
|
|
10
|
+
- {num: 4, name: GND, type: ground}
|
|
11
|
+
- {num: 5, name: IN2_PLUS, type: input}
|
|
12
|
+
- {num: 6, name: IN2_MINUS, type: input}
|
|
13
|
+
- {num: 7, name: OUT2, type: open_drain}
|
|
14
|
+
- {num: 8, name: VCC, type: power}
|
|
15
|
+
supply_range: [2, 36]
|
|
16
|
+
render: {shape: dip, label: LM393}
|
data/data/parts/ne555.yml
CHANGED
|
@@ -4,13 +4,13 @@ category: ic
|
|
|
4
4
|
placement: dip
|
|
5
5
|
package: {pins: 8}
|
|
6
6
|
pins:
|
|
7
|
-
- {num: 1, name: GND,
|
|
7
|
+
- {num: 1, name: GND, type: ground}
|
|
8
8
|
- {num: 2, name: TRIG}
|
|
9
9
|
- {num: 3, name: OUT}
|
|
10
10
|
- {num: 4, name: RESET}
|
|
11
11
|
- {num: 5, name: CTRL}
|
|
12
12
|
- {num: 6, name: THR}
|
|
13
13
|
- {num: 7, name: DIS}
|
|
14
|
-
- {num: 8, name: VCC,
|
|
14
|
+
- {num: 8, name: VCC, type: power}
|
|
15
15
|
supply_range: [4.5, 16.0]
|
|
16
16
|
render: {shape: dip, label: NE555}
|
data/data/parts/pico.yml
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
# https://datasheets.raspberrypi.com/pico/Pico-2-Pinout.pdf
|
|
2
|
+
id: pico
|
|
3
|
+
category: module
|
|
4
|
+
placement: footprint
|
|
5
|
+
straddle: true
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: GP0, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
8
|
+
- {num: 2, name: GP1, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
9
|
+
- {num: 3, name: GND1, type: ground, aliases: [GND]}
|
|
10
|
+
- {num: 4, name: GP2, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
11
|
+
- {num: 5, name: GP3, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
12
|
+
- {num: 6, name: GP4, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
13
|
+
- {num: 7, name: GP5, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
14
|
+
- {num: 8, name: GND2, type: ground}
|
|
15
|
+
- {num: 9, name: GP6, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
16
|
+
- {num: 10, name: GP7, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
17
|
+
- {num: 11, name: GP8, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
18
|
+
- {num: 12, name: GP9, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
19
|
+
- {num: 13, name: GND3, type: ground}
|
|
20
|
+
- {num: 14, name: GP10, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
21
|
+
- {num: 15, name: GP11, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
22
|
+
- {num: 16, name: GP12, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
23
|
+
- {num: 17, name: GP13, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
24
|
+
- {num: 18, name: GND4, type: ground}
|
|
25
|
+
- {num: 19, name: GP14, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
26
|
+
- {num: 20, name: GP15, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
27
|
+
- {num: 21, name: GP16, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
28
|
+
- {num: 22, name: GP17, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
29
|
+
- {num: 23, name: GND5, type: ground}
|
|
30
|
+
- {num: 24, name: GP18, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
31
|
+
- {num: 25, name: GP19, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
32
|
+
- {num: 26, name: GP20, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
33
|
+
- {num: 27, name: GP21, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
34
|
+
- {num: 28, name: GND6, type: ground}
|
|
35
|
+
- {num: 29, name: GP22, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
36
|
+
- {num: 30, name: RUN, type: reset}
|
|
37
|
+
- {num: 31, name: GP26, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
38
|
+
- {num: 32, name: GP27, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
39
|
+
- {num: 33, name: AGND, type: ground}
|
|
40
|
+
- {num: 34, name: GP28, type: gpio, max_voltage: 3.3, output_capable: true}
|
|
41
|
+
- {num: 35, name: ADC_VREF, type: analog}
|
|
42
|
+
- {num: 36, name: 3V3_OUT, type: power, aliases: [3V3]}
|
|
43
|
+
- {num: 37, name: 3V3_EN, type: input}
|
|
44
|
+
- {num: 38, name: GND7, type: ground}
|
|
45
|
+
- {num: 39, name: VSYS, type: power}
|
|
46
|
+
- {num: 40, name: VBUS, type: power}
|
|
47
|
+
internal: [[GND1, GND2], [GND2, GND3], [GND3, GND4], [GND4, GND5], [GND5, GND6], [GND6, AGND], [AGND, GND7]]
|
|
48
|
+
footprint:
|
|
49
|
+
"1": [0, 0]
|
|
50
|
+
"2": [1, 0]
|
|
51
|
+
"3": [2, 0]
|
|
52
|
+
"4": [3, 0]
|
|
53
|
+
"5": [4, 0]
|
|
54
|
+
"6": [5, 0]
|
|
55
|
+
"7": [6, 0]
|
|
56
|
+
"8": [7, 0]
|
|
57
|
+
"9": [8, 0]
|
|
58
|
+
"10": [9, 0]
|
|
59
|
+
"11": [10, 0]
|
|
60
|
+
"12": [11, 0]
|
|
61
|
+
"13": [12, 0]
|
|
62
|
+
"14": [13, 0]
|
|
63
|
+
"15": [14, 0]
|
|
64
|
+
"16": [15, 0]
|
|
65
|
+
"17": [16, 0]
|
|
66
|
+
"18": [17, 0]
|
|
67
|
+
"19": [18, 0]
|
|
68
|
+
"20": [19, 0]
|
|
69
|
+
"21": [19, 7]
|
|
70
|
+
"22": [18, 7]
|
|
71
|
+
"23": [17, 7]
|
|
72
|
+
"24": [16, 7]
|
|
73
|
+
"25": [15, 7]
|
|
74
|
+
"26": [14, 7]
|
|
75
|
+
"27": [13, 7]
|
|
76
|
+
"28": [12, 7]
|
|
77
|
+
"29": [11, 7]
|
|
78
|
+
"30": [10, 7]
|
|
79
|
+
"31": [9, 7]
|
|
80
|
+
"32": [8, 7]
|
|
81
|
+
"33": [7, 7]
|
|
82
|
+
"34": [6, 7]
|
|
83
|
+
"35": [5, 7]
|
|
84
|
+
"36": [4, 7]
|
|
85
|
+
"37": [3, 7]
|
|
86
|
+
"38": [2, 7]
|
|
87
|
+
"39": [1, 7]
|
|
88
|
+
"40": [0, 7]
|
|
89
|
+
render: {shape: module, label: Raspberry Pi Pico, size_mm: [51, 21], fill: "#2C2C2A", stroke: "#171715", text_color: "#FFFFFF"}
|
data/data/parts/resistor.yml
CHANGED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Kingbright SC56-11EWA: 0.56-inch common-cathode display.
|
|
2
|
+
# https://www.kingbrightusa.com/images/catalog/spec/sc56-11ewa.pdf
|
|
3
|
+
id: sc56_11ewa
|
|
4
|
+
category: display
|
|
5
|
+
placement: footprint
|
|
6
|
+
straddle: true
|
|
7
|
+
pins:
|
|
8
|
+
- {num: 1, name: E, type: input}
|
|
9
|
+
- {num: 2, name: D, type: input}
|
|
10
|
+
- {num: 3, name: CATHODE1, type: passive, aliases: [CATHODE]}
|
|
11
|
+
- {num: 4, name: C, type: input}
|
|
12
|
+
- {num: 5, name: DP, type: input}
|
|
13
|
+
- {num: 6, name: B, type: input}
|
|
14
|
+
- {num: 7, name: A, type: input}
|
|
15
|
+
- {num: 8, name: CATHODE2, type: passive}
|
|
16
|
+
- {num: 9, name: F, type: input}
|
|
17
|
+
- {num: 10, name: G, type: input}
|
|
18
|
+
internal: [[CATHODE1, CATHODE2]]
|
|
19
|
+
footprint:
|
|
20
|
+
"1": [0, 0]
|
|
21
|
+
"2": [1, 0]
|
|
22
|
+
"3": [2, 0]
|
|
23
|
+
"4": [3, 0]
|
|
24
|
+
"5": [4, 0]
|
|
25
|
+
"6": [4, 6]
|
|
26
|
+
"7": [3, 6]
|
|
27
|
+
"8": [2, 6]
|
|
28
|
+
"9": [1, 6]
|
|
29
|
+
"10": [0, 6]
|
|
30
|
+
render: {shape: seven_segment, label: SC56-11EWA}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# https://wiki.seeedstudio.com/Seeeduino-XIAO/
|
|
2
|
+
# Synthetic pin numbers: left header top to bottom, then right header bottom to top.
|
|
3
|
+
id: seeed_xiao_samd21
|
|
4
|
+
category: module
|
|
5
|
+
placement: footprint
|
|
6
|
+
straddle: true
|
|
7
|
+
pins:
|
|
8
|
+
- {num: 1, name: D0, type: gpio, aliases: [A0], max_voltage: 3.3, output_capable: true}
|
|
9
|
+
- {num: 2, name: D1, type: gpio, aliases: [A1], max_voltage: 3.3, output_capable: true}
|
|
10
|
+
- {num: 3, name: D2, type: gpio, aliases: [A2], max_voltage: 3.3, output_capable: true}
|
|
11
|
+
- {num: 4, name: D3, type: gpio, aliases: [A3], max_voltage: 3.3, output_capable: true}
|
|
12
|
+
- {num: 5, name: D4, type: gpio, aliases: [A4, SDA], max_voltage: 3.3, output_capable: true}
|
|
13
|
+
- {num: 6, name: D5, type: gpio, aliases: [A5, SCL], max_voltage: 3.3, output_capable: true}
|
|
14
|
+
- {num: 7, name: D6, type: gpio, aliases: [A6, TX], max_voltage: 3.3, output_capable: true}
|
|
15
|
+
- {num: 8, name: D7, type: gpio, aliases: [A7, RX], max_voltage: 3.3, output_capable: true}
|
|
16
|
+
- {num: 9, name: D8, type: gpio, aliases: [A8, SCK], max_voltage: 3.3, output_capable: true}
|
|
17
|
+
- {num: 10, name: D9, type: gpio, aliases: [A9, MISO], max_voltage: 3.3, output_capable: true}
|
|
18
|
+
- {num: 11, name: D10, type: gpio, aliases: [A10, MOSI], max_voltage: 3.3, output_capable: true}
|
|
19
|
+
- {num: 12, name: 3V3, type: power}
|
|
20
|
+
- {num: 13, name: GND, type: ground}
|
|
21
|
+
- {num: 14, name: 5V, type: power}
|
|
22
|
+
footprint:
|
|
23
|
+
"1": [0, 0]
|
|
24
|
+
"2": [1, 0]
|
|
25
|
+
"3": [2, 0]
|
|
26
|
+
"4": [3, 0]
|
|
27
|
+
"5": [4, 0]
|
|
28
|
+
"6": [5, 0]
|
|
29
|
+
"7": [6, 0]
|
|
30
|
+
"8": [6, 6]
|
|
31
|
+
"9": [5, 6]
|
|
32
|
+
"10": [4, 6]
|
|
33
|
+
"11": [3, 6]
|
|
34
|
+
"12": [2, 6]
|
|
35
|
+
"13": [1, 6]
|
|
36
|
+
"14": [0, 6]
|
|
37
|
+
render: {shape: module, label: XIAO SAMD21, size_mm: [21, 17.5], fill: "#2C2C2A", stroke: "#171715", text_color: "#FFFFFF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# ShillehTek four-contact underside variant only. Other MB102 modules can differ.
|
|
2
|
+
# No fixed footprint: the four rail holes must be supplied from the actual module and breadboard.
|
|
3
|
+
id: shillehtek_mb102_4pin
|
|
4
|
+
category: power
|
|
5
|
+
placement: footprint
|
|
6
|
+
datasheet_url: https://shillehtek.com/blogs/shillehtek-product-manuals/mb102-breadboard-power-supply-3-3v-5v
|
|
7
|
+
pins:
|
|
8
|
+
- {num: LP, name: LEFT_POS, type: power, mount: rail}
|
|
9
|
+
- {num: LG, name: LEFT_GND, type: ground, mount: rail}
|
|
10
|
+
- {num: RP, name: RIGHT_POS, type: power, mount: rail}
|
|
11
|
+
- {num: RG, name: RIGHT_GND, type: ground, mount: rail}
|
|
12
|
+
internal: [[LEFT_GND, RIGHT_GND]]
|
|
13
|
+
attributes:
|
|
14
|
+
master: ["on", "off"]
|
|
15
|
+
left: ["v5", "v3_3", "off"]
|
|
16
|
+
right: ["v5", "v3_3", "off"]
|
|
17
|
+
required_attributes: [master, left, right]
|
|
18
|
+
provides:
|
|
19
|
+
- {positive: LEFT_POS, negative: LEFT_GND, voltage: 5, when: {master: "on", left: "v5"}}
|
|
20
|
+
- {positive: LEFT_POS, negative: LEFT_GND, voltage: 3.3, when: {master: "on", left: "v3_3"}}
|
|
21
|
+
- {positive: RIGHT_POS, negative: RIGHT_GND, voltage: 5, when: {master: "on", right: "v5"}}
|
|
22
|
+
- {positive: RIGHT_POS, negative: RIGHT_GND, voltage: 3.3, when: {master: "on", right: "v3_3"}}
|
|
23
|
+
render: {shape: generic, label: ShillehTek MB102 (logical)}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# https://cdn.sparkfun.com/datasheets/Dev/Arduino/Boards/ProMicro16MHzv1.pdf
|
|
2
|
+
# Synthetic pin numbers: left header top to bottom, then right header bottom to top.
|
|
3
|
+
id: sparkfun_pro_micro_5v
|
|
4
|
+
category: module
|
|
5
|
+
placement: footprint
|
|
6
|
+
straddle: true
|
|
7
|
+
pins:
|
|
8
|
+
- {num: 1, name: D1, type: gpio, aliases: [TXO], max_voltage: 5, output_capable: true}
|
|
9
|
+
- {num: 2, name: D0, type: gpio, aliases: [RXI], max_voltage: 5, output_capable: true}
|
|
10
|
+
- {num: 3, name: GND1, type: ground, aliases: [GND]}
|
|
11
|
+
- {num: 4, name: GND2, type: ground}
|
|
12
|
+
- {num: 5, name: D2, type: gpio, max_voltage: 5, output_capable: true}
|
|
13
|
+
- {num: 6, name: D3, type: gpio, max_voltage: 5, output_capable: true}
|
|
14
|
+
- {num: 7, name: D4, type: gpio, aliases: [A6], max_voltage: 5, output_capable: true}
|
|
15
|
+
- {num: 8, name: D5, type: gpio, max_voltage: 5, output_capable: true}
|
|
16
|
+
- {num: 9, name: D6, type: gpio, aliases: [A7], max_voltage: 5, output_capable: true}
|
|
17
|
+
- {num: 10, name: D7, type: gpio, max_voltage: 5, output_capable: true}
|
|
18
|
+
- {num: 11, name: D8, type: gpio, aliases: [A8], max_voltage: 5, output_capable: true}
|
|
19
|
+
- {num: 12, name: D9, type: gpio, aliases: [A9], max_voltage: 5, output_capable: true}
|
|
20
|
+
- {num: 13, name: D10, type: gpio, aliases: [A10], max_voltage: 5, output_capable: true}
|
|
21
|
+
- {num: 14, name: D16, type: gpio, aliases: [MOSI], max_voltage: 5, output_capable: true}
|
|
22
|
+
- {num: 15, name: D14, type: gpio, aliases: [MISO], max_voltage: 5, output_capable: true}
|
|
23
|
+
- {num: 16, name: D15, type: gpio, aliases: [SCK], max_voltage: 5, output_capable: true}
|
|
24
|
+
- {num: 17, name: A0, type: gpio, max_voltage: 5, output_capable: true}
|
|
25
|
+
- {num: 18, name: A1, type: gpio, max_voltage: 5, output_capable: true}
|
|
26
|
+
- {num: 19, name: A2, type: gpio, max_voltage: 5, output_capable: true}
|
|
27
|
+
- {num: 20, name: A3, type: gpio, max_voltage: 5, output_capable: true}
|
|
28
|
+
- {num: 21, name: VCC, type: power}
|
|
29
|
+
- {num: 22, name: RST, type: reset}
|
|
30
|
+
- {num: 23, name: GND3, type: ground}
|
|
31
|
+
- {num: 24, name: RAW, type: power}
|
|
32
|
+
internal: [[GND1, GND2], [GND2, GND3]]
|
|
33
|
+
footprint:
|
|
34
|
+
"1": [0, 0]
|
|
35
|
+
"2": [1, 0]
|
|
36
|
+
"3": [2, 0]
|
|
37
|
+
"4": [3, 0]
|
|
38
|
+
"5": [4, 0]
|
|
39
|
+
"6": [5, 0]
|
|
40
|
+
"7": [6, 0]
|
|
41
|
+
"8": [7, 0]
|
|
42
|
+
"9": [8, 0]
|
|
43
|
+
"10": [9, 0]
|
|
44
|
+
"11": [10, 0]
|
|
45
|
+
"12": [11, 0]
|
|
46
|
+
"13": [11, 6]
|
|
47
|
+
"14": [10, 6]
|
|
48
|
+
"15": [9, 6]
|
|
49
|
+
"16": [8, 6]
|
|
50
|
+
"17": [7, 6]
|
|
51
|
+
"18": [6, 6]
|
|
52
|
+
"19": [5, 6]
|
|
53
|
+
"20": [4, 6]
|
|
54
|
+
"21": [3, 6]
|
|
55
|
+
"22": [2, 6]
|
|
56
|
+
"23": [1, 6]
|
|
57
|
+
"24": [0, 6]
|
|
58
|
+
render: {shape: module, label: SparkFun Pro Micro 5V, size_mm: [33, 18], fill: "#2C2C2A", stroke: "#171715", text_color: "#FFFFFF"}
|
data/data/parts/transistor.yml
CHANGED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# TI uA7805 TO-220 (KC), front view: input, common, output.
|
|
2
|
+
# https://www.ti.com/lit/ds/symlink/ua78.pdf
|
|
3
|
+
id: ua7805
|
|
4
|
+
category: regulator
|
|
5
|
+
placement: leads
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: INPUT, type: power}
|
|
8
|
+
- {num: 2, name: GND, type: ground}
|
|
9
|
+
- {num: 3, name: OUTPUT, type: power}
|
|
10
|
+
render: {shape: generic}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# https://www.ti.com/lit/ds/symlink/uln2003a.pdf
|
|
2
|
+
id: uln2003a
|
|
3
|
+
category: ic
|
|
4
|
+
placement: dip
|
|
5
|
+
package: {pins: 16}
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: 1B, type: input}
|
|
8
|
+
- {num: 2, name: 2B, type: input}
|
|
9
|
+
- {num: 3, name: 3B, type: input}
|
|
10
|
+
- {num: 4, name: 4B, type: input}
|
|
11
|
+
- {num: 5, name: 5B, type: input}
|
|
12
|
+
- {num: 6, name: 6B, type: input}
|
|
13
|
+
- {num: 7, name: 7B, type: input}
|
|
14
|
+
- {num: 8, name: E, type: ground}
|
|
15
|
+
- {num: 9, name: COM, type: passive}
|
|
16
|
+
- {num: 10, name: 7C, type: open_drain}
|
|
17
|
+
- {num: 11, name: 6C, type: open_drain}
|
|
18
|
+
- {num: 12, name: 5C, type: open_drain}
|
|
19
|
+
- {num: 13, name: 4C, type: open_drain}
|
|
20
|
+
- {num: 14, name: 3C, type: open_drain}
|
|
21
|
+
- {num: 15, name: 2C, type: open_drain}
|
|
22
|
+
- {num: 16, name: 1C, type: open_drain}
|
|
23
|
+
render: {shape: dip, label: ULN2003A}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Kingbright 5 mm RGB LED, common cathode; 1.27 mm lead pitch requires lead forming for a breadboard.
|
|
2
|
+
# https://www.kingbrightusa.com/images/catalog/spec/WP154A4SUREQBFZGC.pdf
|
|
3
|
+
id: wp154a4sureqbfzgc
|
|
4
|
+
category: display
|
|
5
|
+
placement: leads
|
|
6
|
+
pins:
|
|
7
|
+
- {num: 1, name: RED, type: input}
|
|
8
|
+
- {num: 2, name: CATHODE, type: passive}
|
|
9
|
+
- {num: 3, name: BLUE, type: input}
|
|
10
|
+
- {num: 4, name: GREEN, type: input}
|
|
11
|
+
render: {shape: rgb_led_5mm, label: RGB LED}
|