Click here to see all PAMGuard release notes


Latest Beta Version 2.00.10 June 2017

PAMGuard Version 2 contains major updates. You should read and understand these notes before proceeding with installation and use of this version. These changes have been funded under contract to NOAA Fisheries, contract no. WE-133F-16-SE-1126.

Binary File Structural Changes

The Binary File structure has changed to accommodate additional information for each unit of data stored. This means that any data generated with PAMGuard Version 2.00.00 and above will not be compatible with older versions of PAMGuard. If you open older data sets with the PAMGuard Viewer the older data will be converted to the new format (see below for details).

The most significant change in the binary file format is the addition of a Unique Data Identifier (UID) to each unit of data. This is intended to aid in offline analysis by making it easier for the user to link what they are seeing on different PAMGuard displays and also to link with any data post processed in Matlab or other custom analysis software. UID’s are also added to PAMGuard database tables.

Converting Old Data

If old data are opened with the PAMGuard viewer they will automatically be converted. For safety, the original binary files will not be overwritten and the new data will be placed in a new folder on your computer with the same path as the old data, but suffixed with ‘_WithUID’, e.g. if your binary data were previously stored in the folder C:\MySurvey\binarydata the new data will be written to C:\MySurvey\binarydata_WithUID.

The additional UID column will be added to all database tables and populated with unique values. For data which are stored in both the binary files and in database tables, the same UID’s will be used in both data stores.

New Displays

A new time based scrolling display has been added to PAMGuard which can display multiple types of data on the same time axis. It can for instance be used to display bearings to whistles on a bearing-time type display similar to that commonly used in the click detector. Composite display graphs containing data from more than one detector are also possible. For details, see the PAMGuard help file (Displays / Time Display FX). Note that this display is only available if you are running Java 8 or later.

Event Marking and the Detection Group Localiser

A new system of event marking which can be used both online and offline has been added to PAMGuard. Details are in the PAMGuard help file (Displays/Display Marking). Data can be selected on the Map, the Spectrogram Display and the new Time Display FX in a similar way and sent to other PAMGuard modules. The new marking and data selection system works with the new Detection Group Localiser. The Detection Group Localiser extends the functionality which always existed in the click detector to other types of data (e.g. Whistles) so that they can be grouped and tracked using target motion analysis in a similar way. Details of the Detection Group Localiser are in the PAMGuard help files (Localisation/Detection Group Localiser).

Display Colours

A new system for handling display colours has been implemented across all PAMGuard displays. This gives greater flexibility to the user to control how data units are shown. For instance, you might simply want to show clicks in blue and whistles in green. However, for clicks and whistles that have been assigned to a Detection Group, you may want to colour them by the colour assigned to the group.

Using Old PAMGuard Configurations

Old PAMGuard configurations will work with the new version. However please note the following:

  1. New classes will be added to the configuration files, so they will no longer work with older PAMGuard versions.
  2. Display colour options will be lost and most data displayed on the map may default to black. This is due to the above changes to how colours are managed. Changing back to the colours of your choice is relatively simple through the PAMGuard GUI.


Latest Stable Version 1.15.11 May 2017

Bug Fixes

  1. Bug 317. Rocca Module Data Purging. The ROCCA module was not performing data purging when using classifiers developed for Hawaii/Temperate Pacific/North Atlantic datasets. This has been corrected.
  2. Bug 320. Pamguard stopped reading Click Detector Event data from database when target motion analysis information was encountered. Corrected.
  3. Bug 321. Problem reading Soundtrap 4 files. Fixed.


  1. Added Copy-to-Clipboard button to Warning dialogs, to store error messages and stack trace information on the Windows clipboard. This information can then be easily pasted into emails, text documents, etc when contacting Pamguard support.
  2. Enhancements and bug fixes made to Difar module during 2017 ACE voyage.
  3. Rocca Module: added StartHr, ProportionWhists and ProportionClicks parameters to Event classifier
  4. The installer now allows the user to enter command line switches/parameters to be included in *.ini files.


Version 1.15.10 March 2017

Bug Fixes

  1. Bug 308. Map Overlay Control. Storage of data saying what get's plotted on each map and for how long became corrupted and the list grew to a ridiculous size. Code has been put in place to a) stop it happening again and b) to repair any configuration files which are corrupted. Corrupted files will be slow to load, slow to save and will be > several megabytes in size. It may be necessary to delete the PamguardSettings table in any databases since these too may have become oversized which will slow down viewer mode PAMGuard start-up.
  2. Bug 309. Rocca would crash when the user would press the classify button after the contour was recalculated. This has been corrected.
  3. Bug 310. When exiting Viewer mode, PAMGuard queries the user whether they are sure they want to exit without saving even though they selected Save and Exit. Corrected, and added an Exit without Save option.
  4. Bug 311. When double-clicking on a psf file to start PAMGuard, the working directory is set as the location of the psf and not as the installation folder. The library subfolder (\lib or \lib64) uses a relative path from the working folder, and therefore is set incorrectly. This has been fixed.
  5. Bug 314. If PAMGuard is started by double-clicking on a psf, nothing happens when the user selects save as new configuration. This has been fixed.
  6. Bug 315. code searched for file in working folder, which is the installation folder when starting PAMGuard using a shortcut link. But when double-clicking on a psf, the working folder is the location of the psf. This has been fixed.
  7. Bug 316. Another error reading metadata for Dtag and SoundTrap files has occurred due to a format change in dTag metadata. This has been fixed.

Version 1.15.09 January 2017


  1. Bug 306. Certain methods have been querying AcousticDataUnit.getDuration and expecting to receive a response in milliseconds. However, getDuration actually returns the number of samples.  This has been corrected.


A major change in this version of PAMGuard is how plug-ins are managed. PAMGuard now has the ability to dynamically load plug-in modules (saved as jar files) at runtime. This will greatly simplify the process of testing and distributing newly developed modules, since only a small jar file will be required rather than a new bespoke PAMGuard installation.

Module code development remains largely unchanged, in most cases simply requiring the addition of an interface class.  Instructions for the development of new modules utilizing the plug-in scheme can be found here.  Plug-in modules can be downloaded from the PAMGuard website downloads page, but developers are encouraged to host and maintain their own modules.

Modules of interest to the general PAM community will remain as part of the core PAMGuard installation. However, specialized modules which are useful to only a small number of users have been removed and are available as a separate download. The following modules have been removed:

  1. Resource Monitor
  2. WILD ArcGIS Interface
  3. Workshop Demo Detector
  4. Echo Detector and IPI Demo (bundled together, due to dependencies)

Other Changes

The installer has been updated to handle both 64 bit and 32 bit installations. PAMGuard psf files are now registered in the Windows Registry, so double-clicking on a psf file should run PAMGuard in normal mode (as opposed to Viewer or Mixed modes). Note that the Windows Registry can only hold a single executable reference for psf files; therefore, for users with multiple installations of PAMGuard, double-clicking on a psf will run the most-recently installed version of PAMGuard on the system.

Version 1.15.08 November 2016

Bug fix 305 introduced a different bug, so decoding file times of non-sound trap files stopped working. This is now also fixed.

Version 1.15.07 November 2016

This release contains two bug fixes.

  1. Bug 303. Some ASIO sound cards not working with either ASIO system in PAMGuard. For the PAMGuard ASIO system, this was due to a data format used by some sound cards never being properly implemented. For the “New ASIO system” which is based on jAsioHost, the unpacking of that format contained a bug which returned incorrect numbers, so data were swamped with noise. Both systems are now fixed. By preference, users should use the PAMGuard ASIO system since the JAsioHost based system seems to drop samples when many channels are running at high sample rate.
  2. Bug 305. Date and Time not being correctly extracted from wav files created using SoundTrap recorders. Fixed by correctly finding and unpacking information in the accompanying xml log files that come with SoundTrap files.

Version 1.15.06 November 2016

This release contains bug fixes from release 1.15.05, mostly concerning the new target motion analysis methods. Bugs were found in several places in the system, affecting calculations using all three methods: Least Squares, 2D Simplex and 3D Simplex. To the best of our knowledge, all issues are now resolved.

Bug Fixes

  1. Bug 291. Click Detector Click Classifier: If this is set to "none" the click detector will freeze / crash and will put the psf file into a state where it will never load again. Incredibly, this bug seems to have been in place for several years and no one has come across it until now. It's fixed.
  2. Bug 292. Incorrect labels on Target Motion panel in viewer - 3D algorithm was labelled as 2D.Fixed
  3. Bug 293. Errors displayed in the click detector target motion panel were wrong in the graphics for the Simplex localisers and wrong in the tabulated data for the least square model. Both fixed.
  4. Bug 294. Click classifier was crashing when the “min amplitude” option was used. This is fixed.
  5. Bug 295. If a click has a total length of a single sample, the code attempting to estimate the time delay between channels would crash. This is now fixed. This could only occur if both pre sample and post sample were set to 0 in the click detector, which is generally not a good idea, so this bug may have been there for some time, it's just that no one noticed before. Fixed
  6. Bug 296. Context menu popping up in click detector when marking clicks in Viewer mode. This has been fixed so that in viewer mode, the menu will only appear when you right click on the display.
  7. Bug 297. Airgun display was not correctly showing itself at fixed locations, but always following the vessel track. This is now fixed.
  8. Bug 299. Threading Hydrophone locator. Bug found in hydrophone heading calculation has been fixed.
  9. Bug 300. GUI Tab panel selections were not being restored correctly when PAMGuard displays were split across multiple frames. Fixed.
  10. Bug 301. Multiple errors in the target motion module have been fixed.
  11. Bug 302. Target motion calculations taking too long when many clicks are included in a track. Mostly a problem when using automatic click train id. Fixed by setting an optional maximum number of clicks to use in a track.

Version 1.15.05 September 2016

Bug Fixes

  1. Bug 273. Sound files in viewer data map. These were not being correctly catalogues in the datamap when using the PAMGuard viewer which meant that PAMGuard was not correctly loading sound data during offline analysis. This is now fixed.
  2. Bug 287. Slow database. This has been solved by setting the default behavior of the database to have Auto Commit set to ‘off’
  3. Bug 288. Fixed problem of missing help file image
  4. Bug 290. Click bearings on spectrogram display plug in were reversed if the first hydrophone was behind the second hydrophone in the configuration. This is now fixed so that it displays the same bearings as the main click detector display.

Target Motion Analysis

A major piece of work has been undertaken to improve the Target Motion tracking with PAMGuard. Details are available in the online help. Users of the Click Detector will notice the following changes:

  1. There is now a choice of least squares and Simplex based algorithms for real-time animal tracking. The improved algorithms also provide better error information both for display on the map and for storage in the database.
  2. The number of data streams associated with the click detector has been tidied up so that there are a) All Click, b) Tracked Clicks (those which are part of an event) and c) Events.
  3. When tracking online, all the click marking information is written to the same database tables as are used for offline target motion analysis. This means than when reviewing data offline, the tracks created in real time are now available for review and further analysis.
  4. A number of user options are now available for automatic click train identification and tracking.
  5. The automatic click train identification is now using the same internal structures as the manual tracking, so it’s possible to combine automatic and manual tracking.
  6. Improved options are available to the user, via the click detector bearing time display, to correct and relabel clicks / entire click trains.

Developers will hopefully find that the target motion code has been improved in a way which will make it much easier to provide target motion localization for other detection types (e.g. whistles) in the future.

Other Features

Logger Form Design

A GUI driven system for designing Logger forms has been released. Currently, this feature has no online help, but is reasonably intuitive compared to the old method of typing directly into the database.

Improved Number handling

Users have often found that PAMGuard can be “jumpy”, i.e. the spectrogram does not scroll smoothly, but pauses for a second every few seconds. This is caused by the Java garbage collector cleaning up unused objects in memory. With 64 bit versions, which allow for more memory, some of these pauses were becoming quite long (due to the increased amount of memory that needed to be cleaned up). In some circumstances, these pauses were making data acquisition systems unstable. We have therefore entirely rewritten the way in which PAMGuard handles arrays of spectrogram data (complex numbers) so that instead of large numbers of small Java objects there are now fewer, larger, simpler java objects. These reduce processing delays for garbage collection and give an overall speed improvement, but will otherwise not be noticed by users.

Click Detector RainbowClick file output

This feature has been removed since it has been obsolete for several years. Users should use the PAMGuard binary storage system for Click Detector data.

Version 1.15.04 July 2016

Bug Fixes

A number of bug fixes and code improvements have been made since V 1.15.03:

  1. Bug 272. File types: Some File Open / File Save dialogs were allowing selection of all file types. e.g. Save Configuration As, Section of whistle classifier training file, Map file Selection, These have now been changed so that only the correct type of file can be selected.
  2. Bug 274. GPS Memory leak. A Memory leak associated with GPS data collection has been found which could cause PAMGuard to run out of memory after a day or two’s operation. This has now been fixed.
  3. Bug 275. Painting of thumbnail on the Map display time slider. Have fixed a small problem in the graphical display. The visibility of components on this slider has also been improved and a log time scale option is available to facilitate in map data display.
  4. Bug 276. The default hydrophone sensitivity was -201dB re 1V/uPa. This was supposed to be used with a default preamp gain of 30dB. For some reason gain was no longer being added. We have therefore set a default sensitivity of -170dB and left gain at zero. This is more typical of many hydrophones in use today. 
  5. Bug 277. Text fields in classifier dialog were not large enough to display times greater than 10ms. We have increased length of text fields in the dialog.
  6. Bug 278. Have future proofed against potential binary file format changes in future releases. New PAMGuard releases will always be able to open older binary files, however, with previous PAMGuard releases if a newer file format was opened, then PAMGuard was unable to check that the file format was newer and would attempt to read the files and might even corrupt them. Now it will recognise that it cannot open the files, display appropriate error messages and not attempt to read the files. NOTE that at this time there are no planned file format changes and that this is purely a future proofing exercise.
  7. Bug 279. GUI Resizing: The whole PAMGuard GUI would suddenly resize to something very small when a dialog is opened. This has been traced to improper use of a common dialog component SourcePanel which tries to repack its parent Window. Some programmers had inadvertently set it to repack the main PAMGuard GUI instead. This has been Fixed.
  8. Bug 280. Recorder control option to automatically restart recording were causing confusion. It was working in that the recorder would return to its previous state, but it was sometimes difficult for users to set it so that recording would always start as soon as PAMGuard started. More sensible and easy to understand options have been developed in a new options dialog.
  9. Bug 281. Click classification dialog has grown too big to fit on the screen. The options have now been split across three tabbed panes which solves the problem.
  10. Bug 282. Quiet clicks causing too many false classifications. An additional option has been added to the click classifier to limit a class to a range of amplitude.
  11. Bug 283. The spectrogram display was not displaying data in Viewer mode. This has been traced to a problem in offline data mapping and has been fixed.

Version 1.15.03 April 2016

A single bug fix concerning import from Access databases to SQLite.

  1. Bug 271. Problem 1 was that the incorrect settings were being imported into the new database. Problem 2 was that indexing of imported click events in the new database was incorrect. Both these issues have now been fixed.

Version 1.15.02 March 2016

A number of small bug fixes following release of 1.15.00.

Bug Fixes

  1. Bug 266. Clip generator crashed in viewer when the path for output files was not defined even if files were not being created. Fixed.
  2. Bug 267. Click detector not calculating correct bearings when multiple hydrophone pairs with different separations were used. Fixed.
  3. Bug 268. ROCCA module was not saving WAV file clips. Fixed.
  4. Bug 269. Whistle and Moan detector paired bearing localiser was not working. This localizer searches for matching whistles on pairs of hydrophones. Bearings from each pair are crossed to create a localization. Fixed.
  5. Bug 270. Improved file names display in Pamguard Viewer offline data map and datagram creation.