Modules & development boards
ESP32-SOLO-1 carrier PCB: design, layout, and gate checks
Design a reliable ESP32-SOLO-1 carrier with real single-core ESP32-S0WD power, pinout, footprint, layout, sourcing, and MakeIRL gate guidance.
Practical PCB integration · KiCad 9 · Manufacturing gate
Start with the actual ESP32-SOLO-1, not a generic footprint
A dependable carrier for the ESP32-SOLO-1 starts by treating it as a specific surface-mount module, not as an interchangeable member of the ESP32 family. This version is built around single-core ESP32-S0WD, uses 32-bit Xtensa, and occupies 18 × 25.5 × 3.1 mm. Its physical implementation is 38-pad castellated module with PCB antenna. Those details determine the land pattern, carrier outline, programming access, antenna or connector clearance, and which signals are genuinely available after the module maker has used its own pins.
SOLO-1 is mechanically familiar but uses a single-core ESP32, so hardware integration resembles WROOM while firmware and performance assumptions must not require the dual-core part.
Typical reasons to choose it include cost-sensitive Wi-Fi controllers and legacy single-core ESP32 products. The useful comparison is therefore not merely processor speed: it is whether the exact memory, radio, connector, power path, exposed I/O, and mechanical envelope match the product that will be built. The row below is the integration baseline that should agree with the schematic, footprint, BOM, assembly drawing, and firmware target.
| Part | ESP32-SOLO-1 |
|---|---|
| Controller | single-core ESP32-S0WD |
| Architecture | 32-bit Xtensa |
| Format | 38-pad castellated module with PCB antenna; 18 × 25.5 × 3.1 mm |
| Power input | 3.0–3.6 V |
| I/O domain | 3.3 V; GPIO is not 5 V tolerant |
| Memory | 4 MB SPI flash on the standard module |
| Radio | 2.4 GHz Wi-Fi and Bluetooth 4.2 |
| Interfaces | Wi-Fi, Bluetooth, SPI, I²C, UART, ADC, PWM |
| Critical pins | EN, GPIO0 and ESP32 straps match the classic family; firmware must suit one core |
Power, placement, and signal planning
The carrier power tree must satisfy 3.0–3.6 V while every external signal respects 3.3 V; GPIO is not 5 V tolerant. These are separate checks. A board can accept USB or VIN at one connector while its GPIO remains strictly 3.3 V, and an onboard regulator can be safe at idle yet lose regulation during a radio, display, motor, or memory-current burst. Document which source owns each rail, what happens when USB and carrier power are both present, and where bulk and high-frequency decoupling close the current loop.
Apply the standard WROOM antenna keepout and power layout, but label the BOM and manufacturing drawings clearly enough that a visually similar dual-core module is not loaded by mistake.
- Treat the radio end as an RF component, not spare board area. Put the module antenna beyond the carrier edge when possible, otherwise reproduce the vendor's copper, component, and enclosure keepout on every layer.
- Provide a low-impedance 3.3 V rail with local bulk capacitance for transmit bursts, 100 nF decoupling close to supply pins, and accessible EN and boot-strapping signals for recovery and production programming.
Route from a verified pin table rather than a reseller graphic. In particular, treat EN, GPIO0 and ESP32 straps match the classic family; firmware must suit one coreas design constraints that must survive schematic capture, footprint numbering, layout, production programming, and enclosure assembly. Mark orientation on copper or silkscreen, retain recovery/debug access, and make every antenna, cable, card, switch, or connector operable after the carrier is fully populated—not only while it is open on a bench.
What the manufacturing gate should check for ESP32-SOLO-1
A generic DRC run cannot know that a technically connected pin is the wrong boot strap, that a development-board header was mirrored, or that copper under an antenna will ruin range. The useful release check combines KiCad connectivity and fabrication rules with the product-specific conditions below. Each item should be supported by the selected module datasheet, hardware guide, board schematic, or mechanical drawing—not by a footprint name alone.
- Confirm the module's castellated-pad land pattern, pin numbering, courtyard, and antenna keepout against the exact Espressif hardware-design drawing.
- Check that EN has a defined pull-up and power-on reset network, and that GPIO0 and every other strapping pin cannot be forced into the wrong state by attached peripherals.
- Check 3.3 V continuity, decoupling placement, ground-pad connections, and clearance between the RF keepout and copper pours, traces, batteries, fasteners, or shields.
- For ESP32-SOLO-1, confirm the firmware target and BOM both identify ESP32-S0WD and that no tasking or timing requirement assumes the second core.
After those checks, refill every copper zone, run ERC and DRC from the same revision used to generate fabrication data, and inspect the actual Gerbers, drill file, BOM, and placement output. Confirm that the module ordering code in the BOM matches the memory and radio assumptions in firmware. A carrier is not release-ready when its prototype happens to boot; it is ready when the exact build configuration can be reproduced and inspected.
Common integration failures and sourcing reality
These failures recur because family names conceal physical and electrical differences. For this particular integration, watch for the following concrete mistakes:
- Treating SOLO-1 as a transparent WROOM substitution can pass PCB checks yet fail at firmware build or under real-time load.
- Copying a footprint for a similarly named module whose body, antenna option, or exposed-pad pattern is different.
- Powering from a small regulator that looks adequate at average current but droops during Wi-Fi transmit peaks, causing intermittent brownouts.
Sourcing note. This is a legacy specialization; verify lifecycle, exact flash code, and firmware support before using it for a new design. Record the complete manufacturer code, approved alternates, module or board revision, antenna and cable when applicable, memory population, and the firmware build that was tested. If a substitute changes any of those facts, reopen the footprint, power, pinout, radio, and production-programming review instead of treating it as a purchasing-only change.
From module choice to review-ready board
Use ESP32-SOLO-1 as the starting point for a generated carrier you can inspect in KiCad.
Generate a carrier board→