Project Home‎ > ‎Documentation‎ > ‎Interfaces‎ > ‎

WTDIO

Weeder Technologies I/O board provides serial RS232 to 14 I/O lines all individually controlled as in or out. All inputs incorporate a pull-up resistor to 5-volts, simplifying hookup to switch contacts. Weeder boards are DIP switch addressable so you can stack up to 32 modules on the same port for 448 I/O points.

These boards are great for interfacing to door contacts and standard motion detectors.

Pytomation currently supports the following model:

    14 Channel RS232 digital I/O board - WTDIO

You must set the I/O channels on the WTDIO board according to the command set:

S = Switch

L = Output default low

Inputs are set according to the wtdio manual by sending the board data in the following sequence. BOARD TYPE CHANNEL

Example: Board 'A', Type SWITCH, Channel D - 'ASD'

Currently only SWITCH inputs are handled. Inputs can be inverted when configured so if you have a contact that is normally closed but want that to be the "OFF" state you can invert it.

Outputs are set as follows: BOARD LEVEL CHANNEL

Example: Board 'A', Level LOW, Channel 'M', - 'ALM'

An output can be configured to be high by default although it's probably better to do this in your Pytomation instance file.

Configuring:

Use "setChannel()" to set the channel to input or output.

Use "dio_invert()" to invert the input.


Using in an Instance

# Set up the interface
wtdio = Wtdio(Serial('/dev/ttyACM0', 9600))

# Set the I/O on the Wtdio board
# Set channels A, and B as input and channel H as output
wtdio.setChannel('ASA')
wtdio.setChannel('ASB')
wtdio.setChannel('ALH')
# A motion detector connected to channel B on board A
m_stairs = Motion(address='AB', devices=wtdio, name='Stair Motion')


Comments