HomeEngineering Projects For YouThis IoT Project Tracks Nuclear Radiation Live

This IoT Project Tracks Nuclear Radiation Live

Nuclear leakage detection and radiation monitoring have become critical as the world generates increasing amounts of nuclear waste. Almost every country produces nuclear waste, whether from power generation or defense applications. If this waste contaminates food sources or ocean water, it can have devastating consequences for marine life, humans, animals, and the environment.

Continuous monitoring of radiation levels is essential to prevent such risks. A portable, wireless IoT-based nuclear radiation monitoring system can help measure radiation levels in real time and provide instant alerts in case of abnormal exposure.

Earlier, we designed a nuclear radiation monitoring device that worked on a local network. However, such systems are not suitable for long-range or remote deployment. In real-world scenarios, radiation monitoring requires long-distance, remote-access capabilities so that users can safely track radiation levels without being physically present in hazardous areas.

- Advertisement -

To address this challenge, we use the IndusBoard Coin, a compact and portable development board with built-in Wi-Fi connectivity. This device connects to a network (such as JioFiber) to deliver real-time radiation data on a local web interface. It also sends data to cloud platforms like ThingSpeak, enabling remote monitoring from anywhere in the world.

Whether deployed in a laboratory or near a high-risk zone, this IoT-based radiation detection system ensures continuous tracking and instant updates on radiation levels. In the following sections, we will explore how to set up and use this system effectively.

- Advertisement -
Nuclear leakage detection and radiation monitoring device
Fig 1. Nuclear leakage detection and radiation monitoring device
ThingSpeak showing Nuclear leakage detection and radiation monitoring
Fig 2. ThingSpeak showing Nuclear leakage detection and radiation monitoring
This IoT Project Tracks Nuclear Radiation Live
Fig 3. IoT-based radiation detection system

What’s a Geiger-Müller Tube?

So, the star of our device is this thing called a Geiger-Müller tube, or GM tube—ours is the M4011. Think of it as a tiny glass tube filled with a special gas, like neon or argon, that’s ready to catch radiation. When alpha (α), beta (β), or gamma (γ) rays zip through, they make the gas spark with little electrical pulses.

We count those pulses to get a number called CPM (Counts Per Minute), which tells us how much radiation is around. The M4011 is great because it can detect all three types—alpha, beta, and gamma—though it’s especially sharp with beta and gamma rays.

We use a simple math trick (1 CPM ≈ 5 nSv/h for the M4011) to turn CPM into nanosieverts per hour (nSv/h) and microsieverts per hour (μSv/h). It’s like having a radiation detective that spots leaks or just keeps an eye on normal background levels, whether we’re in a lab or out in the open.

Bill of Materials

ComponentPart number Quantity
IndusBoard CoinCoin V2 1
Muller Tube M4011, J305 1
Power adapter 1A 5V 1
Giger Counter Module DF Robot1

Setting Up ThingSpeak for Remote Nuclear Radiation Monitoring

Before coding the remote monitoring system, we first need to configure ThingSpeak so we can monitor nuclear radiation data from anywhere in the world.

ThingSpeak acts as a cloud platform for storing and visualizing real-time radiation data. Follow these steps to set it up:

ThingSpeak setup for Remote Nuclear Radiation Monitoring
Fig 4. ThingSpeak setup for Remote Nuclear Radiation Monitoring

Step 1: Sign In to ThingSpeak

Go to https://thingspeak.com and log in to your account.

Step 2: Access Your Channel

Navigate to your channel using:
https://thingspeak.com/channels/2990874

This is where your radiation data will be stored and displayed.

Step 3: Configure Data Fields

Ensure your channel includes the following three fields:

  • Field 1: CPM (Counts Per Minute)
  • Field 2: nSv/h (Nanosieverts per Hour)
  • Field 3: μSv/h (Microsieverts per Hour)

If any field is missing, go to Channel Settings and add the required fields.

Step 4: Verify API Keys

API keys allow your IoT device to send and retrieve data from ThingSpeak.

  • Write API Key: EQLZHSO0EMPYBZAY (used to send data)
  • Read API Key: 0PB8EVDPAG7ZJSF4 (used to fetch data later)

You can find these under the API Keys tab. If the keys do not match, regenerate them.

ThingSpeak API Key
Fig 5. ThingSpeak API Key

Step 5: Enable Data Visualization

Enable line graphs for each field to visualize radiation trends over time.

You can also choose to make your channel public or private, depending on your preference.

Why This Setup Matters

This configuration enables your IoT-based nuclear radiation monitoring system to:

  • Send real-time radiation data to the cloud
  • Monitor radiation levels remotely
  • Analyze trends and detect anomalies instantly

Building an IoT Dashboard for Real-Time Nuclear Radiation Monitoring

To design an IoT dashboard for displaying nuclear radiation data along with the deployment location, we need to create code that hosts a webpage showing real-time radiation readings. The system reads data from a Geiger-Müller (GM) tube, calculates radiation levels, and updates the dashboard hosted on the development board.

Step 1: Install the Geiger Counter Library

First, download the DFRobot Geiger counter library.

Copy the folder (DFRobot_Geiger) into the Arduino libraries directory:
Documents → Arduino → libraries

Step 2: Sensor Data Processing and Web UI Integration

Next, we write code to:

  • Read data from the Geiger sensor
  • Convert raw readings into meaningful radiation units
  • Display the data in real time on a web-based dashboard

IoT Dashboard Features

The Arduino code running on the IndusBoard Coin performs the following functions:

  • Connects to Wi-Fi (e.g., JioFiber-4G) in STA mode
  • Sends radiation data to ThingSpeak every 15 seconds
  • Hosts a local webpage with a clean UI (white background and card-based layout)
  • Displays real-time radiation values

If the Geiger sensor is not connected or returns zero readings, the system simulates realistic values for testing:

  • Indoor: 10–30 CPM, 50–150 nSv/h
  • Outdoor: 5–24 CPM, 25–120 nSv/h

These values are calculated using the M4011 conversion factor:

  • 1 CPM ≈ 5 nSv/h

Code Overview: How the System Works

Real-Time Nuclear Radiation Monitoring code
Fig 6. Real-Time Nuclear Radiation Monitoring code

1. Libraries and Configuration

The code includes libraries for:

  • Geiger counter module
  • Wi-Fi connectivity
  • Web server
  • ThingSpeak integration

You must configure the following in the code:

  • WIFI_SSID and WIFI_PASSWORD
  • ThingSpeak Write API Key (required for sending data)

2. System Initialization (setup())

The setup() function:

  • Starts serial communication
  • Initializes the Geiger counter
  • Connects to Wi-Fi
  • Sets Indian Standard Time (IST)
  • Launches the web server

3. Main Execution Loop (loop())

The loop() function:

  • Keeps the web server running continuously
  • Sends data to ThingSpeak every 15 seconds
  • Automatically reconnects to Wi-Fi if disconnected

4. Local Web Dashboard

  • handleRoot() serves the main webpage
    • Displays location, time, and radiation levels using card-style UI
  • handleData() sends JSON data every second to keep the dashboard updated in real time

5. ThingSpeak Integration

The sendToThingSpeak() function:

  • Sends CPM, nSv/h, and μSv/h values to the ThingSpeak cloud
  • Uses HTTP requests for data transmission

Why This Setup Is Important

This IoT-based system enables:

  • Real-time nuclear radiation monitoring
  • Remote data access via cloud platforms
  • Continuous tracking and instant updates
  • Safe monitoring from hazardous environments

Circuit Connection for Geiger Sensor with IndusBoard

The circuit design is very simple. You only need to connect the sensor output pin to any available I/O pin on the IndusBoard, as defined in the code.

You can use any free GPIO pin, but make sure the selected pin number matches the configuration specified in your program.

Geiger Sensor connection with IndusBoard
Fig 7. Neculear rediation counter circuit

Powering the Device and Testing the IoT Radiation Monitoring System

Now power the device using either a battery or a USB adapter.
If you are using a battery, connect it to the 3V pin and GND pin on the board.

It’s time to see the device in action. First, we will test the local webpage dashboard, and then verify that the data is being sent to ThingSpeak for remote monitoring.

Local Webpage Dashboard (STA Mode)

Step 1: Connect to Wi-Fi

Connect your phone or laptop to the Wi-Fi network (e.g., “JioFiber-4G”).

Step 2: Find the IP Address

  • Open the Serial Monitor in Arduino IDE (baud rate: 115200)
  • Look for a message like:
    WiFi connected. IP Address: 192.168.1.100 (may vary)

Step 3: Access the Dashboard

Open a web browser and enter:

  • http://<IP_ADDRESS> (e.g., http://192.168.1.100)
  • Or try: http://radiationmonitor.local (if mDNS is enabled)

Step 4: Dashboard Output (Updates Every Second)

You will see:

  • Location: Lab Room 204, Tech Institute, Mumbai, India
  • Date & Time: Current IST (e.g., Monday, June 16, 2025, 14:33:00)
  • Radiation Levels:
    • Indoor Mode:
      • CPM: 10–30
      • nSv/h: 50–150
      • μSv/h: 0.05–0.15
    • Outdoor Mode:
      • CPM: 5–24
      • nSv/h: 25–120
      • μSv/h: 0.025–0.12

The dashboard features a clean white interface with three card-style sections and a subtle 3D hover effect.

Step 5: Serial Monitor Output

  • Real Sensor Data:
    Sensor reading: CPM=15, nSv/h=75, μSv/h=0.075
  • Simulated Data (if sensor is not connected):
    Sensor reading 0, simulating radiation data...

ThingSpeak Cloud Dashboard (Remote Monitoring)

Step 1: Open ThingSpeak

Visit: https://thingspeak.com/channels/2990874

Step 2: Verify Data Updates

New data should appear every 15 seconds:

  • Field 1: CPM (5–30)
  • Field 2: nSv/h (25–150)
  • Field 3: μSv/h (0.025–0.15)

Use the graphs to analyze radiation trends over time.

Step 3: Serial Monitor Feedback

  • Success Message:
    Data sent to ThingSpeak successfully
  • Error Message:
    Failed to send to ThingSpeak. HTTP code: <code>
    (Note: HTTP code 200 indicates a successful request)
Serial monitor showing Nuclear leakage detection and radiation monitoring
Fig 8. Serial monitor showing Nuclear leakage detection and radiation monitoring

Why This Step Matters

This final setup ensures that your IoT-based nuclear radiation monitoring system:

  • Displays real-time data locally
  • Sends data to the cloud for remote access
  • Provides continuous monitoring and alerts
Ashwini Sinha
Ashwini Sinha
A tech journalist at EFY, with hands-on expertise in electronics DIY. He has an extraordinary passion for AI, IoT, and electronics. Holder of two design records and two times winner of US-China Makers Award.

SHARE YOUR THOUGHTS & COMMENTS

EFY Prime

Unique DIY Projects

Truly Innovative Electronics

Electronics News

Latest DIY Videos

Electronics Components

Electronics Jobs

Calculators For Electronics