i-k-bus-board/reference/rx_path_vibus.svg
Ryan Malloy 30ef51f26c SPICE simulation of PC817 optocoupler RX/TX paths (9600 baud)
Both signal paths validated with LTspice using built-in PC817
subcircuit model (Igain=1m). RX gives clean 0-3.13V at 3.3V VCC
with 5.8us rise time. TX confirms signal inversion and 0.17V bus
LOW with 4.66mA LED drive. 3.3V design works but is marginal vs
the original 5V Arduino circuit at worst-case CTR.
2026-02-13 00:04:55 -07:00

20 lines
2.5 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" width="800" height="400" viewBox="0 0 800 400">
<rect width="800" height="400" fill="white"/>
<rect x="80.0" y="40.0" width="700.0" height="300.0" fill="white" stroke="#ccc" stroke-width="1"/>
<line x1="80.0" y1="326.2" x2="780.0" y2="326.2" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="72.0" y="326.2" text-anchor="end" dominant-baseline="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">0</text>
<line x1="80.0" y1="212.7" x2="780.0" y2="212.7" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="72.0" y="212.7" text-anchor="end" dominant-baseline="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">5</text>
<line x1="80.0" y1="99.1" x2="780.0" y2="99.1" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="72.0" y="99.1" text-anchor="end" dominant-baseline="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">10</text>
<line x1="112.1" y1="40.0" x2="112.1" y2="340.0" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="112.1" y="356.0" text-anchor="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">0</text>
<line x1="377.1" y1="40.0" x2="377.1" y2="340.0" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="377.1" y="356.0" text-anchor="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">5</text>
<line x1="642.2" y1="40.0" x2="642.2" y2="340.0" stroke="#ddd" stroke-width="0.5" stroke-dasharray="4,3"/>
<text x="642.2" y="356.0" text-anchor="middle" font-size="11" font-family="system-ui, -apple-system, sans-serif" fill="#444">10</text>
<path d="M112.09,326.25L720.58,65.47L277.88,255.19L168.58,302.04L748.18,53.64L748.18,53.64L287.02,251.28L112.09,326.25L112.37,326.13L112.26,326.17L112.37,326.13L112.09,326.25L111.82,326.36L111.93,326.32L112.37,326.13L111.82,326.36L112.26,326.17L111.93,326.32" fill="none" stroke="#2563eb" stroke-width="1.5" stroke-linejoin="round" stroke-linecap="round"/>
<text x="430.0" y="28.0" text-anchor="middle" font-size="14" font-weight="600" font-family="system-ui, -apple-system, sans-serif" fill="#111">Time Domain — V(ibus)</text>
<text x="25.0" y="190.0" text-anchor="middle" font-size="12" font-family="system-ui, -apple-system, sans-serif" fill="#333" transform="rotate(-90, 25.0, 190.0)">V(ibus)</text>
<text x="430.0" y="382.0" text-anchor="middle" font-size="12" font-family="system-ui, -apple-system, sans-serif" fill="#333">Time (s)</text>
</svg>