ESP-NOW is a connectionless communication protocol developed by Espressif for wireless data communication between ESP boards. It allows ESP boards like ESP8266, ESP32, ESP32-C, and ESP32-S to communicate directly without a router or Internet connectivity. This enables a private wireless network among ESP devices, eliminating the need for a router, gateway, or Internet access for…
What is ESP-NOW?
ESP-NOW is a connection-less wireless communication protocol by Espressif, a company that developed the popular Wi-Fi development boards ESP8266 and ESP32. This low-power 2.4 GHz wireless communication protocol allows two paired ESP boards to communicate without a router or Wi-Fi. ESP-NOW communicates in small packets of data within a few hundred meters. This connection remains…
How to set-up and build a project using Arduino IoT Cloud
Arduino IoT Cloud, also known as simply Arduino Cloud is a popular Internet-of-Things (IoT) platform for creating, deploying, and managing IoT projects. The platform was launched in 2019 as a Beta version similar to other platforms, such as Blynk. Since then, Arduino Cloud has undergone several upgrades, adding unique features. It’s best known for its…
How to make an IoT-based analog clock using ESP32
In this project, we’ll design an analog display clock using ESP32. The clock is an Internet-of-Things (IoT) device that retrieves the local time from a Network Time Protocol (NPT) server and displays the time (as well as the date) like an analog clock. The display used to build this IoT clock is SSD1306. However,…
How to design an IoT-based digital watch using ESP32
In this project, we’ll design a digital watch as an Internet-of-Thing (IoT) device. It will connect to an online API through a Wi-Fi network. Based on the user’s location, it will display the local date, time, and weather conditions. The watch is built using an ESP32 microcontroller and an SSD1306 OLED display. The Weather API…
How to troubleshoot common ESP32-CAM problems
ESP32-CAM is a compact camera module that combines the popular Wi-Fi development board ESP32 with the OV2640 camera sensor. The camera is part of the ESP32 series of Wi-Fi and Bluetooth-enabled system-on-chip (SoC) devices developed by Espressif Systems. ESP32 is a dual-core 32-bit microcontroller with built-in Bluetooth and Wi-Fi capabilities — based on the Espressif…
How to build a facial recognition system using ESP32-CAM
Facial recognition technology identifies individuals by analyzing and comparing their facial features. It uses biometric patterns and algorithms to map and distinguish a person’s unique characteristics. The technology has become an essential component of many security applications. Facial recognition is commonly used for access control, surveillance, biometric authentication, identity verification, criminal identification, attendance, emergency response,…
How to build a fire alarm with SMS and WhatsApp alerts
Fire alarms are critical in homes and buildings, mitigating fire risks and ensuring safety. These alarms aim to safeguard lives and property, providing a warning and initiating emergency procedures. In this project, we’ll build a fire alarm system using ESP32, a flame sensor, and an MQ2 gas sensor. This device will trigger a buzzer and…
How to build a sign-to-speech converter
Sign language is a system of communication using visual gestures. However, not everyone understands sign language. So, in this project, we’ll build a device that converts hand gestures into speech. What’s required: flex sensors, a DF Mini Player, and a microcontroller that has an analog input and supports serial communication via a universal asynchronous receiver/transmitter…
How to build a portable health monitor
Medical equipment for health monitoring is typically costly, but there is an option. Whether you simply want to be aware of your heart rate or are caring for someone with health conditions that must be monitored, there’s an option that you can build yourself. In this project, we’ll design a portable health monitor that can…
How to build an app-controlled alarm mat
Waking up isn’t always easy, especially when the snooze button is typically only a short reach away. Overcoming the desire to stay in the comfort of our beds often requires an understanding of intrinsic motivation. But we have a solution that requires one simple device — a smart mat. In this project, we’ll design a…
How to design an ESP32 WiFi manager using MicroPython
Nearly all the devices we use today — from smartphones, tablets, wearables, and even many of our appliances — connect to the Internet via a home (or office) WiFi network. Internet access to smart devices is typically managed through a web interface or mobile app. Similarly, when we’re out and about, we’ll access WiFi for…
How to build a portable WiFi repeater using ESP32 or ESP8266
Typically, a WiFi network has a range that’s above 45 meters. The signals are strongest near the router. The further away you move, the weaker the signal. The same is true of thick walls or additional floors in a home or building. The WiFi signals could be completely lost on other floors of a premise. …
How to build a WhatsApp-notifying home security system
A security alarm detects unauthorized entry into a home or building. In the past, these security devices simply triggered a loud siren when an intrusion was detected. As technology advanced, the systems were equipped with GSM modems to send an SMS alert to the home or building owner whenever an intrusion was detected. One drawback…
How to use MicroPython’s watchdog timer in ESP8266 and ESP32
A watchdog timer is an internal or external timer that monitors a microcontroller’s program to ensure the application remains operative without failure. It serves as a safety feature in critical applications by monitoring the microcontroller’s output signal. The watchdog can operate in two modes: Timeout mode – the timer establishes the microcontroller is not working properly if it…
MicroPython: How to program a real-time clock (RTC) in ESP8266 and ESP32
A real-time clock (RTC) is a computer clock to keep time and is one of the more popular microcontroller features. Microcontrollers without a built-in RTC require an external RTC chip for keeping time. Typically, mid-segment to high-end microcontrollers have a built-in RTC because time-keeping is necessary for several embedded applications. RTCs count seconds, minutes, hours,…
Getting started with ESP8266 and ESP32 on Arduino IDE
ESP8266 and ESP32 are popular WiFi development solutions that can be programmed in several ways using different programming languages. Common languages include MicroPython, C, JavaScript, and LUA script. The choice of embedded firmware and software tools makes it possible to program ESP8266 and ESP32 in different languages. The versatility and flexibility to program ESP boards…
How to play a video on an SSD1306 OLED
Small organic light-emitting diode (OLED) displays are commonly used in embedded devices. This is because OLEDs generally cost the same as character LCDs but feature a better user interface (UI) and user experience (UX). Typically, embedded OLED screens are used to display textual messages, but what about videos? For example, is it possible to playback…
How to send messages to WhatsApp or Telegram from ESP32
In many Internet-of-Things (IoT) applications, it’s necessary to send alerts to the user in the form of messages. Typically, text messages are sent via WiFi or SMS. But sometimes text messaging is unavailable between devices. So, what if these messages could be sent via the IoT to a user’s WhatsApp or Telegram account instead? In…
How to send MQTT data from ESP32/ESP8266 to Raspberry Pi
It’s possible to set up a do-it-yourself home automation system with an ESP board and Raspberry Pi (RPi). Both offer Wi-Fi connectivity and can easily communicate via a home network. However, a communication protocol is required for wireless communication for devices operating in a wider network. Since conventional internet protocols like HTTP are typically too…