ESPGeiger

☢️ ESP8266 / ESP32 Firmware for collecting and reporting statistics from Geiger counters

Internet of Things (IoT)C++GPL-3.0

Abstract

ESPGeiger is an open-source Internet of Things (IoT) project. ☢️ ESP8266 / ESP32 Firmware for collecting and reporting statistics from Geiger counters. ESPGeiger is an open-source project that turns an ESP8266 or ESP32 into an IoT-connected Geiger counter. It collects, calculates and reports radiation levels from a range of Geiger counters with pulse or serial outputs. It is built using C++, ESP32, ESP8266, Arduino, MQTT. The complete source code is publicly available on GitHub under the GNU General Public License v3.0, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.

1. Introduction

ESPGeiger is an open-source project that turns an ESP8266 or ESP32 into an IoT-connected Geiger counter. It collects, calculates and reports radiation levels from a range of Geiger counters with pulse or serial outputs.

The easiest way to install ESPGeiger is the Web Installer - it runs in your Chrome or Edge browser and flashes your device over USB. No code editor or compiler required.

2. Objective

☢️ ESP8266 / ESP32 Firmware for collecting and reporting statistics from Geiger counters

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

4. Technology Stack

C++ESP32ESP8266ArduinoMQTT

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/steadramon/ESPGeiger.git
cd ESPGeiger
  1. After flashing, connect to the new Wi-Fi network (ESPGeiger-XXXXXX)
  2. A captive portal should pop up - if not, browse to http://192.168.4.1/
  3. Select your home Wi-Fi network and enter the password
  4. Once connected, browse to http://ESPGeiger-XXXXXX.local or the assigned IP
  5. Configure MQTT, Radmon, GMCMAP, ThingSpeak and other outputs from the Config page

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 steadramon and published on GitHub under the GNU General Public License v3.0. 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