Wireviz toegevoegd

This commit is contained in:
Ton
2025-06-22 20:44:54 +02:00
parent e8473e3dc3
commit 9310a997f7
40 changed files with 6981 additions and 0 deletions

View File

@ -0,0 +1,8 @@
Id Description Qty Unit Designators
1 Connector, 16 pins 1 ESP32Expansion
2 Connector, 3 pins 2 GPIO4, GPIO8
3 Connector, 3 point, female, 3 pins 4 DS1820_Aanvoer, DS1820_Bad, DS1820_Dak, DS1820_Retour
4 Connector, female, 5 pins 1 Relay
5 Wire, 0.14 mm², BK 0.6 m DSw, Relayw
6 Wire, 0.14 mm², RD 0.6 m DSw, Relayw
7 Wire, 0.14 mm², YE 0.6 m DSw, Relayw
1 Id Description Qty Unit Designators
2 1 Connector, 16 pins 1 ESP32Expansion
3 2 Connector, 3 pins 2 GPIO4, GPIO8
4 3 Connector, 3 point, female, 3 pins 4 DS1820_Aanvoer, DS1820_Bad, DS1820_Dak, DS1820_Retour
5 4 Connector, female, 5 pins 1 Relay
6 5 Wire, 0.14 mm², BK 0.6 m DSw, Relayw
7 6 Wire, 0.14 mm², RD 0.6 m DSw, Relayw
8 7 Wire, 0.14 mm², YE 0.6 m DSw, Relayw

View File

@ -0,0 +1,857 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<meta name="generator" content="WireViz 0.4.1 - https://github.com/wireviz/WireViz">
<title>Zwembad verwarming installatie</title>
<style>
body {
font-family: arial;
background-color: #ffffff;
}
table, td, th, #frame {
border: 0.35mm solid black; /* line weight based on DIN 15 */
}
table {
padding: 0;
border-bottom: 0;
border-right: 0;
border-spacing: 0mm;
}
td, th {
border-top: 0;
border-left: 0;
overflow: hidden;
/* display: inline-block; */
white-space: nowrap;
font-size: 2.8mm;
}
/* Canvas size based on DIN 823 / DIN 6771 / EN ISO 5457 */
#frame {
position: relative;
}
.A4, .sheetsize_default { /* portrait */
width: 180mm;
height: 277mm;
}
.A3 { /* landscape */
width: 390mm;
height: 277mm;
}
.A2 { /* landscape */
width: 564mm;
height: 400mm;
}
#diagram {
position: relative;
top: 0;
left: 0;
max-width: 100%;
height: calc(100% - 13 * 4.25mm);
/* TODO: auto-adapt to height of title block + BOM table;
BOM table might be above (A4) or to the left (A3 and larger) of the title block */
text-align: center;
vertical-align: middle;
}
#diagram svg, #diagram img {
max-width: 95%;
max-height: 100%;
position: relative;
top: 50%;
transform: translateY(-50%);
}
#titleblock {
position: absolute;
bottom: 0mm;
right: -0mm;
}
#titleblock table {
width: 180mm;
height: 38.25mm;
}
#titleblock tr, #bom tr {
height: 4.25mm;
}
.A4 #bom { /* BOM on top of title block */
position: absolute;
bottom: 38.25mm;
right: 0;
}
.A3 #bom, .A2 #bom { /* BOM to the left of title block */
position: absolute;
bottom: 0mm;
left: 0mm;
}
#bom table {
width:180mm;
}
#bom th, td {
text-align: left;
}
#bom .bom_col_id {
text-align: center;
}
#bom .bom_col_qty {
text-align: right;
}
.name {
width: 16mm;
}
.date {
width: 10mm;
}
.revno {
text-align: center;
width: 6mm;
}
.changelog {
width: 22mm;
}
.process {
width: 18mm;
}
.title {
width: 82mm;
font-size: 5.6mm;
text-align: center;
white-space: normal;
}
.company {
font-size: 4mm;
text-align: center;
white-space: normal;
}
.partno {
font-size: 4mm;
text-align: center;
white-space: normal;
}
.sheetno {
width: 12.75mm;
text-align: center;
}
</style>
<style type="text/css" media="print">
@page {
size: auto;
margin: 0;
}
/* TODO: auto-adjust based on portrait (larger margin on left) or landscape (larger margin on top) */
#page {
margin: 10mm;
margin-left: 20mm;
}
</style>
</head>
<body>
<div id="page">
<div id="frame" class="A3">
<div id="diagram">
<div id="description">
<!-- %description% -->
</div>
<!-- XML and DOCTYPE declarations from SVG file removed -->
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: %3 Pages: 1 -->
<svg width="620pt" height="906pt"
viewBox="0.00 0.00 620.00 905.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 901.5)">
<title>%3</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-901.5 616,-901.5 616,4 -4,4"/>
<!-- GPIO4 -->
<g id="node1" class="node">
<title>GPIO4</title>
<polygon fill="#ffffff" stroke="black" points="82.5,-553.5 31.5,-553.5 31.5,-438.5 82.5,-438.5 82.5,-553.5"/>
<polygon fill="none" stroke="black" points="32,-530 32,-553 83,-553 83,-530 32,-530"/>
<text text-anchor="start" x="36" y="-537.8" font-family="arial" font-size="14.00">GPIO4</text>
<polygon fill="none" stroke="black" points="32,-507 32,-530 83,-530 83,-507 32,-507"/>
<text text-anchor="start" x="42" y="-514.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="32,-484 32,-507 83,-507 83,-484 32,-484"/>
<text text-anchor="start" x="42" y="-491.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="32,-461 32,-484 83,-484 83,-461 32,-461"/>
<text text-anchor="start" x="39" y="-468.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="32,-438 32,-461 83,-461 83,-438 32,-438"/>
<text text-anchor="start" x="38.5" y="-445.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DSw -->
<g id="node9" class="node">
<title>DSw</title>
<polygon fill="#ffffff" stroke="black" stroke-dasharray="5,2" points="438,-574.5 150,-574.5 150,-429.5 438,-429.5 438,-574.5"/>
<polygon fill="none" stroke="black" points="150,-553 150,-574 438,-574 438,-553 150,-553"/>
<text text-anchor="start" x="280.5" y="-560.4" font-family="arial" font-size="12.00">DSw</text>
<polygon fill="none" stroke="black" points="150,-532 150,-553 228,-553 228,-532 150,-532"/>
<text text-anchor="start" x="182.5" y="-539.4" font-family="arial" font-size="12.00">3x</text>
<polygon fill="none" stroke="black" points="228,-532 228,-553 343,-553 343,-532 228,-532"/>
<text text-anchor="start" x="260.5" y="-539.4" font-family="arial" font-size="12.00">0.14 mm²</text>
<polygon fill="none" stroke="black" points="343,-532 343,-553 438,-553 438,-532 343,-532"/>
<text text-anchor="start" x="375.5" y="-539.4" font-family="arial" font-size="12.00">0.3 m</text>
<text text-anchor="start" x="187" y="-520.4" font-family="arial" font-size="12.00"> </text>
<text text-anchor="start" x="155.5" y="-503.4" font-family="arial" font-size="12.00">GPIO4:GND</text>
<text text-anchor="start" x="233.5" y="-503.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;1:BK:GND &#160;&#160;&#160;</text>
<text text-anchor="start" x="329" y="-503.4" font-family="arial" font-size="12.00">DS1820_Dak:GND</text>
<polygon fill="#000000" stroke="transparent" points="150,-496 150,-498 438,-498 438,-496 150,-496"/>
<polygon fill="#000000" stroke="transparent" points="150,-494 150,-496 438,-496 438,-494 150,-494"/>
<polygon fill="#000000" stroke="transparent" points="150,-492 150,-494 438,-494 438,-492 150,-492"/>
<text text-anchor="start" x="153.5" y="-480.4" font-family="arial" font-size="12.00">GPIO4:+3.3V</text>
<text text-anchor="start" x="230.5" y="-480.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;2:RD:+3.3V &#160;&#160;&#160;</text>
<text text-anchor="start" x="326.5" y="-480.4" font-family="arial" font-size="12.00">DS1820_Dak:+3.3V</text>
<polygon fill="#000000" stroke="transparent" points="150,-473 150,-475 438,-475 438,-473 150,-473"/>
<polygon fill="#ff0000" stroke="transparent" points="150,-471 150,-473 438,-473 438,-471 150,-471"/>
<polygon fill="#000000" stroke="transparent" points="150,-469 150,-471 438,-471 438,-469 150,-469"/>
<text text-anchor="start" x="152" y="-457.4" font-family="arial" font-size="12.00">GPIO4:Signal</text>
<text text-anchor="start" x="230" y="-457.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;3:YE:Signal &#160;&#160;&#160;</text>
<text text-anchor="start" x="325" y="-457.4" font-family="arial" font-size="12.00">DS1820_Dak:Signal</text>
<polygon fill="#000000" stroke="transparent" points="150,-450 150,-452 438,-452 438,-450 150,-450"/>
<polygon fill="#ffff00" stroke="transparent" points="150,-448 150,-450 438,-450 438,-448 150,-448"/>
<polygon fill="#000000" stroke="transparent" points="150,-446 150,-448 438,-448 438,-446 150,-446"/>
<text text-anchor="start" x="187" y="-434.4" font-family="arial" font-size="12.00"> </text>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge1" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge3" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge5" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge7" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge9" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge11" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge13" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge15" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge17" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge19" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge21" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge23" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- DS1820_Dak -->
<g id="node2" class="node">
<title>DS1820_Dak</title>
<polygon fill="#ffffff" stroke="black" points="612,-414.5 474,-414.5 474,-299.5 612,-299.5 612,-414.5"/>
<polygon fill="none" stroke="black" points="474,-391 474,-414 612,-414 612,-391 474,-391"/>
<text text-anchor="start" x="502.5" y="-398.8" font-family="arial" font-size="14.00">DS1820_Dak</text>
<polygon fill="none" stroke="black" points="474,-368 474,-391 523,-391 523,-368 474,-368"/>
<text text-anchor="start" x="478" y="-375.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-368 523,-391 573,-391 573,-368 523,-368"/>
<text text-anchor="start" x="527" y="-375.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-368 573,-391 612,-391 612,-368 573,-368"/>
<text text-anchor="start" x="577" y="-375.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-345 474,-368 612,-368 612,-345 474,-345"/>
<text text-anchor="start" x="527.5" y="-352.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-322 474,-345 612,-345 612,-322 474,-322"/>
<text text-anchor="start" x="524.5" y="-329.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-299 474,-322 612,-322 612,-299 474,-299"/>
<text text-anchor="start" x="524" y="-306.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Bad -->
<g id="node3" class="node">
<title>DS1820_Bad</title>
<polygon fill="#ffffff" stroke="black" points="612,-275.5 474,-275.5 474,-160.5 612,-160.5 612,-275.5"/>
<polygon fill="none" stroke="black" points="474,-252 474,-275 612,-275 612,-252 474,-252"/>
<text text-anchor="start" x="502.5" y="-259.8" font-family="arial" font-size="14.00">DS1820_Bad</text>
<polygon fill="none" stroke="black" points="474,-229 474,-252 523,-252 523,-229 474,-229"/>
<text text-anchor="start" x="478" y="-236.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-229 523,-252 573,-252 573,-229 523,-229"/>
<text text-anchor="start" x="527" y="-236.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-229 573,-252 612,-252 612,-229 573,-229"/>
<text text-anchor="start" x="577" y="-236.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-206 474,-229 612,-229 612,-206 474,-206"/>
<text text-anchor="start" x="527.5" y="-213.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-183 474,-206 612,-206 612,-183 474,-183"/>
<text text-anchor="start" x="524.5" y="-190.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-160 474,-183 612,-183 612,-160 474,-160"/>
<text text-anchor="start" x="524" y="-167.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Aanvoer -->
<g id="node4" class="node">
<title>DS1820_Aanvoer</title>
<polygon fill="#ffffff" stroke="black" points="612,-692.5 474,-692.5 474,-577.5 612,-577.5 612,-692.5"/>
<polygon fill="none" stroke="black" points="474,-669 474,-692 612,-692 612,-669 474,-669"/>
<text text-anchor="start" x="489.5" y="-676.8" font-family="arial" font-size="14.00">DS1820_Aanvoer</text>
<polygon fill="none" stroke="black" points="474,-646 474,-669 523,-669 523,-646 474,-646"/>
<text text-anchor="start" x="478" y="-653.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-646 523,-669 573,-669 573,-646 523,-646"/>
<text text-anchor="start" x="527" y="-653.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-646 573,-669 612,-669 612,-646 573,-646"/>
<text text-anchor="start" x="577" y="-653.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-623 474,-646 612,-646 612,-623 474,-623"/>
<text text-anchor="start" x="527.5" y="-630.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-600 474,-623 612,-623 612,-600 474,-600"/>
<text text-anchor="start" x="524.5" y="-607.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-577 474,-600 612,-600 612,-577 474,-577"/>
<text text-anchor="start" x="524" y="-584.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Retour -->
<g id="node5" class="node">
<title>DS1820_Retour</title>
<polygon fill="#ffffff" stroke="black" points="612,-553.5 474,-553.5 474,-438.5 612,-438.5 612,-553.5"/>
<polygon fill="none" stroke="black" points="474,-530 474,-553 612,-553 612,-530 474,-530"/>
<text text-anchor="start" x="494.5" y="-537.8" font-family="arial" font-size="14.00">DS1820_Retour</text>
<polygon fill="none" stroke="black" points="474,-507 474,-530 523,-530 523,-507 474,-507"/>
<text text-anchor="start" x="478" y="-514.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-507 523,-530 573,-530 573,-507 523,-507"/>
<text text-anchor="start" x="527" y="-514.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-507 573,-530 612,-530 612,-507 573,-507"/>
<text text-anchor="start" x="577" y="-514.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-484 474,-507 612,-507 612,-484 474,-484"/>
<text text-anchor="start" x="527.5" y="-491.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-461 474,-484 612,-484 612,-461 474,-461"/>
<text text-anchor="start" x="524.5" y="-468.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-438 474,-461 612,-461 612,-438 474,-438"/>
<text text-anchor="start" x="524" y="-445.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- GPIO8 -->
<g id="node6" class="node">
<title>GPIO8</title>
<polygon fill="#ffffff" stroke="black" points="82.5,-866.5 31.5,-866.5 31.5,-751.5 82.5,-751.5 82.5,-866.5"/>
<polygon fill="none" stroke="black" points="32,-843 32,-866 83,-866 83,-843 32,-843"/>
<text text-anchor="start" x="36" y="-850.8" font-family="arial" font-size="14.00">GPIO8</text>
<polygon fill="none" stroke="black" points="32,-820 32,-843 83,-843 83,-820 32,-820"/>
<text text-anchor="start" x="42" y="-827.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="32,-797 32,-820 83,-820 83,-797 32,-797"/>
<text text-anchor="start" x="42" y="-804.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="32,-774 32,-797 83,-797 83,-774 32,-774"/>
<text text-anchor="start" x="39" y="-781.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="32,-751 32,-774 83,-774 83,-751 32,-751"/>
<text text-anchor="start" x="38.5" y="-758.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- Relayw -->
<g id="node10" class="node">
<title>Relayw</title>
<polygon fill="#ffffff" stroke="black" stroke-dasharray="5,2" points="433,-897.5 155,-897.5 155,-738.5 433,-738.5 433,-897.5"/>
<polygon fill="none" stroke="black" points="155,-874 155,-897 433,-897 433,-874 155,-874"/>
<text text-anchor="start" x="271.5" y="-881.8" font-family="arial" font-size="14.00">Relayw</text>
<polygon fill="none" stroke="black" points="155,-851 155,-874 227,-874 227,-851 155,-851"/>
<text text-anchor="start" x="183.5" y="-858.8" font-family="arial" font-size="14.00">3x</text>
<polygon fill="none" stroke="black" points="227,-851 227,-874 342,-874 342,-851 227,-851"/>
<text text-anchor="start" x="255" y="-858.8" font-family="arial" font-size="14.00">0.14 mm²</text>
<polygon fill="none" stroke="black" points="342,-851 342,-874 433,-874 433,-851 342,-851"/>
<text text-anchor="start" x="370" y="-858.8" font-family="arial" font-size="14.00">0.3 m</text>
<text text-anchor="start" x="197.5" y="-837.8" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="160.5" y="-818.8" font-family="arial" font-size="14.00">GPIO8:GND</text>
<text text-anchor="start" x="249.5" y="-818.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;1:BK:GND &#160;&#160;&#160;</text>
<text text-anchor="start" x="358" y="-818.8" font-family="arial" font-size="14.00">Relay:GND</text>
<polygon fill="#000000" stroke="transparent" points="155,-811 155,-813 433,-813 433,-811 155,-811"/>
<polygon fill="#000000" stroke="transparent" points="155,-809 155,-811 433,-811 433,-809 155,-809"/>
<polygon fill="#000000" stroke="transparent" points="155,-807 155,-809 433,-809 433,-807 155,-807"/>
<text text-anchor="start" x="246" y="-793.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;2:RD:+3.3V &#160;&#160;&#160;</text>
<polygon fill="#000000" stroke="transparent" points="155,-786 155,-788 433,-788 433,-786 155,-786"/>
<polygon fill="#ff0000" stroke="transparent" points="155,-784 155,-786 433,-786 433,-784 155,-784"/>
<polygon fill="#000000" stroke="transparent" points="155,-782 155,-784 433,-784 433,-782 155,-782"/>
<text text-anchor="start" x="157" y="-768.8" font-family="arial" font-size="14.00">GPIO8:Signal</text>
<text text-anchor="start" x="246" y="-768.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;3:YE:Signal &#160;&#160;&#160;</text>
<text text-anchor="start" x="355" y="-768.8" font-family="arial" font-size="14.00">Relay:Signal</text>
<polygon fill="#000000" stroke="transparent" points="155,-761 155,-763 433,-763 433,-761 155,-761"/>
<polygon fill="#ffff00" stroke="transparent" points="155,-759 155,-761 433,-761 433,-759 155,-759"/>
<polygon fill="#000000" stroke="transparent" points="155,-757 155,-759 433,-759 433,-757 155,-757"/>
<text text-anchor="start" x="197.5" y="-743.8" font-family="arial" font-size="14.00"> </text>
</g>
<!-- GPIO8&#45;&#45;Relayw -->
<g id="edge31" class="edge">
<title>GPIO8:e&#45;&#45;Relayw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-806C115.62,-806.06 123.38,-808.06 154,-808"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-808C115.12,-808 122.88,-810 154,-810"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-810C114.62,-809.94 122.38,-811.94 154,-812"/>
</g>
<!-- GPIO8&#45;&#45;Relayw -->
<g id="edge33" class="edge">
<title>GPIO8:e&#45;&#45;Relayw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-760C114.62,-760.06 122.38,-758.06 154,-758"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-762C115.12,-762 122.88,-760 154,-760"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-764C115.62,-763.94 123.38,-761.94 154,-762"/>
</g>
<!-- Relay -->
<g id="node7" class="node">
<title>Relay</title>
<polygon fill="#ffffff" stroke="black" points="587.5,-877.5 498.5,-877.5 498.5,-716.5 587.5,-716.5 587.5,-877.5"/>
<polygon fill="none" stroke="black" points="499,-854 499,-877 588,-877 588,-854 499,-854"/>
<text text-anchor="start" x="526" y="-861.8" font-family="arial" font-size="14.00">Relay</text>
<polygon fill="none" stroke="black" points="499,-831 499,-854 549,-854 549,-831 499,-831"/>
<text text-anchor="start" x="503" y="-838.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="549,-831 549,-854 588,-854 588,-831 549,-831"/>
<text text-anchor="start" x="553" y="-838.8" font-family="arial" font-size="14.00">5&#45;pin</text>
<polygon fill="none" stroke="black" points="499,-808 499,-831 588,-831 588,-808 499,-808"/>
<text text-anchor="start" x="528" y="-815.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="499,-785 499,-808 588,-808 588,-785 499,-785"/>
<text text-anchor="start" x="531" y="-792.8" font-family="arial" font-size="14.00">+5V</text>
<polygon fill="none" stroke="black" points="499,-762 499,-785 588,-785 588,-762 499,-762"/>
<text text-anchor="start" x="527" y="-769.8" font-family="arial" font-size="14.00">+12V</text>
<polygon fill="none" stroke="black" points="499,-739 499,-762 588,-762 588,-739 499,-739"/>
<text text-anchor="start" x="524.5" y="-746.8" font-family="arial" font-size="14.00">Signal</text>
<polygon fill="none" stroke="black" points="499,-716 499,-739 588,-739 588,-716 499,-716"/>
<text text-anchor="start" x="519.5" y="-723.8" font-family="arial" font-size="14.00">Switch1</text>
</g>
<!-- ESP32Expansion -->
<g id="node8" class="node">
<title>ESP32Expansion</title>
<polygon fill="#ffffff" stroke="black" points="114,-414 0,-414 0,0 114,0 114,-414"/>
<polygon fill="none" stroke="black" points="0,-391 0,-414 114,-414 114,-391 0,-391"/>
<text text-anchor="start" x="4" y="-398.8" font-family="arial" font-size="14.00">ESP32Expansion</text>
<polygon fill="none" stroke="black" points="0,-368 0,-391 114,-391 114,-368 0,-368"/>
<text text-anchor="start" x="38" y="-375.8" font-family="arial" font-size="14.00">16&#45;pin</text>
<polygon fill="none" stroke="black" points="0,-345 0,-368 75,-368 75,-345 0,-345"/>
<text text-anchor="start" x="12" y="-352.8" font-family="arial" font-size="14.00">GPIO00</text>
<polygon fill="none" stroke="black" points="75,-345 75,-368 114,-368 114,-345 75,-345"/>
<text text-anchor="start" x="90.5" y="-352.8" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="0,-322 0,-345 75,-345 75,-322 0,-322"/>
<text text-anchor="start" x="12" y="-329.8" font-family="arial" font-size="14.00">GPIO01</text>
<polygon fill="none" stroke="black" points="75,-322 75,-345 114,-345 114,-322 75,-322"/>
<text text-anchor="start" x="90.5" y="-329.8" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="0,-299 0,-322 75,-322 75,-299 0,-299"/>
<text text-anchor="start" x="12" y="-306.8" font-family="arial" font-size="14.00">GPIO02</text>
<polygon fill="none" stroke="black" points="75,-299 75,-322 114,-322 114,-299 75,-299"/>
<text text-anchor="start" x="90.5" y="-306.8" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="0,-276 0,-299 75,-299 75,-276 0,-276"/>
<text text-anchor="start" x="12" y="-283.8" font-family="arial" font-size="14.00">GPIO03</text>
<polygon fill="none" stroke="black" points="75,-276 75,-299 114,-299 114,-276 75,-276"/>
<text text-anchor="start" x="90.5" y="-283.8" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="0,-253 0,-276 75,-276 75,-253 0,-253"/>
<text text-anchor="start" x="12" y="-260.8" font-family="arial" font-size="14.00">GPIO04</text>
<polygon fill="none" stroke="black" points="75,-253 75,-276 114,-276 114,-253 75,-253"/>
<text text-anchor="start" x="90.5" y="-260.8" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="0,-230 0,-253 75,-253 75,-230 0,-230"/>
<text text-anchor="start" x="19" y="-237.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="75,-230 75,-253 114,-253 114,-230 75,-230"/>
<text text-anchor="start" x="90.5" y="-237.8" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="0,-207 0,-230 75,-230 75,-207 0,-207"/>
<text text-anchor="start" x="22" y="-214.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="75,-207 75,-230 114,-230 114,-207 75,-207"/>
<text text-anchor="start" x="90.5" y="-214.8" font-family="arial" font-size="14.00">7</text>
<polygon fill="none" stroke="black" points="0,-184 0,-207 75,-207 75,-184 0,-184"/>
<text text-anchor="start" x="25" y="-191.8" font-family="arial" font-size="14.00">+5V</text>
<polygon fill="none" stroke="black" points="75,-184 75,-207 114,-207 114,-184 75,-184"/>
<text text-anchor="start" x="90.5" y="-191.8" font-family="arial" font-size="14.00">8</text>
<polygon fill="none" stroke="black" points="0,-161 0,-184 75,-184 75,-161 0,-161"/>
<text text-anchor="start" x="12" y="-168.8" font-family="arial" font-size="14.00">GPIO05</text>
<polygon fill="none" stroke="black" points="75,-161 75,-184 114,-184 114,-161 75,-161"/>
<text text-anchor="start" x="90.5" y="-168.8" font-family="arial" font-size="14.00">9</text>
<polygon fill="none" stroke="black" points="0,-138 0,-161 75,-161 75,-138 0,-138"/>
<text text-anchor="start" x="12" y="-145.8" font-family="arial" font-size="14.00">GPIO06</text>
<polygon fill="none" stroke="black" points="75,-138 75,-161 114,-161 114,-138 75,-138"/>
<text text-anchor="start" x="86.5" y="-145.8" font-family="arial" font-size="14.00">10</text>
<polygon fill="none" stroke="black" points="0,-115 0,-138 75,-138 75,-115 0,-115"/>
<text text-anchor="start" x="12" y="-122.8" font-family="arial" font-size="14.00">GPIO07</text>
<polygon fill="none" stroke="black" points="75,-115 75,-138 114,-138 114,-115 75,-115"/>
<text text-anchor="start" x="86.5" y="-122.8" font-family="arial" font-size="14.00">11</text>
<polygon fill="none" stroke="black" points="0,-92 0,-115 75,-115 75,-92 0,-92"/>
<text text-anchor="start" x="12" y="-99.8" font-family="arial" font-size="14.00">GPIO08</text>
<polygon fill="none" stroke="black" points="75,-92 75,-115 114,-115 114,-92 75,-92"/>
<text text-anchor="start" x="86.5" y="-99.8" font-family="arial" font-size="14.00">12</text>
<polygon fill="none" stroke="black" points="0,-69 0,-92 75,-92 75,-69 0,-69"/>
<text text-anchor="start" x="12" y="-76.8" font-family="arial" font-size="14.00">GPIO09</text>
<polygon fill="none" stroke="black" points="75,-69 75,-92 114,-92 114,-69 75,-69"/>
<text text-anchor="start" x="86.5" y="-76.8" font-family="arial" font-size="14.00">13</text>
<polygon fill="none" stroke="black" points="0,-46 0,-69 75,-69 75,-46 0,-46"/>
<text text-anchor="start" x="12" y="-53.8" font-family="arial" font-size="14.00">GPIO10</text>
<polygon fill="none" stroke="black" points="75,-46 75,-69 114,-69 114,-46 75,-46"/>
<text text-anchor="start" x="86.5" y="-53.8" font-family="arial" font-size="14.00">14</text>
<polygon fill="none" stroke="black" points="0,-23 0,-46 75,-46 75,-23 0,-23"/>
<text text-anchor="start" x="24" y="-30.8" font-family="arial" font-size="14.00">SCL</text>
<polygon fill="none" stroke="black" points="75,-23 75,-46 114,-46 114,-23 75,-23"/>
<text text-anchor="start" x="86.5" y="-30.8" font-family="arial" font-size="14.00">15</text>
<polygon fill="none" stroke="black" points="0,0 0,-23 75,-23 75,0 0,0"/>
<text text-anchor="start" x="23.5" y="-7.8" font-family="arial" font-size="14.00">SDA</text>
<polygon fill="none" stroke="black" points="75,0 75,-23 114,-23 114,0 75,0"/>
<text text-anchor="start" x="86.5" y="-7.8" font-family="arial" font-size="14.00">16</text>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge25" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-217C177.76,-219.61 90.05,-495.61 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-219C175.85,-219 88.15,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-221C173.95,-218.39 86.24,-494.39 150,-497"/>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge27" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-240C219.07,-243.19 48.14,-473.19 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M114,-242C217.47,-242 46.53,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-244C215.86,-240.81 44.93,-470.81 150,-474"/>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge29" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-263C198.96,-266.16 68.3,-450.16 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M114,-265C197.33,-265 66.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-267C195.7,-263.84 65.04,-447.84 150,-451"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge2" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C500.15,-496.1 408.51,-357.1 474,-354"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C501.82,-495 410.18,-356 474,-356"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C503.49,-493.9 411.85,-354.9 474,-358"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge4" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C500.15,-473.1 408.51,-334.1 474,-331"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C501.82,-472 410.18,-333 474,-333"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C503.49,-470.9 411.85,-331.9 474,-335"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge6" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C500.15,-450.1 408.51,-311.1 474,-308"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C501.82,-449 410.18,-310 474,-310"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C503.49,-447.9 411.85,-308.9 474,-312"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge8" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C498.39,-495.61 409.8,-217.61 474,-215"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C500.29,-495 411.71,-217 474,-217"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C502.2,-494.39 413.61,-216.39 474,-219"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge10" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C498.39,-472.61 409.8,-194.61 474,-192"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C500.29,-472 411.71,-194 474,-194"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C502.2,-471.39 413.61,-193.39 474,-196"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge12" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C498.39,-449.61 409.8,-171.61 474,-169"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C500.29,-449 411.71,-171 474,-171"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C502.2,-448.39 413.61,-170.39 474,-173"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge14" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C503.49,-496.1 411.85,-635.1 474,-632"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C501.82,-495 410.18,-634 474,-634"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C500.15,-493.9 408.51,-632.9 474,-636"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge16" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C503.49,-473.1 411.85,-612.1 474,-609"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C501.82,-472 410.18,-611 474,-611"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C500.15,-470.9 408.51,-609.9 474,-613"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge18" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C503.49,-450.1 411.85,-589.1 474,-586"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C501.82,-449 410.18,-588 474,-588"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C500.15,-447.9 408.51,-586.9 474,-590"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge20" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C454,-493 458,-493 474,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C454,-495 458,-495 474,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C454,-497 458,-497 474,-497"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge22" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C454,-470 458,-470 474,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C454,-472 458,-472 474,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C454,-474 458,-474 474,-474"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge24" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C454,-447 458,-447 474,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C454,-449 458,-449 474,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C454,-451 458,-451 474,-451"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge26" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C454,-493 458,-493 474,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C454,-495 458,-495 474,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C454,-497 458,-497 474,-497"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge28" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C454,-470 458,-470 474,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C454,-472 458,-472 474,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C454,-474 458,-474 474,-474"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge30" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C454,-447 458,-447 474,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C454,-449 458,-449 474,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C454,-451 458,-451 474,-451"/>
</g>
<!-- Relayw&#45;&#45;Relay -->
<g id="edge32" class="edge">
<title>Relayw:e&#45;&#45;Relay:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-808C464.47,-808.92 470.89,-818.92 498,-818"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-810C462.79,-810 469.21,-820 498,-820"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-812C461.11,-811.08 467.53,-821.08 498,-822"/>
</g>
<!-- Relayw&#45;&#45;Relay -->
<g id="edge34" class="edge">
<title>Relayw:e&#45;&#45;Relay:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-758C461.11,-758.92 467.53,-748.92 498,-748"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M434,-760C462.79,-760 469.21,-750 498,-750"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-762C464.47,-761.08 470.89,-751.08 498,-752"/>
</g>
</g>
</svg>
<div id="notes">
<!-- %notes% -->
</div>
</div>
<div id="bom">
<table class="bom">
<tr>
<td class="bom_col_id">7</td>
<td class="bom_col_description">Wire, 0.14 mm², YE</td>
<td class="bom_col_qty">0.6</td>
<td class="bom_col_unit">m</td>
<td class="bom_col_designators">DSw, Relayw</td>
</tr>
<tr>
<td class="bom_col_id">6</td>
<td class="bom_col_description">Wire, 0.14 mm², RD</td>
<td class="bom_col_qty">0.6</td>
<td class="bom_col_unit">m</td>
<td class="bom_col_designators">DSw, Relayw</td>
</tr>
<tr>
<td class="bom_col_id">5</td>
<td class="bom_col_description">Wire, 0.14 mm², BK</td>
<td class="bom_col_qty">0.6</td>
<td class="bom_col_unit">m</td>
<td class="bom_col_designators">DSw, Relayw</td>
</tr>
<tr>
<td class="bom_col_id">4</td>
<td class="bom_col_description">Connector, female, 5 pins</td>
<td class="bom_col_qty">1</td>
<td class="bom_col_unit"></td>
<td class="bom_col_designators">Relay</td>
</tr>
<tr>
<td class="bom_col_id">3</td>
<td class="bom_col_description">Connector, 3 point, female, 3 pins</td>
<td class="bom_col_qty">4</td>
<td class="bom_col_unit"></td>
<td class="bom_col_designators">DS1820_Aanvoer, DS1820_Bad, DS1820_Dak, DS1820_Retour</td>
</tr>
<tr>
<td class="bom_col_id">2</td>
<td class="bom_col_description">Connector, 3 pins</td>
<td class="bom_col_qty">2</td>
<td class="bom_col_unit"></td>
<td class="bom_col_designators">GPIO4, GPIO8</td>
</tr>
<tr>
<td class="bom_col_id">1</td>
<td class="bom_col_description">Connector, 16 pins</td>
<td class="bom_col_qty">1</td>
<td class="bom_col_unit"></td>
<td class="bom_col_designators">ESP32Expansion</td>
</tr>
<tr>
<th class="bom_col_id">Id</th>
<th class="bom_col_description">Description</th>
<th class="bom_col_qty">Qty</th>
<th class="bom_col_unit">Unit</th>
<th class="bom_col_designators">Designators</th>
</tr>
</table>
</div>
<div id="titleblock">
<table>
<tr>
<td class="revno"><!-- %revisions_8% --></td>
<td class="changelog"><!-- %revisions_8_changelog% --></td>
<td class="date"><!-- %revisions_8_date% --></td>
<td class="name"><!-- %revisions_8_name% --></td>
<td class="process"></td>
<td class="date">Date</td>
<td class="name">Name</td>
<td class="title" colspan="3" rowspan="5">Zwembad verwarming installatie</td>
</tr>
<tr>
<td class="revno"><!-- %revisions_7% --></td>
<td><!-- %revisions_7_changelog% --></td>
<td><!-- %revisions_7_date% --></td>
<td><!-- %revisions_7_name% --></td>
<td>Created</td>
<td>2025-06-22</td>
<td>Ton</td>
</tr>
<tr>
<td class="revno"><!-- %revisions_6% --></td>
<td><!-- %revisions_6_changelog% --></td>
<td><!-- %revisions_6_date% --></td>
<td><!-- %revisions_6_name% --></td>
<td>Approved</td>
<td>2025-06-22</td>
<td>Ton</td>
</tr>
<tr>
<td class="revno"><!-- %revisions_5% --></td>
<td><!-- %revisions_5_changelog% --></td>
<td><!-- %revisions_5_date% --></td>
<td><!-- %revisions_5_name% --></td>
<td><!-- %authors_3% --></td>
<td><!-- %authors_3_date% --></td>
<td><!-- %authors_3_name% --></td>
</tr>
<tr>
<td class="revno"><!-- %revisions_4% --></td>
<td><!-- %revisions_4_changelog% --></td>
<td><!-- %revisions_4_date% --></td>
<td><!-- %revisions_4_name% --></td>
<td colspan="2"></td>
<td></td>
</tr>
<tr>
<td class="revno"><!-- %revisions_3% --></td>
<td><!-- %revisions_3_changelog% --></td>
<td><!-- %revisions_3_date% --></td>
<td><!-- %revisions_3_name% --></td>
<td class="company" colspan="3" rowspan="3"><!-- %company% --></td>
<td class="partno" colspan="2" rowspan="3">ESP32</td>
<td class="sheetno" rowspan="2">Sheet<br />1</td>
</tr>
<tr>
<td class="revno"><!-- %revisions_2% --></td>
<td><!-- %revisions_2_changelog% --></td>
<td><!-- %revisions_2_date% --></td>
<td><!-- %revisions_2_name% --></td>
</tr>
<tr>
<td class="revno">A</td>
<td>Productie</td>
<td>2025-06-22</td>
<td>Ton</td>
<td class="sheetno">of 1</td>
</tr>
<tr>
<td>Rev</td>
<td>Changelog</td>
<td>Date</td>
<td>Name</td>
<td colspan="3"></td>
<td></td>
<td colspan="2"></td>
</tr>
</table>
</div> <!-- /titleblock -->
</div> <!-- /frame -->
</div> <!-- /page -->
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

View File

@ -0,0 +1,515 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: %3 Pages: 1 -->
<svg width="620pt" height="906pt"
viewBox="0.00 0.00 620.00 905.50" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 901.5)">
<title>%3</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-901.5 616,-901.5 616,4 -4,4"/>
<!-- GPIO4 -->
<g id="node1" class="node">
<title>GPIO4</title>
<polygon fill="#ffffff" stroke="black" points="82.5,-553.5 31.5,-553.5 31.5,-438.5 82.5,-438.5 82.5,-553.5"/>
<polygon fill="none" stroke="black" points="32,-530 32,-553 83,-553 83,-530 32,-530"/>
<text text-anchor="start" x="36" y="-537.8" font-family="arial" font-size="14.00">GPIO4</text>
<polygon fill="none" stroke="black" points="32,-507 32,-530 83,-530 83,-507 32,-507"/>
<text text-anchor="start" x="42" y="-514.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="32,-484 32,-507 83,-507 83,-484 32,-484"/>
<text text-anchor="start" x="42" y="-491.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="32,-461 32,-484 83,-484 83,-461 32,-461"/>
<text text-anchor="start" x="39" y="-468.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="32,-438 32,-461 83,-461 83,-438 32,-438"/>
<text text-anchor="start" x="38.5" y="-445.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DSw -->
<g id="node9" class="node">
<title>DSw</title>
<polygon fill="#ffffff" stroke="black" stroke-dasharray="5,2" points="438,-574.5 150,-574.5 150,-429.5 438,-429.5 438,-574.5"/>
<polygon fill="none" stroke="black" points="150,-553 150,-574 438,-574 438,-553 150,-553"/>
<text text-anchor="start" x="280.5" y="-560.4" font-family="arial" font-size="12.00">DSw</text>
<polygon fill="none" stroke="black" points="150,-532 150,-553 228,-553 228,-532 150,-532"/>
<text text-anchor="start" x="182.5" y="-539.4" font-family="arial" font-size="12.00">3x</text>
<polygon fill="none" stroke="black" points="228,-532 228,-553 343,-553 343,-532 228,-532"/>
<text text-anchor="start" x="260.5" y="-539.4" font-family="arial" font-size="12.00">0.14 mm²</text>
<polygon fill="none" stroke="black" points="343,-532 343,-553 438,-553 438,-532 343,-532"/>
<text text-anchor="start" x="375.5" y="-539.4" font-family="arial" font-size="12.00">0.3 m</text>
<text text-anchor="start" x="187" y="-520.4" font-family="arial" font-size="12.00"> </text>
<text text-anchor="start" x="155.5" y="-503.4" font-family="arial" font-size="12.00">GPIO4:GND</text>
<text text-anchor="start" x="233.5" y="-503.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;1:BK:GND &#160;&#160;&#160;</text>
<text text-anchor="start" x="329" y="-503.4" font-family="arial" font-size="12.00">DS1820_Dak:GND</text>
<polygon fill="#000000" stroke="transparent" points="150,-496 150,-498 438,-498 438,-496 150,-496"/>
<polygon fill="#000000" stroke="transparent" points="150,-494 150,-496 438,-496 438,-494 150,-494"/>
<polygon fill="#000000" stroke="transparent" points="150,-492 150,-494 438,-494 438,-492 150,-492"/>
<text text-anchor="start" x="153.5" y="-480.4" font-family="arial" font-size="12.00">GPIO4:+3.3V</text>
<text text-anchor="start" x="230.5" y="-480.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;2:RD:+3.3V &#160;&#160;&#160;</text>
<text text-anchor="start" x="326.5" y="-480.4" font-family="arial" font-size="12.00">DS1820_Dak:+3.3V</text>
<polygon fill="#000000" stroke="transparent" points="150,-473 150,-475 438,-475 438,-473 150,-473"/>
<polygon fill="#ff0000" stroke="transparent" points="150,-471 150,-473 438,-473 438,-471 150,-471"/>
<polygon fill="#000000" stroke="transparent" points="150,-469 150,-471 438,-471 438,-469 150,-469"/>
<text text-anchor="start" x="152" y="-457.4" font-family="arial" font-size="12.00">GPIO4:Signal</text>
<text text-anchor="start" x="230" y="-457.4" font-family="arial" font-size="12.00"> &#160;&#160;&#160;&#160;3:YE:Signal &#160;&#160;&#160;</text>
<text text-anchor="start" x="325" y="-457.4" font-family="arial" font-size="12.00">DS1820_Dak:Signal</text>
<polygon fill="#000000" stroke="transparent" points="150,-450 150,-452 438,-452 438,-450 150,-450"/>
<polygon fill="#ffff00" stroke="transparent" points="150,-448 150,-450 438,-450 438,-448 150,-448"/>
<polygon fill="#000000" stroke="transparent" points="150,-446 150,-448 438,-448 438,-446 150,-446"/>
<text text-anchor="start" x="187" y="-434.4" font-family="arial" font-size="12.00"> </text>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge1" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge3" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge5" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge7" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge9" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge11" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge13" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge15" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge17" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge19" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-493C113.33,-493 120.67,-493 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-495C113.33,-495 120.67,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-497C113.33,-497 120.67,-497 150,-497"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge21" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-470C113.33,-470 120.67,-470 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M84,-472C113.33,-472 120.67,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-474C113.33,-474 120.67,-474 150,-474"/>
</g>
<!-- GPIO4&#45;&#45;DSw -->
<g id="edge23" class="edge">
<title>GPIO4:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-447C113.33,-447 120.67,-447 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-449C113.33,-449 120.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-451C113.33,-451 120.67,-451 150,-451"/>
</g>
<!-- DS1820_Dak -->
<g id="node2" class="node">
<title>DS1820_Dak</title>
<polygon fill="#ffffff" stroke="black" points="612,-414.5 474,-414.5 474,-299.5 612,-299.5 612,-414.5"/>
<polygon fill="none" stroke="black" points="474,-391 474,-414 612,-414 612,-391 474,-391"/>
<text text-anchor="start" x="502.5" y="-398.8" font-family="arial" font-size="14.00">DS1820_Dak</text>
<polygon fill="none" stroke="black" points="474,-368 474,-391 523,-391 523,-368 474,-368"/>
<text text-anchor="start" x="478" y="-375.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-368 523,-391 573,-391 573,-368 523,-368"/>
<text text-anchor="start" x="527" y="-375.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-368 573,-391 612,-391 612,-368 573,-368"/>
<text text-anchor="start" x="577" y="-375.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-345 474,-368 612,-368 612,-345 474,-345"/>
<text text-anchor="start" x="527.5" y="-352.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-322 474,-345 612,-345 612,-322 474,-322"/>
<text text-anchor="start" x="524.5" y="-329.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-299 474,-322 612,-322 612,-299 474,-299"/>
<text text-anchor="start" x="524" y="-306.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Bad -->
<g id="node3" class="node">
<title>DS1820_Bad</title>
<polygon fill="#ffffff" stroke="black" points="612,-275.5 474,-275.5 474,-160.5 612,-160.5 612,-275.5"/>
<polygon fill="none" stroke="black" points="474,-252 474,-275 612,-275 612,-252 474,-252"/>
<text text-anchor="start" x="502.5" y="-259.8" font-family="arial" font-size="14.00">DS1820_Bad</text>
<polygon fill="none" stroke="black" points="474,-229 474,-252 523,-252 523,-229 474,-229"/>
<text text-anchor="start" x="478" y="-236.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-229 523,-252 573,-252 573,-229 523,-229"/>
<text text-anchor="start" x="527" y="-236.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-229 573,-252 612,-252 612,-229 573,-229"/>
<text text-anchor="start" x="577" y="-236.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-206 474,-229 612,-229 612,-206 474,-206"/>
<text text-anchor="start" x="527.5" y="-213.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-183 474,-206 612,-206 612,-183 474,-183"/>
<text text-anchor="start" x="524.5" y="-190.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-160 474,-183 612,-183 612,-160 474,-160"/>
<text text-anchor="start" x="524" y="-167.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Aanvoer -->
<g id="node4" class="node">
<title>DS1820_Aanvoer</title>
<polygon fill="#ffffff" stroke="black" points="612,-692.5 474,-692.5 474,-577.5 612,-577.5 612,-692.5"/>
<polygon fill="none" stroke="black" points="474,-669 474,-692 612,-692 612,-669 474,-669"/>
<text text-anchor="start" x="489.5" y="-676.8" font-family="arial" font-size="14.00">DS1820_Aanvoer</text>
<polygon fill="none" stroke="black" points="474,-646 474,-669 523,-669 523,-646 474,-646"/>
<text text-anchor="start" x="478" y="-653.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-646 523,-669 573,-669 573,-646 523,-646"/>
<text text-anchor="start" x="527" y="-653.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-646 573,-669 612,-669 612,-646 573,-646"/>
<text text-anchor="start" x="577" y="-653.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-623 474,-646 612,-646 612,-623 474,-623"/>
<text text-anchor="start" x="527.5" y="-630.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-600 474,-623 612,-623 612,-600 474,-600"/>
<text text-anchor="start" x="524.5" y="-607.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-577 474,-600 612,-600 612,-577 474,-577"/>
<text text-anchor="start" x="524" y="-584.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- DS1820_Retour -->
<g id="node5" class="node">
<title>DS1820_Retour</title>
<polygon fill="#ffffff" stroke="black" points="612,-553.5 474,-553.5 474,-438.5 612,-438.5 612,-553.5"/>
<polygon fill="none" stroke="black" points="474,-530 474,-553 612,-553 612,-530 474,-530"/>
<text text-anchor="start" x="494.5" y="-537.8" font-family="arial" font-size="14.00">DS1820_Retour</text>
<polygon fill="none" stroke="black" points="474,-507 474,-530 523,-530 523,-507 474,-507"/>
<text text-anchor="start" x="478" y="-514.8" font-family="arial" font-size="14.00">3 point</text>
<polygon fill="none" stroke="black" points="523,-507 523,-530 573,-530 573,-507 523,-507"/>
<text text-anchor="start" x="527" y="-514.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="573,-507 573,-530 612,-530 612,-507 573,-507"/>
<text text-anchor="start" x="577" y="-514.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="474,-484 474,-507 612,-507 612,-484 474,-484"/>
<text text-anchor="start" x="527.5" y="-491.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="474,-461 474,-484 612,-484 612,-461 474,-461"/>
<text text-anchor="start" x="524.5" y="-468.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="474,-438 474,-461 612,-461 612,-438 474,-438"/>
<text text-anchor="start" x="524" y="-445.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- GPIO8 -->
<g id="node6" class="node">
<title>GPIO8</title>
<polygon fill="#ffffff" stroke="black" points="82.5,-866.5 31.5,-866.5 31.5,-751.5 82.5,-751.5 82.5,-866.5"/>
<polygon fill="none" stroke="black" points="32,-843 32,-866 83,-866 83,-843 32,-843"/>
<text text-anchor="start" x="36" y="-850.8" font-family="arial" font-size="14.00">GPIO8</text>
<polygon fill="none" stroke="black" points="32,-820 32,-843 83,-843 83,-820 32,-820"/>
<text text-anchor="start" x="42" y="-827.8" font-family="arial" font-size="14.00">3&#45;pin</text>
<polygon fill="none" stroke="black" points="32,-797 32,-820 83,-820 83,-797 32,-797"/>
<text text-anchor="start" x="42" y="-804.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="32,-774 32,-797 83,-797 83,-774 32,-774"/>
<text text-anchor="start" x="39" y="-781.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="32,-751 32,-774 83,-774 83,-751 32,-751"/>
<text text-anchor="start" x="38.5" y="-758.8" font-family="arial" font-size="14.00">Signal</text>
</g>
<!-- Relayw -->
<g id="node10" class="node">
<title>Relayw</title>
<polygon fill="#ffffff" stroke="black" stroke-dasharray="5,2" points="433,-897.5 155,-897.5 155,-738.5 433,-738.5 433,-897.5"/>
<polygon fill="none" stroke="black" points="155,-874 155,-897 433,-897 433,-874 155,-874"/>
<text text-anchor="start" x="271.5" y="-881.8" font-family="arial" font-size="14.00">Relayw</text>
<polygon fill="none" stroke="black" points="155,-851 155,-874 227,-874 227,-851 155,-851"/>
<text text-anchor="start" x="183.5" y="-858.8" font-family="arial" font-size="14.00">3x</text>
<polygon fill="none" stroke="black" points="227,-851 227,-874 342,-874 342,-851 227,-851"/>
<text text-anchor="start" x="255" y="-858.8" font-family="arial" font-size="14.00">0.14 mm²</text>
<polygon fill="none" stroke="black" points="342,-851 342,-874 433,-874 433,-851 342,-851"/>
<text text-anchor="start" x="370" y="-858.8" font-family="arial" font-size="14.00">0.3 m</text>
<text text-anchor="start" x="197.5" y="-837.8" font-family="arial" font-size="14.00"> </text>
<text text-anchor="start" x="160.5" y="-818.8" font-family="arial" font-size="14.00">GPIO8:GND</text>
<text text-anchor="start" x="249.5" y="-818.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;1:BK:GND &#160;&#160;&#160;</text>
<text text-anchor="start" x="358" y="-818.8" font-family="arial" font-size="14.00">Relay:GND</text>
<polygon fill="#000000" stroke="transparent" points="155,-811 155,-813 433,-813 433,-811 155,-811"/>
<polygon fill="#000000" stroke="transparent" points="155,-809 155,-811 433,-811 433,-809 155,-809"/>
<polygon fill="#000000" stroke="transparent" points="155,-807 155,-809 433,-809 433,-807 155,-807"/>
<text text-anchor="start" x="246" y="-793.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;2:RD:+3.3V &#160;&#160;&#160;</text>
<polygon fill="#000000" stroke="transparent" points="155,-786 155,-788 433,-788 433,-786 155,-786"/>
<polygon fill="#ff0000" stroke="transparent" points="155,-784 155,-786 433,-786 433,-784 155,-784"/>
<polygon fill="#000000" stroke="transparent" points="155,-782 155,-784 433,-784 433,-782 155,-782"/>
<text text-anchor="start" x="157" y="-768.8" font-family="arial" font-size="14.00">GPIO8:Signal</text>
<text text-anchor="start" x="246" y="-768.8" font-family="arial" font-size="14.00"> &#160;&#160;&#160;&#160;3:YE:Signal &#160;&#160;&#160;</text>
<text text-anchor="start" x="355" y="-768.8" font-family="arial" font-size="14.00">Relay:Signal</text>
<polygon fill="#000000" stroke="transparent" points="155,-761 155,-763 433,-763 433,-761 155,-761"/>
<polygon fill="#ffff00" stroke="transparent" points="155,-759 155,-761 433,-761 433,-759 155,-759"/>
<polygon fill="#000000" stroke="transparent" points="155,-757 155,-759 433,-759 433,-757 155,-757"/>
<text text-anchor="start" x="197.5" y="-743.8" font-family="arial" font-size="14.00"> </text>
</g>
<!-- GPIO8&#45;&#45;Relayw -->
<g id="edge31" class="edge">
<title>GPIO8:e&#45;&#45;Relayw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-806C115.62,-806.06 123.38,-808.06 154,-808"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-808C115.12,-808 122.88,-810 154,-810"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-810C114.62,-809.94 122.38,-811.94 154,-812"/>
</g>
<!-- GPIO8&#45;&#45;Relayw -->
<g id="edge33" class="edge">
<title>GPIO8:e&#45;&#45;Relayw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-760C114.62,-760.06 122.38,-758.06 154,-758"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M84,-762C115.12,-762 122.88,-760 154,-760"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M84,-764C115.62,-763.94 123.38,-761.94 154,-762"/>
</g>
<!-- Relay -->
<g id="node7" class="node">
<title>Relay</title>
<polygon fill="#ffffff" stroke="black" points="587.5,-877.5 498.5,-877.5 498.5,-716.5 587.5,-716.5 587.5,-877.5"/>
<polygon fill="none" stroke="black" points="499,-854 499,-877 588,-877 588,-854 499,-854"/>
<text text-anchor="start" x="526" y="-861.8" font-family="arial" font-size="14.00">Relay</text>
<polygon fill="none" stroke="black" points="499,-831 499,-854 549,-854 549,-831 499,-831"/>
<text text-anchor="start" x="503" y="-838.8" font-family="arial" font-size="14.00">female</text>
<polygon fill="none" stroke="black" points="549,-831 549,-854 588,-854 588,-831 549,-831"/>
<text text-anchor="start" x="553" y="-838.8" font-family="arial" font-size="14.00">5&#45;pin</text>
<polygon fill="none" stroke="black" points="499,-808 499,-831 588,-831 588,-808 499,-808"/>
<text text-anchor="start" x="528" y="-815.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="499,-785 499,-808 588,-808 588,-785 499,-785"/>
<text text-anchor="start" x="531" y="-792.8" font-family="arial" font-size="14.00">+5V</text>
<polygon fill="none" stroke="black" points="499,-762 499,-785 588,-785 588,-762 499,-762"/>
<text text-anchor="start" x="527" y="-769.8" font-family="arial" font-size="14.00">+12V</text>
<polygon fill="none" stroke="black" points="499,-739 499,-762 588,-762 588,-739 499,-739"/>
<text text-anchor="start" x="524.5" y="-746.8" font-family="arial" font-size="14.00">Signal</text>
<polygon fill="none" stroke="black" points="499,-716 499,-739 588,-739 588,-716 499,-716"/>
<text text-anchor="start" x="519.5" y="-723.8" font-family="arial" font-size="14.00">Switch1</text>
</g>
<!-- ESP32Expansion -->
<g id="node8" class="node">
<title>ESP32Expansion</title>
<polygon fill="#ffffff" stroke="black" points="114,-414 0,-414 0,0 114,0 114,-414"/>
<polygon fill="none" stroke="black" points="0,-391 0,-414 114,-414 114,-391 0,-391"/>
<text text-anchor="start" x="4" y="-398.8" font-family="arial" font-size="14.00">ESP32Expansion</text>
<polygon fill="none" stroke="black" points="0,-368 0,-391 114,-391 114,-368 0,-368"/>
<text text-anchor="start" x="38" y="-375.8" font-family="arial" font-size="14.00">16&#45;pin</text>
<polygon fill="none" stroke="black" points="0,-345 0,-368 75,-368 75,-345 0,-345"/>
<text text-anchor="start" x="12" y="-352.8" font-family="arial" font-size="14.00">GPIO00</text>
<polygon fill="none" stroke="black" points="75,-345 75,-368 114,-368 114,-345 75,-345"/>
<text text-anchor="start" x="90.5" y="-352.8" font-family="arial" font-size="14.00">1</text>
<polygon fill="none" stroke="black" points="0,-322 0,-345 75,-345 75,-322 0,-322"/>
<text text-anchor="start" x="12" y="-329.8" font-family="arial" font-size="14.00">GPIO01</text>
<polygon fill="none" stroke="black" points="75,-322 75,-345 114,-345 114,-322 75,-322"/>
<text text-anchor="start" x="90.5" y="-329.8" font-family="arial" font-size="14.00">2</text>
<polygon fill="none" stroke="black" points="0,-299 0,-322 75,-322 75,-299 0,-299"/>
<text text-anchor="start" x="12" y="-306.8" font-family="arial" font-size="14.00">GPIO02</text>
<polygon fill="none" stroke="black" points="75,-299 75,-322 114,-322 114,-299 75,-299"/>
<text text-anchor="start" x="90.5" y="-306.8" font-family="arial" font-size="14.00">3</text>
<polygon fill="none" stroke="black" points="0,-276 0,-299 75,-299 75,-276 0,-276"/>
<text text-anchor="start" x="12" y="-283.8" font-family="arial" font-size="14.00">GPIO03</text>
<polygon fill="none" stroke="black" points="75,-276 75,-299 114,-299 114,-276 75,-276"/>
<text text-anchor="start" x="90.5" y="-283.8" font-family="arial" font-size="14.00">4</text>
<polygon fill="none" stroke="black" points="0,-253 0,-276 75,-276 75,-253 0,-253"/>
<text text-anchor="start" x="12" y="-260.8" font-family="arial" font-size="14.00">GPIO04</text>
<polygon fill="none" stroke="black" points="75,-253 75,-276 114,-276 114,-253 75,-253"/>
<text text-anchor="start" x="90.5" y="-260.8" font-family="arial" font-size="14.00">5</text>
<polygon fill="none" stroke="black" points="0,-230 0,-253 75,-253 75,-230 0,-230"/>
<text text-anchor="start" x="19" y="-237.8" font-family="arial" font-size="14.00">+3.3V</text>
<polygon fill="none" stroke="black" points="75,-230 75,-253 114,-253 114,-230 75,-230"/>
<text text-anchor="start" x="90.5" y="-237.8" font-family="arial" font-size="14.00">6</text>
<polygon fill="none" stroke="black" points="0,-207 0,-230 75,-230 75,-207 0,-207"/>
<text text-anchor="start" x="22" y="-214.8" font-family="arial" font-size="14.00">GND</text>
<polygon fill="none" stroke="black" points="75,-207 75,-230 114,-230 114,-207 75,-207"/>
<text text-anchor="start" x="90.5" y="-214.8" font-family="arial" font-size="14.00">7</text>
<polygon fill="none" stroke="black" points="0,-184 0,-207 75,-207 75,-184 0,-184"/>
<text text-anchor="start" x="25" y="-191.8" font-family="arial" font-size="14.00">+5V</text>
<polygon fill="none" stroke="black" points="75,-184 75,-207 114,-207 114,-184 75,-184"/>
<text text-anchor="start" x="90.5" y="-191.8" font-family="arial" font-size="14.00">8</text>
<polygon fill="none" stroke="black" points="0,-161 0,-184 75,-184 75,-161 0,-161"/>
<text text-anchor="start" x="12" y="-168.8" font-family="arial" font-size="14.00">GPIO05</text>
<polygon fill="none" stroke="black" points="75,-161 75,-184 114,-184 114,-161 75,-161"/>
<text text-anchor="start" x="90.5" y="-168.8" font-family="arial" font-size="14.00">9</text>
<polygon fill="none" stroke="black" points="0,-138 0,-161 75,-161 75,-138 0,-138"/>
<text text-anchor="start" x="12" y="-145.8" font-family="arial" font-size="14.00">GPIO06</text>
<polygon fill="none" stroke="black" points="75,-138 75,-161 114,-161 114,-138 75,-138"/>
<text text-anchor="start" x="86.5" y="-145.8" font-family="arial" font-size="14.00">10</text>
<polygon fill="none" stroke="black" points="0,-115 0,-138 75,-138 75,-115 0,-115"/>
<text text-anchor="start" x="12" y="-122.8" font-family="arial" font-size="14.00">GPIO07</text>
<polygon fill="none" stroke="black" points="75,-115 75,-138 114,-138 114,-115 75,-115"/>
<text text-anchor="start" x="86.5" y="-122.8" font-family="arial" font-size="14.00">11</text>
<polygon fill="none" stroke="black" points="0,-92 0,-115 75,-115 75,-92 0,-92"/>
<text text-anchor="start" x="12" y="-99.8" font-family="arial" font-size="14.00">GPIO08</text>
<polygon fill="none" stroke="black" points="75,-92 75,-115 114,-115 114,-92 75,-92"/>
<text text-anchor="start" x="86.5" y="-99.8" font-family="arial" font-size="14.00">12</text>
<polygon fill="none" stroke="black" points="0,-69 0,-92 75,-92 75,-69 0,-69"/>
<text text-anchor="start" x="12" y="-76.8" font-family="arial" font-size="14.00">GPIO09</text>
<polygon fill="none" stroke="black" points="75,-69 75,-92 114,-92 114,-69 75,-69"/>
<text text-anchor="start" x="86.5" y="-76.8" font-family="arial" font-size="14.00">13</text>
<polygon fill="none" stroke="black" points="0,-46 0,-69 75,-69 75,-46 0,-46"/>
<text text-anchor="start" x="12" y="-53.8" font-family="arial" font-size="14.00">GPIO10</text>
<polygon fill="none" stroke="black" points="75,-46 75,-69 114,-69 114,-46 75,-46"/>
<text text-anchor="start" x="86.5" y="-53.8" font-family="arial" font-size="14.00">14</text>
<polygon fill="none" stroke="black" points="0,-23 0,-46 75,-46 75,-23 0,-23"/>
<text text-anchor="start" x="24" y="-30.8" font-family="arial" font-size="14.00">SCL</text>
<polygon fill="none" stroke="black" points="75,-23 75,-46 114,-46 114,-23 75,-23"/>
<text text-anchor="start" x="86.5" y="-30.8" font-family="arial" font-size="14.00">15</text>
<polygon fill="none" stroke="black" points="0,0 0,-23 75,-23 75,0 0,0"/>
<text text-anchor="start" x="23.5" y="-7.8" font-family="arial" font-size="14.00">SDA</text>
<polygon fill="none" stroke="black" points="75,0 75,-23 114,-23 114,0 75,0"/>
<text text-anchor="start" x="86.5" y="-7.8" font-family="arial" font-size="14.00">16</text>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge25" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-217C177.76,-219.61 90.05,-495.61 150,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-219C175.85,-219 88.15,-495 150,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-221C173.95,-218.39 86.24,-494.39 150,-497"/>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge27" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-240C219.07,-243.19 48.14,-473.19 150,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M114,-242C217.47,-242 46.53,-472 150,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-244C215.86,-240.81 44.93,-470.81 150,-474"/>
</g>
<!-- ESP32Expansion&#45;&#45;DSw -->
<g id="edge29" class="edge">
<title>ESP32Expansion:e&#45;&#45;DSw:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-263C198.96,-266.16 68.3,-450.16 150,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M114,-265C197.33,-265 66.67,-449 150,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M114,-267C195.7,-263.84 65.04,-447.84 150,-451"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge2" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C500.15,-496.1 408.51,-357.1 474,-354"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C501.82,-495 410.18,-356 474,-356"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C503.49,-493.9 411.85,-354.9 474,-358"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge4" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C500.15,-473.1 408.51,-334.1 474,-331"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C501.82,-472 410.18,-333 474,-333"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C503.49,-470.9 411.85,-331.9 474,-335"/>
</g>
<!-- DSw&#45;&#45;DS1820_Dak -->
<g id="edge6" class="edge">
<title>DSw:e&#45;&#45;DS1820_Dak:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C500.15,-450.1 408.51,-311.1 474,-308"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C501.82,-449 410.18,-310 474,-310"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C503.49,-447.9 411.85,-308.9 474,-312"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge8" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C498.39,-495.61 409.8,-217.61 474,-215"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C500.29,-495 411.71,-217 474,-217"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C502.2,-494.39 413.61,-216.39 474,-219"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge10" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C498.39,-472.61 409.8,-194.61 474,-192"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C500.29,-472 411.71,-194 474,-194"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C502.2,-471.39 413.61,-193.39 474,-196"/>
</g>
<!-- DSw&#45;&#45;DS1820_Bad -->
<g id="edge12" class="edge">
<title>DSw:e&#45;&#45;DS1820_Bad:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C498.39,-449.61 409.8,-171.61 474,-169"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C500.29,-449 411.71,-171 474,-171"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C502.2,-448.39 413.61,-170.39 474,-173"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge14" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C503.49,-496.1 411.85,-635.1 474,-632"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C501.82,-495 410.18,-634 474,-634"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C500.15,-493.9 408.51,-632.9 474,-636"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge16" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C503.49,-473.1 411.85,-612.1 474,-609"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C501.82,-472 410.18,-611 474,-611"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C500.15,-470.9 408.51,-609.9 474,-613"/>
</g>
<!-- DSw&#45;&#45;DS1820_Aanvoer -->
<g id="edge18" class="edge">
<title>DSw:e&#45;&#45;DS1820_Aanvoer:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C503.49,-450.1 411.85,-589.1 474,-586"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C501.82,-449 410.18,-588 474,-588"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C500.15,-447.9 408.51,-586.9 474,-590"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge20" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C454,-493 458,-493 474,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C454,-495 458,-495 474,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C454,-497 458,-497 474,-497"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge22" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C454,-470 458,-470 474,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C454,-472 458,-472 474,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C454,-474 458,-474 474,-474"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge24" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C454,-447 458,-447 474,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C454,-449 458,-449 474,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C454,-451 458,-451 474,-451"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge26" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-493C454,-493 458,-493 474,-493"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-495C454,-495 458,-495 474,-495"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-497C454,-497 458,-497 474,-497"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge28" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-470C454,-470 458,-470 474,-470"/>
<path fill="none" stroke="#ff0000" stroke-width="2" d="M438,-472C454,-472 458,-472 474,-472"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-474C454,-474 458,-474 474,-474"/>
</g>
<!-- DSw&#45;&#45;DS1820_Retour -->
<g id="edge30" class="edge">
<title>DSw:e&#45;&#45;DS1820_Retour:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-447C454,-447 458,-447 474,-447"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M438,-449C454,-449 458,-449 474,-449"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M438,-451C454,-451 458,-451 474,-451"/>
</g>
<!-- Relayw&#45;&#45;Relay -->
<g id="edge32" class="edge">
<title>Relayw:e&#45;&#45;Relay:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-808C464.47,-808.92 470.89,-818.92 498,-818"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-810C462.79,-810 469.21,-820 498,-820"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-812C461.11,-811.08 467.53,-821.08 498,-822"/>
</g>
<!-- Relayw&#45;&#45;Relay -->
<g id="edge34" class="edge">
<title>Relayw:e&#45;&#45;Relay:w</title>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-758C461.11,-758.92 467.53,-748.92 498,-748"/>
<path fill="none" stroke="#ffff00" stroke-width="2" d="M434,-760C462.79,-760 469.21,-750 498,-750"/>
<path fill="none" stroke="#000000" stroke-width="2" d="M434,-762C464.47,-761.08 470.89,-751.08 498,-752"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,50 @@
connections:
-
- GPIO4: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- DS1820_Dak: [GND,+3.3V,Signal]
-
- GPIO4: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- DS1820_Bad: [GND,+3.3V,Signal]
-
- GPIO4: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- DS1820_Aanvoer: [GND,+3.3V,Signal]
-
- GPIO4: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- DS1820_Retour: [GND,+3.3V,Signal]
-
- GPIO8: [GND, Signal]
- Relayw: [GND,Signal]
- Relay: [GND, Signal]
-
- ESP32Expansion: [GND,+3.3V,GPIO04]
- DSw: [GND,+3.3V,Signal]
- DS1820_Retour: [GND,+3.3V,Signal]
metadata:
title: Zwembad verwarming installatie
pn: ESP32
authors:
Created:
name: Ton
date: 2025-06-22
Approved:
name: Ton
date: 2025-06-22
revisions:
A:
name: Ton
date: 2025-06-22
changelog: Productie
template:
name: din-6771
sheetsize: A3

View File

@ -0,0 +1,13 @@
Id Description Qty Unit Designators
1 Cable, 2 x 1.5 mm² 22 m DompelPompw
2 Cable, 3 wires 0 m 230v
3 Connector, 16 pins 1 ESP32Expansion
4 Connector, 2 point, female, 2 pins 1 DompelPomp
5 Connector, 3 pins 1 230Entree
6 Connector, 7 pins 1 PSU
7 Connector, female, 5 pins 1 Relay
8 Wire, 0.14 mm², BK 0.3 m RelayPower
9 Wire, 0.14 mm², GN 0.3 m RelayPower
10 Wire, 0.14 mm², RD 0.3 m RelayPower
11 Wire, BK 0 m dcPower
12 Wire, RD 0 m dcPower
1 Id Description Qty Unit Designators
2 1 Cable, 2 x 1.5 mm² 22 m DompelPompw
3 2 Cable, 3 wires 0 m 230v
4 3 Connector, 16 pins 1 ESP32Expansion
5 4 Connector, 2 point, female, 2 pins 1 DompelPomp
6 5 Connector, 3 pins 1 230Entree
7 6 Connector, 7 pins 1 PSU
8 7 Connector, female, 5 pins 1 Relay
9 8 Wire, 0.14 mm², BK 0.3 m RelayPower
10 9 Wire, 0.14 mm², GN 0.3 m RelayPower
11 10 Wire, 0.14 mm², RD 0.3 m RelayPower
12 11 Wire, BK 0 m dcPower
13 12 Wire, RD 0 m dcPower

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 73 KiB

View File

@ -0,0 +1,41 @@
connections:
-
- DompelPomp: [GND,+12V]
- DompelPompw: [GND,+12V]
- Relay: [GND,Switch1]
-
- PSU: [GND, +5V]
- dcPower: [GND, +5V]
- ESP32Expansion: [GND, +5V]
-
- PSU: [GND, +5V, +12V]
- RelayPower: [GND, +5V, +12V]
- Relay: [GND,+5V, +12V]
-
- 230Entree: [fase, nul]
- 230v: [fase, nul]
- PSU: [fase, nul]
-
- 230Entree: [fase, nul, aarde]
- 230v: [fase, nul, aarde]
metadata:
title: Zwembad verwarming installatie
pn: Power
authors:
Created:
name: Ton
date: 2025-06-22
Approved:
name: Ton
date: 2025-06-22
revisions:
A:
name: Ton
date: 2025-06-22
changelog: Productie
template:
name: din-6771
sheetsize: A3

15
wireviz/alles.bom.tsv Normal file
View File

@ -0,0 +1,15 @@
Id Description Qty Unit Designators
1 Cable, 2 x 1.5 mm² 22 m DompelPompw
2 Cable, 3 wires 0 m 230v
3 Connector, 16 pins 1 ESP32Expansion
4 Connector, 2 point, female, 2 pins 1 DompelPomp
5 Connector, 3 pins 3 230Entree, GPIO4, GPIO8
6 Connector, 3 point, female, 3 pins 4 DS1820_Aanvoer, DS1820_Bad, DS1820_Dak, DS1820_Retour
7 Connector, 7 pins 1 PSU
8 Connector, female, 5 pins 1 Relay
9 Wire, 0.14 mm², BK 0.9 m DSw, RelayPower, Relayw
10 Wire, 0.14 mm², GN 0.3 m RelayPower
11 Wire, 0.14 mm², RD 0.9 m DSw, RelayPower, Relayw
12 Wire, 0.14 mm², YE 0.6 m DSw, Relayw
13 Wire, BK 0 m dcPower
14 Wire, RD 0 m dcPower
1 Id Description Qty Unit Designators
2 1 Cable, 2 x 1.5 mm² 22 m DompelPompw
3 2 Cable, 3 wires 0 m 230v
4 3 Connector, 16 pins 1 ESP32Expansion
5 4 Connector, 2 point, female, 2 pins 1 DompelPomp
6 5 Connector, 3 pins 3 230Entree, GPIO4, GPIO8
7 6 Connector, 3 point, female, 3 pins 4 DS1820_Aanvoer, DS1820_Bad, DS1820_Dak, DS1820_Retour
8 7 Connector, 7 pins 1 PSU
9 8 Connector, female, 5 pins 1 Relay
10 9 Wire, 0.14 mm², BK 0.9 m DSw, RelayPower, Relayw
11 10 Wire, 0.14 mm², GN 0.3 m RelayPower
12 11 Wire, 0.14 mm², RD 0.9 m DSw, RelayPower, Relayw
13 12 Wire, 0.14 mm², YE 0.6 m DSw, Relayw
14 13 Wire, BK 0 m dcPower
15 14 Wire, RD 0 m dcPower

1350
wireviz/alles.html Normal file

File diff suppressed because one or more lines are too long

BIN
wireviz/alles.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 KiB

959
wireviz/alles.svg Normal file

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 107 KiB

194
wireviz/alles.yml Normal file
View File

@ -0,0 +1,194 @@
templates: # defining templates to be used later on
- &con_i2c
pinlabels: [GND, +5V, SCL, SDA]
- &wire_i2c
category: bundle
gauge: 0.14 mm2
colors: [BK, RD, YE, GN]
- &con_ds #DS1820
pins: [GND,+3.3V,Signal]
- &wire_ds
category: bundle
gauge: 0.14 mm2
colors: [BK, RD, YE]
- &ds_f
type: 3 point
subtype: female
- &con_header
pins: [GND,+3.3V,Signal]
- &wire
shield: false
show_equiv: false
show_name: true
show_wirecount: true
show_wirenumbers: true
connectors:
DS1820_Dak:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Bad:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Aanvoer:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Retour:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DompelPomp:
type: 2 point
subtype: female
pins: [GND, +12V]
Relay:
# type: 3 point
subtype: female
pins: [GND, +5V,+12V, Signal, Switch1]
PSU:
pins: [fase, nul, aarde, GND, +5V, +12V, DC+]
#binnenkomst 230
230Entree: &230
pinlabels: [fase,nul, aarde]
pincolors: [BN,BU,GNYE]
image:
src: images/schukkoStekker230v.jpeg
width: 75
GPIO4: #DS1820
<<: *con_header
<<: *con_ds
GPIO8: #relay
<<: *con_header
<<: *con_ds
ESP32:
pins: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
pinlabels: [GPIO00, GPIO01, GPIO02, GPIO03, GPIO04, +3.3V, GND, +5V,
GPIO05, GPIO06, GPIO07, GPIO08, GPIO09, GPIO10, SCL, SDA ]
ESP32Expansion:
#pins: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
pinlabels: [GPIO00, GPIO01, GPIO02, GPIO03, GPIO04, +3.3V, GND, +5V,
GPIO05, GPIO06, GPIO07, GPIO08, GPIO09, GPIO10, SCL, SDA ]
cables:
W2:
<<: *wire_i2c
<<: *wire
length: 0.4
show_equiv: true
DSw:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +3.3V, Signal]
colors: [BK, RD, YE]
Relayw:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +3.3V, Signal]
colors: [BK, RD, YE]
RelayPower:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +5V, +12V]
colors: [BK, RD, GN]
DompelPompw:
<<: *wire
length: 22
gauge: 1.5
wirelabels: [GND, +12V]
shield: false
colors: [BK, BK]
230v:
<<: *wire
wirelabels: [fase,nul, aarde]
colors: [BN,BU, GNYE]
dcPower:
<<: *wire
category: bundle
wirelabels: [GND, +5V]
colors: [BK, RD]
connections:
-
- DompelPomp: [GND,+12V]
- DompelPompw: [GND,+12V]
- Relay: [GND,Switch1]
-
- DS1820_Dak: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- GPIO4: [GND,+3.3V,Signal]
-
- DS1820_Bad: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- GPIO4: [GND,+3.3V,Signal]
-
- DS1820_Aanvoer: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- GPIO4: [GND,+3.3V,Signal]
-
- DS1820_Retour: [GND,+3.3V,Signal]
- DSw: [GND,+3.3V,Signal]
- GPIO4: [GND,+3.3V,Signal]
-
- PSU: [GND, +5V]
- dcPower: [GND, +5V]
- ESP32Expansion: [GND, +5V]
-
- PSU: [GND, +5V, +12V]
- RelayPower: [GND, +5V, +12V]
- Relay: [GND,+5V, +12V]
-
- Relay: [GND, Signal]
- Relayw: [GND,Signal]
- GPIO8: [GND, Signal]
-
- 230Entree: [fase, nul]
- 230v: [fase, nul]
- PSU: [fase, nul]
-
- 230Entree: [fase, nul, aarde]
- 230v: [fase, nul, aarde]
metadata:
title: Zwembad verwarming installatie
pn: ZW
authors:
Created:
name: Ton
date: 2025-06-20
Approved:
name: Ton
date: 2025-06-21
revisions:
A:
name: Ton
date: 2025-06-22
changelog: Productie
template:
name: din-6771
sheetsize: A3
tweak:
override:
graph:
ranksep: "0.5" # Reduce the horizontal spacing (default 2)
wireTweak: &wireTweak
# shape: none # Hide the surrounding frame
fontsize: "12" # Reduce the space needed for text
# fontcolor: white # Same as background to hide the text
230v:
<<: *wireTweak
dcPower:
<<: *wireTweak
DSw:
<<: *wireTweak

View File

@ -0,0 +1 @@
Id Description Qty Unit Designators
1 Id Description Qty Unit Designators

View File

@ -0,0 +1,65 @@
<!DOCTYPE html>
<html lang="en"><head>
<meta charset="UTF-8">
<meta name="generator" content="WireViz 0.4.1 - https://github.com/wireviz/WireViz">
<title>connectors_cables</title>
<style>
#bom table, th, td {
border: 1px solid black;
border-collapse: collapse;
}
#bom th, td {
padding: 4px;
text-align: left;
}
.bom_col_qty {
text-align: right;
}
</style>
</head><body style="font-family:arial;background-color:#ffffff">
<h1>connectors_cables</h1>
<h2>Diagram</h2>
<div id="description">
<!-- %description% -->
</div>
<div id="diagram">
<!-- XML and DOCTYPE declarations from SVG file removed -->
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: %3 Pages: 1 -->
<svg width="8pt" height="8pt"
viewBox="0.00 0.00 8.00 8.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 4)">
<title>%3</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-4 4,-4 4,4 -4,4"/>
</g>
</svg>
</div>
<div id="notes">
<!-- %notes% -->
</div>
<h2>Bill of Materials</h2>
<div id="bom">
<table class="bom">
<tr>
<th class="bom_col_id">Id</th>
<th class="bom_col_description">Description</th>
<th class="bom_col_qty">Qty</th>
<th class="bom_col_unit">Unit</th>
<th class="bom_col_designators">Designators</th>
</tr>
</table>
</div>
</body></html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 B

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: %3 Pages: 1 -->
<svg width="8pt" height="8pt"
viewBox="0.00 0.00 8.00 8.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 4)">
<title>%3</title>
<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-4 4,-4 4,4 -4,4"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 563 B

View File

@ -0,0 +1,133 @@
templates: # defining templates to be used later on
- &con_i2c
pinlabels: [GND, +5V, SCL, SDA]
- &wire_i2c
category: bundle
gauge: 0.14 mm2
colors: [BK, RD, YE, GN]
- &con_ds #DS1820
pins: [GND,+3.3V,Signal]
- &wire_ds
category: bundle
gauge: 0.14 mm2
colors: [BK, RD, YE]
- &ds_f
type: 3 point
subtype: female
- &con_header
pins: [GND,+3.3V,Signal]
- &wire
shield: false
show_equiv: false
show_name: true
show_wirecount: true
show_wirenumbers: true
connectors:
DS1820_Dak:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Bad:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Aanvoer:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DS1820_Retour:
<<: *ds_f # copying items from the template
<<: *con_ds # copying items from the template
DompelPomp:
type: 2 point
subtype: female
pins: [GND, +12V]
Relay:
# type: 3 point
subtype: female
pins: [GND, +5V,+12V, Signal, Switch1]
PSU:
pins: [fase, nul, aarde, GND, +5V, +12V, DC+]
#binnenkomst 230
230Entree: &230
pinlabels: [fase,nul, aarde]
pincolors: [BN,BU,GNYE]
image:
src: images/schukkoStekker230v.jpeg
width: 75
GPIO4: #DS1820
<<: *con_header
<<: *con_ds
GPIO8: #relay
<<: *con_header
<<: *con_ds
ESP32:
pins: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
pinlabels: [GPIO00, GPIO01, GPIO02, GPIO03, GPIO04, +3.3V, GND, +5V,
GPIO05, GPIO06, GPIO07, GPIO08, GPIO09, GPIO10, SCL, SDA ]
ESP32Expansion:
#pins: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16]
pinlabels: [GPIO00, GPIO01, GPIO02, GPIO03, GPIO04, +3.3V, GND, +5V,
GPIO05, GPIO06, GPIO07, GPIO08, GPIO09, GPIO10, SCL, SDA ]
cables:
W2:
<<: *wire_i2c
<<: *wire
length: 0.4
show_equiv: true
DSw:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +3.3V, Signal]
colors: [BK, RD, YE]
Relayw:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +3.3V, Signal]
colors: [BK, RD, YE]
RelayPower:
<<: *wire
category: bundle
gauge: 0.14 mm2
length: 0.3
wirelabels: [GND, +5V, +12V]
colors: [BK, RD, GN]
DompelPompw:
<<: *wire
length: 22
gauge: 1.5
wirelabels: [GND, +12V]
shield: false
colors: [BK, BK]
230v:
<<: *wire
wirelabels: [fase,nul, aarde]
colors: [BN,BU, GNYE]
dcPower:
<<: *wire
category: bundle
wirelabels: [GND, +5V]
colors: [BK, RD]
tweak:
override:
graph:
ranksep: "0.5" # Reduce the horizontal spacing (default 2)
wireTweak: &wireTweak
# shape: none # Hide the surrounding frame
fontsize: "12" # Reduce the space needed for text
# fontcolor: white # Same as background to hide the text
230v:
<<: *wireTweak
dcPower:
<<: *wireTweak
DSw:
<<: *wireTweak

View File

@ -0,0 +1,788 @@
<!DOCTYPE html>
<html class="writer-html5" lang="en" data-content_root="../"><script type="text/javascript" id="__gaOptOutExtension">window["_gaUserPrefs"] = { ioo : function() { return true; } }</script><head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>C3 pico — WEMOS documentation</title>
<style type="text/css">:root, :host {
--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";
--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";
--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";
--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";
--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";
--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";
--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";
--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone";
}
svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa {
overflow: visible;
box-sizing: content-box;
}
.svg-inline--fa {
display: var(--fa-display, inline-block);
height: 1em;
overflow: visible;
vertical-align: -0.125em;
}
.svg-inline--fa.fa-2xs {
vertical-align: 0.1em;
}
.svg-inline--fa.fa-xs {
vertical-align: 0em;
}
.svg-inline--fa.fa-sm {
vertical-align: -0.0714285705em;
}
.svg-inline--fa.fa-lg {
vertical-align: -0.2em;
}
.svg-inline--fa.fa-xl {
vertical-align: -0.25em;
}
.svg-inline--fa.fa-2xl {
vertical-align: -0.3125em;
}
.svg-inline--fa.fa-pull-left {
margin-right: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-pull-right {
margin-left: var(--fa-pull-margin, 0.3em);
width: auto;
}
.svg-inline--fa.fa-li {
width: var(--fa-li-width, 2em);
top: 0.25em;
}
.svg-inline--fa.fa-fw {
width: var(--fa-fw-width, 1.25em);
}
.fa-layers svg.svg-inline--fa {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
}
.fa-layers-counter, .fa-layers-text {
display: inline-block;
position: absolute;
text-align: center;
}
.fa-layers {
display: inline-block;
height: 1em;
position: relative;
text-align: center;
vertical-align: -0.125em;
width: 1em;
}
.fa-layers svg.svg-inline--fa {
transform-origin: center center;
}
.fa-layers-text {
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
transform-origin: center center;
}
.fa-layers-counter {
background-color: var(--fa-counter-background-color, #ff253a);
border-radius: var(--fa-counter-border-radius, 1em);
box-sizing: border-box;
color: var(--fa-inverse, #fff);
line-height: var(--fa-counter-line-height, 1);
max-width: var(--fa-counter-max-width, 5em);
min-width: var(--fa-counter-min-width, 1.5em);
overflow: hidden;
padding: var(--fa-counter-padding, 0.25em 0.5em);
right: var(--fa-right, 0);
text-overflow: ellipsis;
top: var(--fa-top, 0);
transform: scale(var(--fa-counter-scale, 0.25));
transform-origin: top right;
}
.fa-layers-bottom-right {
bottom: var(--fa-bottom, 0);
right: var(--fa-right, 0);
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom right;
}
.fa-layers-bottom-left {
bottom: var(--fa-bottom, 0);
left: var(--fa-left, 0);
right: auto;
top: auto;
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: bottom left;
}
.fa-layers-top-right {
top: var(--fa-top, 0);
right: var(--fa-right, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top right;
}
.fa-layers-top-left {
left: var(--fa-left, 0);
right: auto;
top: var(--fa-top, 0);
transform: scale(var(--fa-layers-scale, 0.25));
transform-origin: top left;
}
.fa-1x {
font-size: 1em;
}
.fa-2x {
font-size: 2em;
}
.fa-3x {
font-size: 3em;
}
.fa-4x {
font-size: 4em;
}
.fa-5x {
font-size: 5em;
}
.fa-6x {
font-size: 6em;
}
.fa-7x {
font-size: 7em;
}
.fa-8x {
font-size: 8em;
}
.fa-9x {
font-size: 9em;
}
.fa-10x {
font-size: 10em;
}
.fa-2xs {
font-size: 0.625em;
line-height: 0.1em;
vertical-align: 0.225em;
}
.fa-xs {
font-size: 0.75em;
line-height: 0.0833333337em;
vertical-align: 0.125em;
}
.fa-sm {
font-size: 0.875em;
line-height: 0.0714285718em;
vertical-align: 0.0535714295em;
}
.fa-lg {
font-size: 1.25em;
line-height: 0.05em;
vertical-align: -0.075em;
}
.fa-xl {
font-size: 1.5em;
line-height: 0.0416666682em;
vertical-align: -0.125em;
}
.fa-2xl {
font-size: 2em;
line-height: 0.03125em;
vertical-align: -0.1875em;
}
.fa-fw {
text-align: center;
width: 1.25em;
}
.fa-ul {
list-style-type: none;
margin-left: var(--fa-li-margin, 2.5em);
padding-left: 0;
}
.fa-ul > li {
position: relative;
}
.fa-li {
left: calc(-1 * var(--fa-li-width, 2em));
position: absolute;
text-align: center;
width: var(--fa-li-width, 2em);
line-height: inherit;
}
.fa-border {
border-color: var(--fa-border-color, #eee);
border-radius: var(--fa-border-radius, 0.1em);
border-style: var(--fa-border-style, solid);
border-width: var(--fa-border-width, 0.08em);
padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}
.fa-pull-left {
float: left;
margin-right: var(--fa-pull-margin, 0.3em);
}
.fa-pull-right {
float: right;
margin-left: var(--fa-pull-margin, 0.3em);
}
.fa-beat {
animation-name: fa-beat;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-bounce {
animation-name: fa-bounce;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}
.fa-fade {
animation-name: fa-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-beat-fade {
animation-name: fa-beat-fade;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}
.fa-flip {
animation-name: fa-flip;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, ease-in-out);
}
.fa-shake {
animation-name: fa-shake;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin {
animation-name: fa-spin;
animation-delay: var(--fa-animation-delay, 0s);
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 2s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, linear);
}
.fa-spin-reverse {
--fa-animation-direction: reverse;
}
.fa-pulse,
.fa-spin-pulse {
animation-name: fa-spin;
animation-direction: var(--fa-animation-direction, normal);
animation-duration: var(--fa-animation-duration, 1s);
animation-iteration-count: var(--fa-animation-iteration-count, infinite);
animation-timing-function: var(--fa-animation-timing, steps(8));
}
@media (prefers-reduced-motion: reduce) {
.fa-beat,
.fa-bounce,
.fa-fade,
.fa-beat-fade,
.fa-flip,
.fa-pulse,
.fa-shake,
.fa-spin,
.fa-spin-pulse {
animation-delay: -1ms;
animation-duration: 1ms;
animation-iteration-count: 1;
transition-delay: 0s;
transition-duration: 0s;
}
}
@keyframes fa-beat {
0%, 90% {
transform: scale(1);
}
45% {
transform: scale(var(--fa-beat-scale, 1.25));
}
}
@keyframes fa-bounce {
0% {
transform: scale(1, 1) translateY(0);
}
10% {
transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
}
30% {
transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
}
50% {
transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
}
57% {
transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
}
64% {
transform: scale(1, 1) translateY(0);
}
100% {
transform: scale(1, 1) translateY(0);
}
}
@keyframes fa-fade {
50% {
opacity: var(--fa-fade-opacity, 0.4);
}
}
@keyframes fa-beat-fade {
0%, 100% {
opacity: var(--fa-beat-fade-opacity, 0.4);
transform: scale(1);
}
50% {
opacity: 1;
transform: scale(var(--fa-beat-fade-scale, 1.125));
}
}
@keyframes fa-flip {
50% {
transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
}
}
@keyframes fa-shake {
0% {
transform: rotate(-15deg);
}
4% {
transform: rotate(15deg);
}
8%, 24% {
transform: rotate(-18deg);
}
12%, 28% {
transform: rotate(18deg);
}
16% {
transform: rotate(-22deg);
}
20% {
transform: rotate(22deg);
}
32% {
transform: rotate(-12deg);
}
36% {
transform: rotate(12deg);
}
40%, 100% {
transform: rotate(0deg);
}
}
@keyframes fa-spin {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
.fa-rotate-90 {
transform: rotate(90deg);
}
.fa-rotate-180 {
transform: rotate(180deg);
}
.fa-rotate-270 {
transform: rotate(270deg);
}
.fa-flip-horizontal {
transform: scale(-1, 1);
}
.fa-flip-vertical {
transform: scale(1, -1);
}
.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
transform: scale(-1, -1);
}
.fa-rotate-by {
transform: rotate(var(--fa-rotate-angle, 0));
}
.fa-stack {
display: inline-block;
vertical-align: middle;
height: 2em;
position: relative;
width: 2.5em;
}
.fa-stack-1x,
.fa-stack-2x {
bottom: 0;
left: 0;
margin: auto;
position: absolute;
right: 0;
top: 0;
z-index: var(--fa-stack-z-index, auto);
}
.svg-inline--fa.fa-stack-1x {
height: 1em;
width: 1.25em;
}
.svg-inline--fa.fa-stack-2x {
height: 2em;
width: 2.5em;
}
.fa-inverse {
color: var(--fa-inverse, #fff);
}
.sr-only,
.fa-sr-only {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.sr-only-focusable:not(:focus),
.fa-sr-only-focusable:not(:focus) {
position: absolute;
width: 1px;
height: 1px;
padding: 0;
margin: -1px;
overflow: hidden;
clip: rect(0, 0, 0, 0);
white-space: nowrap;
border-width: 0;
}
.svg-inline--fa .fa-primary {
fill: var(--fa-primary-color, currentColor);
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa .fa-secondary {
fill: var(--fa-secondary-color, currentColor);
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-primary {
opacity: var(--fa-secondary-opacity, 0.4);
}
.svg-inline--fa.fa-swap-opacity .fa-secondary {
opacity: var(--fa-primary-opacity, 1);
}
.svg-inline--fa mask .fa-primary,
.svg-inline--fa mask .fa-secondary {
fill: black;
}</style><link rel="stylesheet" type="text/css" href="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/pygments.css">
<link rel="stylesheet" type="text/css" href="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/theme.css">
<!--[if lt IE 9]>
<script src="../_static/js/html5shiv.min.js"></script>
<![endif]-->
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/jquery.js"></script>
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/_sphinx_javascript_frameworks_compat.js"></script>
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/documentation_options.js"></script>
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/doctools.js"></script>
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/sphinx_highlight.js"></script>
<script src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/theme.js"></script>
<link rel="index" title="Index" href="https://www.wemos.cc/en/latest/genindex.html">
<link rel="search" title="Search" href="https://www.wemos.cc/en/latest/search.html">
<link rel="next" title="W600 Boards" href="https://www.wemos.cc/en/latest/w600/index.html">
<link rel="prev" title="C3 mini" href="https://www.wemos.cc/en/latest/c3/c3_mini.html">
<!-- RTD Extra Head -->
<script type="application/json" id="READTHEDOCS_DATA">{"ad_free": false, "api_host": "https://readthedocs.org", "builder": "sphinx", "canonical_url": null, "docroot": "/docs/en/", "features": {"docsearch_disabled": false}, "global_analytics_code": "UA-17997319-1", "language": "en", "page": "c3/c3_pico", "programming_language": "words", "project": "wemos-docs", "proxied_api_host": "/_", "source_suffix": ".rst", "subprojects": {}, "theme": "sphinx_rtd_theme", "user_analytics_code": "", "version": "latest"}</script>
<!--
Using this variable directly instead of using `JSON.parse` is deprecated.
The READTHEDOCS_DATA global variable will be removed in the future.
-->
<script type="text/javascript">
READTHEDOCS_DATA = JSON.parse(document.getElementById('READTHEDOCS_DATA').innerHTML);
</script>
<!-- end RTD <extrahead> -->
<script async="" type="text/javascript" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/readthedocs-addons.js"></script><meta name="readthedocs-project-slug" content="wemos-docs"><meta name="readthedocs-version-slug" content="latest"><meta name="readthedocs-resolver-filename" content="/c3/c3_pico.html"><meta name="readthedocs-http-status" content="200"><script id="ethicaladsjs" type="text/javascript" async="true" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/ethicalads.min.js"></script></head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search">
<a href="https://www.wemos.cc/en/latest/index.html" class="icon icon-home">
WEMOS
</a>
<div class="version">
latest
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs">
<input type="hidden" name="check_keywords" value="yes">
<input type="hidden" name="area" value="default">
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
<p class="caption" role="heading"><span class="caption-text">Boards:</span></p>
<ul class="current" aria-expanded="true">
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/d1/index.html">D1</a></li>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/d1_mini_shield/index.html">D1 mini Shields</a></li>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/d32/index.html">D32</a></li>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/s2/index.html">S2</a></li>
<li class="toctree-l1 current" aria-expanded="true"><a class="reference internal" href="https://www.wemos.cc/en/latest/c3/index.html"><button class="toctree-expand" title="Open/close menu"></button>C3</a><ul class="" aria-expanded="false">
<li class="toctree-l2"><a class="reference internal" href="https://www.wemos.cc/en/latest/c3/c3_mini.html">C3 mini</a></li>
<li class="toctree-l2 current" aria-expanded="true"><a class="reference internal current" href="#" aria-expanded="true"><button class="toctree-expand" title="Open/close menu"></button>C3 pico</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#features">Features</a></li>
<li class="toctree-l3"><a class="reference internal" href="#tutorials">Tutorials</a></li>
<li class="toctree-l3"><a class="reference internal" href="#documentation">Documentation</a></li>
<li class="toctree-l3"><a class="reference internal" href="#technical-specs">Technical specs</a></li>
<li class="toctree-l3"><a class="reference internal" href="#pin">Pin</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/w600/index.html">W600</a></li>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/s3/index.html">S3</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Tutorials:</span></p>
<ul>
<li class="toctree-l1"><a class="reference internal" href="https://www.wemos.cc/en/latest/tutorials/index.html">Tutorials</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Links:</span></p>
<ul>
<li class="toctree-l1"><a class="reference external" href="https://www.aliexpress.com/store/1100907255">Online Shop</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="https://www.wemos.cc/en/latest/index.html">WEMOS</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="Page navigation">
<ul class="wy-breadcrumbs">
<li><a href="https://www.wemos.cc/en/latest/index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="https://www.wemos.cc/en/latest/c3/index.html">C3 Boards</a></li>
<li class="breadcrumb-item active">C3 pico</li>
<li class="wy-breadcrumbs-aside">
<a href="https://github.com/wemos/docs/blob/master/docs/en/c3/c3_pico.rst" class="fa fa-github"> Edit on GitHub</a>
</li>
</ul>
<hr>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="c3-pico">
<h1>C3 pico<a class="headerlink" href="#c3-pico" title="Link to this heading"></a></h1>
<div class="wy-table-responsive"><table class="docutils align-default">
<tbody>
<tr class="row-odd"><td><p><a class="reference external" href="https://www.wemos.cc/en/latest/_static/boards/c3_pico_v1.0.0_1_16x16.jpg"><img alt="TOP_IMG" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/c3_pico_v1.0.0_1_16x16.jpg"></a></p></td>
<td><p><a class="reference external" href="https://www.wemos.cc/en/latest/_static/boards/c3_pico_v1.0.0_2_16x16.jpg"><img alt="BOTTOM_IMG" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/c3_pico_v1.0.0_2_16x16.jpg"></a></p></td>
</tr>
</tbody>
</table></div>
<p>A mini wifi &amp; Bluetooth5 (LE) boards based ESP32-C3FH4.
<a class="reference external" href="https://www.aliexpress.com/item/1005004866531117.html">[Buy it]</a></p>
<section id="features">
<h2>Features<a class="headerlink" href="#features" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p>based ESP32-C3 WIFI &amp; Bluetooth LE RISC-V Single-Core CPU</p></li>
<li><p>Type-C USB</p></li>
<li><p>4MB Flash</p></li>
<li><p>12x IO</p></li>
<li><p>1x WS2812 RGB LED</p></li>
<li><p>1x LOLIN I2C Port</p></li>
<li><p>1x Battery port with 500mA charging</p></li>
<li><p>ADC, I2C, SPI, UART</p></li>
<li><p>Compatible with LOLIN D1 mini shields</p></li>
<li><p>Compatible with MicroPython, Arduino, CircuitPython and ESP-IDF</p></li>
<li><p>Default firmware: MicroPython</p></li>
</ul>
</section>
<section id="tutorials">
<h2>Tutorials<a class="headerlink" href="#tutorials" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p><a class="reference internal" href="https://www.wemos.cc/en/latest/tutorials/c3/get_started_with_micropython_c3.html"><span class="doc">Get started with MicroPython [C3 series]</span></a></p></li>
<li><p><a class="reference internal" href="https://www.wemos.cc/en/latest/tutorials/c3/get_started_with_arduino_c3.html"><span class="doc">Get started with Arduino [C3 series]</span></a></p></li>
<li><p><a class="reference internal" href="https://www.wemos.cc/en/latest/tutorials/c3/get_started_with_circuitpython_c3.html"><span class="doc">Get started with CircuitPython [C3 series]</span></a></p></li>
</ul>
</section>
<section id="documentation">
<h2>Documentation<a class="headerlink" href="#documentation" title="Link to this heading"></a></h2>
<ul class="simple">
<li><p><a class="reference external" href="https://www.wemos.cc/en/latest/_static/files/sch_c3_pico_v1.0.0.pdf">Schematic V1.0.0[PDF]</a></p></li>
<li><p><a class="reference external" href="https://www.wemos.cc/en/latest/_static/files/dim_c3_pico_v1.0.0.pdf">Dimension V1.0.0[PDF]</a></p></li>
<li><p><a class="reference external" href="https://www.espressif.com/sites/default/files/documentation/esp32-c3_datasheet_en.pdf">ESP32-C3 Datasheet</a></p></li>
</ul>
</section>
<section id="technical-specs">
<h2>Technical specs<a class="headerlink" href="#technical-specs" title="Link to this heading"></a></h2>
<div class="wy-table-responsive"><table class="docutils align-default">
<tbody>
<tr class="row-odd"><td><p>Operating Voltage</p></td>
<td><p>3.3V</p></td>
</tr>
<tr class="row-even"><td><p>Digital I/O Pins</p></td>
<td><p>12</p></td>
</tr>
<tr class="row-odd"><td><p>Clock Speed</p></td>
<td><p>160MHz</p></td>
</tr>
<tr class="row-even"><td><p>Flash</p></td>
<td><p>4M Bytes</p></td>
</tr>
<tr class="row-odd"><td><p>Size</p></td>
<td><p>25.4*25.4mm</p></td>
</tr>
<tr class="row-even"><td><p>Weight</p></td>
<td><p>2.6g</p></td>
</tr>
</tbody>
</table></div>
</section>
<section id="pin">
<h2>Pin<a class="headerlink" href="#pin" title="Link to this heading"></a></h2>
<a class="reference external image-reference" href="https://www.wemos.cc/en/latest/_static/boards/c3_pico_v1.0.0_4_16x9.png"><img alt="../_images/c3_pico_v1.0.0_4_16x9.png" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/c3_pico_v1.webp"></a>
<a class="reference external image-reference" href="https://www.wemos.cc/en/latest/_static/boards/c3_pico_v1.0.0_5_16x9.png"><img alt="../_images/c3_pico_v1.0.0_5_16x9.png" src="C3%20pico%20%E2%80%94%20WEMOS%20documentation_files/c3_pico_v1_002.webp"></a>
</section>
</section>
</div>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
<a href="https://www.wemos.cc/en/latest/c3/c3_mini.html" class="btn btn-neutral float-left" title="C3 mini" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
<a href="https://www.wemos.cc/en/latest/w600/index.html" class="btn btn-neutral float-right" title="W600 Boards" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr>
<div role="contentinfo">
<p>© Copyright 2021-2024, wemos.cc.
<span class="commit">Revision <code>5eacfac4</code>.
</span></p>
</div>
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
provided by <a href="https://readthedocs.org/">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<readthedocs-flyout></readthedocs-flyout><div id="readthedocs-ea" class="raised" data-ea-type="image" data-ea-style="stickybox" data-ea-placement-bottom="90px" data-ea-manual="true" data-ea-publisher="readthedocs" data-ea-keywords="arduino|embedded|micropython|only words|python|readthedocs-project-511990|readthedocs-project-wemos-docs" data-ea-campaign-types="community|house|paid"></div><readthedocs-notification class="raised toast"></readthedocs-notification><readthedocs-search class="raised floating"></readthedocs-search><readthedocs-hotkeys></readthedocs-hotkeys></body></html>

View File

@ -0,0 +1,123 @@
/* Compatability shim for jQuery and underscores.js.
*
* Copyright Sphinx contributors
* Released under the two clause BSD licence
*/
/**
* small helper function to urldecode strings
*
* See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL
*/
jQuery.urldecode = function(x) {
if (!x) {
return x
}
return decodeURIComponent(x.replace(/\+/g, ' '));
};
/**
* small helper function to urlencode strings
*/
jQuery.urlencode = encodeURIComponent;
/**
* This function returns the parsed url parameters of the
* current request. Multiple values per key are supported,
* it will always return arrays of strings for the value parts.
*/
jQuery.getQueryParameters = function(s) {
if (typeof s === 'undefined')
s = document.location.search;
var parts = s.substr(s.indexOf('?') + 1).split('&');
var result = {};
for (var i = 0; i < parts.length; i++) {
var tmp = parts[i].split('=', 2);
var key = jQuery.urldecode(tmp[0]);
var value = jQuery.urldecode(tmp[1]);
if (key in result)
result[key].push(value);
else
result[key] = [value];
}
return result;
};
/**
* highlight a given string on a jquery object by wrapping it in
* span elements with the given class name.
*/
jQuery.fn.highlightText = function(text, className) {
function highlight(node, addItems) {
if (node.nodeType === 3) {
var val = node.nodeValue;
var pos = val.toLowerCase().indexOf(text);
if (pos >= 0 &&
!jQuery(node.parentNode).hasClass(className) &&
!jQuery(node.parentNode).hasClass("nohighlight")) {
var span;
var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
if (isInSVG) {
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
} else {
span = document.createElement("span");
span.className = className;
}
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
node.parentNode.insertBefore(span, node.parentNode.insertBefore(
document.createTextNode(val.substr(pos + text.length)),
node.nextSibling));
node.nodeValue = val.substr(0, pos);
if (isInSVG) {
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
var bbox = node.parentElement.getBBox();
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;
rect.width.baseVal.value = bbox.width;
rect.height.baseVal.value = bbox.height;
rect.setAttribute('class', className);
addItems.push({
"parent": node.parentNode,
"target": rect});
}
}
}
else if (!jQuery(node).is("button, select, textarea")) {
jQuery.each(node.childNodes, function() {
highlight(this, addItems);
});
}
}
var addItems = [];
var result = this.each(function() {
highlight(this, addItems);
});
for (var i = 0; i < addItems.length; ++i) {
jQuery(addItems[i].parent).before(addItems[i].target);
}
return result;
};
/*
* backward compatibility for jQuery.browser
* This will be supported until firefox bug is fixed.
*/
if (!jQuery.browser) {
jQuery.uaMatch = function(ua) {
ua = ua.toLowerCase();
var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
/(webkit)[ \/]([\w.]+)/.exec(ua) ||
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
/(msie) ([\w.]+)/.exec(ua) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
[];
return {
browser: match[ 1 ] || "",
version: match[ 2 ] || "0"
};
};
jQuery.browser = {};
jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 471 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 435 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

View File

@ -0,0 +1,156 @@
/*
* doctools.js
* ~~~~~~~~~~~
*
* Base JavaScript utilities for all Sphinx HTML documentation.
*
* :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
"use strict";
const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([
"TEXTAREA",
"INPUT",
"SELECT",
"BUTTON",
]);
const _ready = (callback) => {
if (document.readyState !== "loading") {
callback();
} else {
document.addEventListener("DOMContentLoaded", callback);
}
};
/**
* Small JavaScript module for the documentation.
*/
const Documentation = {
init: () => {
Documentation.initDomainIndexTable();
Documentation.initOnKeyListeners();
},
/**
* i18n support
*/
TRANSLATIONS: {},
PLURAL_EXPR: (n) => (n === 1 ? 0 : 1),
LOCALE: "unknown",
// gettext and ngettext don't access this so that the functions
// can safely bound to a different name (_ = Documentation.gettext)
gettext: (string) => {
const translated = Documentation.TRANSLATIONS[string];
switch (typeof translated) {
case "undefined":
return string; // no translation
case "string":
return translated; // translation exists
default:
return translated[0]; // (singular, plural) translation tuple exists
}
},
ngettext: (singular, plural, n) => {
const translated = Documentation.TRANSLATIONS[singular];
if (typeof translated !== "undefined")
return translated[Documentation.PLURAL_EXPR(n)];
return n === 1 ? singular : plural;
},
addTranslations: (catalog) => {
Object.assign(Documentation.TRANSLATIONS, catalog.messages);
Documentation.PLURAL_EXPR = new Function(
"n",
`return (${catalog.plural_expr})`
);
Documentation.LOCALE = catalog.locale;
},
/**
* helper function to focus on search bar
*/
focusSearchBar: () => {
document.querySelectorAll("input[name=q]")[0]?.focus();
},
/**
* Initialise the domain index toggle buttons
*/
initDomainIndexTable: () => {
const toggler = (el) => {
const idNumber = el.id.substr(7);
const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`);
if (el.src.substr(-9) === "minus.png") {
el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`;
toggledRows.forEach((el) => (el.style.display = "none"));
} else {
el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`;
toggledRows.forEach((el) => (el.style.display = ""));
}
};
const togglerElements = document.querySelectorAll("img.toggler");
togglerElements.forEach((el) =>
el.addEventListener("click", (event) => toggler(event.currentTarget))
);
togglerElements.forEach((el) => (el.style.display = ""));
if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler);
},
initOnKeyListeners: () => {
// only install a listener if it is really needed
if (
!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS &&
!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS
)
return;
document.addEventListener("keydown", (event) => {
// bail for input elements
if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return;
// bail with special keys
if (event.altKey || event.ctrlKey || event.metaKey) return;
if (!event.shiftKey) {
switch (event.key) {
case "ArrowLeft":
if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break;
const prevLink = document.querySelector('link[rel="prev"]');
if (prevLink && prevLink.href) {
window.location.href = prevLink.href;
event.preventDefault();
}
break;
case "ArrowRight":
if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break;
const nextLink = document.querySelector('link[rel="next"]');
if (nextLink && nextLink.href) {
window.location.href = nextLink.href;
event.preventDefault();
}
break;
}
}
// some keyboard layouts may need Shift to get /
switch (event.key) {
case "/":
if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break;
Documentation.focusSearchBar();
event.preventDefault();
}
});
},
};
// quick alias for translations
const _ = Documentation.gettext;
_ready(Documentation.init);

View File

@ -0,0 +1,13 @@
const DOCUMENTATION_OPTIONS = {
VERSION: '',
LANGUAGE: 'en',
COLLAPSE_INDEX: false,
BUILDER: 'html',
FILE_SUFFIX: '.html',
LINK_SUFFIX: '.html',
HAS_SOURCE: true,
SOURCELINK_SUFFIX: '.txt',
NAVIGATION_WITH_KEYS: false,
SHOW_SEARCH_SUMMARY: true,
ENABLE_SEARCH_SHORTCUTS: true,
};

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,75 @@
pre { line-height: 125%; }
td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; }
td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; }
.highlight .hll { background-color: #ffffcc }
.highlight { background: #f8f8f8; }
.highlight .c { color: #3D7B7B; font-style: italic } /* Comment */
.highlight .err { border: 1px solid #FF0000 } /* Error */
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
.highlight .o { color: #666666 } /* Operator */
.highlight .ch { color: #3D7B7B; font-style: italic } /* Comment.Hashbang */
.highlight .cm { color: #3D7B7B; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #9C6500 } /* Comment.Preproc */
.highlight .cpf { color: #3D7B7B; font-style: italic } /* Comment.PreprocFile */
.highlight .c1 { color: #3D7B7B; font-style: italic } /* Comment.Single */
.highlight .cs { color: #3D7B7B; font-style: italic } /* Comment.Special */
.highlight .gd { color: #A00000 } /* Generic.Deleted */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .ges { font-weight: bold; font-style: italic } /* Generic.EmphStrong */
.highlight .gr { color: #E40000 } /* Generic.Error */
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.highlight .gi { color: #008400 } /* Generic.Inserted */
.highlight .go { color: #717171 } /* Generic.Output */
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.highlight .gt { color: #0044DD } /* Generic.Traceback */
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.highlight .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #B00040 } /* Keyword.Type */
.highlight .m { color: #666666 } /* Literal.Number */
.highlight .s { color: #BA2121 } /* Literal.String */
.highlight .na { color: #687822 } /* Name.Attribute */
.highlight .nb { color: #008000 } /* Name.Builtin */
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
.highlight .no { color: #880000 } /* Name.Constant */
.highlight .nd { color: #AA22FF } /* Name.Decorator */
.highlight .ni { color: #717171; font-weight: bold } /* Name.Entity */
.highlight .ne { color: #CB3F38; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #0000FF } /* Name.Function */
.highlight .nl { color: #767600 } /* Name.Label */
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
.highlight .nv { color: #19177C } /* Name.Variable */
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mb { color: #666666 } /* Literal.Number.Bin */
.highlight .mf { color: #666666 } /* Literal.Number.Float */
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
.highlight .sa { color: #BA2121 } /* Literal.String.Affix */
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
.highlight .dl { color: #BA2121 } /* Literal.String.Delimiter */
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
.highlight .se { color: #AA5D1F; font-weight: bold } /* Literal.String.Escape */
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
.highlight .si { color: #A45A77; font-weight: bold } /* Literal.String.Interpol */
.highlight .sx { color: #008000 } /* Literal.String.Other */
.highlight .sr { color: #A45A77 } /* Literal.String.Regex */
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
.highlight .fm { color: #0000FF } /* Name.Function.Magic */
.highlight .vc { color: #19177C } /* Name.Variable.Class */
.highlight .vg { color: #19177C } /* Name.Variable.Global */
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
.highlight .vm { color: #19177C } /* Name.Variable.Magic */
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,154 @@
/* Highlighting utilities for Sphinx HTML documentation. */
"use strict";
const SPHINX_HIGHLIGHT_ENABLED = true
/**
* highlight a given string on a node by wrapping it in
* span elements with the given class name.
*/
const _highlight = (node, addItems, text, className) => {
if (node.nodeType === Node.TEXT_NODE) {
const val = node.nodeValue;
const parent = node.parentNode;
const pos = val.toLowerCase().indexOf(text);
if (
pos >= 0 &&
!parent.classList.contains(className) &&
!parent.classList.contains("nohighlight")
) {
let span;
const closestNode = parent.closest("body, svg, foreignObject");
const isInSVG = closestNode && closestNode.matches("svg");
if (isInSVG) {
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
} else {
span = document.createElement("span");
span.classList.add(className);
}
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
const rest = document.createTextNode(val.substr(pos + text.length));
parent.insertBefore(
span,
parent.insertBefore(
rest,
node.nextSibling
)
);
node.nodeValue = val.substr(0, pos);
/* There may be more occurrences of search term in this node. So call this
* function recursively on the remaining fragment.
*/
_highlight(rest, addItems, text, className);
if (isInSVG) {
const rect = document.createElementNS(
"http://www.w3.org/2000/svg",
"rect"
);
const bbox = parent.getBBox();
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;
rect.width.baseVal.value = bbox.width;
rect.height.baseVal.value = bbox.height;
rect.setAttribute("class", className);
addItems.push({ parent: parent, target: rect });
}
}
} else if (node.matches && !node.matches("button, select, textarea")) {
node.childNodes.forEach((el) => _highlight(el, addItems, text, className));
}
};
const _highlightText = (thisNode, text, className) => {
let addItems = [];
_highlight(thisNode, addItems, text, className);
addItems.forEach((obj) =>
obj.parent.insertAdjacentElement("beforebegin", obj.target)
);
};
/**
* Small JavaScript module for the documentation.
*/
const SphinxHighlight = {
/**
* highlight the search words provided in localstorage in the text
*/
highlightSearchWords: () => {
if (!SPHINX_HIGHLIGHT_ENABLED) return; // bail if no highlight
// get and clear terms from localstorage
const url = new URL(window.location);
const highlight =
localStorage.getItem("sphinx_highlight_terms")
|| url.searchParams.get("highlight")
|| "";
localStorage.removeItem("sphinx_highlight_terms")
url.searchParams.delete("highlight");
window.history.replaceState({}, "", url);
// get individual terms from highlight string
const terms = highlight.toLowerCase().split(/\s+/).filter(x => x);
if (terms.length === 0) return; // nothing to do
// There should never be more than one element matching "div.body"
const divBody = document.querySelectorAll("div.body");
const body = divBody.length ? divBody[0] : document.querySelector("body");
window.setTimeout(() => {
terms.forEach((term) => _highlightText(body, term, "highlighted"));
}, 10);
const searchBox = document.getElementById("searchbox");
if (searchBox === null) return;
searchBox.appendChild(
document
.createRange()
.createContextualFragment(
'<p class="highlight-link">' +
'<a href="javascript:SphinxHighlight.hideSearchWords()">' +
_("Hide Search Matches") +
"</a></p>"
)
);
},
/**
* helper function to hide the search marks again
*/
hideSearchWords: () => {
document
.querySelectorAll("#searchbox .highlight-link")
.forEach((el) => el.remove());
document
.querySelectorAll("span.highlighted")
.forEach((el) => el.classList.remove("highlighted"));
localStorage.removeItem("sphinx_highlight_terms")
},
initEscapeListener: () => {
// only install a listener if it is really needed
if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) return;
document.addEventListener("keydown", (event) => {
// bail for input elements
if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return;
// bail with special keys
if (event.shiftKey || event.altKey || event.ctrlKey || event.metaKey) return;
if (DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS && (event.key === "Escape")) {
SphinxHighlight.hideSearchWords();
event.preventDefault();
}
});
},
};
_ready(() => {
/* Do not call highlightSearchWords() when we are on the search page.
* It will highlight words from the *previous* search query.
*/
if (typeof Search === "undefined") SphinxHighlight.highlightSearchWords();
SphinxHighlight.initEscapeListener();
});

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

BIN
wireviz/images/sensor.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 438 KiB