Progressive web application for gamma spectroscopy including file and live plot support via the serial interface.
Built using Bootstrap, Plotly.js and Font Awesome.
- No installation required - accessible on every internet-connected device
- Can be easily installed for stand-alone offline use
- Straightforward interface to get down to business
- File import of common data formats (e.g. CSV, TKA)
- Live plotting via the serial interface, compatible with any serial device (e.g. Arduino)
- Linear and quadratic energy calibration
- Customizable list of common isotopes and their gamma-ray energies
- Export interactive graphs of your spectrum to embed it into your website
- Automatic peak detection (energy and isotope)
- ... and much more!
There are essentially two types of files you can use - both being text files, e.g. CSVs:
- Dumped serial streams with a random new event (energy) on each line. This includes streams from our Open Gamma Detector or any other serial device. Important: If your file is CSV-formatted only the first element will be read. The delimiter can be changed in the settings.
- Ready-to-use histograms. This includes common file types like TKAs, CSVs and also RadiaCode exports. Important: If your file has more than one element per line, the first one will be regarded as channel index/energy and the second as the number of counts. If there's one element only, it will be regarded as the number of counts instead.
Thanks to the Web Serial API you can use any serial device capable of doing gamma spectroscopy to plot your data. The are only two requirements for this to work:
- The API is currently only supported by Chromium-based (desktop) browsers. This includes most browsers except Safari and Firefox. The feature is either enabled on default or you have to enable it in the settings. See Can I Use?
- Your device has to print an EOL character (a semicolon
;) after every single event to signalize the end of a data entry. Whitespace or newlines do not matter.
The PWA is written with TypeScript. The files can be found in assets/js/, please only modify the .ts files -- all .js files are auto-generated.
Notice: The LICENSE does not apply to the name "Gamma MCA" and especially the Gamma MCA logo. These are Copyright 2021 by me, Phoenix1747.