top of page
Geiger Counter Radiation Detector DIY Kit

Geiger Counter Radiation Detector DIY Kit Arduino Compatible ver. 3.00


Radiation Detector DIY Kit ver. 3.00

The third edition of our Nuclear Radiation DIY Detector Kit. Arduino compatible kit. Easy assembly for beginners. Support many popular 400V and 500V Geiger Tubes. The kit has several improvements in compare to previously sold second editions. The package comes with high quality silkscreened PCB, pre-soldered SMD and all components you need to build nuclear radiation detector electronics. 

The kit has visual and sound indication of the radiation and can be used as detector of dangerous radiation levels or radioactive materials in your environment. The board can be connected to ARDUINO UNO or other MCU. Now it also support direct connection to Apple iPhone or iPad for Geiger Bot application.


Technical specifications:

  • Geiger Tube PCB Compatibility: STS-5, SBM-20, J305, LND-712
  • Geiger Tube Voltage Compatibility: 400V or 500V tubes
  • Supply Voltage: 4.5-5.5V, support 9V battery with included 5V regulator IC
  • Supply Current: 30uA-60uA (0.03mA-0.06mA) at background radiation
  • High Reliability up to 1mSv/h (1000uSv/h)
  • Sound and Visual Indication Arduino, PIC, AVR, MSP430, Android
  • Compatible TRRS Output Connector for “Geiger Bot” iPad / iPhone
  • Pre-installed SMD, only DIP components to solder Radiation Logger
  • Compatible (require Arduino UNO or similar)
  • Dimensions: 120 x 50 mm
  • Shipping Weight: 250gr
  • UPC Number: 634654895721
  • SKU: RH-K-GK-2-D


Default package comes without a Geiger Tube, but you can add SBM-20 / STS-5 to your shopping cart.


This is third edition of Arduino Compatible DIY Geiger Kit developed by RH Electronics. The kit is simple radiation detector board that provides visual and audio signalization of each Geiger event. The PCB allows installation of SBM-20 or LND-712 tubes. Many others GM tubes models can be connected with wires to the board. 400V or 500V tube voltage range is selected with jumper. In addition, the board has wide compatibility with different microcontrollers and smartphone applications. The kit is very easy to solder, you need to solder only through-hole DIP components, when all SMD parts already installed on the PCB. If you are software developers, you can integrate the board to your environment with your favorite microcontroller added.



  • Benefits of original third edition

    Why choosing this edition over other radiation detectors kits?

    Previously sold second edition, as many others hobby Arduino compatible DIY Geiger Kits from the market, had high voltage electrical circuit based on 555 timer IC. Even 555 HV converters are easy-to-build for beginners, it has several drawbacks: huge power consumptions, high voltage drops under load and no limiting of high voltage spikes. These were the reasons to refuse using 555 timer and redesign our electrical circuit for better specifications. Now the kit is low power consumption board with amazing connectivity and expanded options.

    The HV converter based on SMD microcontroller chip that drive mosfet switch. The generator has extremely low power consumption of micro amps range. Moreover, regarding the special feedback circuit, the high voltage stays within required plateau limits even under high speed count load. The hardware design files are not open source, but you get detailed diagram for easy soldering. It allow you to install parts directly into the PCB without messing with the components numbers.  All parts to solder is DIP through-hole components that make the kit soldering easy for hobbyist.


    Benefits of original third edition:

    • Kit consumes less than 0.100mA at background, usually 0.065mA
    • Improved HV stability up to 1000uSv/h radiation load
    • More supported tubes, 400V and 500V range select
    • Tube over voltage protection, limiting HV spikes
    • Wide compatibility with different MCU for software developers
    • TRRS socket for direct connection to a smartphone
    • Only DIP components to solder, SMD already installed
    • Simple assembling, no need to read electrical circuit
  • Selecting Power Source for the Kit

    The Geiger kit has flexible options for powering. Since the board consumes very tiny current at background, all available options are good for your implementation with the final project. The default option is to power the kit with 4x Ni-MH batteries to get 4.5-5.5 supply voltage range. For this method step-up is not required, JMP3 need to be installed. However, if your enclosure is small, you can use 5V step-up module and then even one 1.5V AAA battery can be used for powering. The PCB allows installation of Pololu NCP1402 step-up module when JMP3 need to be removed. NCP1402 step-up is recommended, but you can wire any other modules to the board when using 3 wire connection: Vin, Gnd, Vout.LP2950 is about 100uA on background, so it can be useful for longtime portable operation. LP2950 now included in your package.

    The board also support also 9V battery if you install low drop LP2950 IC 5V regulator or LM78L05 regulator. Power consumption with 5V regulator is higher and can vary from 100uA to 1mA on background, depend on 5V regulator type. But it can be good power option for 9V battery.

  • Arduino MCU Communication

    The PCB has 3 pins for communication with MCU: INT, GND, 5V. You can power up the kit with 5V Arduino board directly. Or, if you use a batteries for Geiger Kit, you have to connect only 2 pins to Arduino: INT and GND. The kit is compatible with our "Radiation Logger" software, you can connect it via Arduino UNO SPI to the computer. 

    There are many different application you can use this kit, especially if you are software developer. The board sends short high-low-high interrupts to Arduino. We offer simple sketch as an example in user manual, please modify it for your needs. We do not provide technical support for Arduino code. You can learn more at:



    DOWNLOAD GITHUB Abouvier Arduino Sketch

    DOWNLOAD GITHUB Arduino Serial Geiger

    DOWNLOAD GITHUB Attiny85 Geiger Code



    #include <SPI.h>

    #define LOG_PERIOD 15000     //Logging period in milliseconds, recommended value 15000-60000.

    #define MAX_PERIOD 60000    //Maximum logging period

    unsigned long counts;             //variable for GM Tube events

    unsigned long cpm;                 //variable for CPM

    unsigned int multiplier;             //variable for calculation CPM in this sketch

    unsigned long previousMillis;      //variable for time measurement


    void tube_impulse(){               //procedure for capturing events from Geiger Kit



    void setup(){                                               //setup procedure

      counts = 0;

      cpm = 0;

      multiplier = MAX_PERIOD / LOG_PERIOD;      //calculating multiplier, depend on your log period

      Serial.begin(9600);                                    // start serial monitor

     // uncommennt if you have time-out problem to connect with Radiation Logger
     //  delay(2000);
     //  Serial.write('0');                                      // sending zero to avoid connection time out with radiation logger
     //  delay(2000);
     //  Serial.write('0');                                     // sending zero to avoid connection time out with radiation logger

      pinMode(2, INPUT);                                   // set pin INT0 input for capturing GM Tube events

      digitalWrite(2, HIGH);                                 // turn on internal pullup resistors, solder C-INT on the PCB

      attachInterrupt(0, tube_impulse, FALLING);  //define external interrupts



    void loop(){                                               //main cycle

      unsigned long currentMillis = millis();

      if(currentMillis - previousMillis > LOG_PERIOD){

        previousMillis = currentMillis;

        cpm = counts * multiplier;

            Serial.print(cpm);                              // send cpm data to Radiation Logger

            Serial.write(' ');                                // send null character to separate next data

        counts = 0;



  • MSP430 LaunchPad TI

    MSP430 processors known as lowest power consumption microcontollers for portable devices. Texas Insruments has several development kits that you can use with Arduino style Energia compiler. 

    MSP430 open source project code shared by Walter H. Many thanks to him for this educational, interesting and extremely low power consumption project. Please follow this link to check latest updates and more techincal details:


  • Raspberry Pi connection

    Connecting the Geiger Kit to Raspberry Pi is similar as Arduino. Walter H. shared his own code for the interrupts. Maybe the code can be optimized but it works and that's good. INT connected to pin#12, 5V to pin#2, GND to pin#6.

    import time
    from datetime import datetime
    import RPi.GPIO as GPIO

    GPIO.setmode(GPIO.BOARD) # use RaspPi board layout pin numbering
    GPIO.setup(12, GPIO.IN, pull_up_down=GPIO.PUD_UP)

    counter = 0

    def tube_impulse_callback(channel): # threaded callback -- falling edge detected
        global counter # make counter global to be able to increment it

    # when a falling edge is detected on port 12, regardless of whatever 
    # else is happening in the program, the tube_impulse_callback will be run
    GPIO.add_event_detect(12, GPIO.FALLING, callback=tube_impulse_callback)

        while True:
            currentMinute =
            while == currentMinute: # this minute..
                time.sleep(1) # .. wait while add_event_detect detects pulses
            print counter
            counter=0 # reset counter
    except KeyboardInterrupt:
        GPIO.cleanup() # clean up GPIO on CTRL+C exit
        GPIO.cleanup() # clean up GPIO on normal exit


    Copy the code above and paste it into Notepad++ or to other text editor. Save the file as To run it on Raspberry execute commands:

    $ chmod +x
    $ sudo python

  • Android application

    GeigerCounter Android application by Alexey Voronin FoxyLab is compatible with the kit. You can download it through Google Market:

bottom of page