Special Beta Version (with Java 12) 2.01.01 July 2019


  1. This version of PAMGuard has been upgraded to make it compatible with Java 12. psfx files generated in previous beta releases should be compatible with this version, and vice-versa.
  2. Java 12 is better at handling Windows scaling issues on high-DPI displays. Beyond that, users should not notice much of a difference between this version and previous beta releases.

Core Version 1.15.17 and Beta Version 2.00.17 June 2019

PAMGuard Version 2 contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 427. Soundtrap import not closing binary files properly if BCL files do not contain off-effort 'E' line (Beta only)
  2. Bug 428. Decimator crashing in viewer mode (Beta only)
  3. Bug 429. Click Bearings at 180 degrees (Both)
  4. Bug 430. Rocca calculates inflection point parameters incorrectly (Both)
  5. Bug 431. Error when trying to mark section of spectrogram to send to Bearing Calculator module (Beta only)
  6. Bug 432. MySQL database interface - connection problems (Beta only)

Upgrades (Beta Only)

  1. New display for Gebco Netcdf bathymetry maps.
  2. Difar enhancements based on recent field testing.
  3. Click Train Detector upgrades, including localisation capabilities.
  4. Updates to the Ishmael detectors

Core Version 1.15.16 and Beta Version 2.00.16 May 2019

PAMGuard Version 2 contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 391. Click Detector not registering change in multi-threading option. (Core)
  2. Bug 392. Click Detector throwing exception if multi-threading is turned off and the Basic Sweep Classifier is testing the amplitude range. (Core)
  3. Bug 393. Rocca module not calculating energy, duty cycle, and windowRMS values when manually picking contour points. (Core)
  4. Bug 403. Seismic Veto throwing ClassCastException when downstream of a Signal Amplifier and the multithreading options are changed. Fixed. (Core)
  5. Bug 413. Binary file crashing during load, after a system failure. Failure could cause the file to become corrupt, which caused a crash during subsequent load (Beta)
  6. Bug 414. Whistle Classifier module may not classify properly when analyzing multiple audio files. (Beta)
  7. Bug 415. Click Detector could throw an Out Of Memory error when processing a large dataset. (Beta)
  8. Bug 416. Bearing Localiser was not using the FFT information from it's Source, as it should have been. (Beta)
  9. Bug 418. Rocca module was not classifying clicks properly when in Viewer mode. (Both)
  10. Bug 419. Radar display not showing correct symbol in key. (Beta)
  11. Bug 420. The Click Classifier set was not getting updated properly in Viewer mode. (Beta)
  12. Bug 421. Alarm module resetting the simple count too quickly (Both)
  13. Bug 422. Soundtrap import causing memory problems with large datasets. (Beta)
  14. Bug 423. TD display FX scrolls extremely slowed when super detections were present. (Beta)
  15. Bug 424. Pamguard would occasionally freeze when processing offline files. (Both)
  16. Bug 425. Rocca crashing if Click Detector is used as source but the Click Classifier is not configured properly. (Both)
  17. Bug 426. Clip Generator could cause memory issues when a large number of files were being analyzed. (Beta)


  1. Upgrades to the Group Localiser, including better error estimation. (Beta)
  2. Click Train Detector upgrades, including ability to import time chunks from csv file for batch processing. (Beta)
  3. Better display of microseconds in dialogs. (Both)
  4. Added adaptive noise filter to Ishmael Detectors. (Beta)
  5. Many upgrades to the Sound Playback module, including a high-pass filter, gain control, and the ability to mix wavefrom and envelope data together to listen to high-frequency clicks and dolphin whistles at the same time. (Beta)
  6. New Analog Array Sensors module, to read data from 3-axis accelerometers. (Beta)
  7. Send Email option added to Alarm module. (Beta)
  8. Added ability to scale the PAMGuard display (go to Help > Set Display Scaling Factor to adjust the scale). This, in conjunction with the built-in Windows Display Scaling feature, will hopefully help with issues sometimes found when using 4k/UHD/high-DPI displays. At the moment this does not fix the JavaFX components, but we're working on that. (Both)

Beta Version 2.00.15 January 2019

PAMGuard Version 2 contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 (below) before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 401. AIS graphics in Viewer crashing.
  2. Bug 402. Fixed problem with data from old access database not importing correctly
  3. Bug 403. Seismic Veto throwing ClassCastException when downstream of a Signal Amplifier and the multithreading options are changed. Fixed.
  4. Bug 406. Pamguard resetting UID values in binary files.
  5. Bug 408. Map Key icon not updated when colouring by channel. Fixed.
  6. Bug 409. Fixed Click Detector not showing the correct input source in the dialog
  7. Bug 410. Bug in Difar module, manually editing sonobuoy compass corrections.
  8. Bug 411. Incorrect matching of GPS data sources for calibration in Difar module.
  9. Bug 412. Fixed problem with ship always centering on map.


  1. Improvement to Range Rings in Map display.
  2. Improvement in click train detector speed.
  3. Added table of compass calibration to the Sonobuoy Manager, and option to use magnetic variation as initial calibration.
  4. Matched template classifier extended to handle multiple templates.
  5. New methods for handling and logging time offsets from the PC clock based either on GPS NMEA data or on pings of an NTP time server.
  6. Improvements to Difar module graphics - easier reading, better visibility at night.
  7. Added print screen button to capture/save all PAMGuard screens to file and log the information to the database.
  8. Updates to the Ishmael module.
  9. Added option to the WarnOnce dialog to hide a warning for the current PAMGuard session, but not forever.

Beta Version 2.00.14c October 2018

PAMGuard Version 2 contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 (below) before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 338. Problem displaying coastlines and bathymetric contours around the dateline (+/- 180 longitude) in the map.
  2. Bug 397. Clip Generator not able to find raw data when clips were taken from many channels.
  3. Bugs 398 and 399. Click Detector, FFT Engine and Filter modules were losing source during startup, if the source selected was not the first raw data source in the list.
  4. Bug 400. Spectrogram display running out of memory.


  1. Added decimal degrees option to latitude/longitude dialog.
  2. Added option in the Click Delay parameters to restrict the number of initial samples used in the calculation. This can be useful for cleaning up delays in the presence of echoes and small time delays.
  3. Increased upsampling to 2, 3 or 4 times.
  4. Can now change units and scale type in level meter display.

Beta Version 2.00.14 September 2018

PAMGuard Version 2 contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 381. Logger form loses controls when the order is changed.
  2. Bug 382. Click species check boxes get cleared in toolbar when the Click Classification dialog is closed
  3. Bug 383. Spectrogram max frequency resetting to incorrect value the first time the spectrogram dialog is opened.
  4. Bug 385. Bug in offline toolbar which will crash if the classifier dialog is opened and then closed with no classifiers specified.
  5. Bug 386. Click Detector Sweep Classifier sometimes keeping changed settings even when user tries to cancel or discard changes
  6. Bug 387. Map was stopping displaying data based on the start time of data units. Have changed this to last updated time so that click events will display if they have been recently modified. Otherwise, long events get lost from the display.
  7. Bug 388. Spectrogram annotations not working properly in beta branch. Would make and store mark, but not store snr or notes. Both now fixed for both online and offline operations. Have also added some options controlling SNR measurement period.
  8. Bug 389. Multiple annotations of the same class would not be stored to the database if they had the same class. This was affecting the Spectrogram Annotation module which has now been given two text type annotations.
  9. Bug 391. Click Detector not registering change in multi-threading option.
  10. Bug 392. Click Detector throwing exception if multi-threading is turned off and the Basic Sweep Classifier is testing the amplitude range.
  11. Bug 393. Rocca module not calculating energy, duty cycle, and windowRMS values when manually picking contour points.
  12. Bug 394. Occasional divide-by-0 error in Spectrogram Display time scale.
  13. Bug 395. Problem with hydrophone locator was resulting in an incorrect x position for hydrophone 0.


  1. Better way of coupling scrollers in User Display panels - see new options in main menu.
  2. Added Matched Template Click Classifier. Classifies clicks based on an ideal template to match and a template to reject. An example of this is to classify beaked whale clicks in an environment with dolphin clicks.
  3. Added zoom in/out to Raw Data plugin display in spectrogram.
  4. Added ability to read differential GPS data.
  5. Added check for duplicate settings in the psf file when exiting Pamguard. If duplicate settings are found, user is given the option to leave them in the psf or get rid of them. Duplicate settings are ignored by Pamguard, but can cause the psf file to grow large over time.
  6. New features in PAMGuard Beta mean that psf files created with new versions are not compatible wth earlier versions and all configuration data may be lost if an attempt is made to open newly created psf files with older versions. We have therefore changed the file extension of psf files to .psfx in new Beta releases. Beta releases will still load the older psf files, but when the configuration is saved, the original psf file will remain untouched and data will be written to a psfx file with the same directory and name.

Latest Version 1.15.15 July 2018

Bug Fixes

  1. Bug 381. Logger form loses controls when the order is changed.
  2. Bug 382. Click species check boxes get cleared in toolbar when the Click Classification dialog is closed
  3. Bug 383. Spectrogram max frequency resetting to incorrect value the first time the spectrogram dialog is opened.
  4. Bug 384. Map options dialog loses Whistle & Moan Detector information.
  5. Bug 385. Bug in offline toolbar which will crash if the classifier dialog is opened and then closed with no classifiers specified.
  6. Bug 386. Click Detector Sweep Classifier sometimes keeping changed settings even when user tries to cancel or discard changes
  7. Bug 387. Map was stopping displaying data based on the start time of data units. Have changed this to last updated time so that click events will display if they have been recently modified. Otherwise, long events get lost from the display.


  1. Added zoom in/out to Raw Data plugin display in spectrogram.
  2. Added ability to read differential GPS data.
  3. Added check for duplicate settings in the psf file when exiting Pamguard. If duplicate settings are found, user is given the option to leave them in the psf or get rid of them. Duplicate settings are ignored by Pamguard, but can cause the psf file to grow large over time.

Version 1.15.14 and Beta Version 2.00.13 June 2018

PAMGuard Version 2.xx contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 367. When adding a click to an event that already contained that click, the click was being duplicated in the subtable. (Beta version only)
  2. Bug 368. Whistles from the Whistle & Moan Detector no longer show up on the FX display overlay. (Beta version only)
  3. Bug 369. Map options not showing up in viewer mode when right-clicking on map. (Beta version only)
  4. Bug 370. Rocca crashing when receiving detections from Whistle and Moan Detector.
  5. Bug 371. Rocca loses FFT channel selection when opening params dialog.
  6. Bug 372. Rocca database record incorrectly lists Whistle Classifier file for Clicks.
  7. Bug 373. Incorrect GPS headings in the database are propagated through Pamguard and cause problems with mapping and TMA.
  8. Bug 374. Bearing Errors in Target Motion-3D Loc' calculations.
  9. Bug 375. Low Frequency Clicks not working.
  10. Bug 376. Error when using a serialised data map which spans a period of time in which Pamguard modules have changed.
  11. Bug 377. changes to click events in Viewer Mode not getting saved to database.
  12. Bug 378. TMA dialog not displaying current Model type, and unclear when event not selected.
  13. Bug 379. Channel boxes were being cleared whenever the Decimator settings window was opened.


  1. Soundtrap module - bug fixes and more intuitive user interface when importing Soundtrap data. Also changed the default date/time format to ISO8601 standard. (Beta version only)
  2. A number of upgrades and fixes to the Localiser algorithms, including expanding to work with whistles.
  3. Added option to export all settings and parameters as an XML-formatted file. Note that this required changes to the structure of the Array Manager, and as such any settings (psf) files created with this version of Pamguard cannot be used in older versions. Older psf files can be loaded with this version, but will be converted.
  4. Many updates to the Video Range module. Will currently only work with landmarks. (Beta version only)

Version 1.15.13d and Beta Version 2.00.12c March 2018

PAMGuard Version 2.xx contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 (below) before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 355. Pamguard crashed when database module was present and Rocca tried to load classifier
  2. Bug 356. Ishmael Localiser losing raw audio before it had time to localise
  3. Bug 357. Difar storing Tracked Group latitude in both GroupLatitude and GroupLongitude database columns
  4. Bug 358. Clip Generator not storing overlapping detections properly
  5. Bug 359. Pamguard crashes when selecting auto-scale option in Noise Monitor module
  6. Bug 360. LTSA not loading in viewer mode (Beta version only)
  7. Bug 362. Bug in maximum likelihood bearing estimator grid search (Beta version only)
  8. Bug 363. Rocca throwing exception if user boxes a whistle close to the beginning of a file
  9. Bug 364. LTSA bug - get correct fft length and hop into datablock and output stream
  10. Bug 365. Lose spectrogram settings when converting data from Core to Beta versions (Beta version only)
  11. Bug 366. Rocca manual whistle contour extraction throws error when trying to classify a boxed whistle


  1. During conversion from Core to Beta versions, if there are any problems matching database units to binary store units the UID values will now be set to negative numbers instead of leaving them null. The user is warned about this and encouraged to manually fix the database. (Beta version only)

Version 1.15.13 and Beta Version 2.00.12 January 2018

PAMGuard Version 2.xx contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 (below) before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 341. Temporary objects created in the Rocca module were not being discarded, and could cause memory issues in large datasets.
  2. Bug 342. Rocca was not properly loading a previously-saved EncounterStats file.
  3. Bug 343. Fixed threading issue between Rocca and Click Detector.
  4. Bug 344. Database subtable items were being duplicated when running offline batch processing.  (Beta version only)
  5. Bug 345. Offline Click Event reporting twice as many clicks as there actually were.  (Beta version only)
  6. Bug 346. Click Classifier not properly checking frequency ranges for invalid entries.
  7. Bug 347. Pamguard crashes when loading a Sound Acquisition module when Java 7 is installed on computer. Caused by JFLAC library, which has been recompiled to correct issue.
  8. Bug 348. Map plot overlay menu not updating.
  9. Bug 349. Clip Generator overlay graphics sometimes crashing on map.
  10. Bug 352. Click Detector event marking was not correctly removing clicks from the events tables in the database.  (Beta version only)
  11. Bug 353. Data load information dialog was not updating correctly, particularly when grouped data was relinked to super detections.  (Beta version only)
  12. Bug 354. Whistle Classifier was crashing if user accidentally entered invalid parameters. Have added diagnostics to prevent this.


  1. Can now add echoes to simulated sound acquisition. (Beta version only)

Version 1.15.12b and Beta Version 2.00.11c October 2017

PAMGuard Version 2.xx contains major updates. You should read and understand the notes listed for Beta Version 2.00.10 (below) before proceeding with installation and use of this version.

Bug Fixes

  1. Bug 322. Fixed problem with Log event average and click templates not showing.
  2. Bug 323. Difar module. Fixed a couple of small bugs in the DIFAR system which caused it to not work if old configuratins were used.
  3. Bug 324. Occassional crashing in the AIS Module, as reported by user. Added warnings and more robust error handling.
  4. Bug 325. Fixed bug in complex addition/subtraction methods.
  5. Bug 328. Fixed bug in NMEA data flow which caused a Null pointer exception. (Beta version only)
  6. Bug 330. Problem with certain FLAC files not being read properly. Upgraded jFLAC library to fix.
  7. Bug 332. Fixed problem with secondary maps (those not in the main display) not displaying detections.
  8. Bug 333. Fixed problem with data end times rounding incorrectly. (Beta version only)
  9. Bug 334. GPS dialog causing Pamguard window to resize.
  10. Bug 335. Loss of UID information from Binary Files after data is modified (Beta version only)
  11. Bug 336. Binary file corruption when max file size is changed.

Upgrades (Standard Version)

  1. Linked Rocca module to the Sound Acquisition Module. When running auto-detectors (Whistle & Moan or Click Detector), Rocca will now automatically change the Event number when the source file changes.
  2. Allow user to set custom date format when using Soundtrap source files

Upgrades (Beta Version)

  1. Added sound playback and other useful information to bar on FX display
  2. Updates/bug fixes to the landmark module.
  3. Added a simulated white noise source which can be moved around in the same way as other sources.
  4. Reworked annotation system, and added annotations to binary storage
  5. Added 3D rotation to map display. Hold down the shift key while clicking and dragging on the map to see this in action.
  6. Added database logging and other updates to the Click Detector trigger function
  7. Added circular movement option to source simulation
  8. Allow user to set custom date format when using Soundtrap source files

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.


Version 1.15.00 February 2016

Beta Version 1.15.00 64 bit and Core version 1.15.00 32 bit. Both using identical Java core software but linking to different libraries for control of sound input devices.

This is the first release of a 64 bit version of PAMGuard. As with the 32 bit version a number of C language libraries are required to interface to external sound cards and other data acquisition devices. These have been extensively tested on several different computers, but may not be as stable as the 32 bit versions. Please report any problems immediately to the PAMGuard team.

Other Changes

Updated the configuration file WMM.COF for World Magnetic Model to the latest 2015-2020 version. See https://www.ngdc.noaa.gov/geomag/WMM/soft.shtml

Small changes to the ROCCA classification module:

  1. Remove white spaces and parenthesis characters from RoccaContourStats header row
  2. Report 'N/A' for min time between detections, if there is only 1 detection
  3. Add ability to load standard notes and use in RoccaParameters dialog window
  4. Fixed Rocca multi-threading problem which caused Click Detector to send same click multiple times

Bug Fixes

  1. Bug 253. Database import fails when Access database contains queries. Fixed.
  2. Bug 254. Lookup lists failing in imported SQLite databases. This was caused by the system “padding” topic’s with blank spaces and is now fixed.
  3. Bug 256. Map not updating. Graphics updating was only happening when new GPS data arrived and therefore didn’t update when using static hydrophones. Fixed so that graphics update correctly.
  4. Bug Sound recorder missing a few samples between files. The sound recorder wav file output system has been rewritten in a much simpler form and now won’t lose samples between consecutive files when new files are started automatically. It will also start new files on integer second or minute boundaries when file durations are set to a maximum fixed value.
  5. Bug 262. Access to SQLite database conversion. This would fail when tables were present which were not created by PAMGuard.  Fixes have been put in place for spaces in the table name or for not having an “Id” column. Fixes have not been implemented for spaces in a column name or use of a reserved word as a column name, however if either of these problems do exist it will no longer crash but issue a clear warning and carry onto the next table.


Version 1.14.00 Beta, September 2015

The format of configuration files has changed for version 1.14.00. Older configurations will load with this new version, but configurations saved with 1.14.00 may not open correctly with earlier versions.

PAMGuard Versions 1.14.00 and above will work with Java 8. PAMGuard will continue to work with Java 7, but support for Java 7 will be removed entirely during 2016. This means that the Microsoft Access Database interface will no longer be available. Version 1.14.00 will continue to support Microsoft Access so long as you don’t upgrade your Java version to Java 8.

An alternative database interface has been provided in the form of SQLite which has been extensively tested with all PAMGuard modules. Limited connectivity to MS Access databases using the open source UCanAccess database connection is provided in Viewer mode which will allow users to convert old Access databases to SQLite or MySQL depending on preference. See the PAMGuard help file for further details.

Other Changes

  1. Feature Request 45. Module settings import. Functions have been provided which enable users to import the settings for individual modules into new configurations. See the help file for details.
  2. Feature Request 45. Click classification settings export / import. Click classification settings can be exported individually to files and imported into other click detector configurations. See the help file for details.
  3. GPS Loading into PAMGuard Viewer. This has been modified so that the rules governing GPS data collection and storage also apply when loading data from the database. For instance, if you’ve stored all GPS data, you’ve probably got a record every second in the database which can create memory overflows if you try to load a lot of data in the viewer. You can now tell PAMGuard to only load a data point every n seconds which will reduce the number of points loaded. Useful when making large scale overview maps of a survey.
  4. Sound Trap tools module. This is a development module for users of the Ocean Instruments Sound Trap who have it configured to run automatic click detection. This feature is currently in its development phase and is of little relevance to most users.

Bug Fixes

  1. Bug 246. AIS Data Unpacking. Bug in AIS data unpacker fixed.
  2. Bug 247. Fixed Landmark display. Landmarks were not displaying in the viewer. This is now fixed.
  3. Bug 248. Crash in hydrophone array manager. Bug in array manager would crash PAMGuard when the click detector was configured with more channels than the sound acquisition system (almost impossible to achieve, but someone managed it).
  4. Bug 249. Corrected bugs in Rocca analysis of click events.
  5. Bug 250. DIFAR module was crashing if it attempted to triangulate between more than two simultaneous bearings. Fixed.
  6. Bug 251. Fixed error in DIFAR intensity calculation.
  7. Bug 252. Bug which plotted bearings to whistle and moan detections from the front hydrophone rather than the central position between hydrophones now fixed.



Version 1.13.05 Beta, July 2015


  1. Improved options for plotting clicks on the map in viewer mode – can now select clicks by the type of event they are part of (when marked as part of an offline event).

Bug Fixes

The following bugs have been fixed for this release.

  1. Bug 231. PAMGuard freezing when starting viewer mode. (Caused by an infinite loop in the map module). Fixed.
  2. Bug 232. Incorrect click length calculation in ROCCA module. Fixed.
  3. Bug 233. ROCCA not analysing correct clicks in Viewer mode. Fixed.
  4. Bug 234. Hydrophone import of .paf files crashing. Fixed.
  5. Bug 235. Target motion analyser crashes when changing default bearing line length. Fixed.
  6. Bug 236. Whistle classifier crashing during batch training just prior to writing results files. Fixed.
  7. Bug 237. Logger forms not saving data to database after sound acquisition starts. Fixed.
  8. Bug 238. Viewer mode out of memory error. Have adjusted memory allocation to allow more memory for the database interface. Hopefully Fixed.
  9. Bug 239. Fixed bug in the DIFAR module that was incorrectly preventing cross-fixes for some calls.

Details of these bugs can be found at https://sourceforge.net/p/pamguard/bugs

Version 1.13.04 Beta, June 2015


  1. Spectrogram annotation marks. A simple system for marking spectrograms during real time analysis has been incorporated. To use it, add the module, in the spectrogram settings, select the annotation marks in the ‘Mark Observers’ tab of the spectrogram configuration dialog, and also right click on the spectrogram and select to display the annotations. Annotations are saved to the database so you will also need a database module in your configuration.  
  2. A new system for important warning messages has been implemented. Warnings such as failure to connect to the GPS or a database error will now appear at the top of the main PAMGuard display.
  3. File and Folder audio input systems now have an optional repeat button which is useful when using PAMGuard for demonstration purposes.
  4. The sound File and Folder audio input systems now have an optional time zone setting. Note that PAMGuard analysis should still all be taking place in UTC and that this option is intended to allow the conversion of file times which were not recorded as UTC into UTC and not the other way around. Use the option with caution !
  5. The Open Office Database system has been removed from the list of available options since it is not reliable. If you require a free database solution we recommend you use the MySql Community Server http://dev.mysql.com/downloads/mysql/
  6. Changed Rocca Measurement menu item to open a window containing click events, instead of a submenu listing click events.  Using a window simplifies multiple event selections
  7. The DIFAR module has received numerous improvements and bugfixes after 6 weeks of field testing.

Bug Fixes

The following bugs have been fixed for this release.

  1. Bug 220 Sample counts were wrapping and causing PAMGuard to report incorrect times after 2^31 samples.
  2. Bug 223. Click detector null clicks (This primarily only affected offline file analysis).
  3. Bug 225. Display of remaining recording time. Was only displaying hours, minutes and seconds. Now correctly displays the number of remaining days.
  4. Bug 226. Spectrogram Mark Observer list doesn’t refresh when modules added or removed.
  5. Bug 227. Logger forms not working with MySQL. Several minor issues with the MySQL interface generally and in particular with the logger forms module have been resolved.
  6. Bug 228. Occasional crashing when training the whistle classifier.
  7. Bug 229. Fixed bug in Viewer Mode which caused Rocca to crash when analyzing click event containing unclassified clicks
  8. Bug 230. Click Bearing Display. With a two hydrophone system, clicks calculated to have a bearing of exactly 180 degrees would be displayed at 0 degrees on the bearing time display.


Details of these bugs can be found at https://sourceforge.net/p/pamguard/bugs

Version 1.13.03 Beta, March 2015


Small changes have been made to the ROCCA whistle classifier module: Added Sampling Rate, Number of Channels and Geographic Location to the Rocca contour output file.  Number of Channels and Geographic Location can be specified by the user in the Rocca Parameters dialog Notes tab.

Bug Fixes

A number of minor bugs have been fixed for this release.

  1. Bug 209. Map zoom level. This was zoomed right into a range of about 1m when new maps were created. This is now fixed and it starts with a default range of 10km on the display.
  2. Bug 212. Decimator crashed. This only happened very rarely and only if a very large decimation factor was used, so it’s unlikely to have affected anyone.
  3. Bug 215. Sound acquisition dialog crashing. Could happen if there were no sound cards installed on a system.
  4. Bug 216. Whistle classifier would not work offline (in viewer mode). This is now fixed.
  5. Bug 217. PAMGuard viewer fails to read a configuration at startup. This would cause total loss of the PAMGuard configuration in viewer mode and has been rectified.
  6. Bug 218. SAIL Acquisition card would hang the system. This has also been fixed.
  7. Bug 219. Problems displaying Offline Click Events in the Viewer map have been fixed.


Version 1.13.02 Beta, January 2015

Bug Fixes

  1. Bug 208. Logger forms CHECKBOX control crashes. Fixed.

Version 1.13.01 Beta, January 2015

Bug Fixes

  1. Bug 207. Threading hydrophone error. Caused array location errors if GPS data set to read on a time. Fixed
  2. Bug 205. Crash in 3D localiser if no output CSV file set.  
  3. Bug 197. Click detector reporting “Null Click with no waveform”. Fixed


Small changes made to DIFAR module.

Version 1.13.00 Beta December 2014

Configuration Changes

Menu Layout

The PAMGuard menus have been rearranged into a more intuitive grouping which we believe will help users find functionality more easily.

“Detection” menu has been renamed to “Settings” since many menu items within this menu were not directly to do with “Detection”.

The groupings within the File / Add Modules menu have been rearranged so that they are now:

•             Maps and Mapping

•             Utilities

•             Sensors

•             Displays

•             Sound Processing

•             Detectors

•             Classifiers

•             Localisers

•             Visual Methods

The “Hydrophone Array” menu item moved from “File” to “Settings”

Multi Threading” menu item moved from “Detection” (now “Settings”) to “File”

Start” and “Stop” menu items removed. PAMGuard should be started and stopped using the red and black buttons.

New Modules

DIFAR (Localisation Group)

This module, funded by the Australian Antarctic Division allows the de-multiplexing and calculation of angles from military style DIFAR sonobuoys. See online help for details. 

MEAL Localiser (Localisation Group)

This module, developed by Jamie Macaulay of St Andrews University estimates the 3D localisation of clicks using a variety of algorithms. It’s primarily been developed to track harbour porpoise in three dimensions over scales of 10’s of metres. While currently only working with output from the click detector, we hope eventually to extend its use to whistles as well.

Accelerometer Readout (Sensors group)

This module, funded by NOAA for the South West Fisheries Science Centre (SWFSC), measures pitch and roll from analogue accelerometer sensors in a hydrophone. Data are fed real time into the updated hydrophone array manager in order that bearings from a tetrahedral tracking array are correctly calculated in real world coordinates.

Wild ArcGIS Interface (Maps and Mapping group)

This module, developed by Michael Oswald / SWFSC, allows PAMGuard to output data in a format suitable for display in the WILD ArcGIS marine mammal survey package. See online help for details.

Alarms (Utilities Group)

This is a general system of visual and audio alarms developed by Doug Gillespie for use on a variety of projects. The alarms can be coupled to any module or detector in PAMGuard. Where appropriate, modules can control which of their data will cause an alarm action (e.g. in the Click detector you can set which types of classified click will fire the alarm). See online help for details.  

Noise Band Monitor (Sound Processing Group)

This module, developed by Douglas Gillespie, Measures octave of third octave noise bands. See online help for details.

Filtered Noise Measurement (Sound Processing Group)

This module, developed by Douglas Gillespie, measures noise levels in a single frequency band using a variety of filter functions. See online help for details.

Envelope Tracing (Beta Only, Sound Processing Group)

This module, developed by Douglas Gillespie, traces the envelope of a stream of audio data. In particular, it can be used to generate audio output from high frequency data. See online help for details.

Long Term Spectral Average (Sound Processing Group)

This module, developed by Douglas Gillespie, calculates the long term spectral average of audio data for a spectrogram display. See online help for details.

Echo Detector and Sperm Whale IPI Computation (Beta only, Sound Measurements Group)

These two modules, developed by Brian Miller of the Australian Antarctic Division can be used to estimate the inter pulse interval of sperm whale clicks. (No help available)


New Features

Hydrophone Configuration

The hydrophone configuration system within PAMGuard has been substantially rewritten, partly so that it can support multiple remote buoys (e.g. DIFAR buoys) each of which needs to be localised individually. As a consequence, the layout of the Array Manager dialog will appear somewhat different. Details are available in the online help.

FLAC File Support

Can now read raw audio data direct from FLAC files. FLAC is a lossless compression algorithm for audio data. Files, or folders of files are accessed in the same way as WAV and AIFF files in the Sound Acquisition module. In a future release we also hope to provide support for writing FLAC files from the sound recorder module.

Sound Recorder Module

Now supports writing 8 and 24 bit as well as 16 bit files. Also writes data to dated sub folders, starting a new folder each day (UTC). Also provides additional information on disk space on the main display panel. Millisecond time is also now included in the output file names.

Datagram Options

Datagram options in Viewer have been improved so that the user has to verify the time binning for datagrams the first time the viewer is run and can also change the time bins from the File menu (See the File/BinaryStore/Datagram options menu.

Viewer Configuration

The Viewer configuration is now saved into a separate database table from “normal” settings so that Viewer can run at same time as normal operation, but with slightly different display settings.

Spectrogram Display

A system of sliders for setting the frequency and amplitude ranges of the spectrogram display has been implemented. Click the grey button on the top right corner of the spectrogram display … 

Video Range Module

The video range module has been modified so that it can estimate distances based on fixed objects within a picture as well as the horizon.

Improved Filter Options

Filter options (used as stand-alone filter modules and also within many other modules, such as the click detector and the Filtered Noise Measurement module) have been improved so that the user can specify arbitrarily shaped Finite Impulse Response filters (see online help for details).

Radar Display

Can now show bearings relative to true North OR the vessel heading. Also has the option of only showing certain types of click and whistle.

Bug Fixes

  1. Reading of wav files. Modifications to the Java wav file reading code in order to read wav files between 2 and 4 GByte in size (the wav standard extends to 4 Gbyte, but Java for some reason only supports up to 2Gbyte)
  2. Ishmael Detector configuration. It was impossible to correctly configure these detectors and configuration settings were not being saved correctly. This has now been rectified.
  3. Logger forms input of character data. Was causing an exception when character input fields were cleared.
  4. Click detector inter click interval display was not working in viewer mode. This has been rectified.
  5. Configuration loading. This has been rationalised since it was often confusing to users. It is now no longer possible to change configurations once PAMGuard has been launched and pressing ‘Cancel’ on the select dialog causes PAMGuard to exit.
  6. Airgun display. If this was included in the PAMGuard model before the GPS module it would hang PAMGuard. This has been rectified.
  7. Fixed occasional exceptions in the sound output modules when playing back from files.
  8. Fixed exceptions in spectrogram user interface.
  9. Fixed National Instruments sound output bug which meant that it could only work with two channel data. Will now work with one to as many channels are supported by the playback device.
  10. Fixed colour bugs in Logger forms which did not display correctly in “night” mode.
  11. Bug fix in simulator. No longer stops or fails to start generating sounds.
  12. Bug in calculated spectrum levels if data were decimated (http://