avatar

Carter Allen

Member Since: February 19, 2012

Country: United States

  • I wrote a version of the Geiger Counter firmware that uses the Arduino/Wiring libraries and the TimerOne library to create code that is more readable and easy to understand for beginners. The sketch can be found here.

    Uploading it to the counter can be a bit difficult, but here is the way I recommend:

    1. Purchase a 2x3 Shrouded Pin Connector and an AVR ISP 500 Programmer.
    2. Solder the connector to the Geiger counter board so that the gap in the plastic faces away from the ATmega328p chip.
    3. Let the Arduino IDE compile and attempt to upload the sketch (it will fail). Do this with verbose compilation and uploading enabled in the preferences window. That should print out a line in the log saying where the .hex file was created. Find that file, and note its location.
    4. Connect the programmer and make sure any necessary drivers have been installed (no drivers are necessary for Mac OS X, which is what I am using). Use the 6-pin cable from the programmer and connect it to the Geiger counter board.
    5. The programmer does not provide power for the counter. I used a spare Arduino Uno and connected its 5V out and GND to the 5V and GND holes on Geiger counter. You can also use a battery if you have one sitting around, just make sure it's either 3.3V or 5V.
    6. Run the following avrdude command, replacing /path/to/hex/file.hex with the location that you noted earlier, and /dev/deviceentry with whatever /dev/tty.usb* entry your programmer shows up as.

      avrdude -c avrispmkii -p m328p -vvv -e -P /dev/tty.usbmodem621 \ -U flash:w:/path/to/hex/file.hex -U lock:w:0x0F:m

    Hopefully that works for you. Good luck!