Schematex

Breadboard / Physical Wiring

About breadboard diagrams

A breadboard diagram shows how to physically wire components on a solderless prototyping board — the iconic visual genre of every Arduino / ESP32 / Raspberry Pi tutorial. The reader replicates what they see, hole-for-hole, on real hardware. This is complementary to the abstract circuit schematic (circuit, IEEE 315): the schematic is the engineer's reasoning view; the breadboard is the maker's replication view.

Schematex implements Fritzing-style stylized breadboard rendering. Components are drawn as recognisable bodies (resistors with color bands, LEDs as colored domes, DIPs with notches, MCU PCBs with labelled pin headers). Jumper wires are drawn as smooth cubic Bézier arcs between specific tie-points — not Manhattan right angles. The DSL addresses every part and every wire by breadboard-native coordinates (@col-row, e.g. @5e), not pixel positions, so the file is hand-authorable and version-controllable.

Note — this engine is not a circuit schematic and does not enforce electrical rules. Use it for tutorials, lab handouts, READMEs, and learning material. For nodal analysis or formal schematics, use the circuit engine instead.

breadboard·§
↘ preview
100%
Blink LED — Arduino Uno hello-world Breadboard wiring diagram generated by Schematex Blink LED — Arduino Uno hello-world 5 10 15 20 25 30 5 10 15 20 25 30 a a f f b b g g c c h h d d i i e e j j D13D12D11D10D9D8D7D6D5D4D3D2TXRXRST3V35VGNDVINA0A1A2A3A4A5Arduino Uno R1 220Ω D1 (red)
UTF-8 · LF · 15 lines · 274 chars✓ parsed·36.4 ms·33.7 KB SVG

1. Your first breadboard

Three sections: a one-line breadboard header, a parts block, and a wires block. Optional board: and title: lines come right after the header.

breadboard·§
↘ preview
100%
Breadboard Breadboard wiring diagram generated by Schematex 5 10 15 20 25 30 5 10 15 20 25 30 a a f f b b g g c c h h d d i i e e j j D13D12D11D10D9D8D7D6D5D4D3D2TXRXRST3V35VGNDVINA0A1A2A3A4A5Arduino Uno R1 220Ω D1 (red)
UTF-8 · LF · 11 lines · 190 chars✓ parsed·5.6 ms·33.4 KB SVG

Every part is id: kind [args] @placement. Every wire is <endpoint> --color-- <endpoint>. That's the whole grammar.


2. Coordinates

Breadboards have a 2D address grid. Schematex coordinates always start with @.

FormMeaningExample
@<col><row>Main grid hole. Rows a–e (top half), f–j (bottom half).@5e, @12g
@+t<col>Top positive rail (red stripe).@+t8
@-t<col>Top negative / GND rail (blue stripe).@-t8
@+b<col>Bottom positive rail.@+b14
@-b<col>Bottom negative rail.@-b14
@<a>..<b>Span — used in part placement (resistor, diode, LED).@5e..9e
@beside-leftOff-board placement for MCU boards.mcu uno @beside-left

Mini boards (board: mini) have no power rails@+t… / @-b… are rejected by the parser.


3. Board sizes

breadboard
board: half          // default — 30 columns, 400 tie-points, rails (continuous)
FormTie pointsColumnsPower rails
mini17017none
half (default)40030continuous
full83063break at column 30/31

Pitfall — on full-size boards the rails break at the middle. If your circuit uses both halves you must jumper the rails together explicitly.


4. Parts catalog

Each part is id: <kind> [args] @<placement>. The catalog covers the most common Arduino / ESP32 maker components:

Discrete components (sit on the breadboard):

DSLArgsExample
resistorvalue (Ω; supports k/M)r1: resistor 220 @5e..9e
ledcolor (red/green/blue/yellow/white/orange)d1: led red @10e..10f
cap-elecc1: cap-elec @4e..4f
cap-ceramicc2: cap-ceramic @6e..6f
dioded2: diode @5e..8e
buttonbtn: button @8e
dippins=Nic: dip pins=8 @4e
headerpins=Nh1: header pins=4 @20a

Microcontroller boards (placed beside / above / below the substrate):

DSLPin labels
mcu uno5V, 3V3, GND, VIN, RST, D2…D13, A0…A5, RX, TX
mcu nanoSubset of Uno labels
mcu esp323V3, GND, VIN, GPIO2, GPIO4, GPIO5, GPIO12…GPIO33
mcu picoSame generic GPIO labels

Sensors / displays / actuators (modules sit on the breadboard with pin row anchored at the supplied coordinate):

DSLPins
sensor hcsr04VCC, TRIG, ECHO, GND
sensor dht11 / sensor dht22VCC, DATA, GND
display oled-ssd1306GND, VCC, SCL, SDA
display lcd-1602-i2cGND, VCC, SDA, SCL
module rotary-ky040CLK, DT, SW, VCC, GND
actuator servo-sg90GND, VCC, SIG

Resistor color bands are decorated automatically from value220 → red-red-brown-gold, 10000 → brown-black-orange-gold.


5. Wires

Every wire connects two endpoints. An endpoint is either a part pin (partId:pinName) or a breadboard coordinate (@…).

wires
  uno:5V  --red--    @+t1
  uno:GND --black--  @-t1
  uno:D9  --yellow-- @9c
  @9a     --green--  @+t9
ColorConventional role
red+V (5V, 3.3V, VCC)
black / blueGND
yellow / orange / green / white / purpleSignal
brown / greyArbitrary signal

Color is purely visual — the engine does not validate it against electrical role.

For visually crowded boards, via @<coord> lets you pin an intermediate hole that biases the Bézier control points:

wires
  uno:D13 --yellow-- @9a via @8c

Most wires don't need via — the layout engine produces a natural arc on its own.


6. Sensor with pull-up resistor (DHT11 motif)

The iconic Arduino tutorial pattern: a 10 kΩ pull-up between VCC and the sensor's data line.

breadboard·§
↘ preview
100%
DHT11 + 10kΩ pull-up Breadboard wiring diagram generated by Schematex DHT11 + 10kΩ pull-up 5 10 15 20 25 30 5 10 15 20 25 30 a a f f b b g g c c h h d d i i e e j j D13D12D11D10D9D8D7D6D5D4D3D2TXRXRST3V35VGNDVINA0A1A2A3A4A5Arduino Uno VCCDATAGNDDHT11 R1 10000Ω
UTF-8 · LF · 17 lines · 310 chars✓ parsed·2.9 ms·34.5 KB SVG

7. ESP32 + I²C OLED

ESP32 runs at 3.3 V (not 5 V). I²C convention: green = SDA, white = SCL.

breadboard·§
↘ preview
100%
ESP32 + SSD1306 OLED I²C Breadboard wiring diagram generated by Schematex ESP32 + SSD1306 OLED I²C 5 10 15 20 25 30 5 10 15 20 25 30 a a f f b b g g c c h h d d i i e e j j 3V3GNDGPIO15GPIO2GPIO4GPIO5GPIO18GPIO19GPIO21GPIO22VINGNDGPIO13GPIO12GPIO14GPIO27GPIO26GPIO25GPIO33GPIO32ESP32 DevKit GNDVCCSCLSDAOLED 128×64
UTF-8 · LF · 17 lines · 338 chars✓ parsed·2.4 ms·33.7 KB SVG

8. Limitations of v0.1

  • No leader-line callouts — reference designators (R1, C2) are drawn near the part body. Off-board callout boxes are deferred.
  • No .fzz import — Schematex consumes only its own DSL; Fritzing files are not parsed.
  • No simulation — this is a renderer, not a Wokwi-style simulator. Component-value validation (Ohm's law, current limits) is out of scope.
  • No PCB / schematic round-tripbreadboard and circuit are independent engines. Authoring two views of the same prototype currently means writing two DSLs.
  • Fixed parts catalog — user-defined part types are deferred. v0.1 ships the maker-tutorial 80% catalog (resistors, LEDs, caps, DIPs, headers, four MCU families, six sensor / display / actuator modules).
  • Power-rail break visual — full-size boards mark the 30/31 break with a hole-wide gap; the rail stripes still draw through the gap (cosmetic).