Back to Sensors & Actuators Series

Geiger Counter Radiation Sensor: SBM-20 & J305

April 10, 2026 Wasil Zafar 9 min read

Geiger counter deep dive — GM tube physics, radiation counting, dose conversion, Arduino code, and nuclear safety/citizen science applications.

Contents

  1. Working Principle
  2. Electrical Characteristics
  3. Interfacing with MCU
  4. Calibration
  5. Code Example
  6. Real-World Applications
  7. Limitations

Working Principle

A Geiger-Müller tube (commonly SBM-20 or J305) is a gas-filled radiation detector. The cylindrical tube contains a low-pressure noble gas (neon, argon, or helium with a halogen quench gas) and a central wire anode held at a high voltage (typically 400–500 V DC). When ionising radiation (alpha, beta, or gamma) enters the tube, it ionises gas molecules, creating an electron avalanche that produces a brief current pulse. Each pulse represents one detected radiation event (a “count”).

The count rate (CPM: counts per minute) is proportional to the radiation intensity and can be converted to dose rate (µSv/h) using a tube-specific conversion factor.

Electrical Characteristics

ParameterSBM-20J305
Operating Voltage400 V DC350–475 V DC
Plateau Range350–475 V360–440 V
Dead Time190 µs~90 µs
Background CPM~25 CPM (sea level)~20 CPM
DetectsBeta + GammaBeta + Gamma
Tube Length108 mm~90 mm
Conversion Factor~0.0057 µSv/h per CPM~0.0082 µSv/h per CPM
Lifetime~1010 counts~109 counts

Interfacing with an MCU

Use a Geiger counter driver board (e.g., RadiationD, GGreg20, or DIY HV supply) that generates the 400 V supply and converts each tube pulse into a 3.3/5 V logic pulse for an MCU interrupt pin. Never connect the tube directly to an MCU.

HIGH VOLTAGE DANGER: Geiger tubes operate at 400+ V DC. The driver board’s HV supply can deliver a lethal shock. Do not touch exposed components while powered. Use enclosed, insulated designs.

Calibration

  • Background rate: Count for 10+ minutes with no source nearby; divide by minutes for background CPM
  • Dose conversion: µSv/h = CPM × tube conversion factor (e.g., 0.0057 for SBM-20)
  • Dead time correction: At high count rates: true_CPM = measured_CPM / (1 − measured_CPM × dead_time)
  • Radioactive check source: Use a licensed check source (e.g., Cs-137 disc) to verify sensitivity

Code Example

/*
 * Geiger Counter (SBM-20 + driver board) — Arduino
 * Wiring: Driver pulse output → Pin 2 (interrupt capable)
 *         Driver VCC → 5V, GND → GND
 */
#define GM_PIN 2
#define CONVERSION 0.0057  /* SBM-20: µSv/h per CPM */

volatile unsigned long counts = 0;

void gmPulse() {
    counts++;
}

void setup() {
    Serial.begin(9600);
    pinMode(GM_PIN, INPUT);
    attachInterrupt(digitalPinToInterrupt(GM_PIN),
                    gmPulse, FALLING);
    Serial.println("Geiger Counter Ready");
}

void loop() {
    /* Count for 10 seconds, scale to CPM */
    counts = 0;
    delay(10000);

    noInterrupts();
    unsigned long c = counts;
    interrupts();

    float cpm = c * 6.0;    /* 10 sec → CPM */
    float usvh = cpm * CONVERSION;

    Serial.print("CPM: ");
    Serial.print(cpm, 0);
    Serial.print("  Dose: ");
    Serial.print(usvh, 3);
    Serial.println(" µSv/h");
}

Real-World Applications

Radiation Monitoring, Nuclear Safety & Citizen Science

Geiger counters are used for personal radiation dosimetry, nuclear power plant safety monitoring, HazMat first-response detection, uranium prospecting, medical radiation safety (X-ray room surveys), food contamination screening (post-Fukushima monitoring), and citizen science radiation mapping networks (Safecast, uRADMonitor). DIY Geiger counters with ESP32 upload real-time data to cloud dashboards.

Radiation SafetyNuclearCitizen ScienceHazMat

Limitations

  • No energy discrimination: Cannot identify the type of radioactive isotope or distinguish energy levels.
  • Dead time: At high radiation levels, counts are lost during the dead time; requires mathematical correction.
  • HV supply: Requires a specialised high-voltage DC-DC converter; cannot be powered by MCU alone.
  • Alpha detection: Most tubes (SBM-20, J305) cannot detect alpha particles through the metal tube wall; requires a mica-window tube.
  • Statistical noise: Radioactive decay is random; short measurement windows have high statistical uncertainty.