Coding Geiger Counter SEN-11345 ROHS

The website (SparkFun Geiger Counter - SEN-11345 - SparkFun Electronics) gives some directions on what to do: "Simply plug the unit into USB (make sure you have FTDI drivers installed), open a terminal program to the correct COM port at 9600bps, and you will see random bits being generated from the random background radiation. Each bit generated (an ASCII byte 0 or 1) represents an actual event in the tube in real-time, so the output can be used to deduce CPM or what ever units you need."

I have the geiger counter connected to an SD card shield connected to the arduino, and the arduino is plugged into my laptop but I'm not sure how to get the CPM (counts per minute) data. Additionally, I'm unsure what the FTDI drivers are, I downloaded off of the link on their website but don't know what to with them. I'd appreciate any help at all. Thank you!

This is my current code:
//definitions
int Geiger;
float GeigerVolt;
float RadiationCount;

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
// put your main code here, to run repeatedly:
Geiger=analogRead(A2);
GeigerVolt=Geiger*(5.0/1023);

Serial.print(Geiger);
Serial.print("\t Sensor Voltage: ");
Serial.println(GeigerVolt, 5);

delay(1000);

}

The Geiger counter has it's own MCU. It doesn't need an Arduino.
I suggest you read the description again.

Yes, but I'm sending the geiger counter up in a balloonSat, and since I already have an arduino going up as well, I'd rather not have multiple devices to store data. So, I want to record the data on the Arduino.

//definitions
int analogPin= A2;
int Geiger= analogRead(analogPin);

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
// put your main code here, to run repeatedly:
Serial.println(Geiger);

delay(1000);

}

So I modified the code, the problem is the only output I get is 0, even when the counter lights up. How do I output a 1 when the counter lights up?

Unless definitions reroute input you'll need an analogRead in the loop. Just started learning.

//definitions
int analogPin= A2;
int Geiger= analogRead(analogPin);

void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}

void loop() {
// put your main code here, to run repeatedly:
Geiger= analogRead(analogPin);
Serial.println(Geiger);

delay(1000);

}

Both of you, use code tags. Read the how to use the forum sticky post.

You only want to send something when you have a count not wen you do not or you spam the other side of your connection.
Use an if statement to only send a count when you have one.

Hi,
Welcome to the forum.

Can you please post a copy of your sketch, using code tags?
They are made with the </> icon in the reply Menu.
See section 7 http://forum.arduino.cc/index.php/topic,148850.0.html

This will put you code in a scrolling window which is easier to read and select/copy.

Thanks Tom... :slight_smile: