Geiger-Müller Zähler with Arduino and 16×2 LCD

Here are the steps how I made my Geiger counter.     (گایگر مولر – Geiger-Müller-Zähler)

دستگاهی برای تشخیص وجود مواد رادیواکتیو و اندازه گیری مقدار تشعشع اشعه های آلفا ,بتا و گاما


Recently I found an old Geiger muller DIY in my basement. So I took the GM Tube from DIY out and made a new ginger counter using actual accessories and a LCD display to show the radiation-measurement.

Used Equipment

  • Arduino micro controller ATMega168
  • Boost regulator module to converter 5v Batteries to 12v.
  • Electronic components (inductor, resistor, capacitor, diodes. All of them I took from old devices)
  • MOSFET IRF540, Transistor BC458
  • LCD 1602 with serial module ( I2C LCD 16×2 display)
  • Geiger Muller tube

The project consisted of a GM Tube, a high voltage Power supply and a detector.
The counts will be shown on a LCD display.
The device will be powered by a 5v battery.

GM Tube requires up to 340 volts to function.
To generate GM high voltage of 5V I created a voltage booster by using an ATMega168 micro controller.

The micro controller generates a PWM waveform and switches a MOSFET.

Arduino Based Geriger Counter with LCD
Arduino Based Geriger Counter with LCD

Circuit diagram for the Atmega168 Geiger Counter with I2C LCD 16x2 display
Circuit diagram for the Atmega168 Geiger Counter with I2C LCD 16×2 display

The MOSFET receives the signal (~40kHz) from the ATMega168 (pin 13) and works together with L, D and C as a boost converter and produces 180V. (as shown in the circuit).
This inductor(L) released energy giving the diode a specified voltage which depends on the duty cycle and the switching frequency, inductor value and the input voltage.

My main problem was that the power generated couldn’t go over 180 volts no matter what I tried.

So I used a voltage multiplier called the Cockroft-Walton consisting of 2 x IN4007 and their associated 2 x 10nF capacitors to get an output voltage by a factor of two (340 volts).
This output HV voltage can be regulated simply by changing the input voltage (boost regulator module).

The ~340V feeds the GM tube.

GM Tube operating voltage

The GM tube output triggered an interrupt on the Arduino, which registers the event as one count.

You can generate a PWM signals with variable frequency and variable duty cycle, but in my case was not necessary.

The normal GM operating voltage range is between V1 and V2 (see the diagram).

The optimum operating voltage is around the middle of the plateau.
In my case, the potential difference between anode and cathode varies in the range of 300 to 340 volts.

A  resistor of 4.7 Mega ohm reduces the GM voltage.

The program was written for ATMega168 in two parts:

  • make a dc-dc boost convertor with Arduino by generating PWM frequency  with On/Off time of 50 µS.

I implemented PWM on pin 13 by repeatedly turning the pin on and off for the 50µs times.

  • count the ionization events over a certain period of time and display the results in counts per minute (cpm).

The pulses on the Arduino input pin (2) are very narrow with a low frequency.

I also made a push button that allows me to toggle between showing radiation per hour, CPM, or total counts by time. A tone is generated for each input signal and an LED lights up.

Download the code from here: GmCounterWithLCD

LCD connections are:

  • GND to GND
  • Vcc to 5V
  • SDA to Analog 4
  • ​SCL to Analog 5

Some words about Geiger Tube and how it works
As you know, there are three types of radiation: alpha α, beta β and gamma γ and x radiation.
The structure of Geiger Tube is a very simple. The tube inner surface is completely covered with conductive metal. In the middle the tube exists a needle and is filled with gas.
Normally the basic voltage of tube is up to 300 volts and it’s usage is ca 100 µA.

The potential difference between the surface and the electrodes creates an electric field.
When a beam or a particle enters into the volume of gas, ionizes the gas atoms.

This field in the gas applies a force to the ions and leads positive ions to negative surface and negative ions towards the positive electrode.

It measures very inaccurately  (+/- 50% measuring error) and does not differentiate between alpha, beta and gamma radiation.

The following values of radiation are for normal individuals cases:

  • 0,1µSv/h, 3–10µSv per day, 20µSv per week, 3500μSv in a year  (Average radiation)
  • In Fukushima on 21th March the level was 7.47μSv/h
  • 20-100μSv – The radiation you receive during a dental x-ray
  • 40μSv – The radiation you receive during 5 hours flight over 8000 meter height.

The output of a detector depends on potential between electrodes and gas pressure.

Kemo Electronic Kit B143
Kemo Electronic Kit B143


Kürzlich habe ich im Keller einen “Geiger-Müller-Zähler” Bausatz von Fima Kemo-Electronic (B143) gefunden.
Vermutlich wurde dieser Bausatz vor 1986 von der Firma Kemo verkauft.

Ich habe keine Informationen mehr über den Bausatz und das Zählrohr gefunden.
Das Zählrohr stammt höchstwahrscheinlich aus der DDR.
Es hat eine Länge von 10 cm und einen Durchmesser von 2 cm.

Der Schaltplan der Bausatz sieht wie folgt aus:

Es ist ein einfaches Bausatz und besteht aus einen Oszillator und ein Transformator.
Der Transformator wurde verwendet, um etwa 300 Volt zu erzeugen.
Um jedes einfallende ionisierende Teilchen hörbar zu machen, wurde ein Audioverstärker (TCA830) mit einem Lautsprecher verwendet.

Leave a Reply

Your email address will not be published. Required fields are marked *