<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Harshan.M</title>
    <description>The latest articles on DEV Community by Harshan.M (@harshan_shadow).</description>
    <link>https://dev.to/harshan_shadow</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4171243%2Fc20d124f-11c2-4ddc-ae64-0aa4f20ba521.jpg</url>
      <title>DEV Community: Harshan.M</title>
      <link>https://dev.to/harshan_shadow</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/harshan_shadow"/>
    <language>en</language>
    <item>
      <title>IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection</title>
      <dc:creator>Harshan.M</dc:creator>
      <pubDate>Wed, 14 Oct 2026 12:59:04 +0000</pubDate>
      <link>https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-5d5b</link>
      <guid>https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-5d5b</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-story__hidden-navigation-link"&gt;IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/harshan_shadow" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4171243%2Fc20d124f-11c2-4ddc-ae64-0aa4f20ba521.jpg" alt="harshan_shadow profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/harshan_shadow" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Harshan.M
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Harshan.M
                
                
              
              &lt;div id="story-author-preview-content-4850150" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/harshan_shadow" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4171243%2Fc20d124f-11c2-4ddc-ae64-0aa4f20ba521.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Harshan.M&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 14&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" id="article-link-4850150"&gt;
          IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hardware"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hardware&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/iot"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;iot&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/tutorial"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;tutorial&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;2&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              2&lt;span class="hidden s:inline"&gt;&amp;nbsp;comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>arduino</category>
      <category>esp8266</category>
      <category>hardware</category>
      <category>iot</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Harshan.M</dc:creator>
      <pubDate>Wed, 14 Oct 2026 12:58:12 +0000</pubDate>
      <link>https://dev.to/harshan_shadow/-2ki3</link>
      <guid>https://dev.to/harshan_shadow/-2ki3</guid>
      <description>&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-story__hidden-navigation-link"&gt;IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/harshan_shadow" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4171243%2Fc20d124f-11c2-4ddc-ae64-0aa4f20ba521.jpg" alt="harshan_shadow profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/harshan_shadow" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Harshan.M
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Harshan.M
                
                
              
              &lt;div id="story-author-preview-content-4850150" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/harshan_shadow" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4171243%2Fc20d124f-11c2-4ddc-ae64-0aa4f20ba521.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Harshan.M&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Oct 14&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" id="article-link-4850150"&gt;
          IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/hardware"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;hardware&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/iot"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;iot&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/tutorial"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;tutorial&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;2&lt;span class="hidden s:inline"&gt;&amp;nbsp;reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              

              2&lt;span class="hidden s:inline"&gt;&amp;nbsp;comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;


</description>
      <category>hardware</category>
      <category>iot</category>
    </item>
    <item>
      <title>IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection</title>
      <dc:creator>Harshan.M</dc:creator>
      <pubDate>Wed, 14 Oct 2026 12:45:04 +0000</pubDate>
      <link>https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1</link>
      <guid>https://dev.to/harshan_shadow/ir-sentinel-kiwisiot-esp8266-based-real-time-object-detection-4ff1</guid>
      <description>&lt;h1&gt;
  
  
  IR Sentinel KiwisIoT: ESP8266-Based Real-Time Object Detection
&lt;/h1&gt;

&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;Hello Dev Community! 👋&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;IR Sentinel KiwisIoT&lt;/strong&gt;, a simple IoT-based object detection project using an ESP8266 NodeMCU, an IR sensor module, and the KiwisIoT platform.&lt;/p&gt;

&lt;p&gt;The system detects nearby objects using an infrared sensor, processes the sensor's digital output through the ESP8266, and sends the object status to a KiwisIoT dashboard over Wi-Fi.&lt;/p&gt;

&lt;p&gt;This project helped me explore sensor interfacing, embedded programming, wireless communication, and IoT dashboard monitoring.&lt;/p&gt;

&lt;h2&gt;
  
  
  🛠️ Components Used
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;ESP8266 NodeMCU development board&lt;/li&gt;
&lt;li&gt;IR obstacle detection sensor module&lt;/li&gt;
&lt;li&gt;Jumper wires&lt;/li&gt;
&lt;li&gt;USB cable for power and programming&lt;/li&gt;
&lt;li&gt;Arduino IDE&lt;/li&gt;
&lt;li&gt;KiwisIoT account and dashboard&lt;/li&gt;
&lt;li&gt;Wi-Fi connection&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  🔌 Circuit Diagram and Connection Explanation
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F13fi4k6oewln05wtdzuy.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F13fi4k6oewln05wtdzuy.jpeg" alt=" " width="800" height="731"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The IR sensor module is connected to the ESP8266 NodeMCU using three main connections:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;IR sensor pin&lt;/th&gt;
&lt;th&gt;ESP8266 connection&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VCC&lt;/td&gt;
&lt;td&gt;Suitable power pin&lt;/td&gt;
&lt;td&gt;Powers the sensor&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;td&gt;Common ground&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DO&lt;/td&gt;
&lt;td&gt;D7 (GPIO13)&lt;/td&gt;
&lt;td&gt;Digital detection signal&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AO&lt;/td&gt;
&lt;td&gt;Not connected&lt;/td&gt;
&lt;td&gt;Analog output is unused&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The digital output pin sends a signal to the ESP8266 whenever the sensor detects an object according to its sensitivity setting.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; The circuit illustration shows D6 in its simplified connection table, while the code below uses D7. For this code, connect DO to D7. If your actual hardware uses D6, change the pin definition in the code to D6. Also, verify the sensor's voltage requirements and ensure its output is safe for the ESP8266's 3.3 V GPIO.&lt;/p&gt;

&lt;h2&gt;
  
  
  ⚙️ How It Works
&lt;/h2&gt;

&lt;p&gt;The project follows these steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The IR sensor monitors the area in front of it.&lt;/li&gt;
&lt;li&gt;The ESP8266 reads the sensor's digital output.&lt;/li&gt;
&lt;li&gt;The program converts the signal into DETECTED or NOT DETECTED.&lt;/li&gt;
&lt;li&gt;The ESP8266 sends the status to KiwisIoT through Wi-Fi.&lt;/li&gt;
&lt;li&gt;The dashboard displays the received object detection status.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The code checks the sensor periodically and sends an update approximately every two seconds.&lt;/p&gt;

&lt;h2&gt;
  
  
  💻 Arduino Code
&lt;/h2&gt;

&lt;p&gt;The following Arduino sketch uses the ESP8266 NodeMCU, the IR sensor's digital output, and the KiwisIoT library.&lt;/p&gt;

&lt;p&gt;Before uploading, replace the Wi-Fi and dashboard placeholders with your own settings. Never publish your Wi-Fi password in a public post.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight cpp"&gt;&lt;code&gt;&lt;span class="cm"&gt;/*
 * Project: IR Sentinel KiwisIoT
 * Project ID: KIWISIOT-002
 * Board: ESP8266 NodeMCU
 * Sensor: IR Obstacle Detection Module
 */&lt;/span&gt;

&lt;span class="cp"&gt;#include&lt;/span&gt; &lt;span class="cpf"&gt;&amp;lt;ESP8266WiFi.h&amp;gt;&lt;/span&gt;&lt;span class="cp"&gt;
#include&lt;/span&gt; &lt;span class="cpf"&gt;&amp;lt;KiwisIoT.h&amp;gt;&lt;/span&gt;&lt;span class="cp"&gt;
&lt;/span&gt;
&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="kt"&gt;char&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;ssid&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"YOUR_WIFI_NAME"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="kt"&gt;char&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;pass&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"YOUR_WIFI_PASSWORD"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;const&lt;/span&gt; &lt;span class="kt"&gt;char&lt;/span&gt;&lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="n"&gt;topic&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"YOUR_DASHBOARD_TOPIC_ID"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="cp"&gt;#define IR_PIN D7
&lt;/span&gt;
&lt;span class="n"&gt;KiwisIoT&lt;/span&gt; &lt;span class="nf"&gt;kiwisiot&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;ssid&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;pass&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;topic&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;sendObjectStatus&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="kt"&gt;int&lt;/span&gt; &lt;span class="n"&gt;irState&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;digitalRead&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;IR_PIN&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="n"&gt;String&lt;/span&gt; &lt;span class="n"&gt;objectStatus&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="c1"&gt;// Many IR modules output LOW when an object is detected.&lt;/span&gt;
  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;irState&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="n"&gt;LOW&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;objectStatus&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"DETECTED"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;else&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;objectStatus&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"NOT DETECTED"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="se"&gt;\\&lt;/span&gt;&lt;span class="s"&gt;n--- IR SENTINEL MONITORING ---"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"IR Sensor Value: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;irState&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;print&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Object Status: "&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;objectStatus&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="c1"&gt;// Send the status to KiwisIoT Channel 0.&lt;/span&gt;
  &lt;span class="n"&gt;kiwisiot&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;objectStatus&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Status sent to KiwisIoT"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;setup&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;115200&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;pinMode&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;IR_PIN&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;INPUT&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"&lt;/span&gt;&lt;span class="se"&gt;\\&lt;/span&gt;&lt;span class="s"&gt;nIR Sentinel KiwisIoT"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="n"&gt;Serial&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;println&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"Initializing KiwisIoT..."&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="n"&gt;kiwisiot&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;begin&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="kt"&gt;void&lt;/span&gt; &lt;span class="nf"&gt;loop&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="n"&gt;kiwisiot&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;run&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

  &lt;span class="k"&gt;static&lt;/span&gt; &lt;span class="kt"&gt;unsigned&lt;/span&gt; &lt;span class="kt"&gt;long&lt;/span&gt; &lt;span class="n"&gt;lastSend&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

  &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;millis&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;lastSend&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;=&lt;/span&gt; &lt;span class="mi"&gt;2000&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="n"&gt;lastSend&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;millis&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="n"&gt;sendObjectStatus&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
  &lt;span class="p"&gt;}&lt;/span&gt;

  &lt;span class="n"&gt;delay&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  ☁️ KiwisIoT Dashboard Configuration
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1t82g8441sxed1w68ewg.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1t82g8441sxed1w68ewg.jpeg" alt=" " width="800" height="380"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I configured a KiwisIoT dashboard to display the object detection status received from the ESP8266. The program sends the status string to Channel 0 using the KiwisIoT library.&lt;/p&gt;

&lt;p&gt;The dashboard screenshot shows &lt;strong&gt;DETECTED&lt;/strong&gt; in green. This demonstrates the status displayed by the dashboard during my test.&lt;/p&gt;

&lt;p&gt;To reproduce the setup:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Create or open your KiwisIoT dashboard.&lt;/li&gt;
&lt;li&gt;Configure the topic ID used by your ESP8266 program.&lt;/li&gt;
&lt;li&gt;Add a suitable text or label widget.&lt;/li&gt;
&lt;li&gt;Configure the widget to display the data from Channel 0.&lt;/li&gt;
&lt;li&gt;Upload the program and verify that the displayed status changes when an object enters or leaves the sensor's detection range.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The exact dashboard configuration may depend on the KiwisIoT interface and widget settings.&lt;/p&gt;

&lt;h2&gt;
  
  
  🧪 Live Test Result
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8onsvb7u9x1ld2g6wzcu.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F8onsvb7u9x1ld2g6wzcu.jpeg" alt=" " width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I connected the IR sensor module to the ESP8266 NodeMCU and powered the board through USB. The sensor's digital output was used to determine the detection status.&lt;/p&gt;

&lt;p&gt;The KiwisIoT dashboard screenshot captured during testing displays &lt;strong&gt;DETECTED&lt;/strong&gt; in green.&lt;/p&gt;

&lt;p&gt;Expected observations:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Object detected:&lt;/strong&gt; DETECTED&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No object detected:&lt;/strong&gt; NOT DETECTED&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Wi-Fi unavailable:&lt;/strong&gt; New remote dashboard updates may stop&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The results depend on sensor sensitivity, object distance and surface, sensor output logic, and Wi-Fi connectivity.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔄 System Architecture
&lt;/h2&gt;

&lt;p&gt;IR Sensor → ESP8266 NodeMCU → Wi-Fi → KiwisIoT Dashboard&lt;/p&gt;

&lt;p&gt;The IR sensor provides the input, the ESP8266 processes the signal, and KiwisIoT displays the received status for remote monitoring.&lt;/p&gt;

&lt;h2&gt;
  
  
  🌍 Possible Applications
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Basic object presence monitoring&lt;/li&gt;
&lt;li&gt;Educational IoT experiments&lt;/li&gt;
&lt;li&gt;Proximity detection demonstrations&lt;/li&gt;
&lt;li&gt;Entry or passage monitoring prototypes&lt;/li&gt;
&lt;li&gt;Learning embedded systems and wireless communication&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is an educational project and is not intended to replace safety-certified detection systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  🚀 Future Improvements
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Add an LED or buzzer alert.&lt;/li&gt;
&lt;li&gt;Send notifications when an object is detected.&lt;/li&gt;
&lt;li&gt;Record detection events over time.&lt;/li&gt;
&lt;li&gt;Add multiple sensors for monitoring different locations.&lt;/li&gt;
&lt;li&gt;Build a compact enclosure for the electronics.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  📚 References
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;KiwisIoT Projects Repository: &lt;a href="https://github.com/Kiwistron/KiwisIoT-Projects" rel="noopener noreferrer"&gt;https://github.com/Kiwistron/KiwisIoT-Projects&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;ESP8266 Arduino Core: &lt;a href="https://github.com/esp8266/Arduino" rel="noopener noreferrer"&gt;https://github.com/esp8266/Arduino&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;ESP8266 Documentation: &lt;a href="https://arduino-esp8266.readthedocs.io/" rel="noopener noreferrer"&gt;https://arduino-esp8266.readthedocs.io/&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Arduino IDE: &lt;a href="https://www.arduino.cc/en/software" rel="noopener noreferrer"&gt;https://www.arduino.cc/en/software&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;IR Sentinel KiwisIoT demonstrates how a low-cost IR sensor and ESP8266 NodeMCU can be combined with an IoT dashboard for remote object detection monitoring.&lt;/p&gt;

&lt;p&gt;Building this project provided practical experience with sensor interfacing, Arduino programming, Wi-Fi communication, and dashboard integration.&lt;/p&gt;

&lt;p&gt;Thanks for reading! Feel free to share your suggestions and ideas for improving this project. 🚀&lt;/p&gt;

</description>
      <category>hardware</category>
      <category>iot</category>
      <category>programming</category>
      <category>tutorial</category>
    </item>
    <item>
      <title>GlowGuard– KiwisIoT Smart Light Monitoring System</title>
      <dc:creator>Harshan.M</dc:creator>
      <pubDate>Fri, 09 Oct 2026 12:42:08 +0000</pubDate>
      <link>https://dev.to/harshan_shadow/glowguard-kiwisiot-smart-light-monitoring-system-441l</link>
      <guid>https://dev.to/harshan_shadow/glowguard-kiwisiot-smart-light-monitoring-system-441l</guid>
      <description>&lt;p&gt;GlowGuard: Building an IoT-Based Smart Light Monitoring System&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Introduction&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Hi everyone! I am a CSE student exploring IoT and hardware development. I built GlowGuard, a simple smart light monitoring system that detects surrounding light intensity and displays the result through an IoT dashboard.&lt;/p&gt;

&lt;h2&gt;
  
  
  Components Used
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;ESP8266 NodeMCU&lt;/li&gt;
&lt;li&gt;LDR Sensor Module&lt;/li&gt;
&lt;li&gt;Jumper Wires&lt;/li&gt;
&lt;li&gt;USB Cable&lt;/li&gt;
&lt;li&gt;Wi-Fi Connection&lt;/li&gt;
&lt;li&gt;KiwisIoT Platform&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How It Works
&lt;/h2&gt;

&lt;p&gt;The LDR sensor detects the surrounding light intensity. The ESP8266 reads the sensor value, processes it, and sends the data through Wi-Fi to the KiwisIoT platform.&lt;/p&gt;

&lt;p&gt;The system classifies the light condition as BRIGHT, MEDIUM, or DARK.&lt;/p&gt;

&lt;h2&gt;
  
  
  Circuit Diagram and Connections
&lt;/h2&gt;

&lt;p&gt;GlowGuard uses an LDR sensor module connected to an ESP8266 NodeMCU. The sensor detects surrounding light intensity, and the ESP8266 processes the readings before sending the data to KiwisIoT through Wi-Fi.&lt;/p&gt;

&lt;h3&gt;
  
  
  Circuit Connections
&lt;/h3&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;LDR Sensor Module&lt;/th&gt;
&lt;th&gt;ESP8266 NodeMCU&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;VCC&lt;/td&gt;
&lt;td&gt;3.3V&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;td&gt;GND&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AO&lt;/td&gt;
&lt;td&gt;A0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DO&lt;/td&gt;
&lt;td&gt;Not connected&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;h3&gt;
  
  
  How the Circuit Works
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;The LDR sensor detects the surrounding light.&lt;/li&gt;
&lt;li&gt;The analog output (AO) sends the sensor reading to the ESP8266 A0 pin.&lt;/li&gt;
&lt;li&gt;The ESP8266 processes the reading and classifies the light condition as BRIGHT, MEDIUM, or DARK.&lt;/li&gt;
&lt;li&gt;The ESP8266 sends the light level and status to KiwisIoT through Wi-Fi.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  System Flow
&lt;/h3&gt;

&lt;p&gt;LDR Sensor → ESP8266 NodeMCU → Wi-Fi → KiwisIoT Dashboard&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; Check that your particular NodeMCU board and LDR module are compatible with the stated voltage and analog-input range before powering the circuit.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4m6smibczjvp79xtdyjy.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4m6smibczjvp79xtdyjy.jpeg" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Real-Time Working
&lt;/h2&gt;

&lt;p&gt;GlowGuard continuously monitors the surrounding light using an LDR sensor connected to the ESP8266 NodeMCU. The ESP8266 processes the sensor readings and sends the light level and status to the KiwisIoT platform through Wi-Fi.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flybx251bqa3noprhn7sr.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flybx251bqa3noprhn7sr.jpeg" alt=" " width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Hardware Setup
&lt;/h3&gt;

&lt;p&gt;The LDR sensor is connected to the ESP8266 NodeMCU to detect changes in the surrounding light intensity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Image caption:&lt;/strong&gt; GlowGuard hardware setup using ESP8266 NodeMCU and an LDR sensor.&lt;/p&gt;

&lt;h3&gt;
  
  
  KiwisIoT Dashboard Output
&lt;/h3&gt;

&lt;p&gt;The KiwisIoT dashboard displays the light level and its corresponding status. The system classifies the detected condition as BRIGHT, MEDIUM, or DARK.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example result:&lt;/strong&gt; Light Level: 607 | Status: MEDIUM&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Image caption:&lt;/strong&gt; Live GlowGuard sensor readings displayed on the KiwisIoT dashboard.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5hzilxiw740qspc7xksc.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5hzilxiw740qspc7xksc.jpeg" alt=" " width="800" height="386"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Result
&lt;/h3&gt;

&lt;p&gt;GlowGuard successfully demonstrates IoT-based light monitoring by collecting sensor readings, processing the data, and displaying the results through an online dashboard.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;p&gt;Through this project, I explored sensor interfacing, analog readings, Wi-Fi communication, Arduino programming, and IoT dashboard monitoring.&lt;/p&gt;

&lt;h2&gt;
  
  
  Future Improvements
&lt;/h2&gt;

&lt;p&gt;I would like to extend GlowGuard with automatic light control, historical data graphs, notifications, and a protective enclosure.&lt;/p&gt;

&lt;h2&gt;
  
  
  References
&lt;/h2&gt;

&lt;p&gt;KiwisIoT Projects:&lt;br&gt;
&lt;a href="https://github.com/Kiwistron/KiwisIoT-Projects" rel="noopener noreferrer"&gt;https://github.com/Kiwistron/KiwisIoT-Projects&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ESP8266 Arduino Core:&lt;br&gt;
&lt;a href="https://github.com/esp8266/Arduino" rel="noopener noreferrer"&gt;https://github.com/esp8266/Arduino&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Thanks for reading! I welcome your suggestions and feedback to improve this project.&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>iot</category>
      <category>kiwisiot</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
