Owner`s manual

Command Flexibility
Letters in the Command header may be upper or lowercase, and spaces can appear in the commands, as desired. The decimal number
parameters in Commands are ascii-encoded-decimal number strings that normally range from 0 to 255. There may be any number of
digits in a parameter (eg: 5, 21, 114), and a parameter may optionally include any number of leading zeroes (ie: 002, 02, and 2 are all
equivalent). Parameter values normally should not exceed 255, although larger numbers are allowed. Numbers greater than 255 are
truncated to 1-byte internally (this is actually handy for the optional checksum parameter, discussed later). A null parameter (nothing
between the commas) will evaluate to 0. An 'X' character may be placed in a parameter position, and will evaluate to 255, which, in
some commands, is used to IGNORE the parameter. A comma ',' is used to delimit parameter fields. An underscore character '_' may
optionally be substituted for the comma delimiter. A Command will be discarded if 1) it is truncated with a premature CR, LF, or *,
2) if the delimit character is anything other than comma or underscore, or 3) if non-digit chars are embedded in the numerical
parameters (except 'X' may be used in place of a parameter, evaluating to 255 -- this is used to ignore the parameter, for commands that
allow it).
Commands are terminated with a carriage-return (CR) and/or line-feed (LF) character (CR = 0x0d = 13;
LF = 0x0a = 10), to work with string terminations found in various programming environments:
- linux/unix systems use LF (\n aka newline)
- macintosh systems use CR (\r aka return)
- windows/dos systems use CR/LF (\r\n)
Vaux documentation uses the symbol <cr> to indicate termination of Commands (CR and/or LF accepted), and termination of
Messages (LF and CR are sent).
Four VauxProtocol Command formats are defined:
Control-Write: *CW,id,num1(,num2)...<cr> or *CW_id_num1(_num2)...<cr>
Control-Read (poll): *CR,id,num1(,num2)...<cr> or *CR_id_num1(_num2)...<cr>
Program-Write: *PW,id,num1(,num2)...<cr> or *PW_id_num1(_num2)...<cr>
Program-Read: *PR,id,num1(,num2)...<cr> or *PR_id_num1(_num2)...<cr>
User applications use the Control-Write (*CW) Commands, and parse the resulting Status-Messages. User
applications may also use the Control-Read (*CR) Commands, if it is desired to handle Message parsing on a
periodically-polled basis. The Program-Write (*PW) and Program-Read (*PR) Commands are for
programming the system configuration, and are not to be employed in a user application, except as part of a
setup function. Do not use *PW commands in power-up boot code, since power-fluctuations at boot time (eg:
power restoring after an outage), could result in corrupted parameters.
Optional Command Checksums
If a Command includes an extra parameter, the last parameter is presumed to be a checksum of all preceding parameters. The
checksum can be truncated to 1-byte before being sent (overflow discarded) or it can simply be the total sum (which, if over 255, gets
truncated to 1-byte internally).
Example command to set Zone-7 volume to 0-dB:
*CW,23,7,32,0 this is normal command with no checksum
*CW,23,7,32,0,62 this is command with checksum (23+7+32+0=62)
Example command to set Zone-241 volume to 0-dB:
*CW,23,241,32,0 this is normal command with no checksum
*CW,23,241,32,0,296 this is command with total checksum (23+241+32+0=296)
*CW,23,241,32,0,40 this is command with truncated (1-byte) checksum (296-256=40)
Lattis Matrix Switcher 24 Software Version 7.3.0.0