Sonic echosounder data files

Echoview supports data files from the following models of Sonic echosounders:


  • Sonic (Corporation) was previously known as Kaijo.
  • Some Sonic data files can be verified by Echocheck.

KFC-6000/KSE-300 (*.200), KFC-3000 and KFC-1000 (*.100),

KFC-2000 (*.200), KFC-500 (*.050), and KFS (*.FS3)

The files must be named in such a way, as an alphabetical sorting of the file names will sort them into date/time order. Parameter files are not directly supported.

Support for files produced by the KFC-5000 echosounder has been implemented in Echoview, but has not been tested. Contact Echoview support before using these files.

The KFS (*.FS3) data file is similar to the KFC3000 data file format. KFS differences occur in ping navigation record size and depth and data sampling information.

Echoview can read Ping Course (heading), Ping Temperature and Ping Ship speed from KFC-6000/KSE-300 files. A heading variable is derived. Water temperature and Ship Speed are displayed on the Details dialog box.

Assigning time to individual pings (Sonic systems that record two timestamps)

Sonic echosounders record two time streams per ping. These are (i) timestamps and (ii) time increments. The initial ping timestamp in Echoview corresponds to Sonic's timestamp for the first ping. The timestamps for subsequent pings in Echoview are derived by adding time increments to this.

In instances where a time increment for a specific ping is unavailable, Echoview will revert to the corresponding timestamp from Sonic, if the latter is greater. Otherwise, a time increment of 1ms (the minimum increment) is assumed for all subsequent pings until Sonic's timestamp becomes greater. Echoview resumes adding time increments to the most recent Sonic's timestamp when the former become available again.

Assigning time to individual pings (Kaijo systems that record time and MAP records)

Echosounders can record time and MAP records per ping. When navigation data or time data are repeated, for two or more consecutive pings in a data file, Echoview will use the time, from the first ping in each set of repeat values and the time from the next ping with a unique time, to calculate the time for the in-between pings. Time calculation is by linear interpolation between the pings with unique times. Time for pings, before the first ping with a unique time and after the last ping with a unique time, is determined by extrapolation using a ping interval calculated according to the elapsed time from the MAP record and the number of pings in the file.

If there are no navigation data in the file, or there is only one unique time in the file, the date and time from the start of record and end of record fields in the MAP record of the data file, are used to interpolate time for all pings in the data file, by assuming that the MAP records give the time for the first and last pings in the file.

If the file contains any ping times, all times will be in Universal Time Coordinates (UTC). If there are no pings with time in the file, the MAP record times will be used. No record is kept in the data file to indicate whether these times are UTC or local time.

Note: For KFC-6000/KSE-300 data Echoview calculates ping times using the Ping rate (read from the data file) and rounds to the nearest millisecond.

Assigning position to individual pings

Once a unique time has been assigned to each ping, position is determined for each ping by interpolation of the unique positions (from the first ping of each set of repeat values in the file) using the ping times.

This method for assigning a position to pings is used by Echoview for all data file types.

See also

Calibration settings for Sonic data
Raw Variables derived from Sonic data files
Sonic data to Sv and angular position