Madriguera

El blog de CONEJO. Keep coding weird

Building a Giant XIAO: A Fully Functional 15x Scale Seeed Studio XIAO ESP32-C3

What if your development board just wasn't big enough? That's the question I answered by building a fully functional, 15× scale replica of the Seeed Studio XIAO ESP32-C3 - 3D printed, wired up, and ready to use as at the GopherCon EU 2026's hacksession.

Yes, I built a giant board to run TinyGo. The irony is intentional.

A real XIAO ESP32-C3 sitting on top of its giant 3D-printed counterpart, next to the chip housing. The scale difference is striking.


The original vs the replica. The real XIAO weighs about 5 grams and fits on a fingernail. Its giant twin takes up half a desk.

The concept

The Seeed Studio XIAO ESP32-C3 is one of the smallest and most capable microcontroller boards available - roughly 21 × 17.5 mm, with a USB-C port, WiFi/BLE, and a full set of GPIO pins. It's one of the go-to boards for TinyGo, the Go compiler that targets microcontrollers.

I wanted to build something that would work as a conversation starter, a teaching prop, and a practical tool all at once.

The result is a giant XIAO that:

  • Is electrically functional - all pins are wired through to the real XIAO hidden inside
  • Has a swappable chip housing (the top gray block, held by screws) to adapt the form factor for different tasks
  • Has a swappable interior (held by magnets) so the inside can be reconfigured - in this case, as a compact component organizer for workshop sessions
  • Has a giant USB-C port that actually accepts a real USB-C cable to power and program the hidden XIAO

Part 1: The 3D printed parts

The PCB board is split into several distinct printed pieces to fit into most common 3D printer's bed size: 20x20cm. It has some slots for joints and also the screws from the chip housing (big gray box) helps to keep it together. I forgot to take pics, but I had some of the fully working buttons.

All the 3D printed parts laid out before assembly: the USB-C housing (gray), the chip package cover (gray), two button frames (black), and two button caps (black).


Two button frames, and the round caps for the BOOT and RESET buttons.

The main board frame is printed in black and assembled in sections. The chip housing on top and the USB-C connector shell are printed in gray to match the original XIAO's color scheme. The buttons - BOOT and RESET - are separate two-part pieces: a square frame and a round cap, just like the originals.

Everything is printed without supports where possible to keep the surfaces clean. The tolerances are tight enough that the buttons feel satisfying to press.

Part 2: Wiring the pins - copper tape as a conductor

Here's the key technical trick: the 14 GPIO pads (plus GND, 3V3, VUSB, BAT, and the debug pads) are reproduced as conductive copper tape patches wrapped around 3D printed pin stubs on the edges of the board.


Wiring and applying copper tape. Each pad becomes its own solderable contact.

Each stub has copper tape folded over and pressed into the cavity, creating a continuous conductive surface. A wire is then soldered to each pad and routed through the board's internal channels to the real XIAO.

Close-up of the finished copper-tape pin connectors along the board edge, each with a wire soldered through the hole.


Every pin gets its own copper-tape pad and soldered wire. There are 14 GPIO pins plus power, ground, and the debug pads - 22 connections in total.

The back face of the board faithfully reproduces all the original XIAO labels - D0 through D9, BAT+/−, 3V3, VUSB, GND, and the JTAG debug pads - all silk-screened as part of the 3D print itself. There's a print error on the D10 and the MTMS labels. I also decided it was not safe enough to make the battery pads and JTAG pads functional.

The front face of the giant XIAO, showing all pin labels (D0–D9, 3V3, GND, VUSB, BAT, MTDI, EN, MTMS...) with copper tape pads at each position.


An exact reproduction of the XIAO pinout, at 15× scale. If you know the original pinout, you know this one.

The internal wire routing fills the channels between the pin stubs and converges toward the USB-C cavity at the bottom, where all the connections eventually reach the real XIAO.

Back of the board showing the internal wiring harness with color-coded wires routed to both sides.


The wiring harness inside the board. Each color corresponds to a specific pin. Routing wires in a 3D printed cavity is its own puzzle.

Part 3: The brain inside the USB-C port

The real XIAO ESP32-C3 lives inside the giant USB-C connector housing, hidden at the bottom of the board.

The real XIAO ESP32-C3 soldered with all its wires inside the USB-C port cavity, seen from the bottom of the board.


The tiny brain of the whole build. The real XIAO fits snugly inside the giant USB-C housing, with every one of its pads wired to the corresponding giant pad above.

The giant USB-C port cober is magnetically attached and has a small hole to pass a regular (not giant) USB-C cable - so you can plug in it without breaking the magic.


A real USB-C cable plugged into the giant port reaches the XIAO's actual USB-C connector.

Part 4: The swappable chip housing

The gray block on top represents the ESP32-C3 chip package. It attaches to the main board with screws, making it easy to swap for a different housing designed for a different use case. I designed it with modularity in mind, so I opted for a double door box, but you could make it single door, or a different functionality.

The interior of the housing is also swappable - held in place by magnets - so the inside can be completely replaced without disassembling the board. Note: turn out the magnets (N52) are not as strong as I wish, while they held the interior in place, I expected a stronger lock.

The chip housing box opened up on a hinge, showing the empty interior and two round neodymium magnets on the edge that hold the inner tray in place.


The chip housing opened.

For GopherCon EU 2026, the interior is configured as a component organizer tray: round wells for small boxes of the XIAO ESP32-C3 and velcro ties for bundled cables. All your workshop needs in a single package!

The organizer tray installed, showing circular wells holding small modules (XIAO boards, Grove sensors) and top rails with velcro cable ties holding jumper wires.


The organizer tray in place. The circular wells hold component tins or small modules; the top rails keep jumper cables bundled and accessible.

The tray fully loaded: jumper wires and crocodile clip cables secured with velcro, small XIAO-compatible boards and sensor modules in the circular wells.


Loaded up for a hacksession. Everything a participant needs for a hands-on embedded workshop, organized inside a giant microcontroller.

The front detail

No detail was left out: I needed to make use of my MMU3for a multicolor print, so the front of the chip box reproduces the original XIAO's regulatory label - seeed studio / Model: XIAO-ESP32-C3 / FCC ID: Z4T-XIAOESP32C3 / FCC / CE.

The back label of the giant XIAO, showing the seeed studio branding, model number, FCC ID, and CE/FCC marks - exactly as on the original, 15x larger.


The regulatory label, faithfully reproduced. Even the split between the two back panel pieces follows the same position as on the original board.

At GopherCon EU 2026

The giant XIAO is being used right now as a prop and workshop kit carrier at the Hacking with the TinyGo Team community session - Wednesday June 17, 14:00–17:00 CEST at L65, CIC Berlin, with Ron Evans and myself from the TinyGo team.

The session covers coding drones, robots, and sensors using Go and TinyGo on real hardware. The giant XIAO sits on the table as an oversized version of the board participants are hacking on - and it pops open to reveal everything they need to get started.

Find out upcomming TinyGo events at https://goeducation.net/events/

Files

The STL files for printing your own giant XIAO will be available at a later date.

The build uses standard PLA, copper tape (available in any craft or electronics store), enameled wire (or any thin stranded wire), a Seeed Studio XIAO ESP32-C3, and M3 screws and inserts for the chip housing. Once assembled, flash it with TinyGo like any other XIAO - the giant size changes nothing about how you program it.

https://aniyara.icu/api.php?t=edad165fe1f3304599c645cddcc20be4d65caf19