DarwinBox: a Pocket Human Evolution Display Using ESP32-C3
by SUCHIR2004 in Circuits > Microcontrollers
178 Views, 2 Favorites, 0 Comments
DarwinBox: a Pocket Human Evolution Display Using ESP32-C3
Before history was written, evolution had already begun.
In the Victorian era, Charles Darwin introduced a theory that reshaped humanity’s understanding of its own existence.
From the first spark of life to the rise of humans, evolution is a story written over millions of years—too vast to witness, yet fundamental to who we are.
DarwinBox captures this journey and compresses it into seconds.
Using a compact OLED display and an ESP32-C3 supermini, this device transforms Darwin’s groundbreaking idea into a living animation—bridging centuries of scientific thought with modern embedded technology.
A story of life, evolution, and progress—now held in the palm of your hand.
Supplies
Electronics
- ESP32-C3 SuperMini
- SSD1306 OLED Display (0.96", I2C)
- TP4056 Charging Module (with protection)
- 3.7V 400mAh Li-ion Battery
- Slider Switch
- Jumper wires
- 6 x (M2 x 4mm) screws - (2 x for slidder switch and 4 x for back cover mounting)
Software
- Arduino IDE
Mechanical
- 3D Printed Enclosure (STL provided)
- Screws (small size)
Tools
- Soldering iron
- Solder wire
- USB Type-C cable
- 3D printer (or printed parts)
Setting Up Arduino IDE and ESP32 C3
🔌 1. Connect the Board
Connect the ESP32-C3 SuperMini to your laptop/PC using a USB Type-C cable.
📥 2. Download the Code
Download the project files from GitHub:
👉 https://github.com/Suchir2004/HUMAN_EVOLUTION
- Download the ZIP file
- Extract it on your computer
- Open the main.ino file in Arduino IDE
⚠️ Make sure main.ino and frames.h are in the same folder.
⚙️ 3. Set Up ESP32 Board
- Open Arduino IDE
- Go to File → Preferences
- In Additional Board Manager URLs, paste:
- Click OK
📦 4. Install ESP32 Boards
- Go to Tools → Board → Boards Manager
- Search for ESP32
- Install ESP32 by Espressif Systems
- Wait until installation is complete
📚 5. Install Required Libraries
Go to Library Manager and install:
- Adafruit SSD1306
- Adafruit GFX
🧠 6. Select Board & Port
- Go to Tools → Board → ESP32C3 Dev Module
- Go to Tools → Port → Select your port. (Example: COM3, COM4, etc.)
▶️ 7. Upload the Code
- Click the Upload button
- Wait until it shows “Done Uploading”
💡 If upload fails:
- Press and hold the BOOT button
- Then click upload again
✅ Done!
Your ESP32-C3 is now programmed and ready.
3D Printing the Enclosure
To make the project compact and portable, a custom 3D-printed enclosure is used.
📥 Download STL File
Download the enclosure files (STL) provided in this project.
🖨️ Print Settings
You can use the following settings for best results:
- Material: PLA
- Layer Height: 0.2 mm
- Infill: 15–20%
- Supports: Not required (or minimal if needed)
- Print Speed: Standard (50–60 mm/s)
🧩 Parts to Print
- Main Body (with OLED cutout)
- Back Panel (bottom case)
Circuit Connections
In this step, we will connect all components including the OLED display, battery, charging module, and ESP32-C3.
🧠 Overview
The system has two main parts:
- Display (OLED via I2C)
- Power system (Battery + TP4056 + Switch)
📺 OLED Connections (SSD1306)
Connect the OLED to ESP32-C3:
- VCC → 3.3V
- GND → GND
- SDA → GPIO (as defined in the code, GPIO8)
- SCL → GPIO (commonly GPIO9)
💡 Make sure SDA and SCL match your code pins.
🔋 Power Connections
Battery → TP4056
- Battery + → B+
- Battery – → B–
TP4056 → ESP32
- OUT+ → Switch → ESP32 VIN (or 5V)
- OUT– → ESP32 GND
🔘 Switch Connection
- Place the switch between TP4056 OUT+ and ESP32 VIN
- This allows you to turn the device ON/OFF
⚠️ Important Notes
- Double-check polarity before powering
- Do not connect battery directly to ESP32
- Use TP4056 for safe charging
- Keep wires short and neat for enclosure fitting
Assembly
In this step, all components are assembled into the 3D-printed enclosure to create a compact and portable device.
🧱 1. Install the OLED Display
Insert the OLED display into the front cutout of the main enclosure, ensuring it sits flush and properly aligned.
🔘 2. Mount the Slider Switch
Insert the slider switch into the designated side slot and securely fasten it using two M2 screws.
🧠 3. Position the ESP32-C3
Place the ESP32-C3 module inside the enclosure behind the OLED display, ensuring sufficient clearance and no stress on the pins.
🔋 4. Secure the Battery
Place the 3.7V battery in the allocated space and fix it using double-sided tape to prevent movement.
⚡ 5. Install the TP4056 Module
Position the TP4056 charging module near the enclosure opening, aligning the USB port for easy access. Secure it using adhesive or mounting support.
🔌 6. Arrange the Wiring
Organize all wires neatly within the enclosure, keeping them short and avoiding overlap with the display area.
🧪 7. Perform a Test Run
Before closing the enclosure, power the device and verify:
- OLED display turns on
- Message is displayed
- Animation runs smoothly
🔩 8. Close the Enclosure
Carefully place the back cover onto the enclosure, ensuring no wires are pinched, and secure it using screws.
You now hold the story of human evolution in the palm of your hand.
Conclusion
When the device is powered ON using the slider switch:
- The OLED display lights up
- A short message about Charles Darwin is displayed for a few seconds
- The screen transitions into an animated sequence
- The animation shows the progression from primitive life forms to humans
- The sequence loops continuously
Human evolution is the earliest chapter of history—long before civilizations, technology, or written records existed. It is the story that defines who we are.
Inspired by the work of Charles Darwin, DarwinBox transforms this vast and complex journey into a simple, visual experience. What once unfolded over millions of years can now be observed in just a few seconds on a compact OLED display.
By combining Victorian-era scientific discovery with modern embedded technology, this project bridges the past and the present—making a foundational concept of biology accessible, interactive, and engaging.
In a world driven by rapid innovation, remembering the origins of life gives deeper meaning to progress itself.
A small device—telling the greatest story ever lived.
“This project was created as part of the Make It History Contest.”