Download Impulse.dmg file for Mac

Download file for PC (SHA 256 961713fa604885a84ce989924614e224949fbb54e5a1522d53555131bd3cea64)

Download Impulse Raw Python Script (For experts)

IMPULSE by Gammaspectacular    (Only software compatible with Mac & Windows)

Impulse is a free open source gamma spectrometry program developed by Steven Sesselmann for the Gammaspectacular sound card spectrometer, but will also work with other sound card based devices. 

Unlike  most free applications for gamma spectrometry, Impulse is open source and can be modified by you to suit your own application. Impulse has the essential pulse capture and filtering functions that make sound card spectrometry possible, while still allowing the user to code their own output.

Impulse runs on Python

Python is a popular scripting language in the world of science, but for those of you who are no familiar with python, think of it like Excel, it is a program for opening a spreadsheet, or in our case a program for running our script. 

Unlike Excel, Python can be downloaded for free from the official web site here :

Python is  available for Mac, Windows and Linux

Impulse opens up in your default browser

Unlike traditional apps which have their own GUI interface, Impulse opens up in your browser, it has a tabbed view and currently displays 4 tabs. 

Tab-1 Setup Options

As soon as you launch Impulse, your browser will open up on tab 1 where you can get a list of USB input devices and select your spectrometer.

Once you have selected your device, you have the option to select sample rate and sample size, before running the pulse shape capture function. 

Pulse shape capture typically takes a few seconds to run which is confirmed by the appearance of the visual pulse on a graph. 

At this stage it is also a good idea to run a distortion curve, this gives you a visual representation of the mean distortion, i.e. how much the unfiltered pulses differs from the mean pulse shape.

On the top right hand side you will receive live updates whenever a new version is available and occasionally a brief note about the update.

PS: All settings save automatically and will be remembered next time you run the program.

Tab-2 Pulse Height Histogram

Tab 2 displays the pulse height histogram plus a number of additional settings relevant to this page. 

Most of the buttons and fields are self explanatory, but for a more detailed explanation you may click on tab-4 where you find the full manual. 

Summarising the main functions on tab-2.

  • Pulse height histogram
  • Start/Stop function
  • Total counts and cps
  • File name input (saves to NPESv1.0 format)
  • Number of bins (width of spectrum) 
  • Size per bin
  • Stop condition
  • Lower Limit Discriminator LLD
  • Shape tolerance (from tab-1)
  • Comparison spectrum (select any previously recorded spectrum as comparison)
  • Isotope library - Show peaks from any one of 480 isotopes
  • Comparison spectrum overlay
  • Subtract comparison spectrum
  • Rescale y axis as , log or energy per bin
  • Play a 3 second audio of selected spectrum
  • Three point calibration with second order polynomial fit
  • Peak finder 
  • Gaussian correlation

Tab-3 Count rate histogram

The third tab contains the count rate histogram with 10 second moving average. 

Users can switch between tab-2 and tab-3 without upsetting the recording. 

Tab-4 Exit, Export and Manual

The main function of the last tab is to contain the manual, but you will also find a few additional functions. 

Select Theme

There are a selection of different background styles to choose from, these will do nothing to improve your spectra, but may brighten up your day.

Export data to CSV

Here you will also find a function where your recorded spectrum can be exported to your downloads folder as a CSV file.


Last but not least, it is recommended that the exit button be used to close the program, rather than just closing the browser. the exit button terminates the process running on your server. 

Mac or Windows Executable

If you have downloaded the dmg disk image for Ma, you can just drop it into your applications folder like any other app. 

If you have downloaded the zip archive for windows you can extract it to a local directory and create a shortcut to impulse.exe 

In either case when you run the program for the first time it will create a new directory in the user directory ~/impulse-data

Running Raw Python Script Installation

Step 1)

If not already installed on your computer, download and install the latest version of Python 3  from the official site, consider upgrading if you are on a very old version ...

Step 2)

Download impulse from the Github repository here ... Download Impulse

Unzip the package impulse-main to the preferred location on your computer 

Step 3)

Open your terminal to the command line and navigate to the folder impulse-main

All users use "cd" to change directory

Windows users use "dir" to list directory 

Mac and Linux users use "ls" or "ls -il" to list directory

Step 4)

Impulse requires you to install some python libraries, so copy and paste the following into your terminal;

pip install -r requirements.txt

Mac users please use this one

pip install -r requirements_mac.txt

a bunch of text should appear on the screen confirming the installation, note any error messages at this point.

If a package did not install properly, can try installing it directly i.e. 

pip install package_name  or pip3 install package_name

Step 5)

Navigate up to the code directory \impulse\code\ by typing

cd code

Now run the program by typing python, mac users may have to type "python3"


Fingers crossed your default  browser should open up and show impulse tab 1

Trouble Shooting

Most of the issues seem to be during the initial installation and are related to mismatching versions of the libraries required.

Read the error messages on the screen and note which dependencies are causing the problem. try installing or upgrading those directly and google the problem if it persists. 

Another issue can be if localhost port 8050 is busy. this happens if you exit the program by closing the browser instead of clicking the exit button.

Impulse runs on localhost port 8050 , which is essentially a local web server and it will not shut down by itself.

You can shut down the server from the command line by pressing the command + C key at the same time (control + C) on mac.

Finally if you are still having issues contact me via the contact us link in the footer. 

Steven Sesselmann

There are no products to list in this category.