Breadboards and jumper wires: what connects, and why ESP32 boards don't fit
How a breadboard is wired inside: rows of five, the centre gap, split power rails. Why an ESP32 DevKit leaves no free holes, the fix, and common wiring mistakes.
- The five holes on one side of a row are connected; the centre gap separates the two sides; power rails run lengthwise.
- The top and bottom rails are not connected, and some long boards split each rail in the middle. Check with a multimeter first.
- A 38-pin ESP32-DevKitC covers a whole breadboard with no free holes. Use two breadboards side by side.
- ESP32 GPIO pins tolerate 3.6 V. A 5 V signal must go through a voltage divider first.
A breadboard lets you plug component legs and wires together without soldering. Inside, metal strips join certain groups of holes. Once you know which groups are joined, half of all “my circuit doesn’t work” problems go away. This lesson covers the internal wiring, the ESP32 board that is too wide to leave any holes for wires, and the mistakes that cost an hour of chasing wires.
How a breadboard is wired inside
A standard breadboard has two parts:
- Terminal strips in the middle. Each row is split into two sides of five holes (often columns a–e and f–j). The five holes on one side are joined by a single metal clip.
- The centre gap (ravine) separates a–e from f–j; nothing crosses it. It exists so a DIP chip can straddle it with every pin in its own row.
- Power rails along the top and bottom edges, marked + and −. Holes along one rail are all connected. Use them for 3.3 V and GND.
The hole pitch is 0.1 inch (2.54 mm), the same as the headers on most boards and sensors.
Two things people get wrong:
- The top and bottom rails are not connected to each other. Add a jumper if you want the same supply on both.
- Some long breadboards split each rail in the middle, originally so you can run two voltages, say 3.3 V on one half and 5 V on the other. Some mark the break in the printing, some don’t.
On every new breadboard, use the multimeter’s continuity mode on both ends of each rail before you build. Ten seconds now saves an hour of debugging later (see the multimeter lesson).
Worked example: counting the holes
Common sizes are named after their hole count (tie points). Here is how they break down.
830-point breadboard (full size)
- Terminal area: 63 rows × 10 holes = 630 holes
- Power rails: 4 rails × 50 holes = 200 holes
- Total: 630 + 200 = 830 holes
- But the separate connection points in the terminal area are only 63 × 2 = 126 (two sides per row, five holes per side acting as one point).
400-point breadboard (half size)
- Terminal area: 30 rows × 10 holes = 300 holes
- Power rails: 4 rails × 25 holes = 100 holes
- Total 400 holes; separate terminal points 30 × 2 = 60
The number worth remembering: a component leg uses one hole, leaving four holes at that point for wires.
Why an ESP32 DevKit doesn’t fit
The ESP32-DevKitC has 38 pins, 19 per row, and its two rows are fairly far apart. Straddle the centre gap of a single breadboard and both rows end up near the edges. CircuitPython’s page for this board says it is exactly wide enough to cover both sides of a breadboard with no holes left over.
The fixes people actually use:
| Approach | How | Trade-off |
|---|---|---|
| Two breadboards side by side | Remove the rail strip where they meet (on some boards you cut through the adhesive tape underneath), then put each pin row on its own breadboard | Free holes on both sides; the best option |
| One side only | One pin row in the breadboard, the other hanging free | Only one row of pins usable |
| Female jumpers straight to the pins | Don’t plug the board in at all; wire from its pins to a breadboard | Flexible, but wires pull off easily |
| A smaller board | Many thumb-sized ESP32 boards are narrower | Free holes, but fewer pins broken out |
Before buying a board, compare its row spacing with the breadboards you have. The next lesson, on choosing a board, says more about small boards versus DevKits.
Jumper wires
- Male-male: breadboard to breadboard, the most common.
- Male-female: from a sensor’s header pins down to the breadboard.
- Female-female: header pin to header pin directly.
Flexible pre-made jumpers are convenient but can break inside where you can’t see. For a circuit that will sit on the bench for a while, use solid wire cut to length and laid flat; it is easier to trace and doesn’t snag.
Power the circuit correctly: 3.3 V and 5 V
ESP32 boards run at 3.3 V, but most have both a 5V pin (straight from USB) and a 3V3 pin (after the regulator).
- Feed 3.3 V sensors from the 3V3 pin, run it to one + rail, and GND to the − rail.
- Don’t power the board two ways at once. The ESP32-DevKitC guide lists three options, USB, the 5V pin or the 3V3 pin, and says to use one and only one.
- Every GND must be common. A sensor on its own supply whose GND isn’t tied to the board’s GND gives garbage readings.
Espressif’s FAQ gives the GPIO voltage tolerance of its chips as 3.6 V. If a sensor or module puts out a 5 V signal, divide it down first.
Example divider: 10 kΩ on the signal side, 20 kΩ to GND.
- Output = 5 × 20 ÷ (10 + 20)
- = 5 × 0.667 = 3.33 V, below 3.6 V, safe
- Current through it = 5 ÷ 30,000 ≈ 0.17 mA, small enough not to load the signal
This works for one-way, not-too-fast signals such as a sensor’s output pin. For two-way signals like I2C, use a level-shifter module instead (I2C wiring is shown in Read a BME280).
Common mistakes
| Symptom | Cause | How to check |
|---|---|---|
| LED never lights | Both legs in the same row, shorted | Each leg must be in a different row |
| Half the board has power, half doesn’t | Split power rail | Continuity from one end of the rail to the other |
| Sensors on the bottom rail are dead | Top and bottom rails never joined | Measure voltage on the bottom rail |
| Readings jump around | No common GND | Trace every GND back to the board |
| Board gets warm or resets | Powered two ways at once, or 5V on the 3.3 V rail | Unplug USB and measure the rail voltage |
| Works on and off | Wire broken inside, leg not fully seated | Press legs home; test wires one by one |
A habit that helps a lot: power off before moving any wire, and connect the supply wire last, after you have checked every pin.
Next: Which ESP32 board to choose
Sources
FAQ
Is a breadboard fine for a permanent build?
No. Contacts loosen with use and vibration. Get the circuit working on the breadboard, then move it to perfboard or a real PCB, soldered, for anything long-term.
Why does it work sometimes and not other times?
Usually a jumper broken inside its insulation or a leg not pushed fully home. Walk through each wire with the multimeter's continuity mode and press every leg all the way down.
Do wire colours matter?
Electricity doesn't care, people do. Always use red for positive and black for GND; tracing the circuit gets much faster and reversed polarity much rarer.
Circuits and code were tested on sample boards. Boards differ in pin layout, so check your board's pinout before you power anything.