Tube cathode is connected to ground GND. The circuit uses anode signal capture method with grounded cathode that's better for less noise. Keep red HV wire short length as possible to reduce parasitic capacitance on tube anode.
High voltage step-up converter has excellent regulation to keep HV voltage within recommended plateau limits for correct operation of GM tube! Every module is professionally assembled and tested. Originally it was designed by me and used for industrial grade devices. Build with only high quality materials and certified components.
Every
sample covered with insulation for environmental protection.
Module Size: 22mm x 35mm
Input Voltage: 5.0V - 5.5V
Output Voltage: 390V - 420V
Maximum output current: 50uA
Installed load resistor: 10 Mega Ohm
Quiescent Current on Background: <1.5mA (may vary, depend on charge pump state)
GM Pulse Duration: ~10uS, VDD logic level
Pinout:
HV: tube anode(+) (400V)
GND: tube cathode(-)
VDD: 5.0V
GND: power supply ground
SIG: signal output, pulses ~10us
The module is compatible with following GM tubes: SBM-20, SBM-21, SBM-10, SI-8B, PM-1208, SI-29BG and more 400V models.
The circuit DO NOT HAVE reverse polarity protection, be careful to connect VDD and GND in correct way, see the diagram! Do not short-cut High Voltage output! Use heat shrink tube to protect the module from short-cut if your enclosure is metallic!
Arduino UNO example code to catch GM pulses during 1 minute:
// Arduino UNO Example code to count GM pulses during one minute from the detector
// if the INT is floating you may need to add 1K resistor to pull down to GND the INT port
#include <SPI.h>
unsigned long counts; //variable for GM Tube events
unsigned long cpm; //variable for CPM
unsigned long previousMillis; //variable for time measurement
void tube_impulse(){ //procedure for capturing events from Geiger Kit
counts++;
}
void setup(){ //setup procedure
counts = 0;
cpm = 0;
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, LOW); // turn off internal pullup
resistors, you may need to add 1K resistor to pull down to GND the INT
port (if INT pin is floating)
//---------------------Allow external interrupts on INT0-----------------------------//
attachInterrupt(0, tube_impulse, RISING); //define external interrupts low-high-low
//-----------------------------------------------------------------------------------//
}
void loop(){ //main cycle
unsigned long currentMillis = millis();
if(currentMillis - previousMillis > 60000){ // if 60 seconds are passed
previousMillis = currentMillis;
cpm = counts;
Serial.print(cpm); // send cpm data to Radiation Logger
Serial.write(' '); // send null character for "Radiation Logger" to
separate next data, check your hardware for actual UART separate sing
counts = 0;
}
}