ESP32 OLED Golden Brown Lyrics
Wiring Schematic
View full-size circuit ↗
YOUR PROJECT LEARNING PATH
Build it with confidence.
Project overview
Know what you’re building before you start wiring.
Create an ESP32-powered OLED lyrics visualizer that displays Golden Brown lyrics alongside an animated castle, twinkling stars, and shooting stars on a 128×64 SSD1306 screen.
Follow this guide to assemble the display, install the required libraries, upload the sketch, and explore synchronized lyric animations with hovering, beat, and expanding text effects.
Disconnect USB power before changing connections, and use the ESP32 3.3 V output only if your specific OLED module supports that supply voltage.
Components required
Gather these parts before you begin.
Build the project
Work through one focused step at a time. You can revisit any step whenever you need.
Prepare the ESP32 and OLED
With USB power disconnected, position the ESP32 and SSD1306 OLED on the breadboard. Identify the display's VCC, GND, SDA, and SCL pins.
Check the pin labels on your specific modules before wiring, because their physical order can vary. Keep all connections accessible for inspection before applying power.
Connect OLED Power and Ground
Connect OLED VCC to the ESP32 3.3 V output and OLED GND to ESP32 GND, provided the display module supports 3.3 V operation.
Inspect the power polarity and make sure the ground wire is secure. Keep USB power disconnected until you have verified the VCC and GND connections.
Connect the I²C Data Line
Connect the OLED SDA data pin to ESP32 GPIO 21. This line carries commands and pixel data from the microcontroller to the display.
Trace the SDA jumper at both ends and confirm it reaches GPIO 21, not the SCL pin or a power connection. Keep the wiring secure.
Connect the I²C Clock Line
Connect the OLED SCL clock pin to ESP32 GPIO 22. The clock line synchronizes I²C data transfers between the ESP32 and OLED display.
Verify that SDA and SCL are not swapped and compare the wiring with your board's pin labels. Confirm that the sketch uses matching GPIO assignments.
Upload and Test the Animation
Install the required libraries, select the correct ESP32 board and serial port in Arduino IDE, then compile and upload your Golden Brown visualizer sketch.
Confirm that the OLED initializes and displays the castle, stars, shooting stars, and lyrics as programmed. If the screen stays blank, check the I²C address and wiring.
Software & tools
Install these before uploading the firmware.
Expected output
Compare your build with the result described here.
After uploading the sketch, the SSD1306 OLED should initialize and display a castle beneath a twinkling starry sky, with Golden Brown lyrics appearing through the programmed text animations.
Observe the hover, beat, and expansion effects, along with shooting stars if implemented in your sketch. Confirm the animation sequence and page transitions follow their configured timing values.
Troubleshooting & fixes
Choose the issue that best matches what you’re seeing.
01OLED Display Remains Blank
Verify OLED VCC and GND connections, then check SDA on GPIO 21 and SCL on GPIO 22. Confirm your module's I²C address and ensure the sketch uses the correct display dimensions and initialization settings.
02Castle Graphics Look Corrupted
Confirm the Adafruit GFX and SSD1306 libraries are installed correctly. Check the drawing coordinates, buffer refresh calls, and display dimensions to ensure castle shapes and sky elements remain within the screen boundaries.
03Lyrics and Stars Animate Incorrectly
Review the lyric timing values and confirm the star-initialization and drawing functions run during the animation loop. Check effect selection, elapsed-time calculations, and page-transition delays against the intended sequence.