Xylem H-264 User Manual
Page 8

ASI v2 Operations (PRELIMINARY)
Processing
The ASI typically runs in a low power “idle” mode awaiting serial input. Input buffering is
activated at the first bit received (synchronous signaling) or first byte received (asynchronous
signaling). Data is buffered continuously until a pause of 100 milliseconds (+/- 20 milliseconds)
occurs in the serial input stream. (If the input buffer is filled prior to a 100 milliseconds pause,
an “overrun” is flagged. When the next pause does occur, the ASI processes and transmits the
maximum ALERT messages allowed factory set in software at 10 messages, beginning with the
“first-in” message.)
After any 100 milliseconds pause on the serial input, the contents of the input buffer are parsed
according to rules specific to the input format into 16 bit words. Each pair of 16 bit words is
considered a 16 bit ID value followed by a 16 bit data value and converted into an ALERT 4-
byte binary format message (40 bits). Each ID value is not checked to be less than 8192, but is
converted to a value less than 8192. Similarly, each data value is not checked to be less than
2048, but is converted to a value less than 2048. Parsing of pairs of 16 bit words continues until
all pairs in the buffer are converted, or a maximum of 10 ALERT messages are formed. Any
remaining 16 bit words are discarded.
After the maximum number of ALERT messages are processed (10), all messages are
transmitted in a single RF transmission. When more than one ALERT message is transmitted,
an inter-message delay (MARK tone) of 40 milliseconds is inserted preceding each message
subsequent to the first.
Transmission preamble length is selectable from 101 milliseconds to 665 milliseconds, in
increments of 81.5 milliseconds, with 3 (from an 8 bit) DIP switch. The transmission preamble
is evenly divided between the initial clear carrier (no modulation) and MARK tone modulation.
For example, with a 101 milliseconds preamble selected, the transmitter is keyed (PTT turned
on) for 50.5 milliseconds with no audio input, followed by 50.5 milliseconds of MARK tone audio,
followed by a message of 40 FSK encoded binary bits at 300 bits/sec and, if multiple messages
are being transmitted, repeatably followed by a 40 millisecond MARK tone delay and another
message. The transmitter “warm-up” time (time between “Switched Battery Power” turned on at
transmitter connector until the assertion of PTT) is factory set to 100 milliseconds.
A duty cycle timer enforces a 12 second (factory set in software) delay between transmissions.
A hardware watch-dog timer is used during transmissions to enforce a maximum transmitter on
time to less than 1 second for a single message transmission and less than 3.25 seconds for
multiple message transmissions.
The ASI serial input is double buffered. Immediately following a serial input pause and until the
completion of the processing and transmission of the serial input message(s) received before
the pause, a second buffer is used to accumulate serial data input. During this time period, all
serial input is buffered into the second buffer regardless of any serial input pauses, (i.e. the
serial messages are concatenated).
Following the completion of the ALERT transmission, if serial input has been buffered, the ASI
again waits for a 100 milliseconds pause on the serial input, after which that buffer contents is
processed. Immediately following a serial input pause and until the completion of the
processing,
duty cycle wait time expiration
and transmission of this serial input message(s), the
first buffer is used again to accumulate serial data input. During this time period (including the
12 second duty cycle wait time
), all serial input is buffered into a single buffer regardless of any
serial input pauses, (i.e. the serial messages are concatenated).
If fatal errors occur during serial input, data processing or transmission, the ASI jumps to its
error processing routine. Error processing consists of ensuring the transmitter is off, waiting 30
seconds (+/- 6 seconds), and then performing a software reset (which re-initializes all I/O and
buffers.) During the reset process all serial input is ignored, and any previous serial input is