# PDISO8 Series and PDISO16 Series

The PDISO8 Series includes the following hardware:

- CIO-PDISO8
- PCI-PDISO8
- PC104-PDISO8
- USB-PDISO8
- USB-PDISO8/40

The PDISO16 Series includes the following hardware:

- E-PDISO16
- PCI-PDISO16
- CIO-PDISO16

The PDISO8 and PDISO16 Series supports the following features.

### Digital I/O

Port I/O

Functions

UL: cbDIn(), cbDOut()

UL for .NET: DIn(), DOut()

Python for Windows: d_in(), d_out()

PortNum

AUXPORT

DataValue

PDISO8: 0 to 255 for AUXPORT

PDISO16: 0 to 65,535 for AUXPORT (Refer to 16-bit values using a signed integer data type for information on 16-bit values using unsigned integers.)

Bit I/O

Functions

UL: cbDBitIn(), cbDBitOut()

UL for .NET: DBitIn(), DBitOut()

Python for Windows: d_bit_in(), d_bit_out()

PortType

AUXPORT

BitNum

PDISO8: 0 to 7 on AUXPORT

PDISO16: 0 to 15 on AUXPORT

### Miscellaneous

USB-PDISO8, USB-PDISO8/40, and E-PDISO16 only.

Functions

UL: cbFlashLED()

UL for .NET: FlashLED()

Python for Windows: flash_led()

Causes the USB LED on the USB device to blink, and the LINK LED on the Ethernet device to blink. When you have several devices connected, use this function to identify a particular device.

## Configuration (USB-PDISO8 and USB-PDISO8/40 only)

The USB-PDISO8 and USB-PDISO8/40 support device detection with the API. Refer to the InstaCal, API Detection, or Both? section for information about whether to use InstaCal or the API to detect and configure hardware.

#### InstaCal

Factory serial number

Listed as Factory Serial No. (read only)

Identifier

Identifier text box

AC filter settings

Enable checkbox for each channel; Set All button to enable/disable all channels.

LED indicator

Flash LED button

Hardware version

Listed as Firmware Version (read only)

#### Programmable API Functions

Factory serial number

UL: cbGetConfigString()

ConfigItem = BIDEVSERIALNUM

DevNum = VER_FW_MAIN

UL for .NET: GetDeviceSerialNum()

Python for Windows: get_config_string()

config_item = DEVSERIALNUM

dev_num = MAIN

Identifier

UL: cbGetConfig()

ConfigItem = BIUSERDEVIDNUM

UL for .Net: GetUserDeviceIdNum()

Python for Windows: get_config()

config_item = USERDEVIDNUM

AC filter settings

UL: cbGetConfig(), cbSetConfig()

ConfigItem = BIDISOFILTER

ConfigVal = ENABLED, DISABLED

DevNum = Bit number

UL for .NET: GetDisoFilter(), SetDisoFilter()

Python for Windows: get_config(), set_config()

config_item = DISOFILTER

dev_num = bit number

config_val = State enum

LED indicator

UL: cbFlashLED()

UL for .NET: FlashLED()

Python for Windows: flash_led()

Hardware version

UL: cbGetConfigString()

ConfigItem = BIDEVVERSION

DevNum = VER_FW_MAIN

UL for .NET: GetDeviceVersion()

Type = VersionType.FW_MAIN

Python for Windows: get_config_string()

config_item = DEVVERSION

dev_num = MAIN

### Hardware Considerations

##### Establishing and requesting control of an E-PDISO16

Through InstaCal, you can configure the system to automatically attempt to establish control over the E-PDISO16 when an application starts up. To do this, check the "Try to acquire ownership on application startup" option on InstaCal's Ethernet Settings tab. Note that only one computer should have this option selected; otherwise, two or more computers might compete for control over the E-PDISO16. To manually request control over the E-PDISO16, press the Request Ownership button on the Ethernet Settings tab.

Only one computer can establish control over an E-PDISO16 at a time. Additional computers that contact the device can only query the state of the device and its ports. The name of the computer with control over the E-PDISO16 appears in the Device Owner property on the Ethernet Settings tab.

##### Sending a request for control of an E-PDISO16

If another computer already has control over E-PDISO16 when you connect to it, you can send a message to the controlling computer. Do the following.

1. From the InstaCal main window, double-click on E-PDISO16.
2. From the Ethernet Settings tab, click on the Request Ownership button.
3. On the Request Ownership dialog, enter your message (up to 256 characters). Press <Ctrl-Enter> to go to a new line.
4. You can set how long the message is displayed on the computer that controls the E-PDISO16 from the Maximum Wait drop-down list box.
5. Click on the Send button to send the message.

##### Receiving a request for control of an E-PDISO16

If your computer controls an E-PDISO16 and you receive a message from another person requesting control of the device, the message shows on your screen for the time set in the Maximum Wait drop-down list.

- Yes: Click on Yes to give up ownership/control over the network device.
  The computer automatically disconnects from the network connection, and control over the device transfers to the computer that sent the message. The Device Owner property in InstaCal updates with the name of the computer that gained control of the device.
- No: Click on No when you do not agree to give up ownership or control over the network device.
  When you click on a button, the message box and selected response displays on the computer that sent the message.

##### Receiving a message

When a computer sends a message to the computer controlling the device, the message displays on the monitor of the controlling computer for the time specified by the Time-out value.

The message box has two buttons used to respond to the message. When you receive a message, enter a response in the message box and click on one of the following buttons.

- Yes: Click on Yes to give up ownership/control over the network device.
- The computer automatically disconnects from the network connection, and control over the device transfers to the computer that sent the message. The Device Owner property in InstaCal updates with the name of the computer that gained control of the device.
- No: Click on No when you do not agree to give up ownership or control over the network device.
- When you click on a button, the message box and selected response displays on the computer that sent the message.