Skip to main content

Fake geiger counter project October 20, 2020

My lovely bride is working at Frightland again this year (with some COVID-safe modifications). Her "ghoul" is a masked toxic waste worker, and I thought it would be fun if she had a geiger counter that she could trigger at will to make someone appear "contaminated". The HBO Chernobyl series is still fresh on people's minds, and a bit of online searching turned up some similar projects that used an Arduino board to make that classic geiger counter clicking sound. I'd been looking for an excuse to build something with an Arduino, and this seemed like a great intro project.

Now that's a project box!

The first challenge though was finding a proper enclosure. The finished product needed to look authentic, and withstand weeks of knocking around on the scare floor. At first, I planned to fabricate something from scratch, but while researching what the "real ones" looked like, I was delighted to find a number of original Cold War era radiation detectors for sale on Ebay at prices that were within budget. A 1961 Landers, Frary & Clark CDV-715 Civil Defense radiation detector only set me back $35, and the device was FAR cooler than anything I could have hoped to build from scratch. While this model didn't originally include an audible alert, it did have a gorgeous analog gauge, big clunky plastic knobs, a sturdy handle, and a large interior cavity accessible by two handy latches. It also wasn't heavy enough to be cumbersome.

CDV-715

Prototyping

This Instructable tutorial was instrumental in getting me started with the higher level concepts of what I needed to do, even though I ended up not using any of the code or wiring in this tutorial directly. The heart of the program was a loop that played a short low-frequency sound (a click) at random intervals, and these intervals shorten when one of the Arduino pins detects that a button is pressed. I also took their suggestion to use a PAM8403 Super Mini Digital Amplifier Board to drive the speaker so I could get the geiger click nice and loud. Two of those little boards only cost a few dollars, and I paid a buck more to get the ones with a volume knob.

I ordered all of these parts, but was anxious to get started on planning the wiring and program, so I hunted around online to see if there was a "virtual Arduino" available. This led me to Tinkercad, which proved to be immensely useful as my project suffered from a little bit of scope creep. Being able to virtually play with components and code without having to fiddle with jumper wires. Since I mainly code in Javascript, I wasn't super comfortable with the C-like Arduino syntax, but Tinkercad has an option to use visual drag-and-drop coding (like Scratch). What was really helpful though is dragging some block in and being able to see the actual Arduino code that produced. Before long, I was editing the Arduino code directly once I got comfortable with the API.

I could also run the simulation by my wife for "stakeholder approval" ahead of time, and she made a few additions and alterations as we went.

TinkerCad A fully-functional wiring and code simulation in TinkerCad

The final requirements were:

  • When at "idle", the counter would click occasionally at a slow pace, and the needle would twitch.
  • When a hidden button on the handle was activated, the counter would click at a frantic pace, the needle would go to the top of the range (but not peg).
  • LED lights were added to the front of the unit, and they should also flash when the button is activated.
  • The color of the LEDs ended up being a sticking point, so some jumbo RGB LEDs were purchased to allow changing the color by software. This proved wise.
  • The main selector switch of the original housing would be repurposed to function as on/off for the Arduino, and the original "zero" knob would be repurposed as the volume knob of the little amplifier.

breadboarding Breadboarding to test the sound

After the first batch of parts arrived, bread boarding it together confirmed that the sound I'd simulated was good for the tempo, and I made some final tweaks to the tone to maximize the output from the little speaker.

The first tricky part I ran into was figuring out how to move that analog gauge's needle. This is something I couldn't simulate, so I gingerly applied a little voltage to it and the needle shot right and slammed hard into the stop pin. Ok... clearly too much. I only had a small supply of resistors on hand, so I enlisted the help of my dad, who has a fully-stocked Radio Shack in his basement. Together, with some experimentation and my dad's next-level math skills, we figured out values needed for two resistors to drop Arduino the pin voltage down to the comparatively miniscule amount needed to move the needle toward the top of the gauge in a realistic way.

gauge showing 4 r/hr 4 roentgen. Not great, not terrible

The next challenge was getting a good effect out of the two RGB LEDs. The ones I ordered were bigger than I realized (over 1/4" dia.) and really bright. Since the "scare floor" can be pretty noisy, the lights needed to flash the visual equivalent of the angry geiger counter's maniacal clicking. After some experimentation and code additions, I decided to drive both LEDs off the same power, but "crossed up" the RGB leads to the second LED so that it didn't have the same colors as the first.

To load the software, I simply copied the generated code out of TinkerCad and pasted it into the Arduino IDE. I had to make sure the Arduino was connected via USB before I started up the IDE for it to "see" it, but then it was simply a matter of clicking the Upload button, and instantly the Arduino started running the program and things started clicking and blinking.

Once I had everything working on the breadboard, it was time to tear all that apart and solder it together with real wire in its final configuration. I used a pre-printed and pre-drilled ProtoShield board that was made specifically to sit on top of the Arduino and transfer its pins to the solderable surface. There's even a handy "bus" running down the middle for access to power and ground. Soldering was fine work for my old eyes though, and I made frequent use of my multi-meter's continuity checker to make sure things were connected and nothing was shorting.

Final Assembly

The unit was advertised as functional, though I didn't have a gamma ray source handy to verify (which is probably for the best). I carefully removed the original main board after taking off the knobs so the knob shafts were free. Everything came out except for the big gauge, and I was sure to keep the original screws handy for mounting my "alternate" guts.

The first permanent modification I made to the enclosure was to add the switch to the handle. I'd scavenged a tiny flat pushbutton from an old MacBook Pro that I disassembled for interesting bits. It used to be the machine's power switch, and in true Apple fashion, it was amazingly thin, but had a nice tactile "pop" when depressed. I ground a flat spot on the top of the solid aluminum handle at roughly the thumb position and used some heavy-duty double-sided adhesive tape to keep it in place and insulate it from shorting against the metal. The two thin lead wires ran down the handle to a tiny hole I drilled through to the inside. A wrap with some electric tape concealed and protected the switch, and also provided a good grip.

Holes were drilled in the bottom of the aluminum housing, and the speaker bolted securely into place. The sealed unit made a great "speaker cabinet", and I immediately noticed more bass than when the speaker was dangling loose.

Speaker and LEDs installed An ample amount of hot glue was used to secure the LEDs, as well as keep their fragile leads from shorting against each other. I left a good amount of wire as an "umbilical" between the top and bottom halves to minimize the danger of accidentally pulling out a wire.

After some debate, I decided not to reuse the original 7-position switch since it was massive and well integrated into the existing board. Fortunately, my dad had a "spare" one that was roughly 20 years newer that worked perfectly once I trimmed down the shaft. The new switch was wired up to the power to provide on/off control. This preserved the original 7 switch positions, though I wired 4 of the positions to serve as "on" and the others (including the actual OFF label) are "off". Getting the new switches to fit required some drilling and grinding of underside of the very substantial top plate of the unit, which was about 1/4" thick in some areas.

Next came the formidable task of fitting and anchoring everything into the housing while still keeping it accessible for repairs or modifications. After a little "just-in-time engineering" I came up with using a think piece of hobby plywood as a base, and ran long bolts through the the ply, arduino and shield to hold the whole sandwich together. Mounting the Arduino a little offset left just enough room to fit the 9v battery housing along side it, and I secured it with velcro so that it could be pulled out to change the battery. That whole assembly was screwed to the standoffs that were used by the original circuit board. Amazingly, it all fit, and with two snaps of the latches, it was finally all in one piece.

The assembled insides I wired all the external connections to screw down wire terminals to make it easy to disassemble without having to unsolder anything

Testing in the field

The end result is pretty "official looking" for a Halloween prop. The authentic ~60 year old housing is scary enough on its own given its original intended purpose, but making it come to life with light and sound really made it effective. For the final touch, a shoulder strap was added using some recycled webbing (the unit has loops, but the original strap probably rotted away decades ago). She also insisted on adding some "blood splatters" and red fingerprints, because everything in the "scare business" has to have these.

Finished The final product after my wife added a bit of horror movie paint

After the first night, I made some on-the-fly adjustments to the LED color and flashing pattern based on her feedback. She had originally requested that the LEDs flash purple and green intermittently when the unit was at rest, but in the dark this proved a bit distracting, so I uploaded a software patch to only flash the LEDs red/yellow when the button was pushed, and leave them off when the counter was "at rest". Being able to quickly change device's behavior like through software alone was pretty cool!

I'm hoping that by next next year she will be able to get more close interaction with guests again once social distancing is a thing of the past. The idea is to scan each person in a group as they walk by, and set it off on one of them screaming "THIS ONE IS CONTAMINATED!!!!!"

Well, that was fun

This was my first Arduino project, and I found it very easy and fun to work with. The ecosystem for parts, tools, documentation, tutorials and sharing ideas is VERY robust, and I had no trouble finding everything I needed at very reasonable prices. I ended up buying a components "starter kit" that includes a bunch of interesting components, like ultrasonic, temperature, moisture and light sensors, as well as an RFID emitter and detector. One of the other similar examples I found online used an RFID detector to "set off" the counter instead of a button, so the unit could be used to actually find a simulated "radioactive object". Something like that would be perfect for an escape room, or an elaborate prank.

Now I just need some ideas on what to build next.

Contents ©2020 Ken Cox