From 9e54d02e39e4da476d36c19fee2ac907f622833c Mon Sep 17 00:00:00 2001 From: Tobias Falk Date: Wed, 19 Jun 2024 13:02:13 +0200 Subject: [PATCH] Added tutorial09 for shorts and loops --- tutorial/readme.md | 69 +++++ tutorial/tutorial09.bom.tsv | 6 + tutorial/tutorial09.gv | 266 ++++++++++++++++++++ tutorial/tutorial09.html | 420 +++++++++++++++++++++++++++++++ tutorial/tutorial09.md | 4 + tutorial/tutorial09.png | Bin 0 -> 90789 bytes tutorial/tutorial09.svg | 321 +++++++++++++++++++++++ tutorial/tutorial09.yml | 56 +++++ tutorial/tutorial09_pin2pin.gvpr | 57 +++++ 9 files changed, 1199 insertions(+) create mode 100644 tutorial/tutorial09.bom.tsv create mode 100644 tutorial/tutorial09.gv create mode 100644 tutorial/tutorial09.html create mode 100644 tutorial/tutorial09.md create mode 100644 tutorial/tutorial09.png create mode 100644 tutorial/tutorial09.svg create mode 100644 tutorial/tutorial09.yml create mode 100644 tutorial/tutorial09_pin2pin.gvpr diff --git a/tutorial/readme.md b/tutorial/readme.md index 56f9cce..e7caa90 100644 --- a/tutorial/readme.md +++ b/tutorial/readme.md @@ -417,3 +417,72 @@ additional_bom_items: [Source](tutorial08.yml) - [Bill of Materials](tutorial08.bom.tsv) +## 09 - Shorts/Loops/Jumpers + +* Short and Loops + * with optional additional component + +```yaml +connectors: # This is based on tutorial3(ex1) and adds some Shorts to the connectors + X1: # An example of Shorts + type: Molex KK 254 + subtype: female + pinlabels: [GND, VCC, RX, TX, GND, VCC, GND] + shorts: # A List(Dict) of shorts is created + - SH1: [1, 5, 7] # First is the designator than a list of pins to be shorted + - SH2: [2, 6] + additional_components: # Some Additional Components to describe the short in more detail, they are not necessary if no further detail is needed + - references: SH1 + color: PK # The color of the short, can also be multicolor + manufacturer: WireViz + mpn: 42XCD42A5 + type: shortPartA + qty: 42 # The length or some other quantity + unit: mm # The unit of the qty, in this example the length + - references: SH2 + color: RD + manufacturer: WireViz + mpn: 42XCD42A5 + type: shortPartB + + X2: # An example of Loops and how an Additional Component can describe more than one Short or Loop + type: Molex KK 254 + subtype: female + pinlabels: [GND, VCC, RX, TX, GND, VCC, GND] + loops: + - LO1: [1, 5, 7] + - LO2: [2, 6] + additional_components: + - references: [LO1, LO2] # example to show how one additional_components can reference more than one short or loop + color: PK + manufacturer: WireViz + mpn: 42XCD42A5 + type: loopPartC + qty: 21 + unit: mm + +cables: + W1: + color_code: IEC + wirecount: 4 + gauge: 0.25 mm2 + show_equiv: true + length: 0.2 + shield: true + type: Serial + +connections: + - + - X1: [1-4] + - W1: [1-4] + - X2: [1,2,4,3] + - + - X1: 1 + - W1: s +``` + +![](tutorial09.png) + +[Source](tutorial09.yml) - [Bill of Materials](tutorial09.bom.tsv) + + diff --git a/tutorial/tutorial09.bom.tsv b/tutorial/tutorial09.bom.tsv new file mode 100644 index 0000000..bb6f063 --- /dev/null +++ b/tutorial/tutorial09.bom.tsv @@ -0,0 +1,6 @@ +Id Description Qty Unit Designators Manufacturer MPN +1 Cable, Serial, 4 x 0.25 mm² shielded 0.2 m W1 +2 Connector, Molex KK 254, female, 7 pins 2 X1, X2 +3 loopPartC 21 mm X2-LO1; X2-LO2 WireViz 42XCD42A5 +4 shortPartA 42 mm X1-SH1 WireViz 42XCD42A5 +5 shortPartB 1 X1-SH2 WireViz 42XCD42A5 diff --git a/tutorial/tutorial09.gv b/tutorial/tutorial09.gv new file mode 100644 index 0000000..046988e --- /dev/null +++ b/tutorial/tutorial09.gv @@ -0,0 +1,266 @@ +graph { +// Graph generated by WireViz 0.5-dev +// https://github.com/formatc1702/WireViz + graph [bgcolor="#FFFFFF" fontname=arial nodesep=0.33 rankdir=LR ranksep=2] + node [fillcolor="#FFFFFF" fontname=arial height=0 margin=0 shape=none style=filled width=0] + edge [fontname=arial style=bold] + edge [color="#FF66CC" headclip=false style="solid,bold" tailclip=false] + X1:p1j:c -- X1:p5j:c [addPTS=.18 colorPTS="#FF66CC" straight=straight] + X1:p5j:c -- X1:p7j:c [addPTS=.18 colorPTS="#FF66CC" straight=straight] + edge [color="#FF0000" headclip=false style="solid,bold" tailclip=false] + X1:p2j:c -- X1:p6j:c [addPTS=.18 colorPTS="#FF0000" straight=straight] + edge [headclip=true style=bold tailclip=true] + X1 [label=< + + + + + + + +
+ + +
X1
+
+ + + + +
Molex KK 254female7-pin
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
SH1SH2
GND1
VCC2
RX3
TX4
GND5
VCC6
GND7
+
+ + +
Additional components
+
+ + +
42 mm x SH1 x #4 (shortPartA)
+
+ + +
1 x SH2 x #5 (shortPartB)
+
+> fillcolor="#FFFFFF" shape=box style=filled] + edge [headclip=true style=bold tailclip=true] + X2 [label=< + + + + + + +
+ + +
X2
+
+ + + + +
Molex KK 254female7-pin
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1GND
2VCC
3RX
4TX
5GND
6VCC
7GND
+
+ + +
Additional components
+
+ + +
42 mm x LO1; LO2 x #3 (loopPartC)
+
+> fillcolor="#FFFFFF" shape=box style=filled] + edge [color="#000000:#FF66CC:#000000"] + X2:p1l:w -- X2:p5l:w [label=" "] + X2:p5l:w -- X2:p7l:w [label=" "] + edge [color="#000000:#FF66CC:#000000"] + X2:p2l:w -- X2:p6l:w [label=" "] + edge [color="#000000:#895956:#000000"] + X1:p1r:e -- W1:w1:w + W1:w1:e -- X2:p1l:w + W1:w1:w -- W1:w1:e [straight=straight] + edge [color="#000000:#ff0000:#000000"] + X1:p2r:e -- W1:w2:w + W1:w2:e -- X2:p2l:w + W1:w2:w -- W1:w2:e [straight=straight] + edge [color="#000000:#ff8000:#000000"] + X1:p3r:e -- W1:w3:w + W1:w3:e -- X2:p4l:w + W1:w3:w -- W1:w3:e [straight=straight] + edge [color="#000000:#ffff00:#000000"] + X1:p4r:e -- W1:w4:w + W1:w4:e -- X2:p3l:w + W1:w4:w -- W1:w4:e [straight=straight] + edge [color="#000000"] + X1:p1r:e -- W1:ws:w + W1:ws:w -- W1:ws:e [straight=straight] + W1 [label=< + + + + +
+ + +
W1
+
+ + + + + + +
Serial4x0.25 mm² (24 AWG)+ S0.2 m
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 
X1:1:GND + 1:BN + X2:1:GND
+ + +
+
X1:2:VCC + 2:RD + X2:2:VCC
+ + +
+
X1:3:RX + 3:OG + X2:4:TX
+ + +
+
X1:4:TX + 4:YE + X2:3:RX
+ + +
+
 
X1:1:GNDShield
 
+
+> fillcolor="#FFFFFF" shape=box style=filled] +} diff --git a/tutorial/tutorial09.html b/tutorial/tutorial09.html new file mode 100644 index 0000000..7e6176b --- /dev/null +++ b/tutorial/tutorial09.html @@ -0,0 +1,420 @@ + + + + + tutorial09 + + +

tutorial09

+

Diagram

+ +
+ +
+ +
+ + + + + + + + +X1 + + +X1 + +Molex KK 254 + +female + +7-pin + + +SH1 + +SH2 + + +GND + + + +1 + +VCC + + + +2 + +RX + + + +3 + +TX + + + +4 + +GND + + + +5 + +VCC + + + +6 + +GND + + + +7 + +Additional components + +42 mm x SH1 x #4 (shortPartA) + +1 x SH2 x #5 (shortPartB) + + + +X1:c--X1:c + + + + +X1:c--X1:c + + + + +X1:c--X1:c + + + + +W1 + + +W1 + +Serial + +4x + +0.25 mm² (24 AWG) + ++ S + +0.2 m +  +X1:1:GND +     1:BN     +X2:1:GND +X1:2:VCC +     2:RD     +X2:2:VCC +X1:3:RX +     3:OG     +X2:4:TX +X1:4:TX +     4:YE     +X2:3:RX +  +X1:1:GND +Shield +  + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + +X2 + + +X2 + +Molex KK 254 + +female + +7-pin + +1 + +GND + +2 + +VCC + +3 + +RX + +4 + +TX + +5 + +GND + +6 + +VCC + +7 + +GND + +Additional components + +42 mm x LO1; LO2 x #3 (loopPartC) + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +X2:w--X2:w + + + + + + + +X2:w--X2:w + + + + + + + +X2:w--X2:w + + + + + + + +__CIRCLE__1 + + + + +__CIRCLE__2 + + + + +__CIRCLE__3 + + + + +__CIRCLE__4 + + + + +__CIRCLE__5 + + + + +__CIRCLE__6 + + + + + +
+ +
+ +
+ +

Bill of Materials

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
IdDescriptionQtyUnitDesignatorsManufacturerMPN
1Cable, Serial, 4 x 0.25 mm² shielded0.2mW1
2Connector, Molex KK 254, female, 7 pins2X1, X2
3loopPartC21mmX2-LO1; X2-LO2WireViz42XCD42A5
4shortPartA42mmX1-SH1WireViz42XCD42A5
5shortPartB1X1-SH2WireViz42XCD42A5
+ +
+ + diff --git a/tutorial/tutorial09.md b/tutorial/tutorial09.md new file mode 100644 index 0000000..f895321 --- /dev/null +++ b/tutorial/tutorial09.md @@ -0,0 +1,4 @@ +## Shorts/Loops/Jumpers + +* Short and Loops + * with optional additional component \ No newline at end of file diff --git a/tutorial/tutorial09.png b/tutorial/tutorial09.png new file mode 100644 index 0000000000000000000000000000000000000000..3b2a64511d3e9c456e4d10dffa241d333efda8da GIT binary patch literal 90789 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 G-uZuYicjYN literal 0 HcmV?d00001 diff --git a/tutorial/tutorial09.svg b/tutorial/tutorial09.svg new file mode 100644 index 0000000..d79d05f --- /dev/null +++ b/tutorial/tutorial09.svg @@ -0,0 +1,321 @@ + + + + + + + + + +X1 + + +X1 + +Molex KK 254 + +female + +7-pin + + +SH1 + +SH2 + + +GND + + + +1 + +VCC + + + +2 + +RX + + + +3 + +TX + + + +4 + +GND + + + +5 + +VCC + + + +6 + +GND + + + +7 + +Additional components + +42 mm x SH1 x #4 (shortPartA) + +1 x SH2 x #5 (shortPartB) + + + +X1:c--X1:c + + + + +X1:c--X1:c + + + + +X1:c--X1:c + + + + +W1 + + +W1 + +Serial + +4x + +0.25 mm² (24 AWG) + ++ S + +0.2 m +  +X1:1:GND +     1:BN     +X2:1:GND +X1:2:VCC +     2:RD     +X2:2:VCC +X1:3:RX +     3:OG     +X2:4:TX +X1:4:TX +     4:YE     +X2:3:RX +  +X1:1:GND +Shield +  + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + + + +X1:e--W1:w + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + + + +W1:w--W1:e + + + + +X2 + + +X2 + +Molex KK 254 + +female + +7-pin + +1 + +GND + +2 + +VCC + +3 + +RX + +4 + +TX + +5 + +GND + +6 + +VCC + +7 + +GND + +Additional components + +42 mm x LO1; LO2 x #3 (loopPartC) + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +W1:e--X2:w + + + + + + +X2:w--X2:w + + + + + + + +X2:w--X2:w + + + + + + + +X2:w--X2:w + + + + + + + +__CIRCLE__1 + + + + +__CIRCLE__2 + + + + +__CIRCLE__3 + + + + +__CIRCLE__4 + + + + +__CIRCLE__5 + + + + +__CIRCLE__6 + + + + diff --git a/tutorial/tutorial09.yml b/tutorial/tutorial09.yml new file mode 100644 index 0000000..48a5e1f --- /dev/null +++ b/tutorial/tutorial09.yml @@ -0,0 +1,56 @@ +connectors: # This is based on tutorial3(ex1) and adds some Shorts to the connectors + X1: # An example of Shorts + type: Molex KK 254 + subtype: female + pinlabels: [GND, VCC, RX, TX, GND, VCC, GND] + shorts: # A List(Dict) of shorts is created + - SH1: [1, 5, 7] # First is the designator than a list of pins to be shorted + - SH2: [2, 6] + additional_components: # Some Additional Components to describe the short in more detail, they are not necessary if no further detail is needed + - references: SH1 + color: PK # The color of the short, can also be multicolor + manufacturer: WireViz + mpn: 42XCD42A5 + type: shortPartA + qty: 42 # The length or some other quantity + unit: mm # The unit of the qty, in this example the length + - references: SH2 + color: RD + manufacturer: WireViz + mpn: 42XCD42A5 + type: shortPartB + + X2: # An example of Loops and how an Additional Component can describe more than one Short or Loop + type: Molex KK 254 + subtype: female + pinlabels: [GND, VCC, RX, TX, GND, VCC, GND] + loops: + - LO1: [1, 5, 7] + - LO2: [2, 6] + additional_components: + - references: [LO1, LO2] # example to show how one additional_components can reference more than one short or loop + color: PK + manufacturer: WireViz + mpn: 42XCD42A5 + type: loopPartC + qty: 21 + unit: mm + +cables: + W1: + color_code: IEC + wirecount: 4 + gauge: 0.25 mm2 + show_equiv: true + length: 0.2 + shield: true + type: Serial + +connections: + - + - X1: [1-4] + - W1: [1-4] + - X2: [1,2,4,3] + - + - X1: 1 + - W1: s diff --git a/tutorial/tutorial09_pin2pin.gvpr b/tutorial/tutorial09_pin2pin.gvpr new file mode 100644 index 0000000..4c4e287 --- /dev/null +++ b/tutorial/tutorial09_pin2pin.gvpr @@ -0,0 +1,57 @@ +/******************************************************************* + + see https://forum.graphviz.org/t/straitening-one-line-throu-a-table/2196 and https://forum.graphviz.org/t/way-of-drawing-a-black-circle-inside-a-table-field/2273/12 + input must include pos values (must be output from one of the engines w/ -Tdot)# + Thanks to steveroush and FeRDNYC + +*******************************************************************/ +BEG_G{ + double x1,y1,x2,y2,x3,y3,x4,y4; + string ptSize, tok[int], pt[]; + int cnt, circ, i; + node_t aNode; + + circ=0; + +/*************************************** + $G.bb=""; + $G.nodesep=""; + $G.ranksep=""; + $G.splines="true"; +****************************************/ +} +E[straight] { + cnt=tokens($.pos,tok," "); + $.oldpos=$.pos; + x1 = xOf(tok[0]); + y1 = yOf(tok[0]); + x4 = xOf(tok[cnt-1]); + y4 = yOf(tok[cnt-1]); + x2 = x1 + (x4-x1)/3.; + y2 = y1 + (y4-y1)/3.; + x3 = x1 + 2.*(x4-x1)/3.; + y3 = y1 + 2.*(y4-y1)/3.; + pos=sprintf("%.3f,%.3f %.3f,%.3f %.3f,%.3f %.3f,%.3f", x1,y1, x2,y2, x3,y3, x4,y4); + $.label=""; // remove pesky label + $.lp=""; // remove peskier label pos + + if (hasAttr($, "addPTS") && $.addPTS!="" && $.colorPTS!=""){ + // now we place point nodes at the edge ends + pt[1] = tok[0]; + pt[2] = tok[cnt-1]; + ptSize=$.addPTS; + for (pt[i]) { + if (i==2 && pt[1]==pt[2]) + continue; + aNode=node($G, "__CIRCLE__" + (string)++circ); + aNode.pos=pt[i]; + aNode.shape="point"; + aNode.width=ptSize; + aNode.height=ptSize; + aNode.style="filled"; + aNode.fillcolor=$.colorPTS; + aNode.color=$.colorPTS; + } + } + +} \ No newline at end of file