Blueprint

HausNAS

A bare metal NAS built from scratch, no CPU, no SBC, no linux, microcontrollers only. PCB Only

Created by housey2k housey2k

Tier 2

12 views

0 followers

No Demo Yet

housey2k housey2k added to the journal ago

New PCB layout

Did a few changes to the layout, now the board is smaller and more compact, I already positioned all the passives, changed a few net name and footprint mistakes, and I think it's good to route now, I'm considering 4 layers (GND and 3V3 planes, and top and bottom for signals)
image
imageimage

housey2k housey2k added to the journal ago

Initial PCB layout

This is the basic PCB layout, I positioned only the core components like ICs and connectors, I haven't positioned most SMD passives. Later i'll be positioning all the components and start routing.
image

housey2k housey2k added to the journal ago

Device Standardization

This is the part of the project that is done before the PCB, here I pick the components on LCSC, Based on their values on the schematic I search LCSC either through their website or directly from EasyEDA and pick the cheapest and more available components. These components get their packaging passed into the PCB editor and part numbers to the BOM
image

housey2k housey2k added to the journal ago

Added USB-B connector

I forgot to add it earlier, so now I added the external USB-B connector that will be used for configuration (and maybe firmware updates).
I also added a voltage divider that the MCU can use to sense if a USB cable is connected, I don't know if it will be necessary
During this step I also spent 10 minutes deciding wether I should add a lot of debug LEDs (USB 5V, USB Enum, Master PostOK, Slave PostOK, Sata ACT, etc) that I'm not logging because I didn't add (it's not christmas anymore lol)
image

housey2k housey2k added to the journal ago

Wired microcontrollers + eth0 PHY

Finished connecting the ESP32-S3 microcontrollers, as explained before, the master MCU will handle ethernet, wifi, SPI and USB jobs while the slave MCU handles SATA-USB, file system and SPI jobs.

Below is the the master microcontroller, with all connections labeled
image

And below is the slave microcontroller, with all connections labeled.
image

The slave microcontroller is really software intensive, since it must handle file systems, USB drivers, and SPI communication to the master.
The master microcontroller is more hardware intensive, since it has to flash the slave MCU on firmware updates, talk to ethernet, WiFi, handle configurator software through USB, ethernet and WiFi, thought the ethernet, wifi and SMB parts of the project are also software intensive.

Here is the page for the ethernet PHY
image

Here we have the main IC, which is the IP101GRI because it's a cheap IC, and it was used before on espressif development boards, so it must have good software support, we can also see all it's support components, like the pulse transformer, TVS array, filtering and protection components, the ethernet port itself, and many capacitors for decoupling, RC network for reset timing, and pull up resistors for configuration

housey2k housey2k added to the journal ago

SATA Circuit + 1.1V converter + system planning

Finished the circuit for the USB-SATA bridge.
I picked the TUSB9261PVP IC because it's pretty integrated, readily available and not that hard to use, with the assembled board i'll have to upload firmware via USB on my computer. I'll do this by holding the slave ESP on reset and soldering a cable to the data points.
image

I also added a 1.1V switching converter that will be used to power the bridge's processing core (VDD), I am using the ST1S10PHR by STMicroelectronics, I picked this IC from a recommendation at EEVBlog that was posted by someone with the exact same requirements.
image

This project will use 2x ESP32-S3 microcontrollers
The slave MCU will handle low level tasks like USB host and drivers, raw data read and file system.
The master MCU will handle higher level tasks like SMB server, configurator USB, slave firmware flashing, Ethernet and WiFi.
They will communicate via SPI
The goal of this project for now is not to be a practical NAS, but rather prove that it is possible to create such device without any traditional computers, operating system and architecture

housey2k housey2k added to the journal ago

Finished initial power circuit

This is the power circuit, it switches the input voltage to 5V and 3.3V, I am using LM2596 because it's a really popular IC and easy to implement, I am aware that there are cleaner and more efficient ICs, but i believe this is enough
image

housey2k housey2k added to the journal ago

Created project

Created the EasyEDA project, as the foundation of every project, I always start with the power circuit, for this project I plan a 12V input that will go through buck converters to generate the system voltages.
Input will be 12V that will be sent to SATA and bucks
Buck1 will output 5V for SATA and USB
Buck2 will output 3.3V for logic and ethernet
image

housey2k housey2k started HausNAS ago

1/24/2026 9:35 AM - Created project

Created the EasyEDA project, as the foundation of every project, I always start with the power circuit, for this project I plan a 12V input that will go through buck converters to generate the system voltages.
Input will be 12V that will be sent to SATA and bucks
Buck1 will output 5V for SATA and USB
Buck2 will output 3.3V for logic and ethernet
image

1/24/2026 9:56 AM - Finished initial power circuit

This is the power circuit, it switches the input voltage to 5V and 3.3V, I am using LM2596 because it's a really popular IC and easy to implement, I am aware that there are cleaner and more efficient ICs, but i believe this is enough
image

1/25/2026 - SATA Circuit + 1.1V converter + system planning

Finished the circuit for the USB-SATA bridge.
I picked the TUSB9261PVP IC because it's pretty integrated, readily available and not that hard to use, with the assembled board i'll have to upload firmware via USB on my computer. I'll do this by holding the slave ESP on reset and soldering a cable to the data points.
image

I also added a 1.1V switching converter that will be used to power the bridge's processing core (VDD), I am using the ST1S10PHR by STMicroelectronics, I picked this IC from a recommendation at EEVBlog that was posted by someone with the exact same requirements.
image

This project will use 2x ESP32-S3 microcontrollers
The slave MCU will handle low level tasks like USB host and drivers, raw data read and file system.
The master MCU will handle higher level tasks like SMB server, configurator USB, slave firmware flashing, Ethernet and WiFi.
They will communicate via SPI
The goal of this project for now is not to be a practical NAS, but rather prove that it is possible to create such device without any traditional computers, operating system and architecture

1/26/2026 11:18 PM - Wired microcontrollers + eth0 PHY

Finished connecting the ESP32-S3 microcontrollers, as explained before, the master MCU will handle ethernet, wifi, SPI and USB jobs while the slave MCU handles SATA-USB, file system and SPI jobs.

Below is the the master microcontroller, with all connections labeled
image

And below is the slave microcontroller, with all connections labeled.
image

The slave microcontroller is really software intensive, since it must handle file systems, USB drivers, and SPI communication to the master.
The master microcontroller is more hardware intensive, since it has to flash the slave MCU on firmware updates, talk to ethernet, WiFi, handle configurator software through USB, ethernet and WiFi, thought the ethernet, wifi and SMB parts of the project are also software intensive.

Here is the page for the ethernet PHY
image

Here we have the main IC, which is the IP101GRI because it's a cheap IC, and it was used before on espressif development boards, so it must have good software support, we can also see all it's support components, like the pulse transformer, TVS array, filtering and protection components, the ethernet port itself, and many capacitors for decoupling, RC network for reset timing, and pull up resistors for configuration

1/26/2026 11:59 PM - Added USB-B connector

I forgot to add it earlier, so now I added the external USB-B connector that will be used for configuration (and maybe firmware updates).
I also added a voltage divider that the MCU can use to sense if a USB cable is connected, I don't know if it will be necessary
During this step I also spent 10 minutes deciding wether I should add a lot of debug LEDs (USB 5V, USB Enum, Master PostOK, Slave PostOK, Sata ACT, etc) that I'm not logging because I didn't add (it's not christmas anymore lol)
image

1/29/2026 11 AM - Device Standardization

This is the part of the project that is done before the PCB, here I pick the components on LCSC, Based on their values on the schematic I search LCSC either through their website or directly from EasyEDA and pick the cheapest and more available components. These components get their packaging passed into the PCB editor and part numbers to the BOM
image

1/29/2026 12 PM - Initial PCB layout

This is the basic PCB layout, I positioned only the core components like ICs and connectors, I haven't positioned most SMD passives. Later i'll be positioning all the components and start routing.
image

1/31/2026 - New PCB layout

Did a few changes to the layout, now the board is smaller and more compact, I already positioned all the passives, changed a few net name and footprint mistakes, and I think it's good to route now, I'm considering 4 layers (GND and 3V3 planes, and top and bottom for signals)
image
imageimage