DIY_particle_detector_wiki/Software.md

13 KiB

The following software can be used to record pulses from the detector and measure radioactivity.

Overview:

Signal Display & Pulse Counting

Oscilloscope-style software for desktop/laptop computers and mobile devices (smartphones/tablets) using either a dedicated soundcard or headset/microphone inputs to record signals from the detector (Yes, the detectors 'imitate' microphone signals!):

Desktop Software

The following desktop software programs have been tested to work with Windows, Mac, and Linux.

Important note:
Depending on your setup, the correct microphone/sound channel input must be enabled in your operating system settings as default sound input device. For example, if you want to use the headset connector with your detector, make sure the system is using that as default input instead of the built-in microphone. If you whistle gently and see sine waves although the detector is plugged in, the wrong sound input is selected.

First check your sound input configuration:

  • Certain systems, like all Apple devices, require that the detector is powered on before being plugged into the headset socket! Otherwise, external microphone signals are not recorded from the headset connector.
  • The microphone sound input volume should be generally set has high as possible.
    • When using the alpha-spectrometer, turn on additional boost/gain options if available (check advanced sound device properties).
    • For the electron-detetcor, too much extra amplification can hide the signal within the electronic noise. Please try different input volume settings and match the amplitudes of the signal pulse and noise range roughly to the example pulse recordings shown in the screenshots below. With certain headset inputs, disabling of boost/gain settings may improve the signal clarity considerably.
  • The audio sampling frequency should be set as high as possible, typically 48.000 Hz. Sample resolution: 16-bit.
  • In case of problems, pleases read further notes on Soundcards and Cables very carefully.

Processing-based Audio Oscilloscope

Processing is a really nice and open-source environment geared at learning how to program. A program file ends with .pde extension and is called 'a sketch'. Sketches can be directly run equally well under Windows, Mac OS and Linux without differences.

WaveWatch sketch for Processing screenshot, showing a typical small electron-detector pulse, recorded from a regular soundcard/headset input:

  1. Download the Processing Version 3 from www.processing.org
  2. Extract the zip file and double-click on the Processing(.exe) executable inside the extracted folder
  3. Inside the Processing window, install the Minim library via the 'Sketch' menu / 'Import Library...' -> 'Add Library...'.
    • type 'Minim' into the search field on the top, select and install the library, close the dialog window once finished
  4. Select, download and extract the zip files of one of these two oscilloscope programs:
  5. Open the corresponding .pde program file inside Processing and hit the big play button to start the program.

Browser Application

Based on the Web Audio API of modern browsers: compatible with recent versions of Chrome and Firefox.
See notes below for use with mobile devices.
Try different microphone input volume/gain settings in your operating system, a good range is 50% to 100%. Depending on your particular computer audio hardware, 100% is not always the best and may hide pusles in too much noise.

  • Web browser application, screenshot of a typical large alpha-spectrometer pulse from a high-energy alpha particle:
    A single pulse recorded by the web  browser GUI.
    Move the red trigger level up/down with the corresponding arrow buttons (or cursor keys), it should be somewhat below the noise level but not too far.
    Signals from the alpha-spectrometer produce broader pulses (~1 ms) like in the picture above, the shorter pulses from the electron-detector variant (~50 us) appear as narrow needles like in the following screenshot:

    Update: There is a new mode setting! Select either "Electron-Detector" or "Alpha-Spectrometer" from the pull-down list according to your detector variant. The Electron-Detector pulses are now drawn larger and better visible in this dedicated mode.
    Main source code with notes in pulse_recorder.js.

Mobile Apps

These apps have been tested on recent smartphones and tablets, connecting the detector with its headset socket.
Please make sure to use the correct cable with a 4-pin 3.5 mm jack as described here.

Note if your mobile device is too modern and does not have a 3.5 mm headset socket anymore, adapters like Apple's Lightning to 3.5 mm jack headset adapter and similar ones for micro-USB or USB-C will work as well.
In combination with a USB adapter like Apple's Lightning to USB adapter, it is even possible to use the low-cost USB soundcard described in Soundcards.
For Android devices and modern laptops, such adapter cables are sold as "USB On-The-Go (OTG) adapter" featuring micro-USB or USB-C connector.

  • Web browser application
    Works in recent versions of Android (in the Chrome or Firefox browser) as well as Apple iOS/iPadOS (only in Safari).
    Move the red trigger level up/down with the corresponding arrow buttons, it should be somewhat below the noise level but not too far.
    See the screenshots above. Some headset inputs are very sensitive and produce short oscillations for large pulses. Below is a larger Electron-Detetcor pulse recorded on an iPad using its built-in headset socket:

  • The app "Smart Geiger EX" from FTLab/Technonia is compatible and can be used for counting particles. Links: Google Play Store, Apple App Store
    The wrong dose value given in uS/h must be ignored, only the "Count" and "CPM" ("Counts per Minute") numbers are useful and correct. The detector must be powered on before opening the app!

  • Search for generic "sound oscilloscope" applications on Android's Google Play Store or Apple's App Store. E.g. the "Oscilloscope" iOS app from Onyx Apps is rather costly but provides very good triggering functionality, which can be great for debugging the detector and if no other oscilloscope is available. Oscilloscope apps without a trigger functionality will not be useful.

Energy Spectra from Alpha Particles

The following programs can be used to record characteristic energy spectra of alpha particles with the alpha-spectrometer variant of the DIY Particle Detector such as the following spectrum:

This kind of software is often called MCA, which stands for 'Multi-Channel Analyzer' and dates back to former times when the modern and less abstract term analog-to-digital converter (ADC) was not yet common.

Record and Display Alpha Spectra

Graphical Software

There are three programs popular among hobbyists and enthusiasts for recording gamma spectrometer measurements using regular sound/microphone inputs. They can be used as well for recording alpha spectra:

  • Theremino MCA: website (mulitple languages supported, open source and regular updates - always use the latest version!)
  • BecqMoni (Becquerel Monitor): website is in Japanese, but the program itself is in English. Direct download. (it has not been updated in a long time but still works well)
  • PRA (Pulse Recorder and Analyser): website

All three are freely available and written for Windows but can be used on Mac OS and Linux using the open source Windows emulator Wine.

Using a preexisting alpha energy calibration:

  • In case of using one of the low-cost CM108 USB Soundcards, the linear energy calibration coefficients usually called b or m (slope) and c or t (offset) can be simply copied from here. Some programs like BecqMoni ask for a third coefficient for a quadratic equation in the form of a*x² + b*x + c. The quadratic component a should be set to zero in this case.

Python Scripts

The following two scripts have been developed in conjunction with the scientific article.

  • Pulse recording with pulse_recorder.py.
    This program must be started from a terminal window as python3 pulse_recorder.py and opens an oscilloscope-style window showing the trigger level as a red line and detector pulses in yellow. The green line represents the energy threshold value at around 0.5 MeV that distinguishes between pulses from electrons (smaller) and alpha particles (larger). It is ideal for longer, unattended measurements, e.g. overnight. All reference measurements in the paper have been recorded with this.
    More notes inside the script.

  • Pulse analysis with analyse_and_plot_pulses.py The raw detector pulses recorded from the python script above or the web browser application, are loaded from the raw data files (stored in Python's Pickle or the MessagePack format). This script analyses all recorded detector pulses and converts the measurement data into convenient time series histograms and generates calibrated energy spectra.
    This script is only intended for the alpha-spectrometer variant. Measuring energy spectra with the electron-detector variant is not very useful and would also require adaptions in the analysing algorithm.

Simulation of Alpha Spectra

Since the energy spectra of alpha particles can be difficult to interpret, especially when recorded in normal ambient air conditions, it can be helpful to simulate certain characteristic alpha spectra. See further notes in Energy-Spectra.

A freely available program for simulating alpha spectra is AASI (Advanced Alpha-spectrometric SImulation), download link.

Simulation steps:

  1. Load the detector settings file from the repo, representing the BPX61 diode and properties of this particular amplifier circuit.
  2. Define the source with a certain activity and select a radioactive element or a specific alpha particle energy.
  3. Define any additional passive layers between source and detector: depth/width and density of the surrounding air and for example guess the density and thickness of protective paint layers (in case of uranium glaze, the orange/red paint is usually covered by a thin transparent glaze).
  4. Run the simulation
  5. Compare the simulated energy spectrum with your measurement
  6. Repeat and adapt steps 2.-5. until the shapes and positions of the peaks roughly match