Blueprint

Iris Zero

A small ESP32-S3-MINI-1 based dev board with USB HID functionality.

Created by NullByte NullByte

Tier 3

5 views

1 follower

NullByte NullByte submitted Iris Zero for ship review ago

NullByte NullByte added to the journal ago

Updated BOM.

I have updated the BOM in readme as requested by the reviewers, now it includes a detailed pricing for everything and the projects total cost including PCB, PCBA and components.
image

NullByte NullByte added to the journal ago

Added BOM for the project.

Added BOM.csv in the root of the project which includes prices for PCB, PCBA and all components.
https://github.com/rootworkspace/IrisZero/blob/main/BOM.csv

image

NullByte NullByte added to the journal ago

Getting ready for shipping

Created the github repo: https://github.com/rootworkspace/IrisZero
Made a basic firmware.
Published EasyEda Project, BOM, Gerbers and a 3D model.
Documented everything.

image

NullByte NullByte added to the journal ago

Routing the PCB. Part 3

Finished routing the PCB, on the side you can see gaps for routing wires from the dev board, buttons are labeled to their functionality. Using NDot font for the designators and text.

image

image

NullByte NullByte added to the journal ago

Making the schematic. Part 6

Moved the LED pins to: IO12 for LED1 and IO48 for LED2 so it would be closed on the PCB and not across the whole PCB and this seems to be the final schematic.

image

NullByte NullByte added to the journal ago

Making the schematic. Part 5

Edited the schematic to use ESP32-S3-MINI-1, which I picked because it has USB-HID functionality. LED pins has been changed to IO1 (LED1) and IO2 (LED2).

image

zsharpminor zsharpminor requested changes for Iris Zero ago

Hi, please do not use Standard PCBA unless it's really needed. I'd highly recommend redesigning your PCB to be one-sided and use Economic PCBA parts for this project to be approvable. Also, your BOM should show the cost breakdown of PCB and assembly, not just LCSC parts. Alternatively, you could find a makerspace etc. with a hot air station and assemble this PCB yourself. Otherwise, this looks great, keep up the good work! (Reviews will be going a lot faster going forward, ping me when you fix this)

NullByte NullByte added to the journal ago

Designing the PCB. Part 3

Today, since I found a few issues in the PCB that I made, I have decided to completely remake the PCB, which gave me even more new space for new parts and it takes a little bit less space now. Since I had some space I added an addressable SK6805-EC14 led connected to IO18.

image
image
image
image
image

NullByte NullByte submitted Iris Zero for ship review ago

NullByte NullByte added to the journal ago

Making a test firmware.

I wrote a simple firmware for the dev board which just fade in/outs the LED on IO0, uses ESP-IDF, PlatformIO framework.
https://github.com/rootworkspace/IrisOne/tree/main/Firmware

image

NullByte NullByte added to the journal ago

Designing the PCB. Part 2

I added some Watch Dogs 2 references to the board because they look cool and matches the boards theme and colors, specifically dedsec on the bottom side of the PCB.

image

NullByte NullByte added to the journal ago

Designing the PCB. Part 1

I decided to make holes next to the GPIO pins to easier route the wires from the dev board to other peripherals. I have also rounded the corners of the PCB.

image
image

NullByte NullByte added to the journal ago

Routing the PCB. Part 2

Since I had a little bit of space I have decided to add a white status led that I connected to IO0 via a 75ohm resistor. You can control its brightness using PWM.
image
image

NullByte NullByte added to the journal ago

3D Preview

On the bottom side of the board you have the GPIO pins for connecting own peripherals and 2 buttons, one is for boot mode configuration so either flashing or normal operations and a reset button to reset the ESP32.

image

On the top we have the AP2112K-3.3TRG1(MS) voltage regulator and some pull up resistors required to power the ESP32.

image

NullByte NullByte added to the journal ago

Routing the PCB

After finishing the schematic I have started routing the PCB. The PCB is almost the same size as the ESP32 but with a little gap for the USB-C port. I have also exposed the pads of ESP32 so it was possible to connect own peripherals to the ESP32 via its GPIO.

image
image

NullByte NullByte added to the journal ago

Making the schematic. Part 4

I had to edit the schematic because it was still using too much space and I had to remove the LED matrix too, and AMS1117 was replaced by AP2112K-3.3TRG1(MS) and USB-C port has been replaced with an SMD alternative, also resistor arrays has been used to save some space

image

NullByte NullByte added to the journal ago

Making the schematic. Part 3

And the schematic seems to be done! I have added AMS1117-3.3V to provide power for ESP32-S3, capacitors for power stabilization, and 2 buttons for reset and change of boot mode.

image

NullByte NullByte added to the journal ago

Making the schematic. Part 2

I have decided to use SN74AHCT1G125DC(LX) to convert 3.3V logic from ESP32 to 5V logic for LEDS. To control the LEDs you can use IO0 and I also had to change the matrix to 4x3 because 5x5 one wasnt fitting on the PCB.

image

NullByte NullByte added to the journal ago

Making the schematic. Part 1

As the MCU I have decided to pick ESP32-C6-MINI-1 because its small, supports most wireless protocols needed and has integrated USB support. I have also decided to add a 5x5 RGB Led matrix, I original thought of using WS2812B-2020 as the led but it was too big so I have switched to SK6805-EC14, I will also have to find a way to easily convert 5V logic from the leds to 3.3V for the esp32. USB-C has been added too.

image

NullByte NullByte started Iris Zero ago

2/19/2026 9:06 PM - Making the schematic. Part 1

As the MCU I have decided to pick ESP32-C6-MINI-1 because its small, supports most wireless protocols needed and has integrated USB support. I have also decided to add a 5x5 RGB Led matrix, I original thought of using WS2812B-2020 as the led but it was too big so I have switched to SK6805-EC14, I will also have to find a way to easily convert 5V logic from the leds to 3.3V for the esp32. USB-C has been added too.

image

2/19/2026 9:29 PM - Making the schematic. Part 2

I have decided to use SN74AHCT1G125DC(LX) to convert 3.3V logic from ESP32 to 5V logic for LEDS. To control the LEDs you can use IO0 and I also had to change the matrix to 4x3 because 5x5 one wasnt fitting on the PCB.

image

2/19/2026 9:44 PM - Making the schematic. Part 3

And the schematic seems to be done! I have added AMS1117-3.3V to provide power for ESP32-S3, capacitors for power stabilization, and 2 buttons for reset and change of boot mode.

image

2/20/2026 6:09 PM - Making the schematic. Part 4

I had to edit the schematic because it was still using too much space and I had to remove the LED matrix too, and AMS1117 was replaced by AP2112K-3.3TRG1(MS) and USB-C port has been replaced with an SMD alternative, also resistor arrays has been used to save some space

image

2/20/2026 6:12 PM - Routing the PCB

After finishing the schematic I have started routing the PCB. The PCB is almost the same size as the ESP32 but with a little gap for the USB-C port. I have also exposed the pads of ESP32 so it was possible to connect own peripherals to the ESP32 via its GPIO.

image
image

2/20/2026 6:14 PM - 3D Preview

On the bottom side of the board you have the GPIO pins for connecting own peripherals and 2 buttons, one is for boot mode configuration so either flashing or normal operations and a reset button to reset the ESP32.

image

On the top we have the AP2112K-3.3TRG1(MS) voltage regulator and some pull up resistors required to power the ESP32.

image

2/20/2026 6:52 PM - Routing the PCB. Part 2

Since I had a little bit of space I have decided to add a white status led that I connected to IO0 via a 75ohm resistor. You can control its brightness using PWM.
image
image

2/20/2026 7 PM - Designing the PCB. Part 1

I decided to make holes next to the GPIO pins to easier route the wires from the dev board to other peripherals. I have also rounded the corners of the PCB.

image
image

2/20/2026 8 PM - Designing the PCB. Part 2

I added some Watch Dogs 2 references to the board because they look cool and matches the boards theme and colors, specifically dedsec on the bottom side of the PCB.

image

2/20/2026 9 PM - Making a test firmware.

I wrote a simple firmware for the dev board which just fade in/outs the LED on IO0, uses ESP-IDF, PlatformIO framework.
https://github.com/rootworkspace/IrisOne/tree/main/Firmware

image

2/21/2026 - Designing the PCB. Part 3

Today, since I found a few issues in the PCB that I made, I have decided to completely remake the PCB, which gave me even more new space for new parts and it takes a little bit less space now. Since I had some space I added an addressable SK6805-EC14 led connected to IO18.

image
image
image
image
image

3/11/2026 3:45 PM - Making the schematic. Part 5

Edited the schematic to use ESP32-S3-MINI-1, which I picked because it has USB-HID functionality. LED pins has been changed to IO1 (LED1) and IO2 (LED2).

image

3/11/2026 3:46 PM - Making the schematic. Part 6

Moved the LED pins to: IO12 for LED1 and IO48 for LED2 so it would be closed on the PCB and not across the whole PCB and this seems to be the final schematic.

image

3/11/2026 3:47 PM - Routing the PCB. Part 3

Finished routing the PCB, on the side you can see gaps for routing wires from the dev board, buttons are labeled to their functionality. Using NDot font for the designators and text.

image

image

3/11/2026 3:48 PM - Getting ready for shipping

Created the github repo: https://github.com/rootworkspace/IrisZero
Made a basic firmware.
Published EasyEda Project, BOM, Gerbers and a 3D model.
Documented everything.

image

3/11/2026 3:49 PM - Added BOM for the project.

Added BOM.csv in the root of the project which includes prices for PCB, PCBA and all components.
https://github.com/rootworkspace/IrisZero/blob/main/BOM.csv

image

3/11/2026 4 PM - Updated BOM.

I have updated the BOM in readme as requested by the reviewers, now it includes a detailed pricing for everything and the projects total cost including PCB, PCBA and components.
image