Revision 1

Message Annotations

Note: all multi-byte integral types are in big-endian format unless otherwise specified. All fields without a value specified may be any value.

Message annotations come in two types: message-level and page-level. A message-level annotation may only appear in the main Sequence header, while page-level annotaitons may only appear in sequence stage blocks.

Message-level annotations should only be activated for the outermost message (Sequence). message-level annotations which appear in embeded sequences should be ignored.

Notes

It should be noted that annotation support is always considered optional, and the unit may ignore message annotations if it chooses.

General Format

Every annotation has the general format:

Annotation Format
Size Data Type Value Description
1 unsigned byte Annotation type (ID)
2 unsigned short annotation size (not including the type or this size)
[Annotation-specific]

The following annotations are defined:

Flashing Beacons

Flashing Beacon layout
Size Data Type Value Description
1 unsigned byte 0 Annotation type
2 unsigned short annotation size (not including the type or this size)
1 unsigned byte Flash Pattern
The flash pattern is defined as:
Flash Pattern
Value Flash Pattern
0 Off (not flashing)
1 On (flashing)

There may, in the future, be defined specific flashing patterns. For the time being, flashing is limited to on/off. Units should be forward-compatible and treat all non-Off patterns values as equivalent to On (that is, flashing), if they don't support the specified non-zero flash pattern.

Flash Page

Byte Count Data Type Value Description
1 unsigned byte 1 Annotation Type
2 unsigned short annotation size (not including the type or this size)
1 unsigned byte flash order (0 == on/off, 1 == off/on)
1 unsigned byte flash on time (in centiseconds)
1 unsigned byte flash off time (in centiseconds)
Notes:

This annotation indicates that the page should be flashed. It's flashed on and off (or off and on) for a number of times equal to the total display time, divided by the on+off time, rounded up to a whole on/off cycle.