
Pernah melihat running text di papan iklan? Sekarang, kamu bisa membuat running text dengan ESP32 dan P10 sendiri! Proyek ini dirancang untuk pemula, jadi mudah diikuti. Dengan Arduino IDE, kamu bisa belajar menampilkan running text yang bisa digunakan untuk berbagai kebutuhan, mulai dari informasi hingga dekorasi kreatif. Yuk, mulai dan ciptakan display teks berjalanmu sendiri!
Daftar Isi
Komponen
- ESP32 (Beli di sini)
- Modul P10 LED
- Kabel Jumper Female to Female (Beli di sini)
- Kabel USB
- Arduino IDE (Download di sini)
Diagram Wiring


Keterangan :
- GND – GND
- OE – D23
- A – D19
- B – D21
- CLK – D18
- LAT – D2
- DR – D23
- VCC – VP
- GND – EN
Implementasi
- Mengubah Board ESP32 ke Versi 2.0.0
- Buka File > Preferences di Arduino IDE.
- Tambahkan URL : https://dl.espressif.com/dl/package_esp32_index.json di Additional Boards Manager URLs.
- Pergi ke Tools > Board > Board Manager, cari ESP32 dan install versi 2.0.0.
- Menginstall Library DMD32
- Buka Sketch > Include Library > Manage Libraries.
- Cari DMD32 dan klik Install.
Kode Program
#include <DMD32.h>
#include "fonts/SystemFont5x7.h"
#include "fonts/Arial_black_16.h"
#define DISPLAYS_ACROSS 1
#define DISPLAYS_DOWN 1
DMD dmd(DISPLAYS_ACROSS, DISPLAYS_DOWN);
hw_timer_t* timer = NULL;
void IRAM_ATTR triggerScan() {
dmd.scanDisplayBySPI();
}
void setup() {
Serial.begin(115200);
delay(500);
Serial.println();
Serial.println("return the clock speed of the CPU.");
uint8_t cpuClock = ESP.getCpuFreqMHz();
delay(500);
Serial.println();
Serial.println("Timer Begin");
timer = timerBegin(0, cpuClock, true);
delay(500);
Serial.println();
Serial.println("Attach triggerScan function to our timer.");
timerAttachInterrupt(timer, &triggerScan, true);
delay(500);
Serial.println();
Serial.println("Set alarm to call triggerScan function.");
timerAlarmWrite(timer, 100, true);
delay(500);
Serial.println();
Serial.println("Start an alarm.");
timerAlarmEnable(timer);
delay(500);
}
void loop() {
dmd.selectFont(Arial_Black_16);
String txt_1 = "Edutic.id";
char char_array_txt_1[txt_1.length() + 1];
txt_1.toCharArray(char_array_txt_1, txt_1.length() + 1);
dmd.clearScreen(true);
delay(1000);
dmd.drawMarquee(char_array_txt_1, txt_1.length(), (32 * DISPLAYS_ACROSS) - 1, 0);
long timer_1 = millis();
boolean ret = false;
while (!ret) {
if ((timer_1 + 50) < millis()) {
ret = dmd.stepMarquee(-1, 0);
timer_1 = millis();
}
}
}
Langkah-langkah di Arduino IDE
- Memverifikasi Kode
- Klik tombol Verify untuk memeriksa kesalahan pada kode.
- Mengupload Program
- Hubungkan ESP32 ke komputer.
- Pilih board ESP32 Dev Module dan pilih Port yang sesuai di Arduino IDE.
- Klik tombol Upload untuk mengunggah program
Hasil Akhir
Berikut adalah tampilan display berjalan yang telah berhasil dibuat.

FAQ
Bisa nggak sih nambahin lebih dari satu modul P10?
Tentu saja! Kamu bisa menggabungkan beberapa modul P10 untuk tampilan yang lebih panjang. Cukup sesuaikan jumlah display di kode dan wiring-nya.
Gimana sih cara ganti teks yang ditampilkan?
Mudah! Cukup ubah teks di variabel txt_1 dalam kode program. Ganti dengan pesan yang kamu mau, lalu upload ulang ke ESP32.
Kenapa ya teksnya nggak muncul di modul P10?
Cek wiring antara ESP32 dan modul P10. Pastikan semua kabel jumper terhubung dengan baik dan library di Arduino IDE sudah terinstal dengan benar.
Bisa nggak teksnya diubah tanpa harus upload ulang kode?
Bisa banget! Kamu bisa nambahin fitur input dari serial monitor atau bahkan bikin aplikasi berbasis web biar teksnya bisa diubah secara real-time tanpa perlu upload ulang ke ESP32.
Gimana cara bikin teksnya jadi berwarna?
Modul P10 standar cuma bisa tampil warna merah. Tapi kalau kamu mau teks berwarna, kamu bisa pakai modul P10 RGB LED. Dengan modul ini, kamu bisa menampilkan berbagai warna, tapi pastikan juga untuk sesuaikan library dan kodenya agar semuanya jalan lancar.
Kesimpulan
Setelah mengikuti tutorial ini, kamu berhasil membuat running text sendiri dengan ESP32 dan P10! Seru, kan? Proyek ini nggak cuma mengajarkan hal baru, tapi juga membuka banyak peluang untuk bereksperimen lebih lanjut di dunia mikrokontroler dan tampilan LED. Siapa tahu, proyek kecil ini bisa jadi awal dari ide-ide kreatif lainnya!
Kalau kamu lagi semangat untuk mencoba hal baru, coba deh proyek Monitoring Data DHT11 dan LDR ke ThingSpeak. Siapa tahu kamu jadi makin tertarik sama dunia IoT!