| EM datagrams on *.kmall format Reg. nr. 410224 rev I

Document information

## Document information

- Product: EM
- Document: EM datagram on *.kmall format
- Document number: 410224
- Revision: I
- Date of issue: 2021-06-04

## Former revisions

- Revision H
- Revision G
- Revision F
- Revision E
- Revision D
- Revision C
- Revision B

## Revision history

### Rev I.01 09 MAY 2022

- Quality factor calculation
  - Added section about total uncertaintiy and quality factor.
- Supported sensor input
  - Updated sound velocity sensor input with examples.
- #MRZ datagram EMdgmMRZ_def
  Description changed:
  - EMdgmMRZ_def.SIsample_desidB - Typo fixed. The BS corrections applied at the centre sample should be reflectivity1_dB, not reflectivity2_dB.
- #SVT datagram EMdgmSVT_def
  Modified fields:
  - EMdgmSVTinfo_def.sensorInputFormat - Support for Valeport NMEA and XDR sound velocity added.
- #SCL datagram EMdgmSCL_def
  Modified fields:
  - EMdgmSCLdataFromSensor_def.clockDevPU_microsec - Field changed from nanoseconds to microseconds due to problems with overflow.

### Rev I. 04 JUN 2021

- Document information
  - All former revisions have been added.
  - Revision history cleaned up. Links added to related fields.
- Multibeam data logging
  - Description addded of how logged multibeam datagrams are partitioned and how to combine them to a complete multibeam datagrams.
- Common #Sxx (sensor) datagrams
  Description changed:
  - EMdgmScommon_def.sensorStatus - Description changed to clarify data OK and sensor active.
- #SKM datagram EMdgmSKM_def
  Description changed:
  - EMdgmSKMinfo_def.sensorInputFormat - Code Octupus MCOM removed from the list due to it has never been supported.
  Modified fields:
  - EMdgmSKMinfo_def.sensorDataContents - Bit number 3 is now only heave. Was previously heave and vertical velocity. Bit number for error field (bit number 5) replaced by delayed heave.
  - KMbinary_def.status - The status of error fields (bit number 5, 21) are deprecated. Changed to delayed heave as the official KM Binary sensor input format. Bit number 6, 22 for delayed heave will still be present.
  - EMdgmSKMinfo_def.sensorStatus - Description changed to clarify data OK and sensor active. Bit number 1 is used for marking the sensor is chosen as active attitude velocity if using attitude split (one sensor input as attitude only, and one sensor input for attitude velocity).
- #SVT datagram EMdgmSVT_def
  Description changed:
  - EMdgmSVTinfo_def.sensorStatus - Description changed to clarify data OK and sensor active.
- #SPO datagram EMdgmSPOdataBlock_def
  Description changed:
  - EMdgmSPOdataBlock_def.correctedLat_deg - Corrected position is now added for inactive sensors.
  - EMdgmSPOdataBlock_def.correctedLong_deg - Corrected position is now added for inactive sensors.
  - EMdgmSPOdataBlock_def.speedOverGround_mPerSec - Speed is now added for inactive sensors.
  - EMdgmSPOdataBlock_def.courseOverGround_deg - Course over ground is now added for inactive sensors.
  - EMdgmSPOdataBlock_def.ellipsoidHeightReRefPoint_m - Ellipsoid height is now added for inactive sensors.
- #CPO datagram EMdgmCPOdataBlock_def
  Description changed:
  - EMdgmCPOdataBlock_def.correctedLat_deg - Corrected position is now added for inactive sensors.
  - EMdgmCPOdataBlock_def.correctedLong_deg - Corrected position is now added for inactive sensors.
  - EMdgmCPOdataBlock_def.speedOverGround_mPerSec - Speed is now added for inactive sensors.
  - EMdgmCPOdataBlock_def.courseOverGround_deg - Course over ground is now added for inactive sensors.
  - EMdgmCPOdataBlock_def.ellipsoidHeightReRefPoint_m - Ellipsoid height is now added for inactive sensors.
- #SDE datagram EMdgmSDE_def, updated to version 1
  New fields:
  - EMdgmSDEdataFromSensor_def.depthRaw_m - Raw depth reading from sensor
- #MRZ datagram EMdgmMRZ_def, updated to version 3
  New functionality:
  - To support dual head, dual swath, EMdgmMbody_def is added to every multibeam datagram partition for logging purposes. Note, these fields are removed in the final *.kmall file. See Multibeam data logging for details.
- #MWC datagram EMdgmMWC_def, updated to version 2
  New functionality:
  - To support dual head, dual swath, EMdgmMbody_def is added to every multibeam datagram partition for logging purposes. Note, these fields are removed in the final *.kmall file. See Multibeam data logging for details.

### Rev H. 03 APR 2020

- #MRZ datagram EMdgmMRZ_def, updated to version 2
  New fields:
  - EMdgmMRZ_pingInfo_def.activeModes - New variable. Showing active modes. Currently used for EM MultiFrequency Mode only. Replaced EMdgmMRZ_pingInfo_def.padding4
  Modified fields:
  - EMdgmMRZ_pingInfo_def.frequencyMode_Hz - Added new frequencies for EM 2040 and EM 2040PM.

### Rev G. 01 NOV 2019

- #FCF datagram EMdgmFCF_def, new datagram for backscatter calibration
- #MRZ datagram EMdgmMRZ_def, updated to version 1
  New fields:
  - EMdgmMRZ_pingInfo_def.bsCorrectionOffset_dB - Backscatter offset set in the installation menu.
  - EMdgmMRZ_pingInfo_def.lambertsLawApplied - Beam intensity data corrected as seabed image data (Lambert and normal incidence corrections).
  - EMdgmMRZ_pingInfo_def.iceWindow - Ice window installed.
  - EMdgmMRZ_pingInfo_def.padding4 - Padding for byte alignment.
  - EMdgmMRZ_txSectorInfo_def.highVoltageLevel_dB - 20log(Measured high voltage power level at TX pulse or Nominal high voltage power level). This parameter will also include the effect of user selected transmit power reduction (transmitPower_dB) and mammal protection. Actual SL = txNominalSourceLevel_dB + highVoltageLevel_dB. Unit dB.
  - EMdgmMRZ_txSectorInfo_def.sectorTrackingCorr_dB - Backscatter correction added in sector tracking mode. Unit dB.
  - EMdgmMRZ_txSectorInfo_def.effectiveSignalLength_sec - Signal length used for backscatter footprint calculation. This compensates for the TX pulse tapering and the RX filter bandwidths. Unit second.
  Description changed:
  EMdgmMRZ_txSectorInfo_def.txNominalSourceLevel_dB - Actual SL = txNominalSourceLevel_dB + highVoltageLevel_dB. Unit dB re 1 microPascal.
- #MWC datagram EMdgmMWC_def, updated to version 1
  New fields:
  - EMdgmMWCrxBeamData_def.detectedRangeInSamplesHighResolution - The same information as in EMdgmMWCrxBeamData_def.detectedRangeInSamples with higher resolution. Two way range in samples. Approximation to calculated distance from tx to bottom detection [meters] = soundVelocity_mPerSec * detectedRangeInSamples / (sampleFreq_Hz * 2). The detected range is set to zero when the beam has no bottom detection.
- #SVT datagram EMdgmSVT_def
  Modified fields:
  - EMdgmSVTinfo_def.sensorInputFormat - Kongsberg sound velocity datagrams KSSIS 80 and KSSIS 43 added.

### Rev F. 16 NOV 2018

- New documentation:
  - Datagram format philosophy
  - Extra detections
  - Supported sensor input (partially replacing separate document)
  - KM Binary sensor input format (replacing separate document)
  - Document information (revision history)
- Common:
  New fields:
  - EM_DGM_FORMAT_VERSION - Added to identify KMall version.
  Description changed:
  - EMdgmHeader_def.time_sec, EMdgmHeader_def.time_nanosec, EMdgmSPOdataBlock_def.timeFromSensor_sec, EMdgmSPOdataBlock_def.timeFromSensor_nanosec, KMbinary_def.time_sec, EMdgmSVTsample_def.time_sec, EMdgmCPOdataBlock_def.timeFromSensor_sec, EMdgmCPOdataBlock_def.timeFromSensor_nanosec - Definition of time corrected. Leap seconds are not ignored.
  Old: From Time in second. Epoch 1970-01-01. Ignoring leap seconds.
  New: UTC time in seconds. Epoch 1970-01-01.
- #SVP EMdgmSVP_def, updated to version 1.
  Modified fields:
  - EMdgmSVPpoint_def.padding - float absCoeff_dBPerkm voided. Replaced by uint32_t padding.
- #MRZ EMdgmMRZ_def datagram
  Description changed:
  - EMdgmMRZ_pingInfo_def.attitudeSensorStatus - Description changed.
  - EMdgmMRZ_pingInfo_def.depthMode - Table updated. New table includes all EM systems.
  - EMdgmMRZ_pingInfo_def.detectionMode - Description updated. Added 100 to indicate data from system simulator.
  - EMdgmMRZ_txSectorInfo_def.pulseShading - Description changed.

### Rev E. 25 MAY 2018

- #CPO datagram EMdgmCPO_def added.
- #CHE datagram EMdgmCHE_def added.
- #MWC datagram EMdgmMWC_def
  Description changed:
  - EMdgmMWCrxBeamData_def.sampleAmplitude05dB_p - Description changed.
  - EMdgmMWC_def.beamData_p - Table describing of how to decode beamData updated.
- #IB datagram EMdgmIB_def
  Modified fields:
  - EMdgmIB_def.BISTNumber - Changed from int8_t to uint8_t
  - EMdgmIB_def.BISTStatus - Changed from uint8_t to int8_t

### Rev D. 08 DES 2017

- Common
  - UNAVAILABLE_POSFIX, UNAVAILABLE_LATITUDE, UNAVAILABLE_LONGITUDE, UNAVAILABLE_SPEED, UNAVAILABLE_COURSE, UNAVAILABLE_ELLIPSOIDHEIGHT - Defines describing unavailable data added.
- Common #Sxx (sensor) datagrams
  Description changed:
  - EMdgmScommon_def.sensorSystem - Table descring time synchronization source added.
- #SPO datagram EMdgmSPO_def
  Description changed:
  - EMdgmSPOdataBlock_def.correctedLat_deg, EMdgmSPOdataBlock_def.correctedLong_deg, EMdgmSPOdataBlock_def.speedOverGround_mPerSec, EMdgmSPOdataBlock_def.courseOverGround_deg, EMdgmSPOdataBlock_def.ellipsoidHeightReRefPoint_m - Descriptions changed.
- #SVP datagram EMdgmSVP_def
  Description changed:
  - EMdgmSVP_def - Description modified.
  - EMdgmSVP_def.latitude_deg - Description of unavailable data added.
  - EMdgmSVP_def.longitude_deg - Description of unavailable data added.
- #SVT datagram EMdgmSVT_def added, version 0.
- #SDE datagram EMdgmSDE_def
  Description changed:
  - EMdgmSDEdataFromSensor_def.latitude_deg - Description changed.
  - EMdgmSDEdataFromSensor_def.longitude_deg - Description changed.
- #MRZ datagram EMdgmMRZ_def
  Description changed:
  - EMdgmMRZ_pingInfo_def.latitude_deg - Description of unavailable data added.
  - EMdgmMRZ_pingInfo_def.longitude_deg - Description of unavailable data added.
  Modified fields:
  - EMdgmMRZ_sounding_def.reflectivity1_dB - Swapped with EMdgmMRZ_sounding_def.reflectivity2_dB.
  - EMdgmMRZ_sounding_def.reflectivity2_dB - Swapped with EMdgmMRZ_sounding_def.reflectivity1_dB.

### Rev C. 05 JUL 2017

- #SHA heading datagram EMdgmSHA_def removed.
- #SPO datagram EMdgmSPO_def
  Description changed:
  - EMdgmScommon_def.sensorStatus - Table describing sensorStatus added. Information of active sensors.
- #SKM datagram EMdgmSKM_def, version updated to 1.
  New fields:
  - EMdgmSKMinfo_def.sensorDataContents - New data field added replacing padding.
  Description changed:
  - EMdgmSKMinfo_def.sensorStatus - Table describing sensorStatus added. Information of active sensors.
- #MRZ datagram EMdgmMRZ_def
  Description changed:
  - EMdgmMRZ_pingInfo_def.depthMode - Table description modified.
  - EMdgmMRZ_pingInfo_def.x_kmallToall_m. Renamed from x_txTransducerArm_SCS_m.
  - EMdgmMRZ_pingInfo_def.y_kmallToall_m. Renamed from y_txTransducerArm_SCS_m.

### Rev B. 01 MAR 2017

- Common
  New fields:
  - MAX_NUM_MST_DGMS, MAX_NUM_MWC_DGMS, MAX_NUM_MRZ_DGMS
- #SPO datagram EMdgmSPO_def
  Description changed:
  - EMdgmSPOdataBlock_def.speedOverGround_mPerSec - Description modified.
  - EMdgmSPOdataBlock_def.courseOverGround_deg - Description modified.
- #SKM datagram EMdgmSKM_def
  Description changed:
  - EMdgmSKMinfo_def.sensorSystem - Description modified.

## Copyright

The information contained in this document remains the sole property of Kongsberg Maritime AS. No part of this document may be copied or reproduced in any form or by any means, and the information contained within it is not to be communicated to a third party, without the prior written consent of Kongsberg Maritime AS.

## Warning

The equipment to which this manual applies must only be used for the purpose for which it was designed. Improper use or maintenance may cause damage to the equipment and/or injury to personnel. The user must be familiar with the contents of the appropriate manuals before attempting to operate or work on the equipment.
Kongsberg Maritime disclaims any responsibility for damage or injury caused by improper installation, use or maintenance of the equipment.

## Disclaimer

Kongsberg Maritime AS endeavours to ensure that all information in this document is correct and fairly stated, but does not accept liability for any errors or omissions.