Skip to main content

Wiring Guide

This section covers wiring each component to the ESP32. Every wiring doc in this section follows the same format.


What Each Wiring Doc Contains

  1. Overview — what the component does and why it is in the design
  2. Pin table — precise source → destination for every wire to run
  3. Wiring diagram — a visual aid (pre-rendered SVG from WireViz source)
  4. Verification — minimal firmware code to confirm the wiring before moving on
  5. Gotchas — common wiring mistakes specific to this component

How to Read a Pin Table

Every pin table has these columns:

ColumnMeaning
Component pinThe physical pin name on the breakout board
Wire colourSuggested colour to use (consistency helps debugging)
ESP32 pinThe physical label on the DevKitC-1 header
GPIO #The GPIO number used in firmware
NotesImportant warnings or clarifications

Suggested wire colour convention used in this guide:

ColourSignal type
RedVCC / power
BlackGND
YellowClock signals (SCLK, SCL, BCLK)
BlueData signals (MOSI, MISO, SDA)
WhiteChip select / control (CS, DC, RST)
OrangeInterrupt / status (BUSY, INT, SQW)
GreenGeneral GPIO (buttons)

Wiring Safety Checklist

Before powering on after adding a new component:

  • VCC connected to the correct voltage (3.3 V or 5 V — check the component's datasheet)
  • GND connected
  • No bare wire ends touching adjacent pins
  • USB cable is disconnected while inserting/removing wires
  • Multimeter continuity check on each new wire

About the WireViz Diagrams

The wiring diagrams in each doc were generated from YAML source files stored in the wireviz/ folder at the root of this repository. To regenerate them:

pip install wireviz
cd wireviz
wireviz rtc-ds3231.yml # generates rtc-ds3231.svg

The pre-rendered SVGs are already in static/img/wiring/ and do not need to be regenerated unless you change the source YAML.