{"id":524,"date":"2026-10-11T12:29:46","date_gmt":"2026-10-11T11:29:46","guid":{"rendered":"https:\/\/kuliahelektro.org\/?p=524"},"modified":"2026-10-11T12:29:47","modified_gmt":"2026-10-11T11:29:47","slug":"tutorial-esp32-cara-membuat-smart-baby-room-monitor-lampu-tidur-otomatis-berbasis-sensor-dht22-ldr-rgb-led-blynk-iot-pada-wokwi","status":"publish","type":"post","link":"https:\/\/kuliahelektro.org\/?p=524","title":{"rendered":"Tutorial ESP32: Cara Membuat Smart Baby Room Monitor &amp; Lampu Tidur Otomatis Berbasis Sensor DHT22, LDR, RGB LED &amp; Blynk IoT pada WOKWI"},"content":{"rendered":"\n<p>Pada bagian ini akan dibahas pembuatan sistem pemantau kenyamanan kamar bayi pintar (Smart Baby Room Monitor) berbasis mikrokontroler ESP32, sensor suhu dan kelembapan DHT22, sensor intensitas cahaya LDR, lampu indikator LED RGB, buzzer alarm, layar LCD 16&#215;2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video pembuatan pada tautan Video 1. Sistem memantau kondisi kenyamanan ganda (Dual Comfort) secara real-time berdasarkan parameter suhu ideal (22\u00b0C &#8211; 27\u00b0C) dan kelembapan ideal (40% &#8211; 60% RH). Apabila suhu atau kelembapan di luar batas aman, sistem akan mengaktifkan alarm buzzer dan mengirimkan event peringatan darurat ke aplikasi Blynk. Selain itu, sistem dilengkapi dengan kontrol lampu tidur RGB otomatis berbasis sensor LDR (mode Auto) serta opsi override manual melalui dashboard Blynk IoT.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/www.youtube.com\/watch?v=0a8kZ7a5d1E&amp;lc=UgyM70AKB7ktyoc3N-Z4AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1018\" height=\"536\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-10.png\" alt=\"\" class=\"wp-image-525\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-10.png 1018w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-10-300x158.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-10-768x404.png 768w\" sizes=\"(max-width: 1018px) 100vw, 1018px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><strong>Gambar 1. Skematik rangkaian sistem<\/strong><\/p>\n\n\n\n<p><strong>List Pin:<\/strong><\/p>\n\n\n\n<ul>\n<li>Sensor Suhu &amp; Kelembapan (DHT22)<br>VCC =&gt; 3.3V \/ 5V<br>GND =&gt; GND<br>Data =&gt; GPIO 15 (DHTPIN)<\/li>\n\n\n\n<li>Sensor Cahaya (LDR)<br>AO (Analog Output) =&gt; GPIO 34 (LDR_PIN)<br>VCC =&gt; 3.3V<br>GND =&gt; GND<\/li>\n\n\n\n<li>Display LCD 16&#215;2 I2C (Alamat: 0x27)<br>GND =&gt; GND<br>VCC =&gt; 5V \/ 3.3V<br>SDA =&gt; GPIO 21<br>SCL =&gt; GPIO 22<\/li>\n\n\n\n<li>Indikator LED RGB &amp; Buzzer Alarm<br>LED Red (Anode) =&gt; GPIO 4 (LED_RED)<br>LED Green (Anode) =&gt; GPIO 2 (LED_GREEN)<br>LED Blue (Anode) =&gt; GPIO 16 (LED_BLUE)<br>Buzzer Alarm =&gt; GPIO 13 (BUZZER_PIN)<\/li>\n<\/ul>\n\n\n\n<p><strong>List Virtual PIN:<\/strong><\/p>\n\n\n\n<ul>\n<li>V0 =&gt; Temperature (\u00b0C) &#8211; Datastream Nilai Suhu Ruangan dari Sensor DHT22<\/li>\n\n\n\n<li>V1 =&gt; Humidity (% RH) &#8211; Datastream Nilai Kelembapan Udara dari Sensor DHT22<\/li>\n\n\n\n<li>V2 =&gt; Comfort Status (String) &#8211; Menampilkan Status Kenyamanan Ruangan (&#8220;PERFECT COMFORT&#8221;, &#8220;TOO HOT!&#8221;, &#8220;TOO COLD!&#8221;, &#8220;AIR TOO DRY!&#8221;, atau &#8220;AIR TOO HUMID!&#8221;)<\/li>\n\n\n\n<li>V3 =&gt; Alarm State (Integer 0\/255) &#8211; Indikator Widget Status Bahaya \/ Peringatan Suhu &amp; Kelembapan Tidak Ideal<\/li>\n\n\n\n<li>V4 =&gt; Light Status &amp; Lux (String) &#8211; Menampilkan Status Lampu Tidur Beserta Nilai Intensitas Cahaya (Lux)<\/li>\n\n\n\n<li>V5 =&gt; Manual Night Light Mode (Integer 0\/1\/2) &#8211; Sakelar Kontrol Lampu Tidur dari Aplikasi Blynk (0 = Auto LDR, 1 = OFF Paksa, 2 = ON Paksa)<\/li>\n<\/ul>\n\n\n\n<p class=\"has-text-align-center\"><strong>Kode Arduino 1. Kode Program<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ ============================= \r\n\/\/ ALFIAN CENTER \r\n\/\/ SUBSCRIBE \r\n\/\/ Smart Baby Room Monitor ESP32 + Lampu Tidur Otomatis Sensor LDR Blynk Wokwi\r\n\/\/ PROGRAM BAKAL AKU KIRIM DENGAN SYARAT DIBAWAH \r\n\/\/ LIKE 50, KOMEN 30 DAN * WAJIB SUBSCRIBE *\r\n\/\/ PROGRAM DIKIRIM VIA KOMENTAR \r\n\/\/ =============================\r\n\r\n#define BLYNK_TEMPLATE_ID \"TMPL6U7BoxR29\"\r\n#define BLYNK_TEMPLATE_NAME \"SMART BABY ROOM\"\r\n#define BLYNK_AUTH_TOKEN \"s0LOeR0AQBugmKkQcFS5U-iHr11Kg56j\"\r\n\r\n#include &lt;WiFi.h>\r\n#include &lt;BlynkSimpleEsp32.h>\r\n#include &lt;LiquidCrystal_I2C.h>\r\n#include \"DHT.h\"\r\n\r\n#define DHTPIN 15\r\n#define DHTTYPE DHT22\r\n#define LDR_PIN 34\r\n\r\n#define LED_RED 4\r\n#define LED_GREEN 2\r\n#define LED_BLUE 16\r\n#define BUZZER_PIN 13\r\n\r\n\/\/ Konstanta Perhitungan LDR Wokwi\r\nconst float GAMMA = 0.7;\r\nconst float RL10 = 33.0;\r\n\r\nchar auth&#91;] = BLYNK_AUTH_TOKEN;\r\nchar ssid&#91;] = \"Wokwi-GUEST\";\r\nchar pass&#91;] = \"\";\r\n\r\nDHT dht(DHTPIN, DHTTYPE);\r\nLiquidCrystal_I2C lcd(0x27, 16, 2);\r\nBlynkTimer timer;\r\n\r\nint nightLightMode = 0; \/\/ 0 = Auto LDR, 1 = OFF Paksa, 2 = ON Paksa\r\n\r\nBLYNK_WRITE(V5) {\r\n  nightLightMode = param.asInt();\r\n}\r\n\r\nfloat readLux() {\r\n  int analogValue = analogRead(LDR_PIN);\r\n  float voltage = analogValue \/ 4096.0 * 3.3;\r\n  if (voltage >= 3.29) voltage = 3.29;\r\n  float resistance = 2000.0 * voltage \/ (1.0 - voltage \/ 3.3);\r\n  float lux = pow(RL10 * 1e3 * pow(10, GAMMA) \/ resistance, (1.0 \/ GAMMA));\r\n  return lux;\r\n}\r\n\r\nvoid setRGB(bool red, bool green, bool blue) {\r\n  digitalWrite(LED_RED, red ? HIGH : LOW);\r\n  digitalWrite(LED_GREEN, green ? HIGH : LOW);\r\n  digitalWrite(LED_BLUE, blue ? HIGH : LOW);\r\n}\r\n\r\nvoid checkBabyRoom() {\r\n  float temp = dht.readTemperature();\r\n  float hum = dht.readHumidity();\r\n  float lux = readLux();\r\n\r\n  if (isnan(temp) || isnan(hum)) {\r\n    lcd.setCursor(0, 0);\r\n    lcd.print(\"Sensor Error!!  \");\r\n    return;\r\n  }\r\n\r\n  String comfortStatus = \"\";\r\n  bool isAlarm = false;\r\n\r\n  \/\/ 1. LOGIKA DUAL COMFORT (SUHU &amp; KELEMBAPAN)\r\n  bool tempOK = (temp >= 22.0 &amp;&amp; temp &lt;= 27.0);\r\n  bool humOK  = (hum >= 40.0 &amp;&amp; hum &lt;= 60.0);\r\n\r\n  if (temp &lt; 22.0) {\r\n    comfortStatus = \"TOO COLD!\";\r\n    isAlarm = true;\r\n  } else if (temp > 27.0) {\r\n    comfortStatus = \"TOO HOT!\";\r\n    isAlarm = true;\r\n  } else if (hum &lt; 40.0) {\r\n    comfortStatus = \"AIR TOO DRY!\";\r\n    isAlarm = true;\r\n  } else if (hum > 60.0) {\r\n    comfortStatus = \"AIR TOO HUMID!\";\r\n    isAlarm = true;\r\n  } else {\r\n    comfortStatus = \"PERFECT COMFORT\";\r\n    isAlarm = false;\r\n  }\r\n\r\n  \/\/ 2. LOGIKA INDIKATOR LED &amp; BUZZER (SUHU\/KELEMBAPAN)\r\n  if (isAlarm) {\r\n    if (temp > 27.0) {\r\n      tone(BUZZER_PIN, 1000, 100); \/\/ Beep intermiten jika terlalu panas\r\n    } else {\r\n      noTone(BUZZER_PIN);\r\n    }\r\n    Blynk.logEvent(\"room_warning\", \"Kamar Bayi Tidak Ideal! Status: \" + comfortStatus);\r\n  } else {\r\n    noTone(BUZZER_PIN);\r\n  }\r\n\r\n  \/\/ 3. LOGIKA LAMPU TIDUR \/ RGB NIGHT LIGHT (LDR &amp; KONTROL HP)\r\n  String lightStatus = \"\";\r\n  bool turnOnNightLight = false;\r\n\r\n  if (nightLightMode == 1) {\r\n    turnOnNightLight = false;\r\n    lightStatus = \"MANUAL OFF\";\r\n  } else if (nightLightMode == 2) {\r\n    turnOnNightLight = true;\r\n    lightStatus = \"MANUAL ON\";\r\n  } else {\r\n    \/\/ Mode Auto (LDR)\r\n    if (lux &lt; 30.0) { \/\/ Gelap\r\n      turnOnNightLight = true;\r\n      lightStatus = \"AUTO NIGHT LIGHT\";\r\n    } else {\r\n      turnOnNightLight = false;\r\n      lightStatus = \"DAYLIGHT (OFF)\";\r\n    }\r\n  }\r\n\r\n  \/\/ Output Warna RGB\r\n  if (turnOnNightLight) {\r\n    \/\/ Lampu Tidur Warm\/Kuning (Merah + Hijau)\r\n    setRGB(true, true, false);\r\n  } else {\r\n    if (isAlarm) {\r\n      if (temp &lt; 22.0) setRGB(false, false, true); \/\/ Biru\r\n      else setRGB(true, false, false);             \/\/ Merah\r\n    } else {\r\n      setRGB(false, true, false);                  \/\/ Hijau Ideal\r\n    }\r\n  }\r\n\r\n  \/\/ 4. UPDATE DATA KE BLYNK IOT\r\n  Blynk.virtualWrite(V0, temp);\r\n  Blynk.virtualWrite(V1, hum);\r\n  Blynk.virtualWrite(V2, comfortStatus);\r\n  Blynk.virtualWrite(V3, isAlarm ? 255 : 0);\r\n  Blynk.virtualWrite(V4, lightStatus + \" (\" + String(lux, 0) + \" Lux)\");\r\n\r\n  \/\/ 5. UPDATE DISPLAY LCD 16x2\r\n  lcd.setCursor(0, 0);\r\n  lcd.print(\"T:\"); lcd.print(temp, 1); lcd.print(\"C H:\"); lcd.print(hum, 0); lcd.print(\"%   \");\r\n\r\n  lcd.setCursor(0, 1);\r\n  lcd.print(comfortStatus); lcd.print(\"        \");\r\n}\r\n\r\nvoid setup() {\r\n  Serial.begin(115200);\r\n\r\n  pinMode(LED_RED, OUTPUT);\r\n  pinMode(LED_GREEN, OUTPUT);\r\n  pinMode(LED_BLUE, OUTPUT);\r\n  pinMode(BUZZER_PIN, OUTPUT);\r\n  pinMode(LDR_PIN, INPUT);\r\n\r\n  dht.begin();\r\n  lcd.init();\r\n  lcd.backlight();\r\n\r\n  lcd.print(\"Smart Baby Room\");\r\n  lcd.setCursor(0, 1);\r\n  lcd.print(\"Dual Comfort System\");\r\n  delay(1500);\r\n\r\n  Blynk.begin(auth, ssid, pass);\r\n  lcd.clear();\r\n\r\n  timer.setInterval(2000L, checkBabyRoom);\r\n}\r\n\r\nvoid loop() {\r\n  Blynk.run();\r\n  timer.run();\r\n}<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.youtube.com\/watch?v=0a8kZ7a5d1E&amp;lc=UgyM70AKB7ktyoc3N-Z4AaABAg\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"576\" src=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11-1024x576.png\" alt=\"\" class=\"wp-image-526\" srcset=\"https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11-1024x576.png 1024w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11-300x169.png 300w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11-768x432.png 768w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11-1536x864.png 1536w, https:\/\/kuliahelektro.org\/wp-content\/uploads\/2026\/10\/image-11.png 1919w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p class=\"has-text-align-center\"><strong>Video 1. Video tutorial pembuatan<\/strong><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">TAG:<\/h1>\n\n\n\n<p class=\"has-text-align-left\">smart baby room esp32, monitor kamar bayi iot, pengontrol suhu kamar bayi, dht22 esp32 blynk, sensor ldr lampu tidur, blynk iot baby monitor, simulasi wokwi esp32, tutorial esp32 blynk, smart nursery iot, pemantau suhu kamar anak, lampu tidur otomatis ldr, rgb led indicator esp32, lcd 16&#215;2 i2c esp32, alarm buzzer baby room, blynk logevent room warning, dual comfort system esp32, tutorial blynk iot esp32, library dht sensor esp32, library liquidcrystal i2c, gpio 15 dht22 esp32, gpio 34 ldr esp32, gpio 4 2 16 rgb led, gpio 13 buzzer esp32, proyek iot esp32 kesehatan, tutorial wokwi indonesia, simulasi iot kamar bayi, pemantauan bayi jarak jauh, blynk iot app baby room, datastream blynk dht22 ldr, virtual pin blynk baby monitor, smart home iot esp32, proyek teknik elektro iot, mekatronika kesehatan keluarga, tugas akhir iot baby room, skripsi iot smart nursery, ide proyek esp32 iot, skematik baby room esp32, diagram rangkaian dht22 rgb lcd, source code monitor kamar bayi, program arduino blynk baby, simulasi iot tanpa hardware, platform simulasi wokwi, wokwi esp32 smart baby room, blynk auth token esp32, pengaman kamar bayi berbasis iot, telemetry data dht22 ldr, proyek sains iot elektro, portofolio iot esp32, praktikum mikrokontroler esp32, modul esp32 wroom 32, pinout esp32 dht22 ldr rgb, gpio esp32 sensor lcd, indikator rgb blynk, grafik suhu kelembapan blynk, smart nursery esp32, efisiensi kenyamanan kamar tidur, panduan iot baby room esp32, belajar mikrokontroler online, simulator komponen elektronik, wokwi custom chip esp32, blynk iot platform nursery, internet of things indonesia, iot smk elektro, iot universitas elektro, prototipe kamar bayi pintar, alat pengontrol suhu kelembapan bayi, iot smart home health, esp32 arduino ide blynk, tutorial iot pemula, proyek elektro smart nursery, panduan lengkap wokwi blynk, sensor dht22 suhu kelembapan, sistem alarm kamar bayi, logika dual comfort dht22, notifikasi blynk logevent, sistem mikroklimat kamar tidur, otomatisasi rumah tangga pintar, proyek mekatronika elektro, simulasi hardware smart nursery, sistem kamar bayi esp32, proyek iot populer, kodingan baby monitor otomatis, sensor dht22 digital esp32, rangkaian rgb led dan lcd, tutorial mikrokontroler iot, wawasan iot teknik elektro, aplikasi iot smart home health, baby room cerdas esp32, koding logika comfort status, pemantauan kondisi bayi real time, iot nursery management system<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pada bagian ini akan dibahas pembuatan sistem pemantau kenyamanan kamar bayi pintar (Smart Baby Room Monitor) berbasis mikrokontroler ESP32, sensor suhu dan kelembapan DHT22, sensor intensitas cahaya LDR, lampu indikator LED RGB, buzzer alarm, layar LCD 16&#215;2 I2C, serta platform Blynk IoT pada software simulasi WOKWI. Skematik rangkaian ditunjukkan pada Gambar 1, program Arduino pada Kode 1, dan video pembuatan&#8230;<\/p>\n","protected":false},"author":3,"featured_media":526,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5],"tags":[],"_links":{"self":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/524"}],"collection":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=524"}],"version-history":[{"count":1,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/524\/revisions"}],"predecessor-version":[{"id":527,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/posts\/524\/revisions\/527"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=\/wp\/v2\/media\/526"}],"wp:attachment":[{"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=524"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=524"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kuliahelektro.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=524"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}