111 proyek blok · Arduino · ESP32 · Pico
Coding blok untuk proyek Arduino, ESP32, dan Pico
Ikuti blok warna-warni alih-alih membaca kode baris demi baris. 111 proyek BlueGrays punya versi blok, dan setiap blok sesuai dengan satu baris kode asli yang berjalan di board.
Apa itu coding blok?
Coding blok berarti menyusun program dari blok-blok seperti puzzle, bukan mengetiknya. "Atur pin sebagai output", "nyalakan LED", dan "tunggu 1 detik" masing-masing adalah satu blok, dan dengan menumpuknya kamu membangun program. Tidak perlu pusing soal titik koma, kurung, atau salah ketik, jadi kamu bisa fokus pada logikanya.
BlueGrays memakai set bloknya sendiri, dan bloknya mengikuti bahasamu: kalau aplikasinya berbahasa Inggris, bloknya bertuliskan "repeat forever" dan "write HIGH to pin". Di proyek Arduino dan ESP32, blok sesuai dengan kode C++; di proyek Raspberry Pi Pico, blok sesuai dengan MicroPython.
Tujuannya bukan selamanya memakai blok, tapi memahami kodenya. Letakkan blok sebuah proyek di samping kodenya dan kamu bisa melihat fungsi setiap baris. Setelah beberapa proyek, kamu mulai bisa membaca kode tanpa blok.
Cara kerja coding blok di BlueGrays
Di aplikasi, blok ada di bagian kode setiap proyek blok. Empat langkah:
- 01
Pilih proyek blok
Proyek dengan lencana blok punya versi blok. Kamu juga bisa memfilter daftar supaya hanya menampilkan proyek blok.
- 02
Nyalakan "Tampilkan sebagai blok"
Satu sakelar di bagian kode mengubah kode menjadi blok. Ketuk gambarnya untuk membukanya layar penuh dan memperbesarnya.
- 03
Pahami bloknya
Tab "Pahami blok" mengajakmu menelusuri program langkah demi langkah, dengan hanya menampilkan blok untuk tiap langkah beserta fungsinya.
- 04
Lanjut ke kode asli
Matikan sakelarnya dan program yang sama muncul sebagai kode. Salin ke Arduino IDE (atau Thonny untuk Pico) lalu upload ke board-mu.
Satu program: blok dan kode
Di kiri, blok proyeknya. Di kanan, kode yang berjalan di board. Setiap blok punya baris kode yang sesuai.
Blok

Kode
1// ─────────────────────────────────────────
2// BlueGrays · bluegrays.com
3// LED Berkedip
4// ─────────────────────────────────────────
5// Mengedipkan satu LED nyala dan mati setiap 100 ms. Menunjukkan
6// penggunaan dasar fungsi digitalWrite dan delay.
7//
8// Pin:
9// D9 -> LED (dengan resistor 220 ohm)
10
11void setup() {
12 pinMode(9,OUTPUT); // Pin LED sebagai output
13}
14
15void loop() {
16 digitalWrite(9,HIGH); // Nyalakan LED
17 delay(100); // Tunggu 100 ms (1000 ms = 1 s)
18 digitalWrite(9,LOW); // Matikan LED
19 delay(100);
20}
21Proyek blok
Semua proyek yang punya versi blok, per platform. Proyek gratis tampil lebih dulu: 31 di antaranya sepenuhnya gratis, termasuk blok dan kodenya.
Proyek Arduino74 proyek blok

LED Berkedip
"Halo" pertama di dunia elektronika: menyalakan dan mematikan satu LED. Arduino menyalakan dan mematikan LED dengan jeda singkat, sehingga cahayanya berkedip cepat. Kamu melihat dengan cara paling sed

Dua LED Berkedip Bergantian
Dua LED berkedip cepat secara bergantian: ketika satu menyala, yang lain mati, seperti sedang saling melempar bola. Arduino menyalakan setiap lampu selama seperlima detik lalu menyerahkannya ke yang l

Lampu Lalu Lintas
Tiruan mini lampu lalu lintas yang kamu lihat di jalan setiap hari. Merah menyala dua detik, kuning menyala sebentar, hijau menyala dua detik, lalu kembali ke merah lewat kuning lagi, terus berulang.

Lampu Polisi LED
Persis seperti lampu di mobil polisi: LED merah berkedip tiga kali dengan cepat, lalu LED biru berkedip tiga kali, dan polanya terus berulang tanpa henti. Yang kamu butuhkan hanya dua LED dan dua resi

LED Berjalan
Lampu-lampu yang menyala satu demi satu, seolah sedang berlari. Arduino menyalakan enam LED satu per satu; masing-masing menyala sebentar lalu padam, sehingga cahayanya berjalan dari awal ke akhir lal

Efek LED Knight Rider
Lampu pemindai klasik: sebuah titik cahaya meluncur dari satu ujung enam LED ke ujung lainnya lalu kembali. Arduino menyalakan setiap LED selama sepersepuluh detik sebelum pindah, berbalik di setiap u

LED Berjalan dengan Kecepatan yang Bisa Diatur
Enam LED menyala satu demi satu, sehingga cahayanya seolah berlari dari satu ujung ke ujung lainnya. Putar kenop potensiometer dan kecepatan larinya langsung berubah: ke satu arah cahayanya melesat, k

Efek LED Knight Rider dengan Kecepatan yang Bisa Diatur
Cahaya berlari dari satu ujung enam LED ke ujung lainnya, berbalik, lalu berlari kembali. Putar kenop potensiometer dan kamu langsung mengubah kecepatan larinya: dengan kenop di satu ujung cahayanya h
Proyek Arduino: semua proyek blok
- #9Kendali LED dengan Tombol Tekan (Tekan)Gratis
- #10Nyala/Mati LED dengan Tombol (On/Off)Gratis
- #11Mengukur Intensitas Cahaya dengan LDRGratis
- #12Lampu Tidur dengan LDRGratis
- #13Menggunakan BuzzerGratis
- #14Mengatur Frekuensi BuzzerGratis
- #27Pengukuran Jarak HC-SR04 (Tampilan Serial)Gratis
- #37Membaca Sakelar ReedGratis
- #45Menyiapkan Modul Jam RTC DS1302Gratis
- #55Suhu dan Kelembapan dengan DHT11Gratis
- #61Menggunakan Keypad 3x4Gratis
- #16Membaca Kode Remote Control IR
- #17Nyala/Mati LED dengan Penerima IR dan Remote Control
- #19Menyalakan Bohlam 220V dengan Tombol Tekan
- #20Menyalakan Bohlam 220V dengan Tombol (On-Off)
- #21Menyalakan Bohlam 220V dengan Remote Control
- #22Sistem Peringatan Laser
- #23Sistem Keamanan Laser
- #24Pendeteksi Gerakan dengan Sensor Gerak
- #25Bel Pintu dan Lampu dengan Sensor Gerak
- #26Piano Sederhana dengan Buzzer dan Tombol
- #28Sensor Parkir dengan HC-SR04
- #29Menampilkan Pesan di Layar LCD 2x16
- #30Animasi Teks Memantul di LCD
- #31Mengukur Jarak dengan Layar LCD
- #32Menggunakan Layar LCD dengan I2C
- #33Proyek Pengukur Tinggi Badan
- #34Kendalikan LED dari Ponselmu lewat Bluetooth
- #35Menggunakan Motor Servo
- #36Menggerakkan Motor Servo dengan Potensiometer
- #38Sensor Pintu dengan Sakelar Reed
- #39Menggunakan LED RGB
- #40Transisi Warna Halus dengan LED RGB
- #42Menampilkan Angka 0-99 di Layar 7 Segmen
- #43Penghitung dengan Layar 7 Segmen dan Tombol
- #44Mengukur Suhu dengan NTC dan Layar LCD 2x16
- #46Jam RTC DS1302 dengan Layar LCD
- #47Menampilkan 0-9999 di Layar 7 Segmen 4 Digit
- #48Jam Digital dengan Layar 7 Segmen 4 Digit
- #49Animasi Bom dengan Layar 7 Segmen 4 Digit
- #50Menggunakan Sensor Api
- #51Menggunakan Sensor Gas
- #52Alarm Sensor Api dan Gas
- #53Membaca Nilai RFID
- #54Autentikasi RFID
- #56Voltmeter Digital dengan Layar LCD
- #58Komunikasi Dua Arah Antara 2 Arduino
- #59Kendali LED dengan Joystick
- #60Kendali Servo dengan Joystick
- #62Kendali LED dengan Keypad 3x4
- #63Menggunakan Keypad 4x4
- #64Kunci Sandi dengan Keypad 4x4 dan LCD
- #67Menggunakan Motor Stepper
- #68Servo 360 Derajat dari Motor Stepper
- #69Menggunakan LED Strip WS2812B
- #70Lampu Polisi dengan WS2812B
- #71LED Berjalan WS2812B
- #72LED Berjalan WS2812B (Efek Isi)
- #73Efek Knight Rider WS2812B
- #74Efek Knight Rider WS2812B (3 LED)
- #75Animasi WS2812B 1
- #77Membaca Pantulan (Kedekatan) dengan TCRT5000
- #78Deteksi Permukaan Hitam dan Putih TCRT5000
- #82Lampu Tangga dan Koridor Pintar
- #83Stasiun Penyiraman Pintar
- #97Tes Waktu Reaksi Arduino dengan Isyarat Suara: Ukur Refleksmu dalam Milidetik (LCD + Buzzer + 3 LED)
Proyek ESP3223 proyek blok

LED Berkedip dengan ESP32
Mengajarkan penggunaan output GPIO dasar dengan ESP32. Kita membuat efek berkedip dengan menyalakan dan mematikan LED dari pin digital. Versi ESP32 dari proyek blink klasik di Arduino UNO; perintah blink dasar di lingkungan Arduino sama, tetapi susunan pin ESP32 dan level GPIO 3,3 V-nya berbeda dengan Arduino UNO.

Kendali LED dengan Tombol Tekan ESP32 (Tekan)
LED menyala ketika tombol ditekan dan mati ketika dilepas. Menunjukkan cara memakai pin input digital ESP32 dan resistor pull-up internalnya. Mode INPUT_PULLUP membuat resistor eksternal tidak diperlukan.

Kendali LED dengan Tombol Tekan ESP32 (Toggle)
Setiap kali tombol ditekan, keadaan LED berubah: jika menyala jadi mati, jika mati jadi menyala. Pola toggle klasik. Dengan debounce, kita membersihkan derau mekanis tombol tekan agar satu tekanan menghasilkan satu kali toggle.

Kedipan LED Bawaan ESP32
Mengedipkan LED biru bawaan di ESP32 DevKit V1. Tidak perlu komponen eksternal! Proyek pertama yang sebaiknya kamu coba ketika membeli ESP32. GPIO 2 tersambung ke LED bawaan.

Lampu Lalu Lintas ESP32
Simulasi lampu lalu lintas sungguhan dengan 3 LED merah-kuning-hijau. Pengaturan waktunya mendekati logika lalu lintas sungguhan: merah lama, kuning singkat, hijau lama. Contoh klasik kendali GPIO berurutan.

LED Knight Rider ESP32
6 LED yang bergerak berurutan dari kiri ke kanan dan dari kanan ke kiri (gaya Knight Rider). Contoh dasar penggunaan loop for dan array. Mengajarkan logika perubahan arah.

LED Fade dengan PWM ESP32
Mengubah kecerahan LED secara halus dari 0 ke maksimum, dan dari maksimum ke 0. Kita mengendalikan PWM dengan analogWrite() seperti di Arduino; sintaks yang sama bekerja tanpa masalah di ESP32 Arduino Core 3.0+. Definisi pin + pinMode + analogWrite sudah cukup.

Kendali LED RGB ESP32
Menghasilkan warna tanpa batas dengan satu LED RGB alih-alih 3 LED terpisah. Seperti di Arduino, kita membuat transisi pelangi dengan mengatur nilai R/G/B lewat analogWrite(). Teori warna (seperti merah+hijau=kuning) terlihat secara praktis.
Proyek ESP32: semua proyek blok
- #113Membaca Intensitas Cahaya dengan Modul LDR ESP32Gratis
- #116Sensor Jarak Ultrasonik HC-SR04 ESP32Gratis
- #117Suhu dan Kelembapan DHT22 ESP32 (dengan Layar LCD)Gratis
- #122Alarm Detektor Gas/Asap MQ-2 ESP32Gratis
- #123Pembaca Kartu RFID RC522 ESP32 (dengan LCD)Gratis
- #109Efek Lampu Strobo Polisi ESP32
- #112Lampu Tidur dengan LDR ESP32
- #114Memutar Melodi dengan Buzzer ESP32
- #115Kendali Kecerahan LED dengan Potensiometer ESP32 (Analog → PWM)
- #118Motor Servo ESP32 (Kendali Potensiometer)
- #119Layar LCD I2C ESP32 (16x2)
- #120Jam Digital dengan ESP32 dan RTC DS1307 (I2C + LCD)
- #121Lampu Otomatis dengan Sensor Gerak PIR ESP32
- #125Layar 7 Segmen 4 Digit TM1637 ESP32
- #126Kendali Strip NeoPixel WS2812B ESP32
Proyek Raspberry Pi Pico10 proyek blok

Kedip LED Bawaan Raspberry Pi Pico (Pico dan Pico W)
Proyek pembuka seri Raspberry Pi Pico! Kita mengedipkan LED hijau bawaan untuk memastikan board bekerja; percobaan "Hello World" klasik. TANPA komponen eksternal, hanya Pico dan kabel USB. Kodenya ditulis dalam MicroPython (bahasa resmi dari Raspberry Pi Foundation). Pelajari kelas machine.Pin, mode Pin.OUT, metode led.on()/off(), dan time.sleep() di Thonny IDE, dan ikuti setiap perubahan di output Serial (REPL). Juga pas untuk menguji firmware MicroPython.

Raspberry Pi Pico: Mengendalikan LED Eksternal (Breadboard)
Langkah berikutnya setelah LED bawaan Pico: menyambungkan LED eksternal ke breadboard dan mengendalikannya lewat pin GP14. Di proyek ini, kamu belajar memakai pin GPIO serbaguna Pico mana pun sebagai output, polaritas LED (kaki panjang = anoda/+, kaki pendek = katoda/–), dan kenapa resistor pembatas arus (220Ω) diperlukan. Tanpa resistor, arus berlebih mengalir melalui LED dan LED bisa terbakar. Rangkaiannya sangat sederhana: Pico GP14 → resistor 220Ω → LED → GND.

Dua LED Bergantian Raspberry Pi Pico (Pola Kedip Bergantian)
Langkah berikutnya setelah satu LED di Pico: dua LED berkedip bergantian dengan pola flip-flop klasik. Ketika satu mati, yang lain menyala; contoh paling dasar koordinasi beberapa GPIO. Dua LED berbeda warna (merah di GP14, hijau di GP13) bertukar status setiap 500 ms, dan metode Pin.toggle() MicroPython membuat kodenya singkat. Logika yang sama menjadi dasar lampu lalu lintas, lampu polisi, dan LED berjalan. Setiap LED memakai resistor 220Ω-nya sendiri.

Simulator Lampu Lalu Lintas Raspberry Pi Pico (3 LED Berurutan)
Kita menyimulasikan lampu lalu lintas sungguhan dengan LED merah, kuning, dan hijau; proyek 3 LED pertama di seri Pico! Hijau 4 detik "jalan", kuning 1,5 detik "siap", merah 3 detik "berhenti", dan merah+kuning 1 detik "bersiap" (pola Eropa). Pelajari pendefinisian fungsi (def all_off()), logika state machine, dan sinkronisasi beberapa GPIO. 3 LED di GP11 (Hijau), GP12 (Kuning), GP13 (Merah), masing-masing dengan resistor 220Ω, berdampingan di board.

Efek Lampu Strobo Polisi Raspberry Pi Pico (Merah + Biru)
Kita menyimulasikan bar lampu mobil polisi dengan Raspberry Pi Pico dalam bentuk paling sederhana! LED merah dan biru menyala bergantian (flip-flop): ketika merah menyala, biru mati, dan keduanya bertukar setiap 0,3 detik, selamanya. Kode menulis dua langkah itu langsung di satu loop while True; kecepatannya diatur dengan konstanta WAIT_MS.

Flip-Flop Polisi 3 Kedipan Raspberry Pi Pico (2 LED)
Variasi berirama dari proyek strobo polisi: flip-flop 3 kedipan! Rangkaian 2 LED yang sama (GP11 merah + GP12 biru), tetapi polanya berbeda: LED merah berkedip cepat 3 kali, lalu biru berkedip 3 kali, selamanya. Pola "kedipan beruntun + ganti" ini adalah ritme lampu sirene polisi sungguhan yang paling mudah dikenali. Pelajari fungsi berparameter def burst(led, count, duration_ms), desain ritme, dan cara menghasilkan efek visual berbeda dengan kode di rangkaian yang sama.

LED Toggle dengan Tombol Raspberry Pi Pico
Tombol + LED, level berikutnya! Berbeda dengan proyek tombol dasar, tombol tidak perlu ditahan. Tekan dan lepas → LED menyala. Tekan dan lepas lagi → LED mati (toggle). Rangkaiannya sama (LED GP14, Tombol GP2), tetapi kodenya sangat berbeda. Pelajari deteksi tepi (menangkap momen turun 1→0), pelacakan status, dan debounce (penyaring pantulan mekanis). led.toggle() MicroPython menukar status dalam satu baris. Dasar semua proyek tombol interaktif (pengganti mode, IRQ, klik ganda).

LED Fade PWM Raspberry Pi Pico (Efek Bernapas)
LED tidak lagi sekadar berkedip, ia bernapas! Dengan PWM (Pulse Width Modulation) Pico, kecerahan LED naik lalu turun perlahan, seperti lampu MacBook yang tidur. Pelajari kelas machine.PWM, duty_u16() (kecerahan 16-bit 0–65535), frekuensi PWM (freq(1000): 1000 siklus per detik, tanpa kedipan terlihat), loop range() bertahap, dan output mirip analog dari pin digital. PWM juga dipakai untuk warna RGB, motor, servo, dan buzzer.
Proyek Raspberry Pi Pico: semua proyek blok
Untuk siapa?
Anak-anak dan orang tua
Belajar coding untuk anak jauh lebih membekas kalau hasilnya adalah LED yang menyala di meja. Blok membuat program mudah dibaca, dan rangkaiannya kalian rakit bareng.
Guru dan klub
Di kelas robotika atau STEM, kamu bisa menjelaskan proyek dengan blok dulu, lalu lanjut ke kodenya. Setiap proyek sudah punya daftar komponen dan skema rangkaian.
Pemula
Coding blok Arduino adalah cara tercepat memahami logika di beberapa proyek pertamamu. Mulai dengan blok, lalu pindah ke kode kalau kamu sudah siap.
Pertanyaan umum
Apa itu coding berbasis blok?
Ini cara memprogram di mana perintah ditampilkan sebagai blok yang saling menyambung seperti kepingan puzzle, bukan sebagai teks yang diketik. Karena tidak mungkin salah ketik, pemula dan anak-anak lebih mudah memahami logika program.
Berapa banyak proyek BlueGrays yang punya versi blok?
Sekarang ada 111: 76 proyek Arduino, 25 proyek ESP32, dan 10 proyek Raspberry Pi Pico. Daftarnya terus bertambah seiring proyek lain diubah ke blok.
Apakah coding blok gratis?
Aplikasinya gratis. Blok dan kode dari 31 proyek blok terbuka untuk semua orang. Di proyek lain, bloknya terbuka dengan Premium, sama seperti kodenya.
Bisakah aku upload blok langsung ke board?
Tidak. Blok membuat program lebih mudah dibaca dan dipahami; yang masuk ke board selalu kode asli proyeknya. Kamu menyalinnya ke Arduino IDE, atau Thonny untuk Pico, lalu meng-upload-nya.
Bisakah aku membuat program sendiri dengan blok?
Belum. Kami menyiapkan blok untuk setiap proyek dan mencocokkannya satu per satu dengan kodenya, jadi blok yang kamu lihat selalu mewakili program yang sudah diuji dan berjalan.
Apa bedanya dengan Scratch atau mBlock?
Di Scratch dan mBlock kamu menyeret blok di komputer untuk menulis programmu sendiri. Di BlueGrays setiap proyek blok dilengkapi skema rangkaian, daftar komponen, dan kode asli, dan bloknya adalah versi kode itu yang mudah dibaca. Keduanya saling melengkapi.
Apakah cocok untuk anak-anak? Mulai umur berapa?
Anak sekitar 9 atau 10 tahun yang sudah lancar membaca bisa mulai bersama orang dewasa. Proyek-proyek pertama tidak butuh solder: dirakit di breadboard dengan LED, tombol, dan buzzer.
Bloknya tersedia dalam bahasa apa saja?
Inggris, Turki, Jerman, Spanyol, Prancis, dan Italia. Blok tampil dalam bahasa yang kamu pakai di aplikasi; dalam bahasa Indonesia, bloknya tampil dalam bahasa Inggris.

