// section H0: header (only one per ping)
u16 H0_SectionName; // 'H0'
u16 H0_SectionSize; // [bytes] size of this entire section
u8 H0_ModelNumber[12]; // example "2024", unused chars are nulls
u8 H0_SerialNumber[12]; // example "100017", unused chars are nulls
u32 H0_TimeSeconds; // [seconds] ping time relative to 0000 hours 1-Jan-1970, integer part
u32 H0_TimeNanoseconds; // [nanoseconds] ping time relative to 0000 hours 1-Jan-1970, fraction part
u32 H0_PingNumber; // pings since power-up or reboot
f32 H0_PingPeriod; // [seconds] time between most recent two pings
f32 H0_SoundSpeed; // [meters per second]
f32 H0_Frequency; // [hertz] sonar center frequency
f32 H0_TxPower; // [dB re 1 uPa at 1 meter]
f32 H0_TxPulseWidth; // [seconds]
f32 H0_TxBeamwidthVert; // [radians]
f32 H0_TxBeamwidthHoriz; // [radians]
f32 H0_TxSteeringVert; // [radians]
f32 H0_TxSteeringHoriz; // [radians]
u16 H0_TxMiscInfo; // reserved for future use
s16 H0_VTX+Offset; // [hundredths of a dB] transmit voltage offset at time of ping (divide value by 100 to get dB)
f32 H0_RxBandwidth; // [hertz]
f32 H0_RxSampleRate; // [hertz] sample rate of data acquisition and signal processing
f32 H0_RxRange; // [meters] sonar range setting
f32 H0_RxGain; // [multiply by two for relative dB]
f32 H0_RxSpreading; // [dB (times log range in meters)]
f32 H0_RxAbsorption; // [dB per kilometer]
f32 H0_RxMountTilt; // [radians]
u32 H0_RxMiscInfo; // reserved for future use
u16 H0_reserved; // reserved for future use
u16 H0_Beams; // number of beams
// section A1: float beam angles, arbitrarily-spaced (only one per ping)
u16 A1_SectionName; // 'A1'
u16 A1_SectionSize; // [bytes] size of this entire section
f32 A1_MoreInfo[6]; // reserved for future use
f32 A1_BeamAngle[H0_Beams]; // [radians] angle of beam relative to array centerline, ordered from port to starboard, first angle < last
angle
// section M1: 16-bit magnitude data (present only during "magnitude-only" water column data mode, many per ping, you assemble them into
complete ping data)
u16 M1_SectionName; // 'M1'
u16 M1_SectionSize; // [bytes] size of this entire section
u32 M1_PingNumber; // pings since power-up or reboot
f32 M1_ScalingFactor; // reserved for future use
u32 M1_TotalSamples; // range samples in entire ping, sample rate is H0_RxSampleRate
u32 M1_FirstSample; // first sample of this section
u16 M1_Samples; // number of samples in this section
u16 M1_TotalBeams; // beams (always a multiple of 2) (typically columns in your memory buffer)
u16 M1_FirstBeam; // first beam of this section (always a multiple of 2)
Page 182 of 210
Version 5.0 Rev r002
Date 05-08-2014
Part No. 96000001