Skip to the content
2 layers100 × 71 mmZoiadpy, the printed circuit board in 3D

External display for Empress Zoia

Size
100 × 71 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
44
Pads
154
Tracks, vias
251, 38
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
25 Jun 2025
Updated
5 Jul 2025

Overview

Zoiadpy is an open-source printed circuit board by zevv, from the zevv/zoiadpy repository on GitHub. It is a 2-layer board of 100 × 71 mm with 22 parts on 44 nets, routed with 251 tracks and 38 vias.

It is built around the ESP32-WROOM-32U. Its parts include 6 capacitors, 6 resistors, 2 ICs, 2 connectors and 1 diode. It belongs with the lEDs and displays boards and the ESP32 boards of this library.

Main components

1

README

README.md

Experimental external display for the Empress Zoia

The repo holds the source code and schematics/pcb design for an external display for the Zoia. The Zoia comes with a screen so small you can cover it with the tip of your pinky. This is barely usable when prgramming the Zoia on your couch, but totally useless on stage when changing programs or parameters.

my-screen

This external display hooks onto the SPI bus between the Zoia en the tiny OLED display and sniffs the screen contents when the display is updated. The screen is upscaled to 480x320 resolution and sent to a second larger display.

The Zoia luckily exposes the OLED SPI on a friendly 2.54mm header row, so anyone with basic soldering skills should be able to connect some wires to these and feed them out of the box. I used a retro style DB9 type connector for this myself, as this happened to be available in my parts drawer. You need 5 wires in total, so any connector with enough pins should do:

  • GND
  • VCC
  • MOSI
  • CLK
  • CS

Disclaimer

I love this little project for me personally, but I do not recommend others to go hack their Zoia: you will surely void the warranty of your box, and it is very possible it will break in the process of adding the screen. Do not complain to me when this happens.

Software

Not too complicated: ESP32 has a bunch of SPI busses and supports both master and slave mode. The OLED SPI is running in slave mode and handles all SPI transfers of exactly 1024 bytes, as these contain the full updated screen data. All other SPI transfers are simply ignored, as these contain the usual setup parameters for the display.

The second SPI runs in master mode and drives an ILI4822 type TFT display which I happened to have lying around. Although this is a full color display, it's driven in 3 bits per pixel mode only to allow the big screen to keep up with the OLED frame rate.

Hardware

Kicad schematics and PCB design are available, but I have not yet produced this as I'm happy to run on my current prototype hardware. I'm sure these are mostly ok but someone will have to actually build and test these to make sure. I might do this one day.

pcb

Parts

22
QtyValueFootprintReferences
40.1uFCapacitor_SMD:C_0603_1608MetricC2, C4, C8, C9
4MountingHoleMountingHole:MountingHole_3.2mm_M3H1, H2, H3, H4
247R 125mWResistor_SMD:R_0805_2012MetricR2, R3
2RResistor_SMD:R_0603_1608MetricR5, R6
110kResistor_SMD:R_0603_1608MetricR1
110uFCapacitor_Tantalum_SMD:CP_EIA-2012-12_Kemet-RC7
122uFCapacitor_Tantalum_SMD:CP_EIA-2012-12_Kemet-RC1
1270RResistor_SMD:R_0603_1608MetricR4
1Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_VerticalJ3
1Conn_01x06Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_HorizontalJ1
1ESP32-WROOM-32URF_Module:ESP32-WROOM-32UU1
1LED GREENLED_SMD:LED_0603_1608MetricD1
1LOGOLOGOG***
1~zoidadpy:62684-50210E9ALFU3

Similar boards

  • 2 layers55 × 80 mmBoard esp32 v2, the printed circuit board in 3D

    Board esp32 v2

    sudomesh/disaster-radio

    A (paused) work-in-progress long-range, low-bandwidth wireless disaster recovery mesh network powered by the sun.

    101 parts1.1k
  • 2 layers110 × 110 mmFreeDSP aurora, the printed circuit board in 3D

    FreeDSP aurora

    freeDSP/freeDSP-aurora

    freeDSP ADAU1452 with 8 analog input, 8 analog outputs, S/P-DIF I/O, ADAT I/O, USB Audio Class2, WiFi, Bluetooth

    506 parts226CC-BY-SA-4.0
  • 2 layers63.5 × 63.5 mmMain pcb, the printed circuit board in 3D

    Main pcb

    peterkrull/quad

    Firmware, hardware and documentation for my autonomous quad copter project

    45 parts210GPL-3.0
  • 4 layers65 × 56 mmEdrumulus, the printed circuit board in 3D

    Edrumulus

    corrados/edrumulus

    Open Source E-Drum Trigger Module

    112 parts163GPL-2.0
  • 2 layers94 × 79 mm5 - Lizard Car, the printed circuit board in 3D

    5 - Lizard Car

    TRD-B/Lizard

    3D printed RC race car with custom electronics

    54 parts129CC-BY-4.0
  • 2 layers263.5 × 63.5 mmTobor, the printed circuit board in 3D

    Tobor

    evezor/tobor_v00

    Tobor (robot spelled backwards), was built to be the most versatile open-source robotics system

    124 parts126CERN-OHL-P-2.0
  • 2 layers121 × 68 mmFreeds sanchez, the printed circuit board in 3D

    Freeds sanchez

    pablozg/freeds

    Derivador de energía solar excedente creado por Pablo Zerón, Diseño PCB por Amcalo, Tester original por Aeizoon, Wiki por Zoilo Mora

    42 parts108
  • 2 layers74.4 × 51.2 mmEsp32-wroom timer, the printed circuit board in 3D

    Esp32-wroom timer

    AlessandroAU/Chorus32-ESP32LapTimer

    This is an ESP32 port of the popular Chorus RF Laptimer

    66 parts102GPL-3.0

Questions

How big is the Zoiadpy PCB?

It measures 100 × 71 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Zoiadpy use?

22 parts, built around the ESP32-WROOM-32U. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Zoiadpy KiCad files?

From the zevv/zoiadpy repository on GitHub, at the commit this page was made from: the board is sch/zoiadpy.kicad_pcb and its schematic sch/zoiadpy.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Zoiadpy design in my own project?

Its repository states no licence, so its author keeps all rights: ask zevv before reusing the design.