ESP Diagnostic Tool

SImple diagnostics for ESP8266 and ESP32 devices

Internet of Things (IoT)C++MIT

Abstract

ESP Diagnostic Tool is an open-source Internet of Things (IoT) project. SImple diagnostics for ESP8266 and ESP32 devices. This is a small set of diagnostics and debugging tools for the ESP8266. It's meant to help solve problems around Wifi and I2C. It is built using C++, ESP8266, ESP32, Arduino. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.

1. Introduction

This is a small set of diagnostics and debugging tools for the ESP8266. It's meant to help solve problems around Wifi and I2C.

The utility includes Wifi and I2C scanners and can report basic information about the board you're using.

This shows information about the ESP SDK and Arduino core that the utility was built with as well as information about the CPU it's running on.

2. Objective

SImple diagnostics for ESP8266 and ESP32 devices

This project demonstrates how C++, ESP8266, ESP32 can be applied to a real-world Internet of Things (IoT) problem.

4. Technology Stack

C++ESP8266ESP32Arduino

5. System Requirements

General requirements for this technology stack — check the README for exact versions.

  • Arduino IDE / PlatformIO or a C++ compiler (g++)
  • Target board (e.g. Arduino, ESP32) where applicable
  • Git (to clone the repository)

6. Installation & Setup

git clone https://github.com/romkey/ESP-Diagnostic-Tool.git
cd ESP-Diagnostic-Tool
  1. Show ESP information
  2. Enter wifi credentials
  3. Connect to wifi network
  4. Current wifi info
  5. Scan wifi networks
  6. Scan I2C devices
  7. Clone the repository
  8. If the board you want to run on isn't currently in platformio.ini, add it.
Hello World
1. Show ESP information
2. Enter wifi credentials
3. Connect to wifi network
4. Current wifi info
5. Scan wifi networks
6. Scan I2C devices
0. Restart
git clone git@github.com:romkey/ESP-Diagnostic-Tool.git
platformio run -e YOUR_BOARD_ID -t upload
platformio device monitor

Full setup instructions are in the project README.

7. Future Enhancements

Suggested extensions you can add to make this your own project.

  • Add a mobile dashboard using Blynk or Firebase
  • Store readings in a cloud database for history charts
  • Add alerts via SMS / Telegram when thresholds are crossed

8. Viva / Review Questions

Common questions examiners ask for projects in this domain.

  1. Which microcontroller / board and sensors are used and why?
  2. How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
  3. Where is the sensor data stored and visualised?
  4. How is power consumption managed?
  5. How would you secure the device and its communication?

9. Source Code & License

This project is developed by romkey and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.

Want to build this as your internship project?

Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.

Apply for Internet of Things (IoT) Internship