CP1 Current Profile datagram format
The CP1 Current Profile datagram is a proprietary format created by Kongsberg Maritime. The datagram exports the velocity of the water current from the seafloor and from a selection of depth layers in the water column.
Format
struct CurrentProfileStruct
{
  public short MessageId;
  public short MessageVersion;
  public ulong PingTime;
  public float StartRange;
  public float SampleInterval;
  public short NumberOfValues;
  public bool IsVesselRelative;
  public bool IsValidBottomData;
  public float BottomVelocityNorth;
  public float BottomVelocityEast;
  public float VesselHeading;
}
Start loop (NumberOfValues):
struct CurrentSampleStruct
{
  public float VelocityNorth;
  public float VelocityEast;
  public bool ValidData;
}
End of datagram:
  public short Terminator;
Description
•  MessageIdDatagram identifier
•  MessageVersionVersion of datagram specification (Integer)
•  PingTimeTime (Time of ping)
•  StartRangeStart range (Metres)
•  SampleIntervalSample interval (Metres)
•  NumberOfValuesNumber of values in datagram
•  IsVesselRelativeData relative to vessel (True)
•  IsValidBottomDataData from seafloor is valid (True/False)
•  BottomVelocityNorthVelocity of the water current at the seafloor (m/s) (Positive value is "North")
•  BottomVelocityEastVelocity of the water current at the seafloor (m/s) (Positive value is "East")
•  VesselHeadingShip heading (Degrees) (At time of ping)
•  VelocityNorthVelocity of the water current at the given depth layer (m/s) (Positive value is "North")
•  VelocityEastVelocity of the water current at the given depth layer (m/s) (Positive value is "East")
•  ValidDataData from depth layer is valid (True/False)