Standard format events markers
Events are records of non-sample incidents, and can be used to aid interpretation of the deployment data, or for diagnostic purposes.
In Standard format, events and sample data are stored together in chronological order in dataset-1. Sample data should always be stored as complete sets of readings, one set comprising one reading from each active channel, all taken at the same time. However, it may be possible under some fault conditions for only a partial sample set to be stored. It is therefore important when parsing data in Standard format to check for event markers at every reading, not just at the assumed start of every sample set.
Event structure
Bytes | Description |
---|---|
Bytes 0 ... 1 | 16-bit byte-swapped CCITT CRC of Bytes 2 ... 7 |
Byte 2 | Type Code |
Byte 3 | 0xF3 marker byte |
Bytes 4 ... 7 | 32-bit date/time in elapsed seconds format |
Bytes 8 ... 9 | 16-bit count of milliseconds in current second [0 ... 999] |
Byte 10 | Size of event in uint32_t N |
Byte 11 | Event processing info |
Bytes 12 ... (4 × N) - 1 | Auxiliary data (for N > 3) |
Seconds for the date/time are counted from 2000-01-01T00:00:00Z.
Event processing info byte
Bits | Description |
---|---|
Bit 0 | 1: the timestamp of this event is the timestamp of the next following sample set 0: the timestamp of this event does not affect the timestamp of the next following sample set |
Bits 1 ... 7 | Unused |
Type Codes
Type code | Description |
---|---|
0x00 | Unknown or unrecognized events |
0x01 | Time synchronization marker |
0x02 | stop command received |
0x03 | Run-time error encountered |
0x04 | CPU reset detected |
0x05 | One or more parameters recovered after reset |
0x06 | Restart failed: real-time clock (RTC)/calendar contents not valid |
0x07 | Restart failed: logger status not valid |
0x08 | Restart failed: primary schedule parameters could not be recovered |
0x09 | Unable to load alarm time for next sample |
0x0A | Sampling restarted after resetting RTC |
0x0B | Parameters recovered; sampling restarted after resetting RTC |
0x0C | Sampling finished: deployment end time reached |
0x0D | Start of a recorded burst |
0x0E | Start of a wave burst |
0x0F | Power source switched to USB |
0x10 | Streaming now OFF for both ports |
0x11 | Streaming ON for USB, OFF for serial |
0x12 | Streaming OFF for USB, ON for serial |
0x13 | Streaming now ON for both ports |
0x14 | Sampling started, threshold condition satisfied |
0x15 | Sampling paused, threshold condition not met |
0x16 | Power source switched to internal battery |
0x17 | Power source switched to external battery |
0x18 | Twist activation started sampling |
0x19 | Twist activation paused sampling |
0x1A | Wi-Fi module detected and activated |
0x1B | Wi-Fi module de-activated; removed or activity timeout |
0x1C | Regimes enabled, but not yet in a regime |
0x1D | Entered regime 1 |
0x1E | Entered regime 2 |
0x1F | Entered regime 3 |
0x20 | Start of regime bin |
0x21 | Begin profiling "up" cast |
0x22 | Begin profiling "down" cast |
0x23 | End of profiling cast |
0x24 | Battery failed, schedule finished |
0x25 | Directional dependent sampling, beginning of fast sampling mode |
0x26 | Directional dependent sampling, beginning of slow sampling mode |
0x27 | Energy used marker, internal battery |
0x28 | Energy used marker, external power source |
0x29 | Device control action result |
0x2A | Paused deployment resumed by the resume command |
0x2B | Deployment paused using the pause command |
Auxiliary data
Not all the events have embedded auxiliary data; here is a comprehensive list of those that do, with descriptions of the embedded data.
0x20 Regime bin event auxiliary data
Bytes | Description |
---|---|
Bytes 12 ... 15 | Number of readings in the bin |
There is also a derived data channel, type cnt_00, which contains this value from event 0x20 when in the regimes sampling mode. Refer to the Section "Integrating with a profiling float " for further details.
0x21 Begin profiling "up" cast event auxiliary data
Bytes | Description |
---|---|
Bytes 12 ... 15 | 32-bit (4-byte) address of the corresponding sample set |
0x22 Begin profiling "down" cast event auxiliary data
Bytes | Description |
---|---|
Bytes 12 ... 15 | 32-bit (4-byte) address of the corresponding sample set |
0x23 End of profiling cast event auxiliary data
Bytes | Description |
---|---|
Bytes 12 ... 15 | 32-bit (4-byte) address of the first sample set after the cast |
0x03 Runtime error event auxiliary data
Bytes | Description |
---|---|
Bytes 12 ... 15 | 32-bit (4-byte) firmware program address at which the error was detected |
0x27 Energy used marker, internal battery
0x28 Energy used marker, external power source
Bytes | Description |
---|---|
Bytes 12 ... 15 | 32-bit (4-byte) IEEE float, energy consumed from power source since last accumulator reset. |
0x29 Device control action result
Bytes | Description |
---|---|
Byte 12 | Primary data |
Byte 13 | Secondary data |
Byte 14 | RBR proprietary device type code |
Byte 15 | Undefined. |
The primary data byte is defined by:
Byte value | Description | Example |
---|---|---|
0x01 | Device episode startaction sent | Move valve to Atmospheric position |
0x02 | Device episode endaction sent | Return valve to Marine position |
0x20 | Manual activate-device command sent | Turn UV-LEDs on |
0x21 | Manual deactivate-device command sent | Turn UV-LEDs off |
0xFD | Start of schedule segment in segmented mode |
The secondary data byte is defined by:
Byte value | Description |
---|---|
0x03 | Command result - Success |
0x04 | Command result - Failed |
0x05 | Command result - Timeout |
0x06 | Command result - Error |
0x80 | Command result - Device-specific result |
0x81 | Command result - Device-specific result |
0x01 ... 0x04 | Index of segment started in segmented schedule mode |