Blueprint

Form Nano

An ESP-32 SoC devboard

Created by DynamicWhiteHat DynamicWhiteHat

Tier 3

1 view

0 followers

No Demo Yet

DynamicWhiteHat DynamicWhiteHat added to the journal ago

Placed the components

Today, I worked on placing the components on my PCB. This takes significantly longer than other PCBs, since there are a few restrictions that must be followed. For example, the crystal must have a keep out zone around it and must be placed very close to the MCU. This is how I decided to go with my crystal layout:
image
I then started to work on the antenna, which I was unsure would work because I had to get a 50 ohm impedance on the trace. I didn't know that this was simply related to trace width, so I thought it would be difficult. In fact, it was much easier than I thought. All I needed was a 4x6 ground keep out zone for all layers under antenna chip. Then, I kept the antenna matching circuit near the antenna, and the chip matching one near the chip. I also curved the traces to help with RF design, which I saw online. I used the JLCPCB online impedance calculator to get the trace width:
image
After that, I placed the rest of my components normally, keeping decoupling caps close to the ICs and ordered everything to try to look good. I also switched out the footprints for the flash and switched the ams1117 to a AP2112k for smaller footprints. The only big footprint left is the TP4056. This is my final design:
image
image
I also created this banner:
Banner

DynamicWhiteHat DynamicWhiteHat added to the journal ago

Created the schematic

Today I decided to create a devkit but I wanted it to be different from the rest. Rather than using an RP2040, I decided to use an esp-32 s3 SoC. I typically use the SoM, but I decided I wanted to try to use an SoC to make things more complicated. The first image is a SoC, and the second is a SoM
image
image
I began by finding the documentation online, as they have reference schematics and design/layout guidelines. I mostly copied the following schematic, as well as some stuff from these two videos: https://www.youtube.com/watch?v=xK14eVJCoqU and https://www.youtube.com/watch?v=EdEwRXiQsfc
image
I decided to go with an external antenna module rather than go antenna on PCB, as the PCB version is much harder and requires careful routing.
I copied over the power path from my ESP-BASE project, which I use to start my ESP-32 designs. All I changed was that I added an ESD protection diode array to further protect the ESP32, as well as an LED on the 3.3v LDO to show active power.
image
Then, I decided that I wanted this board to be able to run motors and natively support a speaker. To do this, I added in a DRV8833 motor driver along with a MAX98357A amplifier. They look like this:
image
image
This addition did require that I remove some GPIO from my ESP-32, and this is what I ended with:
image

I decided to use GPIO38 as an onboard LED that can be used for debugging/programming (blinky incoming). Finally, I mapped the GPIO and motor/speaker pins to headers:
image

This is my final schematic:
image

DynamicWhiteHat DynamicWhiteHat started Form Nano ago

2/1/2026 - Created the schematic

Today I decided to create a devkit but I wanted it to be different from the rest. Rather than using an RP2040, I decided to use an esp-32 s3 SoC. I typically use the SoM, but I decided I wanted to try to use an SoC to make things more complicated. The first image is a SoC, and the second is a SoM
image
image
I began by finding the documentation online, as they have reference schematics and design/layout guidelines. I mostly copied the following schematic, as well as some stuff from these two videos: https://www.youtube.com/watch?v=xK14eVJCoqU and https://www.youtube.com/watch?v=EdEwRXiQsfc
image
I decided to go with an external antenna module rather than go antenna on PCB, as the PCB version is much harder and requires careful routing.
I copied over the power path from my ESP-BASE project, which I use to start my ESP-32 designs. All I changed was that I added an ESD protection diode array to further protect the ESP32, as well as an LED on the 3.3v LDO to show active power.
image
Then, I decided that I wanted this board to be able to run motors and natively support a speaker. To do this, I added in a DRV8833 motor driver along with a MAX98357A amplifier. They look like this:
image
image
This addition did require that I remove some GPIO from my ESP-32, and this is what I ended with:
image

I decided to use GPIO38 as an onboard LED that can be used for debugging/programming (blinky incoming). Finally, I mapped the GPIO and motor/speaker pins to headers:
image

This is my final schematic:
image

2/3/2026 - Placed the components

Today, I worked on placing the components on my PCB. This takes significantly longer than other PCBs, since there are a few restrictions that must be followed. For example, the crystal must have a keep out zone around it and must be placed very close to the MCU. This is how I decided to go with my crystal layout:
image
I then started to work on the antenna, which I was unsure would work because I had to get a 50 ohm impedance on the trace. I didn't know that this was simply related to trace width, so I thought it would be difficult. In fact, it was much easier than I thought. All I needed was a 4x6 ground keep out zone for all layers under antenna chip. Then, I kept the antenna matching circuit near the antenna, and the chip matching one near the chip. I also curved the traces to help with RF design, which I saw online. I used the JLCPCB online impedance calculator to get the trace width:
image
After that, I placed the rest of my components normally, keeping decoupling caps close to the ICs and ordered everything to try to look good. I also switched out the footprints for the flash and switched the ams1117 to a AP2112k for smaller footprints. The only big footprint left is the TP4056. This is my final design:
image
image
I also created this banner:
Banner