DynDataStrMsg
Dyn Data Str Msg
AM Type: 82
Source Code
| Field | Bits | Type | Unit | Condition | Mutator | Error | Validator | Description |
|---|---|---|---|---|---|---|---|---|
| ls_header | — | Struct | Always | |||||
| ├── uplink_version | 4 | UInt | Always | |||||
| ├── node_id_high | 4 | Fragment | Always | |||||
| ├── product_code | 8 | UInt | Always | |||||
| ├── node_id | 16 | UInt | Always | |||||
| ├── sequence_number | 8 | UInt | Always | |||||
| └── am_type | 8 | UInt | Always | |||||
| timestamp | 32 | TimestampField | Always | TimestampMutator | ||||
| version | 4 | UInt | Always | RangeValidator[0, 2] | ||||
| commonHeader | — | Switch | Always | |||||
| ├── reserved | 2 | Reserved | version == 0 | |||||
| ├── outputParameter | 2 | Enum | version == 0 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||
| ├── reserved | 1 | Reserved | version == 1 | |||||
| ├── alertReport | 1 | Bool | version == 1 | |||||
| ├── outputParameter | 2 | Enum | version == 1 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||
| ├── alertReport | 1 | Bool | version == 2 | |||||
| └── outputParameter | 3 | Enum | version == 2 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||
| readings | — | Switch | Always | |||||
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 0) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 0) | |||||
| │ ├── totalEvents | 4 | UInt | outputParameter == (MTVV, 0) | RangeValidator[0, 9] | ||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 4] | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 5] | ||||
| ├── transmissionThreshold | 10 | Mtvv | dB | frameNumber == 0 | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 0) | |||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ └── zAxis | — | Struct | — | |||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 1) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 1) | |||||
| │ ├── totalEvents | 4 | UInt | outputParameter == (MTVV, 1) | RangeValidator[0, 9] | ||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 4] | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 5] | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| ├── transmissionThreshold | 10 | Mtvv | dB | frameNumber == 0 | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 1) | |||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ └── zAxis | — | Struct | — | |||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 2) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 2) | |||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (MTVV, 2) | RangeValidator[0, 4] | ||||
| │ └── nEvents | 2 | UInt | outputParameter == (MTVV, 2) | RangeValidator[0, 2] | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 2) | |||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| │ └── zAxis | — | Struct | — | |||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |
| ├── frameHeader | — | Struct | outputParameter == (PPV, 0) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 0) | |||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 0) | RangeValidator[0, 7] | ||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 3] | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 4] | ||||
| ├── transmissionThreshold | 13 | Ppv | mm/s | frameNumber == 0 | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 0) | |||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | RelativeTimestampValidator[0, 86399] | |||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| │ └── zAxis | — | Struct | — | |||||
| │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| ├── frameHeader | — | Struct | outputParameter == (PPV, 1) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 1) | |||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 1) | RangeValidator[0, 5] | ||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 2] | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 3] | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| ├── transmissionThreshold | 13 | Ppv | mm/s | frameNumber == 0 | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 1) | |||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | RelativeTimestampValidator[0, 86399] | |||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| │ ├── zAxis | — | Struct | — | |||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |
| │ └── composedAxis | — | Struct | — | |||||
| │ └── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |
| ├── frameHeader | — | Struct | outputParameter == (PPV, 2) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 2) | |||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 2) | RangeValidator[0, 4] | ||||
| │ └── nEvents | 2 | UInt | outputParameter == (PPV, 2) | RangeValidator[0, 2] | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 2) | |||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||
| │ ├── numWindowsEvent | 8 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 255) | |||
| │ ├── xAxis | — | Struct | — | |||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |
| │ ├── yAxis | — | Struct | — | |||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |
| │ ├── zAxis | — | Struct | — | |||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |
| │ └── composedAxis | — | Struct | — | |||||
| │ └── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |
| ├── frameHeader | — | Struct | outputParameter == (PGA, 2) | |||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PGA, 2) | |||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PGA, 2) | RangeValidator[0, 4] | ||||
| │ └── nEvents | 2 | UInt | outputParameter == (PGA, 2) | RangeValidator[0, 2] | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| ├── numEventsCounted | 6 | UInt | count | frameNumber == 0 | ||||
| ├── numActiveWindows | 14 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 16383) | |||
| ├── samplingRate | 2 | Enum | frameNumber == 0 | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | ||||
| ├── samplingRate | 2 | Enum | frameNumber != 0 | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | ||||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PGA, 2) | |||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||
| │ ├── composedPGAEvent | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ ├── composedRMSEvent | 14 | RMS | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | |
| │ ├── xAxis | — | Struct | — | |||||
| │ │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| │ ├── yAxis | — | Struct | — | |||||
| │ │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| │ └── zAxis | — | Struct | — | |||||
| │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| ├── reportingInfo | — | Struct | outputParameter == (PSA, 2) | |||||
| │ ├── temperature | 12 | Int | Cel | outputParameter == (PSA, 2) | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | ||
| │ ├── numEventsCounted | 6 | UInt | count | outputParameter == (PSA, 2) | ||||
| │ ├── numActiveWindows | 14 | UInt | count | outputParameter == (PSA, 2) | EntryError(DATA_OUT_OF_RANGE, 16383) | |||
| │ ├── samplingRate | 2 | Enum | outputParameter == (PSA, 2) | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | ||||
| │ └── acquisitionMode | 1 | Enum | outputParameter == (PSA, 2) | ALWAYS_ON (0), PERIODIC (1) | ||||
| ├── timestampEvent | 17 | UInt | numActiveWindows > 0 | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||
| ├── xAxis | — | Struct | numActiveWindows > 0 | |||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| ├── yAxis | — | Struct | numActiveWindows > 0 | |||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| ├── zAxis | — | Struct | numActiveWindows > 0 | |||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||
| └── | 0 | — | outputParameter == default |
| Field | Bits | Type | Unit | Condition | Mutator | Error | Validator | Description | WF Address | WF Name | WF Unit | Cloud DP Name |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ls_header | — | Struct | Always | |||||||||
| ├── uplink_version | 4 | UInt | Always | |||||||||
| ├── node_id_high | 4 | Fragment | Always | |||||||||
| ├── product_code | 8 | UInt | Always | |||||||||
| ├── node_id | 16 | UInt | Always | |||||||||
| ├── sequence_number | 8 | UInt | Always | |||||||||
| └── am_type | 8 | UInt | Always | |||||||||
| timestamp | 32 | TimestampField | Always | TimestampMutator | ||||||||
| version | 4 | UInt | Always | RangeValidator[0, 2] | ||||||||
| commonHeader | — | Switch | Always | |||||||||
| ├── reserved | 2 | Reserved | version == 0 | |||||||||
| ├── outputParameter | 2 | Enum | version == 0 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||||||
| ├── reserved | 1 | Reserved | version == 1 | |||||||||
| ├── alertReport | 1 | Bool | version == 1 | |||||||||
| ├── outputParameter | 2 | Enum | version == 1 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||||||
| ├── alertReport | 1 | Bool | version == 2 | |||||||||
| └── outputParameter | 3 | Enum | version == 2 | NO_ALGORITHM (0), MTVV (1), PPV (2), PGA (3), PSA (4) | ||||||||
| readings | — | Switch | Always | |||||||||
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 0) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 0) | |||||||||
| │ ├── totalEvents | 4 | UInt | outputParameter == (MTVV, 0) | RangeValidator[0, 9] | ||||||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 4] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 5] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── transmissionThreshold | 10 | Mtvv | dB | frameNumber == 0 | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 0) | |||||||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ └── zAxis | — | Struct | — | |||||||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 1) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 1) | |||||||||
| │ ├── totalEvents | 4 | UInt | outputParameter == (MTVV, 1) | RangeValidator[0, 9] | ||||||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 4] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 5] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| ├── transmissionThreshold | 10 | Mtvv | dB | frameNumber == 0 | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 1) | |||||||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ └── zAxis | — | Struct | — | |||||||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| ├── frameHeader | — | Struct | outputParameter == (MTVV, 2) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (MTVV, 2) | |||||||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (MTVV, 2) | RangeValidator[0, 4] | ||||||||
| │ └── nEvents | 2 | UInt | outputParameter == (MTVV, 2) | RangeValidator[0, 2] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (MTVV, 2) | |||||||||
| │ ├── timestampEvent | 32 | TimestampField | — | TimestampMutator | ||||||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| │ └── zAxis | — | Struct | — | |||||||||
| │ └── MTVV | 10 | Mtvv | dB | — | OffsetMutator(-55), MultiplierMutator(×20) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[55.0, 100.0] | |||||
| ├── frameHeader | — | Struct | outputParameter == (PPV, 0) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 0) | |||||||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 0) | RangeValidator[0, 7] | ||||||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 3] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 4] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── transmissionThreshold | 13 | Ppv | mm/s | frameNumber == 0 | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 0) | |||||||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | RelativeTimestampValidator[0, 86399] | |||||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| │ └── zAxis | — | Struct | — | |||||||||
| │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| ├── frameHeader | — | Struct | outputParameter == (PPV, 1) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 1) | |||||||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 1) | RangeValidator[0, 5] | ||||||||
| │ ├── nEvents | 3 | UInt | frameNumber == 0 | RangeValidator[0, 2] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| │ └── nEvents | 3 | UInt | frameNumber != 0 | RangeValidator[0, 3] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| ├── transmissionThreshold | 13 | Ppv | mm/s | frameNumber == 0 | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 1) | |||||||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | RelativeTimestampValidator[0, 86399] | |||||||
| │ ├── numWindowsEvent | 7 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 127) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| │ ├── zAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| │ │ └── predominantFrequency | 8 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 255) | RangeValidator[0, 100] | |||||
| │ └── composedAxis | — | Struct | — | |||||||||
| │ └── PPV | 13 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 8191) | RangeValidator[0, 60.0] | |||||
| ├── frameHeader | — | Struct | outputParameter == (PPV, 2) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PPV, 2) | |||||||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PPV, 2) | RangeValidator[0, 4] | ||||||||
| │ └── nEvents | 2 | UInt | outputParameter == (PPV, 2) | RangeValidator[0, 2] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| ├── reportingPeriodSummary | — | Struct | frameNumber == 0 | |||||||||
| │ ├── numEventsAboveReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | overThresholdEvents | count | num_events_above_report_threshold | |||
| │ ├── numEventsBelowReportThreshold | 6 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 63) | a:20:02:00 | underThresholdEvents | count | num_events_below_report_threshold | |||
| │ └── numActiveWindows | 20 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 1048575) | a:20:02:00 | activeTime | s | active_time_seconds | |||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PPV, 2) | |||||||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||||||
| │ ├── numWindowsEvent | 8 | UInt | count | — | EntryError(DATA_OUT_OF_RANGE, 255) | |||||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |||||
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |||||
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |||||
| │ ├── zAxis | — | Struct | — | |||||||||
| │ │ ├── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |||||
| │ │ └── predominantFrequency | 10 | PFrequency | Hz | — | MultiplierMutator(×2) | EntryError(DATA_OUT_OF_RANGE, 1023) | RangeValidator[0, 315] | |||||
| │ └── composedAxis | — | Struct | — | |||||||||
| │ └── PPV | 15 | Ppv | mm/s | — | ScalingMutator(×100) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 200.0] | |||||
| ├── frameHeader | — | Struct | outputParameter == (PGA, 2) | |||||||||
| │ ├── frameNumber | 1 | UInt | outputParameter == (PGA, 2) | |||||||||
| │ ├── totalEvents | 3 | UInt | outputParameter == (PGA, 2) | RangeValidator[0, 4] | ||||||||
| │ └── nEvents | 2 | UInt | outputParameter == (PGA, 2) | RangeValidator[0, 2] | a:20:02:00 | backgroundEvent | boolean | is_background_event | ||||
| ├── temperature | 12 | Int | Cel | frameNumber == 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| ├── numEventsCounted | 6 | UInt | count | frameNumber == 0 | a:20:08:00 | overThresholdEvents | count | num_events_above_report_threshold | ||||
| ├── numActiveWindows | 14 | UInt | count | frameNumber == 0 | EntryError(DATA_OUT_OF_RANGE, 16383) | a:20:06:00 | activeTime | s | active_time_seconds | |||
| ├── samplingRate | 2 | Enum | frameNumber == 0 | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | a:20:08:00 | activeTime | s | active_time_seconds | ||||
| ├── samplingRate | 2 | Enum | frameNumber != 0 | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | a:20:08:00 | activeTime | s | active_time_seconds | ||||
| ├── Reporting Events [nEvents] | — | Seq | outputParameter == (PGA, 2) | |||||||||
| │ ├── timestampEvent | 17 | UInt | — | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||||||
| │ ├── composedPGAEvent | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |||||
| │ ├── composedRMSEvent | 14 | RMS | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | |||||
| │ ├── xAxis | — | Struct | — | |||||||||
| │ │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |||||
| │ │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||||||
| │ ├── yAxis | — | Struct | — | |||||||||
| │ │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |||||
| │ │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||||||
| │ └── zAxis | — | Struct | — | |||||||||
| │ ├── PGA | 15 | PGA | mg_acc | — | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | |||||
| │ └── frequency | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | |||||||
| ├── reportingInfo | — | Struct | outputParameter == (PSA, 2) | |||||||||
| │ ├── temperature | 12 | Int | Cel | outputParameter == (PSA, 2) | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 2047) | a:20:00:00 | temperature | Cel | |||
| │ ├── numEventsCounted | 6 | UInt | count | outputParameter == (PSA, 2) | a:20:08:00 | overThresholdEvents | count | num_events_above_report_threshold | ||||
| │ ├── numActiveWindows | 14 | UInt | count | outputParameter == (PSA, 2) | EntryError(DATA_OUT_OF_RANGE, 16383) | a:20:06:00 | activeTime | s | active_time_seconds | |||
| │ ├── samplingRate | 2 | Enum | outputParameter == (PSA, 2) | F62_5HZ (0), F125HZ (1), F250HZ (2), F500HZ (3) | a:20:08:00 | activeTime | s | active_time_seconds | ||||
| │ └── acquisitionMode | 1 | Enum | outputParameter == (PSA, 2) | ALWAYS_ON (0), PERIODIC (1) | ||||||||
| ├── timestampEvent | 17 | UInt | numActiveWindows > 0 | RelativeTimestampMutator | EntryError(DATA_OUT_OF_RANGE, 131071) | |||||||
| ├── xAxis | — | Struct | numActiveWindows > 0 | |||||||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | a:20:05:00 | pgaXAxis | mg_acc | peak_ground_acceleration_axis_x_event | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | a:20:05:00 | rmsXAxis | mg_acc | root_mean_square_axis_x_event | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | a:20:05:00 | freq1Xaxis | Hz | frequency_1_axis_x_event | |||
| ├── yAxis | — | Struct | numActiveWindows > 0 | |||||||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | a:20:05:00 | pgaYAxis | mg_acc | peak_ground_acceleration_axis_y_event | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | a:20:05:00 | rmsYAxis | mg_acc | root_mean_square_axis_y_event | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | a:20:05:00 | freq1Yaxis | Hz | frequency_1_axis_y_event | |||
| ├── zAxis | — | Struct | numActiveWindows > 0 | |||||||||
| │ ├── PGA | 15 | PGA | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 32767) | RangeValidator[0, 2000.0] | a:20:05:00 | pgaZAxis | mg_acc | peak_ground_acceleration_axis_z_event | |
| │ ├── RMS | 14 | RMS | mg_acc | numActiveWindows > 0 | ScalingMutator(×10) | EntryError(DATA_OUT_OF_RANGE, 16383) | RangeValidator[0, 1000.0] | a:20:05:00 | rmsZAxis | mg_acc | root_mean_square_axis_z_event | |
| │ └── Frequencies [5] | — | Seq | numActiveWindows > 0 | |||||||||
| │ └── | 11 | UInt | Hz | — | RawFrequencyToFrequencyMutator | a:20:05:00 | freq1Zaxis | Hz | frequency_1_axis_z_event | |||
| └── | 0 | — | outputParameter == default |
Worldsensing Format Sources
| Address | Manufacturer | Type | Model | Status |
|---|---|---|---|---|
| a:20:00:00 | Worldsensing | Thermometer | 0 | |
| a:20:01:00 | Worldsensing | MTVVEvent | 0 | |
| a:20:02:00 | Worldsensing | MTVVStats | 0 | |
| a:20:07:00 | Worldsensing | PGAEvent | 0 | |
| a:20:08:00 | Worldsensing | PGAStats | 0 | |
| a:20:03:00 | Worldsensing | PPVEvent | 0 | |
| a:20:04:00 | Worldsensing | PPVStats | 0 | |
| a:20:05:00 | Worldsensing | PSAEvent | 0 | |
| a:20:06:00 | Worldsensing | PSAStats | 0 |
Example
mtvv_v1_msg_fits_in_one_frame
Source: VibrationMeterDataStrMessagesMTVV.py
JSON Message
{
"ls_header": {
"uplink_version": {
"value": "4",
"raw": 4
},
"product_code": {
"value": "94",
"raw": 94
},
"node_id": {
"value": "87",
"raw": 87
},
"sequence_number": {
"value": "1",
"raw": 1
},
"am_type": {
"value": "82",
"raw": 82
}
},
"timestamp": {
"value": "1970-01-01T00:00:00Z",
"raw": 0
},
"version": {
"value": "1",
"raw": 1
},
"commonHeader": {
"reserved": {
"value": "0",
"raw": 0
},
"alertReport": {
"value": false,
"raw": false
},
"outputParameter": {
"value": "MTVV",
"raw": 1
}
},
"readings": {
"frameHeader": {
"frameNumber": {
"value": "0",
"raw": 0
},
"totalEvents": {
"value": "3",
"raw": 3
},
"nEvents": {
"value": "3",
"raw": 3
}
},
"reportingInfo": {
"temperature": {
"value": "20.8",
"unit": "Cel",
"raw": 208
},
"transmissionThreshold": {
"value": "56",
"unit": "dB",
"raw": 20
},
"reportingPeriodSummary": {
"numEventsAboveReportThreshold": {
"value": "3",
"unit": "count",
"raw": 3
},
"numEventsBelowReportThreshold": {
"value": "4",
"unit": "count",
"raw": 4
},
"numActiveWindows": {
"value": "5",
"unit": "count",
"raw": 5
}
}
},
"reportingEvents": [
{
"timestampEvent": {
"value": "1970-01-01T00:00:00Z",
"raw": 0
},
"numWindowsEvent": {
"value": "22",
"unit": "count",
"raw": 22
},
"xAxis": {
"MTVV": {
"value": "60.5",
"unit": "dB",
"raw": 110
}
},
"yAxis": {
"MTVV": {
"value": "60.6",
"unit": "dB",
"raw": 112
}
},
"zAxis": {
"MTVV": {
"value": "60.7",
"unit": "dB",
"raw": 114
}
}
},
{
"timestampEvent": {
"value": "1970-01-01T02:28:21Z",
"raw": 8901
},
"numWindowsEvent": {
"value": "7",
"unit": "count",
"raw": 7
},
"xAxis": {
"MTVV": {
"value": "55",
"unit": "dB",
"raw": 0
}
},
"yAxis": {
"MTVV": {
"error": {
"code": 2,
"subCode": 4
},
"raw": 1023,
"unit": "dB"
}
},
"zAxis": {
"MTVV": {
"error": {
"code": 2,
"subCode": 4
},
"raw": 1023,
"unit": "dB"
}
}
},
{
"timestampEvent": {
"value": "2001-11-24T20:15:45Z",
"raw": 1006632945
},
"numWindowsEvent": {
"error": {
"code": 2,
"subCode": 4
},
"raw": 127,
"unit": "count"
},
"xAxis": {
"MTVV": {
"value": "55.5",
"unit": "dB",
"raw": 10
}
},
"yAxis": {
"MTVV": {
"value": "55.6",
"unit": "dB",
"raw": 12
}
},
"zAxis": {
"MTVV": {
"value": "55.7",
"unit": "dB",
"raw": 14
}
}
}
]
},
"padding": {
"value": "0",
"raw": 0
}
}
Encoded Bytes
40 5E 00 57 01 52 00 00 00 00 11 1B 0D 00 50 31 00 00 14 00 00 00 00 B0 DC 38 0E 40 00 04 58 A1 C0 0F FF FF 3B FF FF F1 FE 05 01 80 70