124
DigESwitch Differential 4200-0352 V1.1

DigESwitch Differential 4200-0352 V1 - Digalog Systems Inc. · To Create A Hardware Asset Right click on the “Hardware Asset” entry and select “Create New . . . “. This will

  • Upload
    others

  • View
    5

  • Download
    1

Embed Size (px)

Citation preview

  • DigESwitch Differential 4200-0352 V1.1

  • DigESwitch Differential

    Table of ContentsHardware Installation ......................................................................................................................................12

    Hardware Installation - 19” rack ..........................................................................................................12

    Software Installation........................................................................................................................................13

    For IVI Installation Only: .........................................................................................................................13

    To Create A Hardware Asset .................................................................................................................14

    To Create A Driver Session ....................................................................................................................14

    Software Installation: ..............................................................................................................................15

    IVI Configuration ...............................................................................................................................................15

    To Create A Logical Name .....................................................................................................................17

    Configuration and Setup ...............................................................................................................................19

    DigESwitch Home Page .........................................................................................................................19

    IP Configuration Page .............................................................................................................................21

    Changing the IP settings on the DigESwitch box ........................................................................25

  • DigESwitch Differential

    Customer Support Page ........................................................................................................................28

    Factory IP Configuration Default Settings ......................................................................................28

    Block Diagram ...........................................................................................................................................32

    Connector Pinout / Layout ...................................................................................................................33

    Overview ..............................................................................................................................................................34

    Features: ......................................................................................................................................................34

    Front Panel .................................................................................................................................................37

    Power LED ...................................................................................................................................................37

    Active LED ...................................................................................................................................................37

    Link LED .......................................................................................................................................................38

    Signal Connectors ....................................................................................................................................38

    Connector J1 ..............................................................................................................................................39

    Connector J2 ..............................................................................................................................................40

    Connector J3 ..............................................................................................................................................41

  • DigESwitch Differential

    Connector J4 ..............................................................................................................................................42

    Connector J5 ..............................................................................................................................................43

    Rear Panel ...................................................................................................................................................44

    Specifications .....................................................................................................................................................45

    DigESwitch I/O Connectors (J1 – J5) .................................................................................................45

    Relays............................................................................................................................................................45

    System Operating Environment .........................................................................................................46

    DigESwitch Configurations ..................................................................................................................46

    Power Requirements ..............................................................................................................................46

    Fuses .............................................................................................................................................................47

    Switching Speeds .....................................................................................................................................47

    High Frequency Specifications ...........................................................................................................47

    Box Dimensions ........................................................................................................................................48

    IVI Compliance Category ...............................................................................................................................51

  • DigESwitch Differential

    IVI-C Custom Specific Instrument Driver .........................................................................................51

    Software Information: .............................................................................................................................52

    IVI Switch Class Software ...............................................................................................................................52

    Supported Calls - Required Functions ..............................................................................................52

    Supported Calls - IviSwitchBase Capability Group Functions ..................................................53

    Supported Calls - Utility Functions ....................................................................................................53

    Supported Calls - Set and Get Check Attribute Functions ........................................................53

    Supported Calls - Lock and Unlock Functions ...............................................................................54

    Supported Calls - Error Information Functions .............................................................................54

    Unsupported Calls - Interchangeability Checking Functions ..................................................55

    Unsupported Calls - IviSwitchScanner Extension Group Functions ......................................55

    Unsupported Calls - IviSwitchSoftwareTrigger Extension Group Functions ......................55

    Unsupported Calls - Utility Functions ...............................................................................................55

    IVI-C Switch Class-Compliant Specific Software ....................................................................................56

  • DigESwitch Differential

    Library (.dll) Software .............................................................................................................................59

    dlesw_Open ...............................................................................................................................................60

    dlesw_Close ...............................................................................................................................................61

    dlesw_GetFirmwareRev .........................................................................................................................62

    dlesw_GetInstrumentModel ................................................................................................................63

    dlesw_Reset ...............................................................................................................................................64

    dlesw_ConnectChan...............................................................................................................................65

    dlesw_DisconnectChan .........................................................................................................................66

    dlesw_DisconnectAll ..............................................................................................................................67

    dlesw_WriteChanImage ........................................................................................................................68

    dlesw_ReadChanImage .........................................................................................................................69

    dlesw_ReadBusImage ............................................................................................................................71

    dlesw_WriteBoardImage .......................................................................................................................72

    dlesw_ReadBoardImage .......................................................................................................................73

  • DigESwitch Differential

    dlesw_WriteBoxImage ...........................................................................................................................75

    dlesw_ReadChanRelayStates...............................................................................................................77

    dlesw_ReadBusRelayStates ..................................................................................................................78

    dlesw_ReadBoardRelayStates .............................................................................................................79

    dlesw_ReadBoxRelayStates ..................................................................................................................80

    dlesw_RelayUpdate ................................................................................................................................81

    Error Codes .................................................................................................................................................82

    Library Call Code Examples ..................................................................................................................85

    OVERVIEW OF TCP API.....................................................................................................................................91

    TCP Message Structure ..........................................................................................................................92

    TCP Command Summary Table ..........................................................................................................93

    TCP Command Listing ............................................................................................................................94

    0x01 Get Firmware Rev ..........................................................................................................................94

    0x02 Board Reset ......................................................................................................................................95

  • 0x05 Connect Channel ...........................................................................................................................96

    0x06 Disconnect Channel .....................................................................................................................97

    0x07 Disconnect All .................................................................................................................................98

    0x08 Number of Boards Present .........................................................................................................99

    0x09 Write Channel Image................................................................................................................. 100

    0x0A Read Channel Image................................................................................................................. 101

    0x0B Write Bus Image .......................................................................................................................... 102

    0x0C Read Bus Image .......................................................................................................................... 103

    0x0D Write Board Image ..................................................................................................................... 104

    0x0E Read Board Image ...................................................................................................................... 106

    0x0F Read Channel Relay State ........................................................................................................ 108

    0x10 Read Bus Relay State ................................................................................................................. 109

    0x11 Read Board Relay State ............................................................................................................ 110

    0x12 Relay Update ................................................................................................................................ 111

    0x1B Get Instrument Model .............................................................................................................. 112

  • 0x1E Write Box Image .......................................................................................................................... 113

    0x1F Read Box Image .......................................................................................................................... 115

    0x20 Read Box Relay States ............................................................................................................... 116

    0x21 Set Relay Break Time ................................................................................................................. 117

    TCP Error Codes ..................................................................................................................................... 118

    Appendix A - Replacement Parts ............................................................................................................. 119

    Fuses .......................................................................................................................................................... 119

    Relays......................................................................................................................................................... 119

    DigESwitch I/O Connectors (J1 – J5) .............................................................................................. 119

    Appendix B - Warranty ................................................................................................................................. 121

  • 11

    Installation

    DigESwitch Differential

    Installation

  • 12

    Installation

    DigESwitch Differential

    Hardware InstallationHardware Installation - 19” rack

    Install the (2) rack mount brackets (0000-8337) to each side of the DigESwitch box using the (6) black 8-32 (2825-0167) screws provided.

    Mount the DigESwitch box in the 19” rack using (4) clips (1400-1041) and (4) 10-32 screws (1400-3333) provided.

    Connect power to the DigESwitch box using the power cord provided.

    Connect the DigESwitch box to the network using the appropriate RJ-45 cable.

    A shielded ethernet cable and shielded accessory cables should be used whenever possible to reduce noise.

    1.

    2.

    3.

    4.

    5.

  • 13

    Installation

    DigESwitch Differential

    Software InstallationThere are two different software packages that can be used to program the DigESwitch. One software package installs only the DLL files necessary to program the DigESwitch from any programming language that uses the C function calling syntax. The other software package installs the necessary files for the DigESwitch to be programmed from an IVI-compatible programming environment. Also available are National Instruments LabView™ VIs and National Instruments LabWindows/CVI™ front panels.

    For IVI Installation Only:

    Install Windows Installer Version 2.0 or later. this software can be found at : http://www.microsoft.com/downloads/release.asp?ReleaseId=32832

    Install the NI IVI Compliance Package Version 2.1 or later. This includes the latest IVI Shared Components. The latest version is available from: http://www.ni.com.

    Install the NI-VISA Run-time Engine Version 3.0.1 or later. The latest version available from: http://www.ni.com.

    1.

    2.

    3.

  • 14

    Installation

    DigESwitch Differential

    To Create A Hardware Asset

    Right click on the “Hardware Asset” entry and select “Create New . . . “. This will create a new form where the Hardware Asset information can be entered. The “Hardware Asset” entry is in the tree view on the left hand side of the Configuration Store Editor.

    Enter a name that specifies the hardware asset that is being added. For example: “DigESwitch”.

    Enter a description for the asset. This field is optional. An example would be “50 Channel Differential Switch”.

    Enter the I/O Resource. The I/O Resource is in the format of “TCPIP :: (Host Address) :: 9000 :: Socket” where (Host Address) is either the IP address such as 192.168.1.213 or is the given host name.

    The entry will be automatically saved.

    1.

    2.

    3.

    4.

    5.

  • 15

    Installation

    DigESwitch Differential

    Software Installation:

    If installing the IVI software, install the necessary components above to meet the Required Software Components.

    Run the dlesw_ivi_c_driver.msi program on the Installation CD to install the drivers. When prompted, select the Foundation option if the IVI drivers are not required or select both to install both the C syntax and IVI drivers.

    If the IVI drivers were installed, run the “ConfigStoreEditor Setup.exe” program on the Installation CD to install the Configuration Store Editor program.

    Follow the DigESwitch Hardware Configuration instructions. The software is now ready to use.

    IVI ConfigurationIf installing the IVI drivers, use the Configuration Store Editor Program found at “C:\Program Files\Digalog\Configuration Store Editor and create the following setup in the order given:

    1.

    2.

    3.

    4.

  • 16

    Installation

    DigESwitch Differential

    To Create A Driver Session

    Right click on the “Sessions” entry and select “Create New . . . “. This will create a new form where the Driver Session information can be entered. The “Sessions” entry is in the tree view on the left hand side of the Configuration Store Editor.

    Enter a name that specifies the driver session that is being added. For example: “DigESwitch”.

    Enter a description for the driver session. This field is optional. An example would be “50 Channel Differential Switch”.

    Select which Session Attributes are to be enabled.

    Select the Software Module called dleSw.

    Select a Hardware Asset from the list of previously created Hardware Assets. If the hardware asset for this card does not exist, it must be created before finishing this Driver Session.

    The Virtual Names tab can be used to assign virtual names to the channels

    1.

    2.

    3.

    4.

    5.

    6.

    7.

  • 17

    Installation

    DigESwitch Differential

    on the card. This is done in the Names section. First, enter the virtual name. Then select the channel to assign that virtual name to from the drop down list. Please note, a software module needs to be selected on the Driver tab in order for the drop down list to be filled with channels names for the card. Once both are entered select “Add”. The new assignment will appear in the list of assignments on the left. An existing assignment can be deleted by selecting it from the list and then selecting “Remove”.

    The Initial Settings tab only applies to equipment that use initial settings. Review the documentation for the equipment to see what, if any, initial settings are available.

    To Create A Logical Name

    Right click on the “Logical Names” entry and select “Create New . . . “. This will create a new form where the Logical Name information can be entered. The “Logical Names” entry is in the tree view on the left hand side of the Configuration Store Editor.

    8.

    1.

  • 18

    Installation

    DigESwitch Differential

    Enter a name that specifies the logical name that is being added. For example: “DigESwitch”. If an existing logical name is being used, select that logical name and then select the Driver Session created for this card.

    Enter a description for the logical name. This field is optional. An example would be “50 Channel Differential Switch”.

    Select a Driver Session from the list of previously created driver sessions.

    2.

    3.

    4.

  • 19

    Installation

    DigESwitch Differential

    Configuration and Setup

    DigESwitch Home Page

    The DigESwitch Home page contains information about the DigESwitch box. The following information is displayed:

    Instrument Model The DigESwitch model number.

    Manufacturer Manufacturer name - Digalog Systems, Inc.

    Serial Number Serial number of the DigESwitch box.

  • 20

    Installation

    DigESwitch Differential

    Description Description of the DigESwitch box. This string can be configured by the user and may be changed on the IP Configuration page.

    Host Name Host name as resolved by the DNS server. This field will contain the assigned IP address if no host name is assigned to the DigESwitch box.

    MAC Address Media Access Control address of the DigESwitch box.

    TCP/IP Address Current IP address assigned to the DigESwitch box.

    Firmware Revision Firmware revision of the DigESwitch box.

  • 21

    Installation

    DigESwitch Differential

    IP Configuration Page

    The IP Configuration page allows the user to change the IP Configuration of the DigESwitch box.

    The IP Configuration entries are:

    Hostname Hostname to use for all dynamic naming services (20 characters maximum).

  • 22

    Installation

    DigESwitch Differential

    Domain Domain name to use for all dynamic naming services (20 characters maximum).

    Description User configurable string that can be used to describe the DigESwitch box (20 characters maximum).

    TCP/IP Mode Specifies the IP addressing mode to use. Auto mode uses the DHCP server to obtain the IP address. Manual mode attempts to connect to the network using the IP Address provided below.

    IP Address User assigned IP address. Only used if the TCP/IP Mode is manual.

    Subnet Mask Subnet mask.

    Default Gateway IP address of the default gateway. This entry may also be left blank if a default gateway is not specified.

    DNS Server Addressing

    Specifies the DNS Server Addressing mode. Auto mode specifies that the network addresses for the DNS servers are automatically obtained from the network. Manual mode uses the user supplied Preferred and Alternate DNS Server addresses.

  • 23

    Installation

    DigESwitch Differential

    Preferred DNS Server

    User-supplied IP address of the preferred or primary DNS server. Entry used only with DNS Server Addressing Mode set to manual. This entry may also be left blank if the DNS Server Addressing mode is auto.

    Alternate DNS Server

    User-supplied IP address of the alternate or secondary DNS server. Entry used only with DNS Server Addressing Mode set to manual. This entry may also be left blank if the DNS Server Addressing mode is auto or an alternate DNS server is not present.

    Dynamic DNS When enabled, the hostname requests are sent by the DigESwitch module.

    Submit Pressing the Submit button will update the IP Configuration settings. The name of any invalid entry will be marked in red. All entries must be valid before any of the IP Configuration settings are updated. Power to the DigESwitch box must be cycled before the new settings will take effect.

  • 24

    Installation

    DigESwitch Differential

    Reset Resets all entries to their original settings when the page was first loaded provided that the Submit button hasn’t been pressed.

    NOTE: All IP Addresses and SubNet Masks must be entered in the form of four numbers between 0 and 255 separated by periods. For example, 192.168.1.210 or 255.255.255.0.

    NOTE: Power to the DigESwitch box must be cycled before the new settings will take effect.

  • 25

    Installation

    DigESwitch Differential

    Changing the IP settings on the DigESwitch box

    The DigESwitch box is configured in the factory to use a static IP Address of 197.2.2.2. The Subnet Mask is set to 255.255.255.0. The following outlines the steps required to reconfigure the IP Setting of the DigESwitch box:

    Connect the DigESwitch box to a PC either directly using a crossover Ethernet cable or through an Ethernet switch using a standard Ethernet cable.

    Configure the PC Network settings as follows:

    From the Start menu, select Settings->Network Connections.

    Double-click on the Local Area Connection icon under LAN or High-Speed Internet.

    Click the Properties button under the General tab on the Local Area Connection Status window.

    1.

    2.

    a.

    b.

    c.

  • 26

    Installation

    DigESwitch Differential

    Click once on Internet Protocol (TCP/IP), then click the Properties button under the General tab on the Local Area Connection Properties window.

    Under the General tab, click Use the following IP address. Enter 197.2.2.1 for the IP address, 255.255.255.0 for the Subnet Mask and leave the Default Gateway blank.

    Click Use the following DNS server addresses and leave both entries blank.

    Press the OK or Close buttons until you return to the Network Connections window.

    Open an Internet Explorer window and type http://197.2.2.2 in the address box. The DigESwitch Home Page should be displayed.

    Click on the LAN Configuration link.

    Setup the IP Configuration as required. Press the Submit button when complete.

    d.

    e.

    f.

    g.

    3.

    4.

    5.

  • 27

    Installation

    DigESwitch Differential

    Return the PC to its original IP Configuration.

    Cycle the power on the DigESwitch box to use the new IP Settings.

    NOTE: Pressing the LAN Reset button on the back of the DigESwitch box will restore the factory default settings.

    6.

    7.

  • 28

    Installation

    DigESwitch Differential

    Customer Support Page

    The Customer Support page lists the customer support contact information.

    Factory IP Configuration Default Settings

    The factory default IP Configuration settings are:

  • 29

    Installation

    DigESwitch Differential

    Hostname: Blank

    Domain: Blank

    Description: 50 Channel Differential Switch

    TCP/IP Mode: Manual

    IP Address: 197.2.2.2

    Subnet Mask: 255.255.255.0

    Default Gateway: Blank

    DNS Server Addressing: Auto

    Preferred DNS Server: Blank

    Alternate DNS Server: Blank

    Dynamic DNS: Disabled

    The factory default settings can be restored by pressing the LAN Reset switch located on the back of the DigESwitch box.

  • 30

    Installation

    DigESwitch Differential

  • 31

    Overview

    DigESwitch Differential

    Overview

  • 32

    Overview

    DigESwitch Differential

    RelayControl

    RelayControl

    Lines

    CPU

    LAN10/100BaseT

    Ethernet

    COM00 +

    COM00 -

    Ch00

    Block Diagram

    A00 +A00 -B00 +B00 -

    COM49 +

    COM49 -

    Ch49

    A49+A49 -B49 +B49 -

    Block Diagram

  • 33

    Overview

    DigESwitch Differential

    00 A-

    00 COM-

    00 B-

    N/C

    N/C

    N/C

    N/C

    N/C

    N/C

    N/C

    N/C

    00 A+

    00 COM+

    00 B+

    TypicalConnectorPinout

    01 A-

    01 COM-

    01 B-

    01 A+

    01 COM+

    01 B+

    02 A-

    02 COM-

    02 B-

    02 A+

    02 COM+

    02 B+

    03 A-

    03 COM-

    03 B-

    03 A+

    03 COM+

    03 B+

    04 A-

    04 COM-

    04 B-

    04 A+

    04 COM+

    04 B+

    05 A-

    05 COM-

    05 B-

    05 A+

    05 COM+

    05 B+

    06 A-

    06 COM-

    06 B-

    06 A+

    06 COM+

    06 B+

    07 A-

    07 COM-

    07 B-

    07 A+

    07 COM+

    07 B+

    08 A-

    08 COM-

    08 B-

    08 A+

    08 COM+

    08 B+

    09 A-

    09 COM-

    09 B-

    09 A+

    09 COM+

    09 B+

    J5

    J4

    J3

    J2

    J1Ch00 - Ch09

    Ch10 - Ch19

    Ch20 - Ch29

    Ch30 - Ch39

    Ch40 - Ch49

    Connector Layout

    Connector Pinout / Layout

  • 34

    Overview

    DigESwitch Differential

    OverviewFeatures:

    Up to 50 two-input differential channels

    A, B, AB and Disconnect modes

    19” Rack Mount Chassis

    Ethernet 10/100BaseT communications

    Direct I/O Driver from C, C++

    Industry-Standard IVI Driver

    Support for National Instruments® Switch Executive™

    The “DigESwitch Differential” is a versatile and low-cost 10/100BaseT Ethernet-controlled relay switching solution housed in a compact 2U 19” rack-mount chassis. Its full-capacity configuration features 50 independent two-input differential channels with A, B, AB and Disconnect modes. Each channel can switch up to 0.5A or carry up to 1.0A with 150VDC/100VAC off-state isolation.

  • 35

    Overview

    DigESwitch Differential

    The DigESwitch Differential can be utilized as a standalone Ethernet appliance, or as an integrated component of existing or planned test systems where it gives the user a simple yet versatile capability for routing and control of resources. Relay programming options include both a Direct I/O driver and the industry-standard IVI driver. It also supports the National Instruments® Switch Executive™.

  • 36

    Hardware

    DigESwitch Differential

    Hardware

  • 37

    Hardware

    DigESwitch Differential

    Front Panel

    The front panel of the DigESwitch chassis houses the five (maximum configuration) board connectors and three status LEDs. The LEDs indicate the following status:

    Power LED

    The green Power LED located on the front panel indicates the power status. This LED is lit when the Power Switch on the rear panel is closed and power is applied to the internal DC Power Supply.

    Active LED

    The green Active LED located on the front panel indicates activity on the Ethernet bus. This LED will flash whenever transmit or receive activity occurs on

    PowerActiveLink

    J1

    J2

    J3

    J4

    J5

  • 38

    Hardware

    DigESwitch Differential

    the DigESwitch Ethernet port.

    Link LED

    The bi-color Link LED located on the front panel indicates the DigESwitch Ethernet link status. This LED is lit green if the link is okay or red if the link failed.

    Signal Connectors

    The pin designations for each connector are shown below. The signal designations for each of the five different connectors are shown on the following pages.

    1 2 3

    35 36

    4 5 6 7

    37 38 39 40 41

    8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34

    42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

  • 39

    Hardware

    DigESwitch Differential

    Connector J1

    1 - CH0 A+ 18 - CH5 B+ 35 - CH0 A- 52 - CH5 B-

    2 - CH0 COM+ 19 - CH6 A+ 36 - CH0 COM- 53 - CH6 A-

    3 - CH0 B+ 20 - CH6 COM+ 37 - CH0 B- 54 - CH6 COM-

    4 - CH1 A+ 21 - CH6 B+ 38 - CH1 A- 55 - CH6 B-

    5 - CH1 COM+ 22 - CH7 A+ 39 - CH1 COM- 56 - CH7 A-

    6 - CH1 B+ 23 - CH7 COM+ 40 - CH1 B- 57 - CH7 COM-

    7 - CH2 A+ 24 - CH7 B+ 41 - CH2 A- 58 - CH7 B-

    8 - CH2 COM+ 25 - CH8 A+ 42 - CH2 COM- 59 - CH8 A-

    9 - CH2 B+ 26 - CH8 COM+ 43 - CH2 B- 60 - CH8 COM-

    10 - CH3 A+ 27 - CH8 B+ 44 - CH3 A- 61 - CH8 B-

    11 - CH3 COM+ 28 - CH9 A+ 45 - CH3 COM- 62 - CH9 A-

    12 - CH3 B+ 29 - CH9 COM+ 46 - CH3 B- 63 - CH9 COM-

    13 - CH4 A+ 30 - CH9 B+ 47 - CH4 A- 64 - CH9 B-

    14 - CH4 COM+ 31 - N/C 48 - CH4 COM- 65 - N/C

    15 - CH4 B+ 32 - N/C 49 - CH4 B- 66 - N/C

    16 - CH5 A+ 33 - N/C 50 - CH5 A- 67 - N/C

    17 - CH5 COM+ 34 - N/C 51 - CH5 COM- 68 - N/C

  • 40

    Hardware

    DigESwitch Differential

    Connector J2

    1 - CH10 A+ 18 - CH15 B+ 35 - CH10 A- 52 - CH15 B-

    2 - CH10 COM+ 19 - CH16 A+ 36 - CH10 COM- 53 - CH16 A-

    3 - CH10 B+ 20 - CH16 COM+ 37 - CH10 B- 54 - CH16 COM-

    4 - CH11 A+ 21 - CH16 B+ 38 - CH11 A- 55 - CH16 B-

    5 - CH11 COM+ 22 - CH17 A+ 39 - CH11 COM- 56 - CH17 A-

    6 - CH11 B+ 23 - CH17 COM+ 40 - CH11 B- 57 - CH17 COM-

    7 - CH12 A+ 24 - CH17 B+ 41 - CH12 A- 58 - CH17 B-

    8 - CH12 COM+ 25 - CH18 A+ 42 - CH12 COM- 59 - CH18 A-

    9 - CH12 B+ 26 - CH18 COM+ 43 - CH12 B- 60 - CH18 COM-

    10 - CH13 A+ 27 - CH18 B+ 44 - CH13 A- 61 - CH18 B-

    11 - CH13 COM+ 28 - CH19 A+ 45 - CH13 COM- 62 - CH19 A-

    12 - CH13 B+ 29 - CH19 COM+ 46 - CH13 B- 63 - CH19 COM-

    13 - CH14 A+ 30 - CH19 B+ 47 - CH14 A- 64 - CH19 B-

    14 - CH14 COM+ 31 - N/C 48 - CH14 COM- 65 - N/C

    15 - CH14 B+ 32 - N/C 49 - CH14 B- 66 - N/C

    16 - CH15 A+ 33 - N/C 50 - CH15 A- 67 - N/C

    17 - CH15 COM+ 34 - N/C 51 - CH15 COM- 68 - N/C

  • 41

    Hardware

    DigESwitch Differential

    Connector J3

    1 - CH20 A+ 18 - CH25 B+ 35 - CH20 A- 52 - CH25 B-

    2 - CH20 COM+ 19 - CH26 A+ 36 - CH20 COM- 53 - CH26 A-

    3 - CH20 B+ 20 - CH26 COM+ 37 - CH20 B- 54 - CH26 COM-

    4 - CH21 A+ 21 - CH26 B+ 38 - CH21 A- 55 - CH26 B-

    5 - CH21 COM+ 22 - CH27 A+ 39 - CH21 COM- 56 - CH27 A-

    6 - CH21 B+ 23 - CH27 COM+ 40 - CH21 B- 57 - CH27 COM-

    7 - CH22 A+ 24 - CH27 B+ 41 - CH22 A- 58 - CH27 B-

    8 - CH22 COM+ 25 - CH28 A+ 42 - CH22 COM- 59 - CH28 A-

    9 - CH22 B+ 26 - CH28 COM+ 43 - CH22 B- 60 - CH28 COM-

    10 - CH23 A+ 27 - CH28 B+ 44 - CH23 A- 61 - CH28 B-

    11 - CH23 COM+ 28 - CH29 A+ 45 - CH23 COM- 62 - CH29 A-

    12 - CH23 B+ 29 - CH29 COM+ 46 - CH23 B- 63 - CH29 COM-

    13 - CH24 A+ 30 - CH29 B+ 47 - CH24 A- 64 - CH29 B-

    14 - CH24 COM+ 31 - N/C 48 - CH24 COM- 65 - N/C

    15 - CH24 B+ 32 - N/C 49 - CH24 B- 66 - N/C

    16 - CH25 A+ 33 - N/C 50 - CH25 A- 67 - N/C

    17 - CH25 COM+ 34 - N/C 51 - CH25 COM- 68 - N/C

  • 42

    Hardware

    DigESwitch Differential

    Connector J4

    1 - CH30 A+ 18 - CH35 B+ 35 - CH30 A- 52 - CH35 B-

    2 - CH30 COM+ 19 - CH36 A+ 36 - CH30 COM- 53 - CH36 A-

    3 - CH30 B+ 20 - CH36 COM+ 37 - CH30 B- 54 - CH36 COM-

    4 - CH31 A+ 21 - CH36 B+ 38 - CH31 A- 55 - CH36 B-

    5 - CH31 COM+ 22 - CH37 A+ 39 - CH31 COM- 56 - CH37 A-

    6 - CH31 B+ 23 - CH37 COM+ 40 - CH31 B- 57 - CH37 COM-

    7 - CH32 A+ 24 - CH37 B+ 41 - CH32 A- 58 - CH37 B-

    8 - CH32 COM+ 25 - CH38 A+ 42 - CH32 COM- 59 - CH38 A-

    9 - CH32 B+ 26 - CH38 COM+ 43 - CH32 B- 60 - CH38 COM-

    10 - CH33 A+ 27 - CH38 B+ 44 - CH33 A- 61 - CH38 B-

    11 - CH33 COM+ 28 - CH39 A+ 45 - CH33 COM- 62 - CH39 A-

    12 - CH33 B+ 29 - CH39 COM+ 46 - CH33 B- 63 - CH39 COM-

    13 - CH34 A+ 30 - CH39 B+ 47 - CH34 A- 64 - CH39 B-

    14 - CH34 COM+ 31 - N/C 48 - CH34 COM- 65 - N/C

    15 - CH34 B+ 32 - N/C 49 - CH34 B- 66 - N/C

    16 - CH35 A+ 33 - N/C 50 - CH35 A- 67 - N/C

    17 - CH35 COM+ 34 - N/C 51 - CH35 COM- 68 - N/C

  • 43

    Hardware

    DigESwitch Differential

    Connector J5

    1 - CH40 A+ 18 - CH45 B+ 35 - CH40 A- 52 - CH45 B-

    2 - CH40 COM+ 19 - CH46 A+ 36 - CH40 COM- 53 - CH46 A-

    3 - CH40 B+ 20 - CH46 COM+ 37 - CH40 B- 54 - CH46 COM-

    4 - CH41 A+ 21 - CH46 B+ 38 - CH41 A- 55 - CH46 B-

    5 - CH41 COM+ 22 - CH47 A+ 39 - CH41 COM- 56 - CH47 A-

    6 - CH41 B+ 23 - CH47 COM+ 40 - CH41 B- 57 - CH47 COM-

    7 - CH42 A+ 24 - CH47 B+ 41 - CH42 A- 58 - CH47 B-

    8 - CH42 COM+ 25 - CH48 A+ 42 - CH42 COM- 59 - CH48 A-

    9 - CH42 B+ 26 - CH48 COM+ 43 - CH42 B- 60 - CH48 COM-

    10 - CH43 A+ 27 - CH48 B+ 44 - CH43 A- 61 - CH48 B-

    11 - CH43 COM+ 28 - CH49 A+ 45 - CH43 COM- 62 - CH49 A-

    12 - CH43 B+ 29 - CH49 COM+ 46 - CH43 B- 63 - CH49 COM-

    13 - CH44 A+ 30 - CH49 B+ 47 - CH44 A- 64 - CH49 B-

    14 - CH44 COM+ 31 - N/C 48 - CH44 COM- 65 - N/C

    15 - CH44 B+ 32 - N/C 49 - CH44 B- 66 - N/C

    16 - CH45 A+ 33 - N/C 50 - CH45 A- 67 - N/C

    17 - CH45 COM+ 34 - N/C 51 - CH45 COM- 68 - N/C

  • 44

    Hardware

    DigESwitch Differential

    Rear Panel

    The rear panel of the DigESwitch chassis houses the Reset Switch and the Power Recepticle/On/Off Switch as shown below. The On/Off Switch assembly fuse(s) are rated at 3A/250VAC, 3AG SloBlo (North America) or (2) 3.15A x 250VAC SloBlo (Europe). Complete specifications are listed in the next section.

    The LAN Reset button resets the DigESwitch box and restores the IP configuration to the factory default settings.

    Use only with250V Fuses

    Disconnect PowerBefore Replacing Fuses

    LAN RESET

    10/100 LAN

    !

    55W 50/60 HZ90-132 VAC

    F1 = 3A SB/250V

    132-264 VACF1 = 3.1A SB/250VF2 = 3.1A SB/250V

    Made in the

    U.S.A .

    Model 0004-5201E

    Serial No. 2453819004

    Desc. DigESwitch - 50 Chan Differential Switch

    Digalog Systems Inc.3180 South 166th St.New Berlin, WI 53151 USA(262)-797-8000

    !Caution!DISCONNECT POWER BEFOREOPENING ENCLOSURE

    !! Caution: Disconnect Power Before Opening Enclosure

    Caution: See fuse specifications.

  • 45

    Hardware

    DigESwitch Differential

    SpecificationsDigESwitch I/O Connectors (J1 – J5)

    AMP 2-174225-5

    Relays

    Type SPST (Form A)

    Static Contact Resistance 400mohms (Maximum Initial)

    Max Switching Voltage 150VDC, 100VAC Peak

    Max Switching Current 0.5ADC, 0.5AAC Peak

    Max Switching Power 10W

    Max Carry Current 1A, 1A-AC Peak

    Mechanical Life Expectancy 1 x 109

    Operating Time – Maximum 3.0ms

    Max number of relays on 500

    Replacement Relays Coto – 9001-05-01

  • 46

    Hardware

    DigESwitch Differential

    System Operating Environment

    Operating Temperature 0 - 35°C, 32 - 95°F

    Humidity 20% to 80% Relative Humidity

    Altitude less than 2000m

    DigESwitch Configurations

    0004-5201A 10 Two-Input Differential Channels

    0004-5201B 20 Two-Input Differential Channels

    0004-5201C 30 Two-Input Differential Channels

    0004-5201D 40 Two-Input Differential Channels

    0004-5201E 50 Two-Input Differential Channels

    Power Requirements

    Input Voltage 90 – 264VAC

    Frequency 47 – 63Hz

    Power 60W maximum

  • 47

    Hardware

    DigESwitch Differential

    Fuses

    North America 3A/250V, 3AG Slo-Blo, LittleFuse 313003P

    Europe (2) 3.15A/250VAC, .5 x 20mm, Slo-Blo, LittleFuse 2183.15XP

    Switching Speeds

    Dlesw_ConnectChan 3.2ms

    Dlesw_DisconnectChan 4.0ms

    Dlesw_WriteBoxImage 32.1ms

    High Frequency Specifications

    Gain at 15MHz -1dB

    Gain at 45MHz -3dB

    Adjacent Channel Crosstalk < -50dB at 5.0MHz.

  • 48

    Hardware

    DigESwitch Differential

    Box Dimensions

    19” Rackmount

    2U (3.44”) high x 18” deep

    Weight - Less than 35Lbs. - Maximum Configuration

  • 49

    Hardware

    DigESwitch Differential

  • 50

    IVI Switch Class

    DigESwitch Differential

    IVI Switch Class

  • 51

    IVI Switch Class

    DigESwitch Differential

    IVI Compliance CategoryIVI-C Custom Specific Instrument Driver

    IviSwtchBase Supported

    IviSwtchScanner Not Supported

    IviSwtchSoftwareTrigger Not Supported

    Optional Features:

    Range Check False

    Query Instrument Status False

    State Caching True

    Simulate False

    Coercion Recording False

    Interchangeability Checking False

    Driver Identification:

    Driver Revision: 1.0

    Driver Vendor: Digalog Systems Inc.

    Prefix: DLESW

    Description: 50 Channel Differential Switch

  • 52

    IVI Switch Class

    DigESwitch Differential

    Hardware Information:

    Instrument Manufacturer: Digalog Systems Inc.

    Supported Instrument Models: 5201A, B, C, D, & E

    Supported Bus Interfaces: TCP/IP

    Software Information:

    Support Software Required: National Instruments IVI Engine ver 2.1 or later

    Source Code Availability: Source code not available.

    IVI Switch Class SoftwareThese calls adhere to IVI Switch Class Specification 3.0. Listed below are the calls that are supported by this driver. See the IVI Switch Class specification documents at the IVI Foundation’s web site (http://www.ivifoundation.org) for a full description of the calls.

    Supported Calls - Required FunctionsViStatus IviSwtch_init (ViRsrc logicalName, ViBoolean idQuery, ViBoolean resetDevice, ViSession *vi);ViStatus IviSwtch_InitWithOptions (ViRsrc logicalName, ViBoolean IDQuery, ViBoolean resetDevice,

    ViConstString optionString, ViSession *vi);

  • 53

    IVI Switch Class

    DigESwitch Differential

    ViStatus IviSwtch_close (ViSession vi);ViStatus IviSwtch_reset (ViSession vi);ViStatus IviSwtch_error_message (ViSession vi, ViStatus statusCode, ViChar message[]);ViStatus IviSwtch_revision_query (ViSession vi, ViChar driverRev[], ViChar instrRev[]);

    Supported Calls - IviSwitchBase Capability Group FunctionsViStatus IviSwtch_CanConnect (ViSession vi, ViConstString channel1, ViConstString channel2, ViInt32

    *pathCapability);ViStatus IviSwtch_Connect (ViSession vi, ViConstString channel1, ViConstString channel2);ViStatus IviSwtch_Disconnect (ViSession vi, ViConstString channel1, ViConstString channel2);ViStatus IviSwtch_DisconnectAll (ViSession vi);ViStatus IviSwtch_GetChannelName (ViSession vi, ViInt32 index, ViInt32 bufferSize, ViChar name[]);ViStatus IviSwtch_GetPath (ViSession vi, ViConstString channel1, ViConstString channel2, ViInt32

    bufferSize, ViChar pathList[]);ViStatus IviSwtch_IsDebounced (ViSession vi, ViBoolean *isDebounced);ViStatus IviSwtch_SetPath (ViSession vi, ViConstString pathList);ViStatus IviSwtch_WaitForDebounce (ViSession vi, ViInt32 maxTime);

    Supported Calls - Utility FunctionsViStatus IviSwtch_ResetWithDefaults (ViSession vi);ViStatus IviSwtch_Disable (ViSession vi);

    Supported Calls - Set and Get Check Attribute FunctionsViStatus IviSwtch_GetAttributeViInt32 (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViInt32 *value);

  • 54

    IVI Switch Class

    DigESwitch Differential

    ViStatus IviSwtch_SetAttributeViInt32 (ViSession vi, ViConstString channelName, ViAttr attributeId, ViInt32 value);ViStatus IviSwtch_GetAttributeViReal64 (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViReal64 *value);ViStatus IviSwtch_SetAttributeViReal64 (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViReal64 value);ViStatus IviSwtch_GetAttributeViString (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViInt32 bufferSize, ViChar value[]);ViStatus IviSwtch_SetAttributeViString (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViConstString value);ViStatus IviSwtch_GetAttributeViBoolean (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViBoolean *value);ViStatus IviSwtch_SetAttributeViBoolean (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViBoolean value);ViStatus IviSwtch_GetAttributeViSession (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViSession *value);ViStatus IviSwtch_SetAttributeViSession (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViSession value);

    Supported Calls - Lock and Unlock FunctionsViStatus IviSwtch_LockSession (ViSession vi, ViBoolean *callerHasLock);ViStatus IviSwtch_UnlockSession (ViSession vi, ViBoolean *callerHasLock);

    Supported Calls - Error Information FunctionsViStatus IviSwtch_GetError (ViSession vi, ViStatus *errorCode, ViInt32 bufferSize, ViChar description[]);

    ViStatus IviSwtch_ClearError (ViSession vi);

  • 55

    IVI Switch Class

    DigESwitch Differential

    Unsupported Calls - Interchangeability Checking FunctionsViStatus IviSwtch_GetNextInterchangeWarning (ViSession vi, ViInt32 bufferSize, ViChar warning[]);ViStatus IviSwtch_ClearInterchangeWarnings (ViSession vi);ViStatus IviSwtch_ResetInterchangeCheck (ViSession vi);ViStatus IviSwtch_GetNextCoercionRecord (ViSession vi, ViInt32 bufferSize, ViChar record[]);ViStatus IviSwtch_GetSpecificDriverCHandle (ViSession vi, ViSession* specificDriverCHandle);

    Unsupported Calls - IviSwitchScanner Extension Group FunctionsViStatus IviSwtch_AbortScan (ViSession vi); ViStatus IviSwtch_ConfigureScanList (ViSession vi, ViConstString scanList, ViInt32 scanMode);ViStatus IviSwtch_ConfigureScanTrigger (ViSession vi, ViReal64 scanDelay, ViInt32 triggerInput, ViInt32

    scanAdvancedOutput);ViStatus IviSwtch_InitiateScan (ViSession vi);ViStatus IviSwtch_IsScanning (ViSession vi, ViBoolean *isScanning);ViStatus IviSwtch_SetContinuousScan (ViSession vi, ViBoolean status);ViStatus IviSwtch_WaitForScanComplete (ViSession vi, ViInt32 maxTime);

    Unsupported Calls - IviSwitchSoftwareTrigger Extension Group FunctionsViStatus IviSwtch_SendSoftwareTrigger (ViSession vi);

    Unsupported Calls - Utility FunctionsViStatus IviSwtch_InvalidateAllAttributes (ViSession vi);ViStatus IviSwtch_self_test (ViSession vi, ViInt16 *selfTestResult, ViChar selfTestMessage[]);ViStatus IviSwtch_error_query (ViSession vi, ViInt32 *errorCode, ViChar errorMessage[]);ViStatus IviSwtch_CheckAttributeViInt32 (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViInt32 value);

  • 56

    IVI Switch Class

    DigESwitch Differential

    ViStatus IviSwtch_CheckAttributeViReal64 (ViSession vi, ViConstString channelName, ViAttr attributeId, ViReal64 value);ViStatus IviSwtch_CheckAttributeViString (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViConstString value); ViStatus IviSwtch_CheckAttributeViBoolean (ViSession vi, ViConstString channelName, ViAttr

    attributeId, ViBoolean value);ViStatus IviSwtch_CheckAttributeViSession (ViSession vi, ViConstString channelName, ViAttr attributeId,

    ViSession value);

    IVI-C Switch Class-Compliant Specific SoftwareIf the IVI-C Switch class-compliant specific calls are to be used instead of the IVI-C Switch Class calls, the files for the IVI-C Switch class-compliant specific calls are placed in the directories given below:

    C:\Program Files\IVI\Lib\msc Contains the library file to include with the application.

    C:\Program Files\IVI\Include Contains the header file to use with the application.

    C:\Program Files\IVI\Bin Contains the DLL for the IVI Switch software.

    C:\Program Files\IVI\Drivers\dlesw Contains the LabWindows/CVI function panels and help for the DigESwitch IVI class-compliant specific calls.

  • 57

    IVI Switch Class

    DigESwitch Differential

  • 58

    Library Calls

    DigESwitch Differential

    Library Calls

  • 59

    Library Calls

    DigESwitch Differential

    Library (.dll) Software

    The Library calls support any programming language capable of calling a dynamic link library. Include files are included for the National Instruments LabWindows/CVI environment. This Library calls package is installed with the dlesw_ivi_c_driver.msi installation program. The files for the Library calls are placed in the directories given below:

    C:\digalog\cvi\docs\c Contains the help documentation for the Library calls.

    C:\digalog\cvi\lib\msc Contains the library file to include with the application.

    C:\digalog\cvi\include Contains the header file to use with the application.

    C:\digalog\cvi\functionpanels Contains the LabWindows/CVI function panels for the Library calls.

    C:\Windows\System32 Contains the DLL for the Library calls.

  • 60

    Library Calls

    DigESwitch Differential

    dlesw_Open

    This function establishes a connection to a DigESwitch box. The IP address and port number of the DigESwitch are passed into this function. This function returns a session handle to the DigESwitch box that the other calls will use to access the box. Only one connection can be established at a time.

    The dlesw_Close function is used to close the connection.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_Open (u_int32 *SessionHandle, char *LocalIP, u_int32 PortNumber);

    Where:SessionHandle

    Returns the handle to the DigESwitch box. Note that a zero can be a valid handle.

    LocalIPThis is the IP address or host name of the DigESwitch box. It can be either an alphabetical string such as xyz.abc.com, or a numerical string such as 197.2.2.2.

    PortNumberThe port number to the DigESwitch box. This port is reserved for future use. The DigESwitch port number is currently fixed to use port 9000.

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 61

    Library Calls

    DigESwitch Differential

    dlesw_Close

    This function terminates the connection to the DigESwitch box.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_Close (u_int32 SessionHandle);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 62

    Library Calls

    DigESwitch Differential

    dlesw_GetFirmwareRev

    This function gets the firmware revision string from the DigESwitch box. The character array which will hold the firmware revision string must be at least 20 characters (bytes) in size.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_GetFirmwareRev (u_int32 SessionHandle, u_int16 *RevStrSize, char RevStr);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    RevStrSizeSize of the RevStr character array in bytes. The initial passed value must be >= 20 bytes, and will be updated on return to reflect the actual size of the returned firmware revision string.

    RevStrCharacter array used to return the firmware revision string.

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 63

    Library Calls

    DigESwitch Differential

    dlesw_GetInstrumentModel

    This function gets the model string from the DigESwitch box. The number of boards in the box determines the model number; i.e. models 0004-5201A, B, C, D and E have one, two, three, four or five boards respectively.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_GetInstrumentModel (u_int32 SessionHandle, u_int16 *ModelStrSize, char *ModelStr);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open().

    ModelStrSizeSize of the ModelStr character array in bytes. The initial passed value must be >= 20 bytes, and will be updated on return to reflect the actual size of the returned model string.

    ModelStrCharacter array used to return the model string.

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 64

    Library Calls

    DigESwitch Differential

    dlesw_Reset

    This function will open all channel relay connections and clear all board images, reseting all boards in the DigESwitch box to their power-up initialized condition.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_Reset (u_int32 SessionHandle);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ().

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 65

    Library Calls

    DigESwitch Differential

    dlesw_ConnectChan

    This function will connect the A port, the B port or both ports to the common output of a channel.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ConnectChan (u_int32 SessionHandle, u_int16 Chan, int16 Bus);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    Chan The channel on which you with to connect a port. Valid ranges are 0 - 9 (one-board DigESwitch), 0 - 19 (two boards), 0 - 29 (three boards), 0 - 39 (four boards) and 0 - 49 (five boards).

    Bus Which port you wish to connect on the specified channel. If one port is already connected, it will be disconnected before the new port is connected. Valid values are 0, 1 and -1. 0 = Port A 1 = Port B -1 = Ports A and B

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 66

    Library Calls

    DigESwitch Differential

    dlesw_DisconnectChan

    This function will disconnect the A port, the B port or both ports from the common output of a channel.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_DisconnectChan (u_int32 SessionHandle, u_int16 Chan, int16 Bus);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    Chan The channel on which you with to disconnect a port. Valid ranges are 0 - 9 (one-board DigESwitch), 0 - 19 (two boards), 0 - 29 (three boards), 0 - 39 (four boards) and 0 - 49 (five boards).

    Bus Which port you wish to disconnect on the specified channel. If you send a -1, all connected ports are disconnected. Valid values are 0, 1 and -1. 0 = Port A 1 = Port B -1 = Ports A and B

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 67

    Library Calls

    DigESwitch Differential

    dlesw_DisconnectAll

    This function will disconnect (open) all of the relays on the specified board.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_DisconnectAll (u_int32 SessionHandle, int16 bdNum);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    BdNum The board on which you wish to open all relays and disconnect all ports. Valid range 0 - 4.The maximum board number depends on the number of boards in the box. Board #0 is the bottom board and corresponds to channels 0 - 9, while the top board is #4 which carries channels40 - 49.

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 68

    Library Calls

    DigESwitch Differential

    dlesw_WriteChanImage

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 69

    Library Calls

    DigESwitch Differential

    dlesw_ReadChanImage

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 70

    Library Calls

    DigESwitch Differential

    dlesw_WriteBusImage

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 71

    Library Calls

    DigESwitch Differential

    dlesw_ReadBusImage

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 72

    Library Calls

    DigESwitch Differential

    dlesw_WriteBoardImage

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 73

    Library Calls

    DigESwitch Differential

    dlesw_ReadBoardImage

    This function reads the current stored image of the relays on a specific board. The channel image consists of one char for each channel on a board, 10 chars (bytes) per board.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ReadBoardImage (u_int32 SessionHandle, u_int16 BdNum, u_int16 BdImageArrSize, u_char *BdImageArr);

    Where: SessionHandle Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    BdNum The board whose image you want to retrieve. Valid range = 0 - 4, with the maximum being being determined by the number of boards in the box. Board #0 is the bottom board and corresponds to channels 0 - 9, while the top board is #4 and carries channels 40 - 49.

    BdImageArrSize The board image array size in bytes. Must be >= 10 chars (bytes). If not, an error will be returned.

    BdImageArr A pointer to an unsigned char array into which the board image will be placed, a 10-element array with each element representing one channel. Channel status values are: 0x00 All relays open 0x03 Port A connected to channel’s common output 0x0C Port B connected to channel’s common output 0x0F Both Port A and Port B connected to channel’s common output

    Continued on next page

  • 74

    Library Calls

    DigESwitch Differential

    For example, for a given board the array:

    [0x00, 0x03, 0x0C, 0x0F, 0x00, 0x00, 0x00,0x00, 0x00, 0x00]

    represents Channels 0 and 4 - 9 disconnected, with input A connected on Channel 1, input B connectedon Channel 2, and both inputs connected on Channel 3.

    Return This function returns a zero upon success, or a non-zero number upon error.

    Note: This function reads the board image which may differ from the actual state of the board’s relays in the case where a new image has been written but the dlesw_RelayUpdate( ) function has not been called yet to actually apply the new image to the board.

  • 75

    Library Calls

    DigESwitch Differential

    This function writes an image of all relays in the DigESwitch box. The channel image consists of one char (byte) for each channel in a box, i.e. 50 chars (10 chars per board x 5 boards) for a fully configured DigESwitch. The relay states can be updated immediately, or the image can be “staged” in anticipation of a later dlesw_RelayUpdate ( ) call to actually change the relay states.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_WriteBoxImage (u_int32 SessionHandle, u_char RelayUpdate, u_int16 BoxImageArrSize, u_char *BoxImageArr);

    Where:SessionHandle Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    RelayUpdate Unsigned char used to select the relay update option: 0 = Do not update relay states, will be done later using dlesw_RelayUpdate ( ) call. 1 = Not supported in this version, will return an error.

    2 = Update relays using the “break before make” switching mode with a 2mS break time.

    BoxImageArrSize Size of BoxImageArr in bytes. Must be >= 10 chars (bytes) per board. If not an error will be returned.

    BoxImageArr A pointer to an unsigned char array containing the box relay image to write.

    Return This function returns a zero upon success, or a non-zero number upon error.

    dlesw_WriteBoxImage

  • 76

    Library Calls

    DigESwitch Differential

    This function reads the complete on-board channel image for all the boards in a DigESwitch box. The channel image consists of one char (byte) for each of the channels in a box, i.e. 50 chars (10 chars per board x 5 boards) for a fully configured DigESwitch.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ReadBoxImage (u_int32 SessionHandle, u_int16 *BoxImageArrSize, u_char *BoxImageArr);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    BoxImageArrSizeThe initial passed value must be >= 10 chars (bytes) per board. If not an error will be returned.

    BoxImageArr A pointer to an unsigned char array containing the returned box relay image.

    Return This function returns a zero upon success, or a non-zero number upon error.

    Note: This function reads the box image which may differ from the actual state of the box’s relays in the case where a new image has been written but the dlesw_RelayUpdate function has not been called yet to actually apply the new image to the box.

    dlesw_ReadBoxImage

  • 77

    Library Calls

    DigESwitch Differential

    This function reads and returns the actual present state (not the image) for a single channel.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ ReadChanRelayStates (u_int32 SessionHandle, u_int16 Chan, u_char *ChanRlyState);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).Chan

    The channel number whose state is to be read.Valid range = 0 to 49 for a fully configured DigESwitch, 0 to 9 for a one-board box, 0 to 19 for two boards, 0-29 for three boards and 0-39 for four boards.

    ChanRlyStateA pointer to an unsigned char in which the channel relay state is returned.0x00 = Both ports open (disconnected)0x03 = Port A connected0x0C = Port B connected0x0F = Both ports connected

    Return This function returns a zero upon success, or a non-zero number upon error.

    dlesw_ReadChanRelayStates

  • 78

    Library Calls

    DigESwitch Differential

    dlesw_ReadBusRelayStates

    NOTE: This call is valid only with the matrix models of DigESwitch. It will return a “Not Supported” error if used with a differential unit. For further information refer to the user manual for the matrix models.

  • 79

    Library Calls

    DigESwitch Differential

    dlesw_ReadBoardRelayStates This function reads the actual current state (not the image) of all channel relays on the specified board. The channel relay state consists of one char (byte) for each of the channels on the board, 10 chars total.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ReadBoardRelayStates (u_int32 SessionHandle, u_int16 BdNum, u_int16 BdRelayArrSize, u_char *BdRelayArr);

    Where:SessionHandle Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    BdNumThe board in the DigESwitch box to read Valid values = 0 to 4.The maximum board number is dependent on the number of boards in the box. Board #0 is the bottom board and corresponds to channels 0-9., while the top board is #4 and carries channels 40 - 49.

    BdRelayArrSizeThe size of the BdRelayArrSize array >= 10 chars (bytes).

    BdRelayArrChar (byte) array containing the relay states read from the given board. The first byte is for the requested board’s first channel and the 10th is for its tenth channel; i.e. if Board 1 is read, the first byte is for box channel 10 and the 10th for box channel 19.

    Return This function returns a zero upon success, or a non-zero number upon error.

  • 80

    Library Calls

    DigESwitch Differential

    This function reads the current state of all channel relays on all the boards. The channel relay state consists of one char (byte) for each of the channels in a box, up to 50 chars for a fully configured DigESwitch.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_ReadBoxRelayStates (u_int32 SessionHandle, u_int16 *BoxRelayArrSize, u_char *BoxRelayArr);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).

    BoxRelayArrSizeThe size of the BoxRelayArr array. Must be at least 10 chars (bytes) for each board in the box (50 chars for a fully configured DigESwitch). This parameter will be updated with the actual number of bytes written to the BoxRelayArr array when the call returns.

    BoxRelayArrChar (byte) array containing the channel relay states for the DigESwitch box. The first byte is for channel #0, the 2nd byte is for channel #1, etc.

    Return This function returns a zero upon success, or a non-zero number upon error.

    dlesw_ReadBoxRelayStates

  • 81

    Library Calls

    DigESwitch Differential

    This function writes the current on-board image out to the relay drivers of all boards and updates all relay states. The on-board image is created by the dlesw_WriteBoxImage ( ) call.

    Header File: dlesw_foundation.h

    CVI Declaration: int32 dlesw_RelayUpdate (u_int32 SessionHandle, int16 BdNum, u_char Mode);

    Where:SessionHandle

    Handle used to access the DigESwitch box. This handle is returned from dlesw_Open ( ).BdNum

    In other DigESwitch versions, this parameter is used to designate a specific board. The differential DigESwitch supports only the simultaneous update of all boards, so the only valid value for this parameter is 0. Any other value will return a “Parameter not valid” error.

    ModeRelay Switching Mode. This version of DigESwitch supports only the “Break Before Make” mode, so the only valid value for this parameter is 2. Any other value will return a “Parameter not valid” error.

    Return This function returns a zero upon success, or a non-zero number upon error.

    dlesw_RelayUpdate

  • 82

    Library Calls

    DigESwitch Differential

    Error Codes

    0 Success, no error occurred.

    -1 ERR_TCP_NO_REGISTER Unable to register service.

    -2 ERR_TCP_NO_CONNECTION Unable to establish a connection between the host PC and the DigESwitch.

    -3 ERR_TCP_SERVER_EXISTS Server already exists.

    -4 ERR_TCP_CONNECT_FAIL Failed to connect to the DigESwitch.

    -5 ERR_TCP_SERVER_NOT_REG Server not registered.

    -6 ERR_TCP_TOO_MANY_CONV Too many conversations. Only one connection can exist at the same time.

    -7 ERR_TCP_READ_FAIL Read failed.

    -8 ERR_TCP_WRITE_FAIL Write failed.

    -9 ERR_TCP_INVALID_PARAM Invalid Parameter.

    -10 ERR_TCP_OUT_OF_MEMORY Out of memory.

    -11 ERR_TCP_TIMEOUT Time Out Error.

    -12 ERR_TCP_NO_CONNECT_MADE Could not established a connection between the host PC and the DigESwitch.

    -13 ERR_TCP_GENERAL_IO General IO Error.

    -14 ERR_TCP_CONNECT_CLOSED The connection to the DigESwitch is closed.

  • 83

    Library Calls

    DigESwitch Differential

    -15 ERR_TCP_NOLOAD_WINSOCK_DLL Unable to load Winsock DLL.

    -16 ERR_TCP_WINSOCK_VERSION Incorrect Winsock DLL Version.

    -17 ERR_TCP_NETWORK_PROBLEM Network subsystem not ready.

    -18 ERR_TCP_CONNECT_STILL_OPEN Connections to the DigESwitch are still open.

    -19 ERR_TCP_DISCONNECT_PENDING Disconnect pending.

    -20 ERR_TCP_NO_INFO Info not available, generic driver error.

    -21 ERR_TCP_HOST_ADDR_NOT_FOUND Host Address not Found.

    -100 ERR_TCP_RET_BUF_TOO_SMALL The return buffer string is too small.

    -101 ERR_TCP_NO_DATA_RECEIVED No data received from ClientTCPRead().

    -102 ERR_TCP_EMPTY_IP_ADDR_STRING Empty IP string.

    -103 ERR_TCP_MEMORY_ALLOCATION Memory allocation failed, memory full.

    -104 ERR_TCP_INVALID_HANDLE Invalid TCP conversation handle.

    -105 ERR_INFO_STRUCTURE_FULL TCP Connection Info Structure is filled.

    FIRMWARE ERRORS 0 MRLY_NO_ERROR Function returned successfully.

    1 ERR_MRLY_INVALID_CHANNEL Invalid channel parameter passed.

    2 ERR_MRLY_INVALID_BUS Invalid bus parameter passed.

  • 84

    Library Calls

    DigESwitch Differential

    3 ERR_MRLY_INVALID_BOARD Invalid board number parameter passed.

    4 ERR_MRLY_BOARD_NOT_PRESENT Requested board does not exist in the system.

    5 ERR_MRLY_MAX_RELAY_ON_COUNT_EXCEEDED

    Attempting to activate too many relays at once (maximum = 500)

    6 ERR_MRLY_MAX_IMAGE_ON_COUNT_EXCEEDED

    Too many images are waiting to be written.

    7 ERR_INVALID_ARRAY_SIZE The array passed is incorrectly sized.

    8 ERR_RECV_PACKET_TOO_SMALL A “runt” packet was received.

    9 ERR_INVALID_USER_DATA_SIZE Data passed is incorrectly sized.

    10 ERR_USER_DATA_WRITE_FAILED The data could not be written as requested.

    11 ERR_USER_DATA_READ_FAILED The requested data could not be read.

    12 ERR_MRLY_INVALID_EEP_OFFSET The on-board EEPROM was incorrectly accessed.

    13 ERR_MRLY_INVALID_MODE The board mode requested is not valid.

    20 ERR_ESWITCH_FUNCTION_UNSUPPORTED

    The called function is not supported by this model of DigESwitch.

    21 ERR_ESWITCH_PARAM2_VALUE_UNSUPPORTED

    The passed value of the 2nd parameter is not supported by this model of DigESwitch.

    22 ERR_ESWITCH_PARAM3_VALUE_UNSUPPORTED

    The passed value of the 3rd parameter is not supported by this model of DigESwitch.

  • 85

    Library Calls

    DigESwitch Differential

    Library Call Code Examples

    Example 1:

    This example shows how to open a session to the DigESwitch box, manipulate the channel connections, and then close the session.

    u_int32 DleswHandle;int32 DleswErr;

    //Obtain a handle to the DigESwitch box.

    if ((DleswErr = dlesw_Open (&DleswHandle, “192.168.1.213”, 9000))!= 0) { //Error-handling code

    }

    //Connect port B of channel #0 through to the output of channel #0.//This will create a connection from channel #0 B+ and B- inputs //to channel #0 COM+ and COM- outputs respectively.

    if ((DleswErr = dlesw_ConnectChan (DleswHandle, 0, 1)) != 0) { //Error-handling code }

  • 86

    Library Calls

    DigESwitch Differential

    //Disconnect port B of channel #0 from the output.//This will break the connection between channel #0 B+ and B- inputs//and the channel #0 COM+ and COM- outputs.

    if ((DleswErr = dlesw_DisconnectChan (DleswHandle, 0, 1)) != 0) { //Error-handling code }

    //Free the handle to the DigESwitch box.

    if ((DleswErr = dlesw_Close(DleswHandle)) != 0) { //Error-handling code }

  • 87

    Library Calls

    DigESwitch Differential

    Example 2:

    This example shows how to open a session to the DigESwitch box, manipulate the channel connections using the box image calls, and then close the session. NOTE: No error handling is performed in order to make the example more readable. See Example 1 for error handling techniques.

    int DleswErr;u_int32 DleswHandle;u_char BoxReadImageArray;u_char BoxWriteImageArray = [0,1,2,3,0,1,2,3,0,1];

    //Obtain a handle to the DigESwitch box.

    DleswErr = dlesw_Open (&DleswHandle, “192.168.1.213”, 9000);

    //Reset the box so that all channel relays are open.

    DleswErr = dlesw_Reset (DleswHandle);

    //Read the box image to confirm that all channel relays are open. Each of the 50 channels in the box takes one//char (byte) for a total of 50 chars so the array must be at least 50 chars in size. The returned box image array should be all zeros.

    DleswErr = dlesw_ReadBoxImage (DleswHandle, 50, *BoxReadImageArray);

    //Write some channel connection information to the first board in box and update the relays immediately. If desired, //the image could be written but the relays not updated until later with a separate dlesw_RelayUpdate call.

    DleswErr = dlesw_WriteBoxImage (DleswHandle, 2, 10, *BoxWriteImageArray);

  • 88

    Library Calls

    DigESwitch Differential

    //Read the box image again. The returned box image array should match the configuration written to the first//board before, and remain 0 (all relays open) for the other four boards.

    DleswErr = dlesw_ReadBoxImage (DleswHandle, 50, *BoxReadImageArray);

    //Reset the box so that all channel relays are open.

    DleswErr = dlesw_Reset (DleswHandle);

    //Free the handle to the DigESwitch box.

    DleswErr = dlesw_Close (DleswHandle);

  • 89

    Library Calls

    DigESwitch Differential

  • 90

    TCP API

    DigESwitch Differential

    TCP Application Programming Interface (API)

  • 91

    TCP API

    DigESwitch Differential

    OVERVIEW OF TCP APIDigESwitch’s Ethernet TCP communications protocol lets you control it using the TCP stack of a host computer running the operating system of your choice.

    The command set detailed in the following pages gives a summary of each command’s purpose along with a byte-by-byte definition of the data to be transmitted and received over TCP. The actual number of bytes involved for a particular command will in some cases depend on the exact DigESwitch model being used; i.e. the number of boards installed. These differences are noted with the commands affected.

    Regardless of the host operating system or the unit model, the DigESwitch’s internal microcontroller first initializes the board hardware and then enters a command loop, polling a ‘“command received” flag to determine if the host has transmitted a command.

    When the loop detects a change in the flag status, it breaks out of the “awaiting command” mode and executes the command code. Upon complete of the command, the microcontroller transmits a status byte and any return data to the host over Ethernet TCP.

  • 92

    TCP API

    DigESwitch Differential

    TCP Message Structure

    The following table shows both the Host and Microcontroller TCP message structures. The microcontroller has a buffer to store incoming messages.

    Host Message Structure uC Message Structure

    Byte Description Byte Description

    0 Command 0 Status

    1 D0 - Data Byte 0 D0 Data Byte 0

    2 D1 - Data Byte 1 Dn Data Byte n

    .

    .

    n Dn - Data Byte n Dn Data Byte n

  • 93

    TCP API

    DigESwitch Differential

    TCP Command Summary Table

    Command Description0x01 Get Firmware Revision

    0x02 Board Reset

    0x03 Reserved

    0x04 Reserved

    0x05 Connect Channel

    0x06 Disconnect Channel

    0x07 Disconnect All

    0x08 Number of Boards Present

    0x09 Write Channel Image

    0x0A Read Channel Image

    0x0B Write Bus Image

    0x0C Read Bus Image

    0x0D Write Board Image

    0x0E Read Board Image

    0x0F Read Channel Relay State

    0x10 Read Bus Relay State

    0x11 Read Board Relay State

    Command Description0x12 Relay Update

    0x13 Reserved

    0x14 Reserved

    0x15 Reserved

    0x16 Reserved

    0x17 Reserved

    0x18 Reserved

    0x19 Reserved

    0x1A Reserved

    0x1B Get Instrument Model

    0x1C Reserved

    0x1D Reserved

    0x1E Write Box Image

    0x1F Read Box Image

    0x20 Read Box Relay State

    0x21 Set Relay Break Time

  • 94

    TCP API

    DigESwitch Differential

    TCP Command Listing

    Note: In the following command tables, a Value/Byte type of “b” denotes a byte, and “w” denotes a word (2 bytes).

    0x01 Get Firmware Rev

    This function gets the firmware revision string from the DigESwitch box. On successful execution the function returns a byte array with a minimum length of 20.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x01 Command Byte

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

    1-n b Data Bytes (ASCII)

  • 95

    TCP API

    DigESwitch Differential

    0x02 Board Reset

    This function opens all the connections in a DigESwitch box and clears all board image locations.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x02 Command Byte

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 b Status Byte / non-zero value = error code

  • 96

    TCP API

    DigESwitch Differential

    0x05 Connect Channel

    This function will connect the given channel to one or both of its input ports utilizing the normal switching mode, in which any relay can be connected or disconnected at will with the “break-before-make” feature disabled.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x05 Command Byte

    1-2 w Channel (MSB-LSB) (0 - 49)

    3-4 w Port (A = 0x0000, B = 0x0001, A&B = 0xFFFF)

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

  • 97

    TCP API

    DigESwitch Differential

    0x06 Disconnect Channel

    This function will disconnect the given channel from one or both of its input ports.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x06 Command Byte

    1-2 w Channel (MSB-LSB) (0 - 49)

    3-4 w Port (A = 0x0000, B = 0x0001, A&B = 0xFFFF)

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

  • 98

    TCP API

    DigESwitch Differential

    0x07 Disconnect All

    This function will disconnect all relays on the specified board.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x07 Command Byte

    1-2 w Board (MSB-LSB)

    Range: -1 (0xFF) = Disconnect all boards (0 -4) = Disconnect specified board only (See board specifications for valid channel range)

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

  • 99

    TCP API

    DigESwitch Differential

    0x08 Number of Boards Present

    This function retrieves the number of boards installed in the DigESwitch box.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x08 Command Byte

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

    1 b Number of boards installed (1 - 5)

  • 100

    TCP API

    DigESwitch Differential

    0x09 Write Channel Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 101

    TCP API

    DigESwitch Differential

    0x0A Read Channel Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 102

    TCP API

    DigESwitch Differential

    0x0B Write Bus Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 103

    TCP API

    DigESwitch Differential

    0x0C Read Bus Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 104

    TCP API

    DigESwitch Differential

    0x0D Write Board Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 105

    TCP API

    DigESwitch Differential

    (This page intentionally left blank)

  • 106

    TCP API

    DigESwitch Differential

    0x0E Read Board Image

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 107

    TCP API

    DigESwitch Differential

    (This page intentionally left blank)

  • 108

    TCP API

    DigESwitch Differential

    0x0F Read Channel Relay State

    This function retrieves the actual current channel-bus relay states (not just the image) for the specified channel.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x0F Command Byte

    1-2 w Channel (MSB-LSB) (Valid values 0 - 49)

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

    1 b Channel Status value read. An 8-bit value representing the channel connections:

    0X00 = A & B disconnected 0x03 = Port A Connected 0x0C = Port B Connected 0x0F = Ports A & B connected

  • 109

    TCP API

    DigESwitch Differential

    0x10 Read Bus Relay State

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 110

    TCP API

    DigESwitch Differential

    0x11 Read Board Relay State

    This command is not supported by the DigESwitch Differential model and will return an error if used.

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x14 “Not Supported” error

  • 111

    TCP API

    DigESwitch Differential

    0x12 Relay Update

    This function updates the actual physical state of all relays on the selected board or boards by writing the on-board channel image information to the relay driver chips.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x12 Command Byte

    1-2 w Board (MSB-LSB)

    -1 (0xFF) = Disconnect all relays in box. (0 - 4) = Update the selected board only. (see board specifications for the channel range)

    3 b Mode:

    1 = Update relay states using the “normal” switching mode. 2 = Update relay states using “break-before-make” mode (2ms delay)

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

  • 112

    TCP API

    DigESwitch Differential

    0x1B Get Instrument Model

    This function retrieves the model number of the DigESwitch box. The number corresponds to the number of boards installed in the box. The character array passed, which will contain the returned model number string, must be at least 20 characters in length.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x1B Command Byte

    DigESwitch Response Packet

    Byte# Value/Type Description

    0 0x00 Status Byte / non-zero value = error code

    1 - 20 b Model number string

  • 113

    TCP API

    DigESwitch Differential

    0x1E Write Box Image

    This function writes the complete on-board image for all boards in the DigESwitch box. The image consists of one byte for every channel in the box, but only the two low order bits are used. The actual relay states may be simultaneously updated if desired, or this function can write only the image, with the intention that the actual relay states will be updated later using the Relay Update function.

    Host TCP Command Packet

    Byte# Value/Type Description

    0 0x1E Command Byte

    1 b Relay Update Type

    0 = Do not update actual relay states, just write image. 1 = Update relay states using normal switching mode. 2 = Update relay states using break-before-make switching mode (2ms delay).

    2 -> (2n+1) w The number of connections (activated relays) per board, For example, if a board has Channel 1Port A connected to Channel 1 COM, Channel 2 Port B connected to Channel 2 COM, and Channel 3 Ports A and B connected to Channel 3 COM, then the total number of connections is eight (two for the Channel 1 Port A differential connection, two for the Channel 2 Port B differential connection and four for the Channel 3 A and B differential connections).

    n = number of boards in the DigESwitch box.

    (Table continued on next page)

  • 114

    TCP API

    DigESwitch Differential

    By