โก electronics July 25, 2026 by Nitvi ๐ 3 min read
Arduino LED Matrix Emojis โ Heart โค๏ธ and Smile ๐!
Show emoji pictures on the Arduino UNO R4 WiFi built-in LED matrix. No extra components needed!
My Arduino UNO R4 WiFi has a built-in 12ร8 LED matrix. Today I used it to show two of my favorite emojis:
โค๏ธ Heart ๐ Smiley face
They blink one after another, like a tiny digital locket! ๐
What you need
- Arduino UNO R4 WiFi
- USB cable
Still zero extra components! ๐
The code
/*
Arduino UNO R4 WiFi LED Matrix โ Heart and Smile
Shows a heart emoji (โค๏ธ) and a smiley face (๐) on the built-in 12x8 LED matrix.
*/
#include "Arduino_LED_Matrix.h"
ArduinoLEDMatrix matrix;
// 8 rows x 12 columns, values: 0 = off, 255 = full brightness
uint8_t frame[8][12];
// Heart shape frame
uint8_t heart[8][12] = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 0},
{0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0},
{0, 0, 255, 255, 255, 255, 255, 255, 255, 255, 0, 0},
{0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0},
{0, 0, 0, 0, 255, 255, 255, 255, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
};
// Smiley face frame
uint8_t smiley[8][12] = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 0},
{0, 0, 0, 255, 255, 0, 0, 255, 255, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 255, 0, 0, 0, 0, 0, 0, 255, 0, 0},
{0, 0, 255, 0, 0, 0, 0, 0, 0, 255, 0, 0},
{0, 0, 0, 255, 255, 255, 255, 255, 255, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
};
void setup() {
Serial.begin(9600);
matrix.begin();
Serial.println("Heart and Smile LED Matrix started!");
}
void loop() {
// Show heart for 1.5 seconds
memcpy(frame, heart, sizeof(heart));
matrix.loadPixels(&frame[0][0], 8 * 12);
delay(1500);
// Show smiley for 1.5 seconds
memcpy(frame, smiley, sizeof(smiley));
matrix.loadPixels(&frame[0][0], 8 * 12);
delay(1500);
}
How I uploaded it
arduino-cli board list
arduino-cli compile --fqbn arduino:renesas_uno:unor4wifi MatrixEmoji
arduino-cli upload -p /dev/cu.usbmodem9888E00970202 --fqbn arduino:renesas_uno:unor4wifi MatrixEmoji
On Windows, your port will look like COM3 or COM4.
How it works
| Part | What it does |
|---|---|
matrix.begin() | Starts the LED matrix |
heart[8][12] | Stores the heart picture as 96 brightness values |
smiley[8][12] | Stores the smiley picture as 96 brightness values |
memcpy(frame, heart, ...) | Copies the picture into the active frame |
matrix.loadPixels(&frame[0][0], 8 * 12) | Sends the picture to the matrix |
Try changing it!
- Swap the emojis โ show a star โญ or music note ๐ต
- Make them fade in and out using PWM-style brightness values
- Add a third emoji like a thumbs up ๐
- Make the heart beat faster by changing the delay times
Whatโs next?
I want to try scrolling text next โ maybe my name โNITVIโ moving across the matrix! Or maybe a tiny reaction meter that shows different emojis based on sensor input.
See my other LED matrix post: