This page describes the device driver and the device window for the Comstream DAC700 Digital Audio Codec. There are two variants of the driver available. The Comstream-DAC700 driver works with both, the RS232 and the RS485 interface but does not support device presets. The Comstream-DAC700-PRE driver is limited for usage with the RS232 interface but in return implements the device preset functions.
Device window pages
The following table shows which device window pages are available with this individual device type. Tool-bar functions not mentioned here are described at the general description of device windows .
--- The encoder settings
--- The decoder settings
--- The parameters concerning user data multiplexing
--- Shows the actual relay I/O status and defines the relay contact sense / mapping.
--- Lets you edit the device presets in the DAC700. This page is available with the Comstream-DAC700-PRE driver only.
--- The faults page.
--- The device info page.
--- The maintenance page. The configuration parameters described below are set at this page.Configuration parameters
At the maintenance page of the device window there are a couple of configuration parameters which must be set to make the software talk to the DAC700.
| parameter | description |
|---|---|
| address | If you are using the packet protocol / RS485 you must set this to the packet address set in the DAC700. Valid addresses are 1..31, 31 is the factory default. If you have multiple codecs connected to one RS485 bus, each device must have it's unique address. With the RS232 interface, the packet address doesn't care, you can leave this field empty. |
| faultMask | Defines the fault mask applied to the status bits in the DAC700 ("AM" command). See the Comstream manual for details. |
| Serial | Remember to set the line parameters for the serial interface connected to the DAC700. While the DAC700'a factory preset setting is 1200,O,7,1 , the recommended line setting for the use with the sat-nms software is 9600,O,7,1 . See below how to change this setting at the DAC700. |
Communication protocol / Interface type
The DAC700 may be connected to the M&C computer / VLC via RS232 using the Comstream-ASCII-Protocol or by RS485 using the Comstream-Packet-Protocol . The Comstream-DAC700-PRE driver version requires a RS232 interface.
Installation
The DAC700 does not have a front panel control. In order to prepare the DAC700 for use with the sat-nms software, connect an ASCII terminal (or a PC running a terminal program) to the DAC700. If you have a 9 pin RS232 connector at your terminal, you need a straight through 9-pin cable (male/female) for this. The DAC700's factory line settings are 1200,O,7,1, first try this setting at your terminal. Now command the following settings:
| command | description |
|---|---|
| RA 31 | Sets the codecs packet address. You may choose any value between 1 and 31 as long as you set the same value at the address configuration parameter in the software. If you are operating multiple devices on one common interface, ensure that each device is set to a unique address. You may skip this if you intend to use the RS232 port for M&C. |
| RC 9600,O,7,1 | Sets the receivers RS485 port to the recommended line settings. You may skip this if you intend to use the RS232 port for M&C. |
| PC 9600,O,7,1 | Sets the receivers RS232 port to the recommended line settings. Your terminal may show strange characters after you entered this, because it does not understand the data sent by the DAC700 unless you change the line settings at the terminal, too. You may skip this if the DAC700 shall be controlled vie RS485. |
Variables defined by this device driver
| name | type | flags | range |
|---|---|---|---|
| info.driver | TEXT | R/O | StringRange R/O |
| lowLevel.cmd | TEXT | StringRange | |
| lowLevel.reply | TEXT | R/O | StringRange R/O |
| faults.99 | ALARM | R/O | AlarmFlagRange R/O (Communication) |
| faults.commstat | TEXT | R/O | StringRange R/O |
| info.type | TEXT | R/O | StringRange R/O |
| info.version | TEXT | R/O | StringRange R/O |
| info.port | TEXT | R/O | StringRange R/O |
| info.frame | TEXT | R/O | StringRange R/O |
| config.faultMask | INTEGER | SETUP | IntegerRange (0 .. 0) |
| reset | TEXT | NOPRESET | StringRange |
| enc.dataRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| enc.channelID | INTEGER | IntegerRange (1 .. 255) | |
| enc.networkID | INTEGER | IntegerRange (1 .. 255) | |
| enc.mode | CHOICE | EnumRange (MONO DUAL MONO JOINT STEREO) | |
| enc.bandwidth | CHOICE | EnumRange (BW-A BW-B BW-C BW-D) | |
| enc.algorithm | CHOICE | EnumRange (Musicam ISO/MPEG) | |
| enc.clockSource | CHOICE | EnumRange (INTERNAL EXT-ST EXT-RT AES/EBU) | |
| dec.dataRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| dec.protection | CHOICE | EnumRange (OFF ON) | |
| dec.loopBack | CHOICE | EnumRange (OFF PCM-LOOP MPEG-LOOP) | |
| dec.ibsSelect | CHOICE | EnumRange (NONE RELAY RELAY+DATA ALL) | |
| dec.lrToggle | CHOICE | EnumRange (NORMAL REVERSE LEFT RIGHT) | |
| dec.audioMute | CHOICE | EnumRange (UNMUTED MUTED MUTED-L MUTED-R) | |
| dec.testTone | CHOICE | EnumRange (OFF 1kHz LEFT 1kHz RIGHT 1kHz BOTH 9.6kHz LEFT 9.6kHz RIGHT 9.6kHz BOTH) | |
| contactMap.1 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.2 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.3 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.4 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.5 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.6 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.7 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactMap.8 | CHOICE | EnumRange (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16) | |
| contactSense.1 | CHOICE | EnumRange (NRM INV) | |
| contactSense.2 | CHOICE | EnumRange (NRM INV) | |
| contactSense.3 | CHOICE | EnumRange (NRM INV) | |
| contactSense.4 | CHOICE | EnumRange (NRM INV) | |
| contactSense.5 | CHOICE | EnumRange (NRM INV) | |
| contactSense.6 | CHOICE | EnumRange (NRM INV) | |
| contactSense.7 | CHOICE | EnumRange (NRM INV) | |
| contactSense.8 | CHOICE | EnumRange (NRM INV) | |
| contact.1 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.2 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.3 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.4 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.5 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.6 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.7 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| contact.8 | CHOICE | R/O | EnumRange R/O (OFF ON) |
| relay.mask | INTEGER | IntegerRange (0 .. 65535) | |
| relay.invert | INTEGER | IntegerRange (0 .. 65535) | |
| relay.debounce | INTEGER | IntegerRange (20 .. 1000) | |
| mux.relayInterval | INTEGER | IntegerRange (0 .. 10000) | |
| mux.dataInterval | INTEGER | IntegerRange (0 .. 1000) | |
| mux.dataTermination | INTEGER | IntegerRange (-128 .. 127) | |
| mux.duplexMode | CHOICE | EnumRange (SIMPLEX DUPLEX) | |
| ancillary.rate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| ancillary.parity | CHOICE | EnumRange (O E N) | |
| ancillary.databits | CHOICE | EnumRange (8) | |
| ancillary.stopbits | CHOICE | EnumRange (2) | |
| ancillary.blockLength | INTEGER | IntegerRange (30 .. 255) | |
| data2.rate | CHOICE | EnumRange (1200 2400 4800 9600) | |
| data2.parity | CHOICE | EnumRange (O E N) | |
| data2.databits | CHOICE | EnumRange (7 8) | |
| data2.stopbits | CHOICE | EnumRange (1 2) | |
| data2.enable | CHOICE | EnumRange (OFF ON) | |
| data1.rate | CHOICE | EnumRange (300 1200 2400 4800 9600) | |
| data1.parity | CHOICE | EnumRange (O E N) | |
| data1.databits | CHOICE | EnumRange (7 8) | |
| data1.stopbits | CHOICE | EnumRange (1 2) | |
| preset.1.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.1.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.1.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.1.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.1.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.1.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.1.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.2.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.2.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.2.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.2.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.2.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.2.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.2.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.3.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.3.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.3.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.3.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.3.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.3.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.3.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.4.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.4.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.4.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.4.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.4.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.4.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.4.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.5.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.5.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.5.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.5.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.5.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.5.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.5.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.6.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.6.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.6.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.6.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.6.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.6.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.6.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.7.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.7.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.7.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.7.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.7.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.7.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.7.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.8.networkID | INTEGER | IntegerRange (1 .. 255) | |
| preset.8.channelID | INTEGER | IntegerRange (1 .. 255) | |
| preset.8.mode | CHOICE | EnumRange (MONO DUAL JOINT) | |
| preset.8.clockSource | CHOICE | EnumRange (INT EXT-ST EXT-RT AES/EBU) | |
| preset.8.agRate | CHOICE | EnumRange (1200 2400 4800 9600 38400) | |
| preset.8.txRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.8.rxRate | CHOICE | EnumRange (56000 64000 96000 112000 128000 192000 256000 384000) | |
| preset.mode | CHOICE | EnumRange (OFF SWITCH MANUAL) | |
| preset.selection | CHOICE | EnumRange (1 2 3 4 5 6 7 8) | |
| faults.01 | ALARM | R/O | AlarmFlagRange R/O (Tx PLL lock) |
| faults.02 | ALARM | R/O | AlarmFlagRange R/O (Rx PLL lock) |
| faults.03 | ALARM | R/O | AlarmFlagRange R/O (Decoder frame sync) |
| faults.04 | ALARM | R/O | AlarmFlagRange R/O (Audio-L overload) |
| faults.05 | ALARM | R/O | AlarmFlagRange R/O (Audio-R overload) |
| faults.06 | ALARM | R/O | AlarmFlagRange R/O (Network/channel ID) |
| internal.st | INTEGER | R/O | IntegerRange R/O (0 .. 0) |