Final Project Development #2 – Eagle Design

The main idea of designing the circuit for my device is having my own control of the dimensions and arrangement of my component across my board. However, due to the circumstances, I might have to adapt my design while I can get access to the hardware I require to build my circuit. Fortunately though, companies like Adafruit offer high-quality breakout boards with most everything you might need, as well as a a datasheet. I also used Digikey as a provider for my components.

I will go through each of the components I used, and at the end I will show how I implemented each of them into my design in Eagle.

ESP32 WROOM

I decided to go for an ESP32 Huzzah breakout board made by Adafruit in order to make the project. The board includes an ESP32-WROOM-32, and the board itself only adds a regulator, some protection diodes, two buttons, and an LED. You can see the board below.

According to the description page, “That module in the middle of the breakout contains a dual-core ESP32 chip, 4 MB of SPI Flash, tuned antenna, and all the passives you need to take advantage of this powerful new processor. The ESP32 has both WiFi and Bluetooth Classic/LE support. That means it’s perfect for just about any wireless or Internet-connected project.” The ESP32 itself is made by Expressif, based in China. And the datasheet for the ESP32 can be found here.

I also found Adafruit made a detailed guide on how to set it up using the Arduino IDE, which you can follow here. Below are closer images of the microcontroller.

Adafruit ESP32 Breakout HUZZAH board.
Adafruit ESP32 Breakout HUZZAH board.
The ESP32 up close.
The ESP32 up close.
Esp32WROOM Peripheral Schematics
Esp32 WROOM Peripheral Schematics
The esp32 schematic in Eagle.
The ESP32 schematic in Eagle. Component was taken from the HH Eagle library.

LIS3DH Accelerometer

LIS3DH Accelerometer.
LIS3DH Accelerometer.

Here I found the .sch and .brd files made by Arduino for the LIS3DH triple-axis accelerometer.

LIS3DH Schematic.
LIS3DH Schematic.

Adafruit Neopixels

PCB files for Adafruit NeoPixel 8×8 Matrix can be found here .

NeoPixel DataSheet
NeoPixel DataSheet
Adafruit Neopixel RGB 8x8 Matrix Schematic.
Adafruit Neopixel RGB 8×8 Matrix Schematic.

Bringing it all together

Schematics

First I had to connect everything, and then go to the .brd file and make the board design. I went ahead and removed any unnecesary components and making sure every GND and power inputs were correctly addressed. Since I had already made the connections with the prototype made last week, it didn’t take me much time.

My ESP connections.
My ESP32 connections.
My LIS3DH and MIC5225-3.3 connections.
My LIS3DH and MIC5225-3.3 connections.
My Neopixels connections.
My Neopixels connections.

Board Design

Looking over the process, I might say what took more time was to make it ‘pretty’. Making dimension guides are extremely useful, even more when you’re handling many components in a small space. Below is the predetermined way in which Eagle organized the elements of my board in the sketching area.

First approach to Eagle organization.
First approach to Eagle organization.

I must say, looking over the design made by Adafruit for their own RGB matrix 8×8 LED display I was impressed and overwhelmed. So I decided to sketch out the lines from DATA in of one LED to the next in order to see how to organize mine. After looking it over, however, they used vias for every LED. This would not serve my purpose since I wanted to keep my LEDs on one side and the main components on the other.

In the images above, I show the normal dataline in white. While the red and blue view is set to be red for the surface airwires and blue for the bottom ones. Since I would be making a plane for my GND, I could focus on just managing the DATA and power connections. The result is seen below, and in order to accomplish it I flipped every second LED to make the connections as fluid as possible.

My Neopixel connection scheme.
My Neopixel connection scheme.
My NeoPixel array
My NeoPixel array with dimension markers.

After feeling good about the LED array, it was time to move on to the ESP32 and the other components on the bottom. The only limitation I had as to keep the ESP32’s antenna as close to the edge ofo the board as possible. And also, to take into account I cannot put the power connection jack beneath anything since it required holes.

My first approach to the Backside.
My first approach to the Backside.

Eagle Files

Github Repository