x-332 Users Manual
x-332 Users Manual
x-332 Users Manual
Table of Contents
Trademark and Copyright Information............................................................................................................... 5
Warranty................................................................................................................................................................ 6
FCC Statement...................................................................................................................................................... 7
Section 1: Introduction......................................................................................................................................... 9
2.1 Mounting................................................................................................................................................ 15
2.1.1 Shelf Installation............................................................................................................................... 15
2.1.2 Wall Mounting................................................................................................................................... 15
2.1.3 DIN-Rail Mounting............................................................................................................................ 16
2.2 Connection............................................................................................................................................. 17
2.2.1 Power Supply Connection................................................................................................................ 18
2.2.2 Relay Connection............................................................................................................................. 18
2.2.3 Optically-Isolated Input Connections................................................................................................ 20
2.2.4 Temperature/Humidity Sensor and Counter Input Connection ........................................................22
2.2.5 Network Connection......................................................................................................................... 25
2.3 Establishing Communications for Setup............................................................................................ 26
2.3.1 Method 1: Assign a Temporary IP address to X-332™ ....................................................................26
2.3.2 Method 2: Assign a Temporary IP Address to the Configuration Computer ....................................28
2.4 X-332™ General Settings Setup Pages .............................................................................................. 31
2.4.1 Information Tab................................................................................................................................. 32
2.4.2 Network Tab..................................................................................................................................... 33
2.4.3 Adv. Network Tab............................................................................................................................. 37
2.4.4 Password Tab................................................................................................................................... 40
2.4.5 Date/Time Tab ................................................................................................................................. 41
2.4.6 Logging Tab...................................................................................................................................... 45
2.4.7 Events Scheduler Tab...................................................................................................................... 48
2.4.8 Script Tab ........................................................................................................................................ 53
2.4.9 Control Page Setup Tab................................................................................................................... 54
2.5 X-332™ I/O Setup Pages ...................................................................................................................... 56
2.5.1 Digital Input Tab................................................................................................................................ 57
2.5.2 Counters Tab.................................................................................................................................... 59
2.5.3 Analog Inputs Tab............................................................................................................................. 61
2.5.4 1-Wire Sensors Tab.......................................................................................................................... 65
2.5.5 Relay Setup Tab............................................................................................................................... 68
2.5.6 Remote Relays Tab.......................................................................................................................... 75
2.5.7 External Variables............................................................................................................................. 81
Warranty
This Xytronix Research & Design, Inc. product has a warranty against defects in material and
workmanship for a period of one year from the date of shipment. During the warranty period, Xytronix
Research & Design, Inc. will, at its option, either repair or replace products that prove to be defective.
This warranty is extended to the original purchaser of the equipment only.
For warranty service or repair, the product must be properly packaged, and returned to Xytronix
Research & Design, Inc. The purchaser shall prepay all charges for shipping to Xytronix Research &
Design, Inc., and Xytronix Research & Design, Inc. will pay the shipping charges to return the product to
the purchaser as long as the product is shipped within the United States. If the product is shipped
outside of the United States, the purchaser shall pay all shipping charges, duties, and taxes.
Limitation
The foregoing warranty shall not apply to defects or damage resulting from improper use or misuse,
unauthorized repair, tampering, modification, improper connection, or operation outside the
electrical/environmental specifications for the product. Further, the warranty does not cover Acts of God,
such as fire, flood, hurricanes, and tornadoes. This warranty does not cover damage to property,
equipment, direct, indirect, consequential, or incidental damage (including damage for loss of business
profit, business interruption, loss of data, and the like) arising out of the use or misuse of this product.
UNDER NO CIRCUMSTANCES WILL THE LIABILITY OF XYTRONIX RESEARCH & DESIGN, INC. TO
THE PURCHASER OR ANY OTHER PARTY EXCEED THE ORIGINAL PURCHASE PRICE OF THE
PRODUCT, REGARDLESS OF THE FORM OF THE CLAIM. No other warranty is expressed or implied.
Xytronix Research & Design, Inc. specifically disclaims the implied warranties or merchantability and
fitness for a particular purpose. Some jurisdictions may not allow the exclusion of limitation of liability for
consequential or incidental damage.
FCC Statement
This device complies with Part 15 of the FCC Rules. Operation is subject to the following two conditions:
- This device may not cause harmful interference.
- This device must accept any interference received, including interference that may cause undesired
operation.
Warning
This equipment has been tested and found to comply with the limits for a Class B digital device,
pursuant to Part 15 of the FCC Rules. These limits are designed to provide reasonable protection. This
equipment generates, uses and can radiate radio frequency energy and, if not installed and used in
accordance with the instructions, may cause interference to radio communications. There is no
guarantee, however, that interference will not occur in a particular installation. If this equipment does
cause harmful interference to radio or television reception, which can be determined by turning the
equipment off and on, the user is encouraged to try to correct the interference by one or more of the
following measures:
- Reorient or relocate the receiving antenna.
- Increase the separation between the equipment and receiver.
- Connect the equipment into a relay on a circuit different from where the receiver is connected.
- Consult the dealer or an experienced radio/TV technician for help.
Notice
Changes or modification not expressly approved by the party responsible for compliance could void the
user’s authority to operate the equipment.
Security Notes
X-332™ does not employ a general purpose computer operating system and does not have features,
such as telnet, FTP, SSH, nor uncontrolled open ports. This means it is unlikely for someone to ‘break
in’ to X-332™ and access other devices on your local network. The simplicity of X-332™ makes it a
inherently secure device. Nevertheless, as with any device installed on a network, appropriate security
precautions should be observed.
If X-332™ is installed on the Internet, it is recommended that passwords be enabled for the Control
Page. Passwords should be at least 8 characters in length and use a combination of upper and lower
case letters and numbers. For additional security, a firewall may be used to limit access to selected IP
addresses. Another option may be to set up a Virtual Private Network (VPN) between the network where
X-332™ resides and the client machine (web browser, another, ControlByWeb™ product, etc.).
Section 1: Introduction
X-332™ is a multi-function web-enabled module for control and monitoring. The X-332™ includes
sixteen dry-contact relays, sixteen optically-isolated digital inputs, two counter inputs (inputs 17 and 18),
four analog inputs and 1-wire bus with support for up to 4 temperature/humidity sensors. It can be
controlled and/or monitored over any IP network including private networks, IP-based industrial control
networks, and the Internet. Users can operate the X-332™ using a web browser, or custom applications
can be written to control the X-332™ from a computer, PLC, or other automation controller. In addition,
custom control scripts can be written and executed using BASIC programming language.
Other outstanding features of other ControlByWeb products are also included, such as email notification,
BASIC scripting, scheduling, and logging. The X-332™ can also control up to 16 remote relays and can
graph logged data with any HTML 5 compliant web browser.
The X-332™ supports a number of protocols, including HTTP, XML, Modbus/TCP, SNMP, SMTP, NTP,
and Remote Services.
1.2 Applications
X-332™ was designed to meet a broad range of industrial applications. It works very well as a standalone
device that can be controlled using a web browser, or as a convenient way to add I/O to a computer. It can
easily be configured using simple menus and drop-down lists, or it can run simple BASIC scripts. Many of
its features such as scheduling, logging, input state monitoring, and the ability to control up to 32 relays (16
internal and 16 remote relays on other devices) make the X-332™ a very powerful, yet simple controller.
You can use the X-332™ to control motors, lights, coils, pumps, valves, bells, etc. You can also use it to
monitor alarms sensors, switches, fluid level switches, battery voltage, temperature, humidity, and much
more. A few example applications include:
- Bell Controller
- I/O Extender
- Industrial Thermostat
- Process Controller
- Process Monitor
DIN Rail Mounting Removable mounting clips to attach the X-332 to a DIN rail. DRC-12C
Clips
I/O Connectors
X-332™ has nine 8-position removable screw terminal connectors, one 5-position removable screw
terminal connector, one 3-position removable screw terminal connectors and an Ethernet connector.
These connectors are used to connect relay contacts, digital inputs, counters, analog inputs, power
and network.
Network Connector
The Ethernet connector is a standard, 8-position modular receptacle.
Module Power Indicator
The green Power LED indicator is illuminated whenever the module is powered.
Relay Indicators
Sixteen green LEDs illuminate when the corresponding relays are energized (when a relay is
energized, the common and normally open contacts are closed).
Optically-Isolated Digital Input Indicators
Sixteen green LEDs illuminate when a voltage is applied to the corresponding optically-isolated
digital inputs.
Ethernet Indicators
The LINK LED is illuminated green when the module is properly connected to an Ethernet network
and is ready to communicate. Network communications will only occur if this LED is illuminated. The
ACT LED flashes yellow when activity is detected on the network.
2.1 Mounting
X-332™ can sit on a shelf or be mounted to a wall or DIN Rail (35mm by 7.55mm). It should be mounted
in a clean, dry location where it is protected from the elements. Ventilation is recommend for installations
where ambient air temperatures are expected to be high
See Appendix J: Mechanical Information for additional mechanical details.
Attach a wall mount bracket (shown above) to the side of the X-332™ by using two #6 screws. Attach
the DIN-Rail mounting clips [Part number DRC-12C sold separately] to the wall mount bracket by using
two additional #6 screws (pictured below). Repeat for the additional DIN-Rail clip.
2.2 Connection
CAUTION: MAKE SURE POWER IS SHUT OFF BEFORE WIRING!
CAUTION: THIS UNIT SHOULD BE INSTALLED BY A QUALIFIED TECHNICIAN.
MIS-WIRING OR MIS-CONFIGURATION COULD CAUSE PERMANENT DAMAGE TO THE X-332™,
THE EQUIPMENT TO WHICH IT IS CONNECTED, OR BOTH.
Removable terminal connectors are provided for simple wiring. The correct wiring procedure is as
follows:
1. Make sure power is turned off.
2. Remove the terminal connector from the X-332™ and make wiring connections to the terminals.
3. Reconnect the terminal connector.
4. Apply power.
It is recommended that the load (device to be controlled) not be connected to the X-332™ until after the
X-332™ has been configured and tested. By doing this, wiring and configuration mistakes will not cause
the load device to turn on unexpectedly.
IMPORTANT: MAKE SURE WIRES ARE PROPERLY ATTACHED TO THE TERMINALS AND THAT
THE TERMINALS ARE TIGHT!
X-332™ requires power for its internal logic circuits. Connect a 9-28 VDC power supply to the Vin+ and
Vin- terminals. Note that a regulated power supply is recommended. Verify that the power supply is
rated for the operating current of X-332™ (See Appendix H: Specifications for current requirements.)
Multiple X-332™ units may be connected to a single power supply by connecting the power supply input
terminals in parallel. The power supply must have a high enough current rating to power all units
connected. (See Appendix H: Specifications for current requirements.)
When mechanical relays switch inductive loads such as motors, transformers, relays, etc., the current
will arc across the internal relay contacts each time the contacts open. Over time, this causes wear on
the relay contacts which can shorten their life span. When switching an inductive load, it is
recommended that relay contact protection devices are used. Note that the X-332™ does include an
internal MOV (40V) across its relay contacts, which offers some protection. Additional relay contact
protection may be required. Below is an example of relay contact protection for a DC circuit (Figure 2.2c)
and an AC circuit (Figure 2.2d). For component values required to provide sufficient contact protection
for your application, refer to appropriate references.
Figure 2.2f
DC Inputs:
With DC inputs, no external components are required as long as the maximum input voltage is not
exceeded (See Specifications). A DC voltage can be reduced with an external resistor of the appropriate
value and power rating to reduce the input current.
The formulas to calculate external resistor values are provided below:
The 5-pin connector is used to connect temperature and humidity sensors, as well as to connect low
voltage sensors. Inputs 17 and 18 found on the 5-pin connector can also be used as counters.
Temperature or humidity sensors can be used for monitoring environmental conditions. The digital
sensors use a one-wire data bus, which allows up to four sensors to share the same terminals (+5V,
Ground, Data). Every sensor on the one-wire bus is assigned a unique serial number when it is
manufactured. That number is used to address the device during communication.
The sensors have three wires; the wire color is show in the table below.
Multiple sensors can be connected in two ways: directly connected to the unit (star topology) or “daisy
chained” (linear topology) as shown in Figure 2.2g. Many factors will determine the maximum length of
the cable. Some of these factors include, but are not limited to, the type of cable used, the number of
sensors, ambient electromagnetic noise, and sensor network topology. Combined cable lengths to all
sensors of 600 ft using Cat 5e cable have been successful. However, due to the uniqueness of
installation environments, results may vary. Please test in the desired environment before permanent
installation.
The following are general recommendations that will maximize sensor runs and minimize problems.
Cat 5 and Cat 5e network cable has proven to be an effective and low-cost solution for long runs. Other
cable types can be used, but cable capacitance may limit the length. Figure 2.2h shows the
recommended connection using Cat 5 network cable. Connect all unused conductors to ground.
• Avoid sensor runs adjacent to industrial equipment power cables. These cables can have the
potential for high voltage spikes that may induce noise on the sensor signals. Similarly, avoid
running sensor cables near any radio transmission antennas or coaxial feed-lines.
• Protect any electrical connections with appropriate weather shielding.
• Due to the broad range of applications and environments where the X-332™ may be employed,
successful installations of long sensor runs may vary significantly.
Two counter inputs (inputs 17 and 18) are provided which can be connected to dry contact sensors or
switches. Sensors can be used for monitoring alarm conditions such as access or thresholds.
Alternatively, you can also control outlets by connecting switches to these inputs, and configuring them
to control the outlets. Each input can also function as a counter (for configuration see section 2.5.4).
Connect one terminal of the sensor or switch to the input terminal (Input 17 or Input 18) on X-332™.
Connect the other terminal to the ground terminal on X-332™. When contacts are closed the input is
connected to ground and the input is considered to be “ON” (see figure 2.2e).
Figure 2.2k - Input Connection Figure 2.2l - Recommended connection using Cat 5 cable
Connect the Ethernet port to a 10 Base-T, 10/100 Base-T, or 10/100/1000 Base-T Ethernet connection.
This typically connects to an Ethernet hub, switch, or router. For configuration, X-332™ may be
connected directly to the Ethernet port on a computer using a “crossover” cable. Otherwise, for
connection through a hub or router, a standard “straight-through” cable should be used. X-332™ can be
used on a wireless network by connecting through an Ethernet bridge or a wireless router.
Note: The wireless Ethernet bridge or router must be properly configured for the wireless network. Refer
to the installation instructions for the wireless device.
Make sure that the X-332™ and the configuration computer are connected to the same network.
Linux/Unix Instructions
1. Open a terminal and change to root user (su -, then enter root password).
2. Type:
arp -s {new IP address} {serial number of X-332™ }
Note: IP address format is xxx.xxx.xxx.xxx. The serial number can be found on a label on the
module board. The format is ss:ss:ss:ss:ss:ss.
For example, to set X-332™ (with serial number 00-0C-C8-01-00-01 ) to 10.10.10.40 the following
command would be used:
arp -s 10.10.10.40 00:0c:c8:01:00:01
3. Next, type:
ping -s 102 {new IP address}
For example, if the new IP address is 10.10.10.40, the following command would be used:
ping -s 102 10.10.10.40
4. Proceed with X-332™ setup in section 2.4.
Once setup is complete, it may be necessary to clear the 'arp' cache to configure additional
WebRelays. This is necessary because each unit has the same default IP address, but a different
unit serial number (MAC address). Clearing the arp table can be done by typing sudo arp -d -a
in the command prompt window.
Mac OS X Instructions
1. Open a terminal.
Note: The terminal is in the “Utilities” directory, which is in the “Applications” directory.
2. Type:
sudo arp -s {new IP address} {serial number of X-332™ }
Administrator password may be required.
Note: IP address format is xxx.xxx.xxx.xxx. The serial number can be found on the label on the
module board. The format is ss:ss:ss:ss:ss:ss.
For example, to set a X-332™ (with serial number 00-0C-C8-01-00-01 ) to 10.10.10.40 the following
command would be used:
sudo arp -s 10.10.10.40 00:0c:c8:01:00:01
3. Next, type:
ping -s 102 {new IP address}
For example, if the new IP address is 10.10.10.40, the following command would be used:
ping -s 102 10.10.10.40
4. Proceed with X-332™ setup in section 2.4.
Once setup is complete, it may be necessary to clear the 'arp' cache to configure additional WebRelays.
This is necessary because each unit has the same default IP address, but a different unit serial number
(MAC address). Clearing the arp table can be done by typing sudo arp -d -a in the command prompt
window.
The following example is for those running the Windows operating system:
1. Window Vista/7 – Select the Windows Icon (Start Menu) and enter
ncpa.cpl into the search bar and press Enter (Figure 2.3a).
Windows XP – Open the control panel by clicking on the start menu
and then on Control Panel.
Note: The control panel shown (Figure 2.3b) is in “Classic View.” If the
control panel is in “Category View,” select the “Classic View” option
before proceeding.
2. Double click on the icon labeled Network Connections. The Network Connections window will open
(Figure 2.3b).
Units
This allows the user to select between the temperature units of Fahrenheit and Celsius. All settings
entered and displayed on subsequent pages will be in the units selected.
Part Number
This displays the full model number of X-332™.
Firmware Revision
This is the current product revision of the unit's firmware.
Serial Number
This is the serial number of this unit. The serial number is also the MAC address of the unit.
Note: X-332™ must be power-cycled (power disconnected, then reconnected) before network settings
take effect. Only the settings on the Network tab require power-cycling before taking effect.
Use DHCP
This option allows DHCP to be enabled or disabled. If this option is set to Yes, X-332™ will wait for
an IP address from a DHCP server each time it is powered. The default setting is No (this is
recommended for most installations). To use DHCP, click the Yes radio button, then press submit.
Once this is complete, power cycle the X-332™ – Once restarted, the IP address will be assigned.
When the X-332™ is assigned an IP address using DHCP, the new IP address can be found
through the list of clients kept by the DHCP server. For most instances, the DHCP server is in the
local gateway or router.
HTTP Port
The TCP port used for HTTP communications (web browser, xml, get commands) with X-332™ is
specified here. The default setting for this field is 80, which is the standard HTTP port. It is
recommended that the port be left unchanged unless the user has an understanding of TCP/IP and
ports. For more information on TCP ports and IP addressing see Appendix C: Accessing X-332™
Remotely Over the Internet.
Speed
This option sets the data rate (clock rate) of the Ethernet port. Either 10 Mbps or 100 Mbps can be
selected. The 100 Mbps option offers faster communications but the amount of data to and from X-
332™ is so small that users will not likely notice much (if any) difference. When the X-332™ is set
to 10 Mbps, it draws less power and runs a little cooler, which may translate into a longer product
life. The default setting for this field is 10 Mbps.
IT IS RECOMMENDED THAT THIS SETTING BE LEFT AT 10 Mbps UNLESS THE USER HAS A
SPECIFIC REASON TO USE 100 Mbps.
Mode
This option allows the Ethernet port to be set to Half Duplex or Full Duplex. Legacy Ethernet
operates in Half Duplex mode which means that devices can either send data or receive data, but
not both at the same time. Full Duplex means that devices can send and receive data at the same
time. The default setting for this field is Half Duplex.
Email Server Name/IP (SMTP)
The name of the SMTP (Simple Mail Transfer Protocol) mail server (for example mail.example.com)
or the IP address of the mail server (for example 192.10.10.10) should be entered in this field. There
is no default setting for this field.
Note: If the server name is entered and not the IP address, the address of a DNS server will be
required in the DNS field.
Email Server Port
This field is used to specify the SMTP Mail Server Port. The default setting is 25, which is the
standard SMTP port.
User Name (If Required)
If the SMTP mail server requires authentication, the user name must be entered here (40 character
limit). There is no default setting for this field.
Password (If Required)
If the SMTP mail server requires authentication, the password must be entered here. There is no
default setting for this field.
Return Email
X-332™ will not receive email messages, but when X-332™ sends email messages, it must include
a return email address. This field is used to specify the return email address. Note that although X-
332™ will send email messages with any email address specified in this field, some email filters
(spam filters) will not allow messages through that include an invalid email address. There is no
default setting for this field.
Email 1 to Email 3
Enter the email addresses of up to three recipients for alarm messages in these fields. There are no
default settings for these fields.
This will cause an email message to be sent immediately. If the messages don't get through, the
system log file may have some clues to assist in diagnosing the problem
(http://192.168.1.2/syslog.txt). See Appendix D: Log Files for additional Logging Information.
MTU Setting
To change the MTU, manually enter the advSetup.html (case sensitive) page into the address bar.
(http://192.168.1.2/advSetup.html). This new setup page will have a text box that will allow the MTU
to be changed. The valid range is 256 to 1476 bytes. MTU is a network parameter that stands for
Maximum Transmission Unit. This defines the max size, in bytes, of the TCP packets sent out from
the device. This normally can be left alone, but there are some circumstances where it might be
beneficial to change it. One of these circumstances is when the device is to be used over a VPN
(virtual private network). VPN's add extra information to TCP packets, if the new packets are too big
to physically travel across the network (greater than about 1500 bytes) then the packets will be split
up. This causes problems for some firewalls and those firewalls will just discard the packets. To fix
this, the MTU can be adjusted until the TCP packets do not get split up.
Modbus Enabled
X-332™ can support Modbus/TCP. Modbus is a messaging structure protocol used in industrial
manufacturing control and automation. It is an open protocol and offers interoperability with software
and devices from other manufacturers. This is enabled by selecting Yes in this field. The default
setting for this field is No. (See 3.4 Modbus Operation for more information on using X-332™ on a
Modbus network.)
Note: Modbus communications are disabled whenever the Control Password is enabled.
Modbus Port
This specifies the port used for Modbus/TCP communications with X-332™. By default this is set to
port 502 which is the standard Modbus port. It can be set within the range of 0 to 65535.
Endianness
32-bit data is treated as two individual 16-bit words using IEEE 754 floating point format. Floating
point format is used for sensor, pulse counter, and analog data as well as for setting output pulse
duration.
If the checkbox is set, the X-332™ will use big-endian architecture, and the most significant 16-bit
word (big end) is sent first. If the box is cleared, then the X-332™ will use little-endian architecture,
and the least significant word (little end) is sent first. The default setting for this box is unchecked,
use little-endian.
For example, in little-endian format, a 32-bit floating point number represented by '1234 ABCD' is
sent as 'ABCD 1234'.
Remote Services Enabled
This option enables or disables Remote Services. If Yes is selected, Remote Services will be
enabled as soon as the submit button is pressed and X-332™ will immediately attempt to make a
connection with the remote server (power cycle not required). Once a connection is established, the
connection will remain until it is disconnected by the remote server. Proper connection with the
remote server can be verified by viewing the system status log file (see Appendix D: Log Files).
The default setting for this field is No. Most users should leave this setting at its default. (See
Remote Services at the end of this section for more information.)
Server Name/IP Address
Specify the name or IP address of the Remote Services server here. If the IP address is specified,
enter it in this format aaa.bbb.ccc.ddd. For numbers that are less than 100, preceding zeros should
not be included (for example, enter 80 rather than 080). This field can be up to 40 characters long
and has no default setting.
Server Port
Enter the TCP port used for the Remote Services server. This can be set within the range of 0-
65535. The default setting for this field is 8000.
Connection String
This text is sent to the Remote Services server when the connection is established. This string
should include any information required by the server at connection. For example, it may include an
ID number, customer number, password, etc. The format is entirely dependent upon the server
requirements. This field can be up to 80 characters long. Default text is provided only as an example
placeholder. The default text is [<Serial Number>]:ControlByWeb,X-332.
Connection Interval
This field specifies the periodic interval in which X-332™ attempts to connect to the remote server,
or if X-332™ is already connected, it is the interval in which X-332™ sends the connection string.
This field can be set within the range of 1 to 34452 minutes. The default setting for this field is 1
minute.
SNMP Enabled
When this option is set to Yes, X-332™ will support SNMP. The default setting for this option is No.
(See SNMP at the end of this section for more information.)
SNMP Server IP
When SNMP is used, this field is used to specify the IP address of the SNMP manager. The default
setting for this field is 192.168.1.25.
SNMP Server Port
When SNMP is used, this field is used to specify the SNMP port that X-332™ listens on. The default
setting for this field is 161.
SNMP Trap Port
When SNMP is used, this field is used to specify the SNMP Trap port of the SNMP manager. The
default setting for this field is 162.
Remote Services
Remote Services initiates an outgoing connection to a server at a remote location. This can be used in
an environment where a web server on the Internet provides a custom web page to X-332™ and other
ControlByWeb products. Users access X-332™ through the web server rather than communicating
directly with it. This method is sometimes referred to as “web services” and allows programmers to
create powerful, custom web pages to multiple devices using the web programming languages of their
choice.
Remote Services initiates the connection to the external web server (rather than the web server initiating
communications to X-332™). This has two main benefits. First, the web server does not need to know
the IP address of X-332™. This means that X-332™ can get its IP address dynamically from a DHCP
server, simplifying the installation. Second, since the connection from X-332™ is outgoing, rather than
incoming, the local router on the network where X-332™ resides doesn't need to be configured to
forward sockets. This also simplifies the installation. Since the router configuration is not modified, the
risk of compromising security on the local network is eliminated. For more information about the Remote
Services see Appendix E: External Server and Remote Services.
SNMP
Simple Network Management Protocol (SNMP) is used to manage and administer network devices. X-
332™ supports SNMP V1.0 and can be configured here. Using SNMP, the I/O states of X-332™ can be
read as well as some basic information about the device. See Appendix F: SNMP Requests for
information about how to request information from X-332™ using an SNMP manager, as well as where
to find MIB files for X-332™.
Note: The read and write community strings used for SNMP are actually the Control Password found on
the Password setup tab (see Section 2.4.4). If the Control Password is disabled, then X-332™ does not
check for the community string when issued a Get or GetNext request from the SNMP manager.
Setup Password
The Setup Password, which is required to access the setup pages, can be modified by entering a
new password here. Passwords that are 8 characters or longer (13 characters max) with both
alphabetic and numeric characters are recommended (A-Z, 0-9). For security purposes, the
password will not be displayed as it is entered. Note: the username required for accessing the setup
pages is admin (all lower case). The default Setup Password is webrelay (all lower case).
Re-enter Setup Password
When the Setup Password is changed, it must be entered twice - one time in the previous field and
a second time in this field. If the password is not entered identically in both fields, the password will
not be changed.
Enable Control Password
The Control Page can be viewed without entering a password. For security purposes, a password
can be set to access the Control Page. When this field is set to Yes, a password will be required to
view the Control Page. The default setting for this field is No. Note: Since Modbus has no provision
for passing passwords, the Control Page password will not take effect if Modbus is enabled.
Control Password
When the Enable Control Password option above is set to Yes, this field is used to specify the
password which will be required to access the Control Page. Passwords that are 8 characters or
longer with both alphabetic and numeric characters are recommended. (A-Z, 0-9). For security
purposes, the password will not be displayed as it is entered. Note: X-332™ requires a password,
but does not require a user name to access the Control Page. However, some browsers require a
user name. In this instance enter none as the user name. The default Control Password is
webrelay.
Re-enter Control Password
When the Control Password is changed, it must be entered twice- one time in the previous field, and
a second time in this field. If the password is not entered identically in both fields, the password will
not be changed.
Date/Time
This is the current date and time stored in X-332™. The time is stored and displayed in 24-hour
format.
Set Time
This drop-down list offers two options for setting the time: Manually or Sync with NTP server.
The options that follow this field will change based upon how this option is set.
- Manually requires the user to enter the time and date.
- Sync with NTP server allows the user to set the clock automatically by using an NTP
(Network Time Protocol) server.
Date
The current date is entered by first selecting the correct month and year,using the left and right
arrows at the top of the calender. The single arrows(< and >) change the month and the double
arrows (<< and >>) change the year. Once the current month and year are displayed, select the
correct day, which will then be highlighted.
Time (24 Hour Format)
Enter the time as HH:MM:SS. (HH represents hours in 24-hour format [00-23], MM represents
minutes [00-59], SS represents seconds [00-59].)
Many NTP Internet servers are available. In addition, many desktop computers will function as an
NTP server (both Mac and PC). If a desktop computer is used, firewall settings may need to be
adjusted to allow for NTP communications on port 123.
Daylight Savings
In many parts of the United States and in some other countries, the time is shifted forward by one
hour during the summer months. This is an effort to conserve energy by making the daylight last
longer into the evening hours. If this option is set to Yes, the time on X-332™ will automatically be
shifted forward by one hour between the hours of 12:00 AM – 5:00 PM on the Daylight Savings Start
date set below, and it will shift back to standard time between the hours of 12:00 AM – 5:00 PM on
the Daylight Savings End date set below. The time change is made at a random time within the
previously mentioned, five-hour time frame, in order to prevent several different devices from
simultaneously requesting a time and overwhelming the NTP server. The default setting is Yes.
Note: Enabling the daylight savings time adjustment, scheduled events will be adjusted for the new
time. Logged data includes a time stamp based upon the current time in the device, so it is possible
to duplicate log times in the spring and miss log times in the fall. To avoid confusion, many servers
and data loggers are set to remain on GMT time and do not shift for daylight savings.
Daylight Savings Start Day
This is the date that daylight savings will start. Note that on this date, between the hours of 12:00
AM – 5:00 PM, the current time will be shifted forward by one hour (i.e. The time will jump from
12:02 AM [00:02] to 1:02 AM [01:02]). By default this is set to the 2nd Sunday in March which is the
date used in the United States.
Daylight Savings End Day
This is the date that daylight savings will end. On this date, between the hours of 12:00 AM – 5:00
PM, the current time will be shifted backward by one hour (i.e. The time will jump from 12:02 AM
[00:02] to 11:02 PM [23:02] the day before). By default this is set to the 1st Sunday in November
which is the date used in the U.S.
When relays are selected as an Event Trigger, logging will occur whenever the selected relays
turned ON or OFF. When inputs are selected as an Event Trigger, logging will occur whenever the
input state changes. When pulse counters, sensors and analog inputs are selected as an Event
Trigger, logging will occur whenever the input or sensor changes by the trigger delta.
The following Log/Event Trigger options are available:
- Inputs (1-18)
- Relays (1-16)
- Sensors (1-4)
- Pulse Counters (1-2)
- Analog Inputs (1-4)
- Events
- XML Requests
- MODBUS Requests
- SNMP Requests
Note: Logging activity will lower the highest possible pulse counter rates.
On the Control Page Setup tab, the user can specify the refresh rate of the Control Page. Each
time the page is refreshed, an XML request is sent and logged as a Read. Since the default refresh
rate is 3 seconds, the log file can get cluttered by many XML request logs. By filtering out Reads,
refresh requests will not be shown in the log. Likewise, by selecting Writes, any log created by
changing the state of the output will not be shown in the log file. The default selection is None.
Next Log Time
This field displays the next periodic log time. If logging is disabled, the next log time will indicate
"Disabled." If logging is enabled, but periodic logging is disabled (by selecting Event Logging Only)
the next log time will indicate "Event Logging Only."
A list of all scheduled events and information about each event is displayed in a table. Events can be sorted
according to each column, in ascending or descending order. The following columns are displayed:
- Events Scheduler: On/Off: Turns scheduled events ON or OFF. ON is selected by default.
- Current Date/Time: Displays the current date and time.
- Event #: The number and name of events that are listed.
- Schd #: The schedule where the event is located (0 is the default schedule).
- Start Date/Time: The start date and time (24-hour) of the event.
- Period: The time between the start of successive events.
Current Date/Time
This field displays the current date and time as specified in the Date/Time tab.
Period
When events are configured to occur more than one time (any entry other than 1 in the Count
below), the period field specifies the time between the beginning of events. This time can be
specified in Seconds, Minutes, Hours, Days, or Weeks by selecting the appropriate option in the
drop down menu. Default settings is 0 Days. Note that selecting 0 will disable the event.
Days
When a Period of one day is selected, the day (or days) on which that event will occur can be
specified by marking the appropriate check boxes.
Count
The number of times the event will occur is specified. The default text is 0. Note that entering 0 in
this field will cause the event to occur continuously.
Action
This drop down menu specifies which action will take place when the event occurs. The following
options may be selected
- no action: When this option is selected, nothing will happen when event occurs.
- turn relay(s) on: This option causes the relay(s) specified in the Affected Relays(s) field to
turn ON when event occurs.
- turn relays(s) off: This option causes the relays(s) specified in the Affected Relays(s) field
to turn OFF when event occurs.
- pulse relays(s): This option causes the relays(s) specified in the Affected Relays(s) field to
turn ON when the event occurs, and then turn OFF after the Pulse Duration time (specified
below) expires.
- toggle relays(s): This option causes the relays(s) specified in the Affected Relay(s) field to
change states.
- change schedules: This option causes the schedule(s) specified in the Affected field to be
enabled or disabled. (See Schedules at the end of this section for more information).
- set extVar(s): External variables provide a way for scripts written in BASIC to interact with
users, and for scripts to execute as a result of event occurrences. This option sets the
extvar(s) specified in the Affected External Variables field to a specified value when the
event occurs.
Pulse Duration
If the Output Action has been set to pulse output(s), the Pulse Duration is set in this field. The
time is specified in seconds and can range from 0.1 seconds to 86400 seconds in 0.1 second
increments. The default time is 1.5 seconds.
ExtVar(s) Value
If the Action has been set to the Set ExtVar(s) action, then the new value for the extVar(s) is
specified here.
Schedules
Events can be assigned to one of five schedules. The schedules are useful for creating complex events
that vary with calendar dates, such as work shift alarms. Schedule 0 is always active, it cannot be
disabled. Other schedules can be enabled and disabled by schedule events. Multiple schedules may be
active at one time. The following is an example of how schedules and events might be used.
Schedule 0 – Events 1 & 2: Communication device is enabled daily at 8 pm and disabled at 6 am,
Monday through Friday. (The web interface could be used to disable the system for any authorized
exceptions.)
Schedule 1 and 2 – Events 3-8: Radio transmission reports triggered at 8 am and 5 pm Monday through
Friday, during winter months but, shifts to 6 am start time during summer.
In the above example, the Affected row applies to Outputs. When an output action is selected, or when
a change schedule action is selected. The security system example could also be changed to schedules
1 and 2, allowing for different hours of operation for summer and winter schedules. Additional lunch or
break bells could also be added to schedules 1 and 2 or added in schedules 3 and 4. Events 5 and 8
enable and disable schedules. Event 5 would enable schedule 2, and disable schedules 1,3,4. Event 8
would enable schedule 1, and disable schedules 2,3,4. Additional equipment could be controlled by
event schedules such as lighting, compressors, and magnetic door locks.
Note: An ASCII standard text file format should be used, such as Windows Notepad, Programmer's
Notepad, vi, or other text editor that output the file as a .txt. Rich Text Format (.rtf) used by Microsoft
WordPad is NOT compatible.
BASIC Script
This field displays the .txt file that is uploaded to X-332™. Text displayed in this screen cannot be
edited. In order to edit any script, it must be rewritten in the .txt file and uploaded to the unit again.
Interpreter Status
This field displays whether the program is continuing to run, has stopped or finished, or if there are
errors contained in the script. If there are errors in the script, the line on which the error occurred is
displayed.
Upload BASIC Script
This field displays the script selected to be uploaded to the device. To upload a script to X-332™,
click the 'Choose File' button, find the .txt file previously created, and select 'Open.' The location of
the file should appear in the neighboring field. To upload the script to the unit, select 'Submit.'
Run Script
This option selects whether or not the selected script will be run after it has been uploaded. The
Submit button must be clicked to run the script.
Display
This section is used to select which inputs, relays, external variables, pulse counters, sensors get
displayed on the control page. There are six configuration tables. Some tables, such as the digital
inputs table, have one column of check boxes. Each check box determines whether or not the status
of the element is displayed. Other tables, such as the relays table, have multiple columns. The first
column determines if the relay status is displayed on the control page. Other columns determine
what control buttons are displayed on the control page.
- Inputs (1-18) – Determines if the input status is visible on the control page.
- Relays (1-16) – Determines if the relay status is visible on the control page. Also, the
visibility of On/Off buttons and Pulse buttons can be configured through the check boxes in
columns two and three.
- External Variables (1-5) – Determines if the external variables are visible on the control
page. On/Off buttons, Up/Down arrows, and Input boxes can all be enabled/disabled
through the check boxes in columns three through five.
- Sensors (1-4) – Determines the visibility of the sensor readings on the control page.
- Pulse Counters (1-2) – Determines the visibility of the counter values on the control page.
- Analog Inputs (1-4) – Determines whether or not the analog measurement is displayed on
the control page.
Digital Input
A drop-down menu is used to select the digital input to configure.
Description
This text field is used to describe the function of the selected input. The text appears to the left of the
corresponding input status on the Control Page, and in email messages when email alerts are
enabled. This field may be up to 14 characters long. The default text is Input #.
On Status Text
The text in this field specifies the text that will be displayed in the Control Page and in email
messages when the input is ON. Up to 10 characters may be entered in this field. The default text is
ON.
On Status Color
This field specifies the color that will be displayed on the control page when the input is considered
On. Options are Green, Red, Yellow, Blue and White. The default color is Green.
Email Option
Simple email messages can be sent in response to input changes. This parameter is used to specify
what input changes, if any, will cause email messages to be sent. The default setting for this field is
No Email Messages.
- No Email Messages: No email notifications will be sent due to input changes.
- Send Email when input on: Email notifications will be sent when input state changes to On.
- Send Email when input off: Email notifications will be sent when input state changes to
OFF.
- Send Email when input changes state: Email notifications will be sent when input
changes state to ON or OFF.
Note: Email notification will work only if the email settings are correctly set up in the Network setup
page.
Use Email Address
If email messages are to be sent out based on input changes, these check boxes specify to which
email addresses the message will be sent. Email addresses specified on the Network setup tab will
be displayed next to each check box. By default, no boxes are checked.
Remote Service/SNMP
When this box (Send State Msg/Trap on Input Change) is checked, SNMP traps and/or State
messages will be sent whenever the input state changes.
Counter
A drop-down menu is used to select the counter to configure.
Mode
This settings determines what triggers the counter to increment.
- Counter off: No input transitions will be counted.
- Increment when input on: The counter will increment when the input is asserted (input tied
to ground).
- Increment when input off: The counter will increment when the input is no longer asserted
(input open).
- Increment when input changes: The counter will increment each time the input changes
on or off.
Note the default setting for this field is Counter off.
Description
This text field is used to describe the counter. The text appears to the left of the corresponding
counter on the Control Page, and in email messages when email alerts are enabled. This field may
be up to 14 characters long. The default text is Count #.
The calculated scaled value is used for trigger logs, email messages, control page, XML page, and
returned when Modbus values are read.
The “slope” in the formula above is provided by the user and is entered in this field. When both the
slope and offset are set to their default values, 1 and 0, respectively, the scaled value equals the
actual count.
When the counter is set to whole number mode, the slope multiplier is truncated, all digits to the
right of the decimal place are ignored.
Offset
The “offset” in the formula above is provided by the user and is entered in this field. The default
value for this field is 0. (Range: -86400.000 to +86400.000).
Reset Counter
This button will reset the counter to zero.
Description
This text field is used to describe the analog input. By default it is set to “Analog #.” The text appears
to the left of the analog input status on the Control Page. This text will also appear in email
messages when email alerts are enabled. This field may be up to 14 characters long.
Units
This text field is used to define the units of the sensor connected to the analog input. This text
appears after the analog input status on the Control Page. This text will also appear in email
messages when email alerts are enabled. This field may be up to 6 characters long.
Decimal Places:
This text field is used to specify the number of digits shown on the right of the decimal point on the
control page. The minimum number of decimal places shown is 0. The maximum number of decimal
places shown is 3. The default for this field is 3.
The Scaled Value is displayed on the Control Page, used to determine alarm conditions, and shown
in email messages.
“Slope” in the formula above is provided by the user and is entered in this field. The value is used to
scale the 0-5 VDC input to the range of detected condition. For example, a pressure sensor may
have a 0.1-4.5 VDC output representing 0 to 50 psi. The multiplier would be calculated as follows.
50 V / (4.5 V - 0.1 V) = 11.36
11.36 would be entered in the multiplier field.
When the slope is set to 1 and offset is 0 (default values), the Scaled Value equals the Input Voltage
value.
The Scaled Value is also used for the Digital Mode thresholds.
Offset
The “Offset” is used for the “zero” measurement. In the above example the offset would be set at
0.1.
The default value for this field is 0. When both the slope and offset are set to their default values, the
Scaled Value equals the Raw Voltage.
Alarm 1
This setting is used to set the trigger point for an alarm condition. The number field specifies a static
value at which the alarm is triggered. An external variable can also be chosen as the alarm value.
The High and Low radio buttons indicate whether the alarm is triggered as a high or low alarm. A
high alarm is triggered when the Scaled Value of the analog input exceeds the Alarm 1 set point. A
low alarm occurs when the Scaled Value of the analog input is lower than the alarm set point.
Alarm 2
This is a second alarm trigger that works identical to Alarm 1.
Deadband
For example, if the deadband is set to 0.5 V, and a high alarm occurs at 5 V, the alarm will not
trigger again until the voltage first drops below 4.5 V (5 V - 0.5 V).
Delay
The range for the Analog Input Delay is 0 to 3600 seconds. This allows the user to set a time period
that the device will wait before triggering an alarm. For example, if sensor 1 is configured to trigger
an alarm when the sensor is above 4.000 V and the Delay has been set to 20 seconds, then there
will be a delay of 20 seconds after the sensor goes above 4.000 V before the alarm is triggered. At
the end of the 20 second delay, before the alarm is triggered, the sensor reading will be checked
again, if the reading has dropped below 4.000 V, no alarm will be triggered.
Email Option
Simple email messages can be sent in response to alarm conditions. This parameter is used to
specify what alarm conditions, if any, will cause email messages to be sent. Email notification will
work only if email is correctly setup in the Network setup page.
Sensor Description
The text in this field appears to the left of the corresponding temperature/humidity reading on the
Control Page. This text also appears in the email status message when email is enabled. This field
can be up to 13 characters in length. The default text in this field is Sensor #.
Sensor Address
Each sensor connected to X-332™ should be associated (or assigned) to a sensor number. This
identifies the name, location, and function of the sensor. Every temperature/humidity sensor comes
from the factory with a unique, non-changeable address. When the sensors tab is selected (or the
Refresh List button is pressed), X-332™ scans the bus for sensors. The addresses of the sensors
that are found on the bus are listed in the drop-down list. For each sensor number (Sensor 1...
Sensor 3), select the address of the appropriate sensor from the drop-down list.
Selecting sensors is simplest when the sensors are connected to the bus one at a time. The
procedure is to start with one sensor and associate it with the appropriate sensor number by
selecting the sensor address within the appropriate drop-down list. Submit the page, connect a
second sensor, and press the Refresh List button. Associate the second sensor to the appropriate
sensor number. Continue this procedure until all sensors are set up.
Alarm 1 Color
This field specifies the color that will be displayed on the Control Page when Alarm 1 is reached.
Options are Green, Red, Yellow, Blue and White. The default color is Green.
Alarm 2 Color
This field specifies the color that will be displayed on the Control Page when Alarm 2 is reached.
Options are Green, Red, Yellow, Blue and White. The default color is Red.
Normal Color
This field specifies the color that will be displayed on the Control Page when the sensor is in a
Normal condition. Options are Green, Red, Yellow, Blue and White. The default color is White.
Offset
The value of the offset will be added to the sensor's reading. Normally this should be set to zero.
Alarm 1
This setting is used to set the trigger point for an alarm condition. The number field specifies the
temperature/humidity at which the alarm is triggered. The “High” and “Low” radio buttons indicate
whether the alarm is triggered as a high or low alarm. A high alarm is triggered when the sensor
reading exceeds the alarm value, and a low alarm is occurs when the sensor reading falls below the
alarm value. Generally this value will be static, but an external variable can be used as a trigger
point for an alarm condition as well. To use an external variable select the desired external variable
using the drop down box. The value of an external variable can be changed by the event scheduler,
through a basic script, and directly through the control page.
Alarm 2
This is a second alarm trigger that works similar to Alarm 1.
Deadband
The Deadband prevents alarms from triggering excessively when the sensor measurement
vacillates around the trigger point.
With high alarms, the measurement must fall below the high alarm point minus the deadband before
the high alarm will be triggered again. Likewise the deadband on the low alarm requires the
measurement to rise above the low alarm point plus the deadband before the low alarm will be
triggered again.
Delay
The range for the Email/Action Delay is 0 to 3600 seconds. This allows the user to set a time period
that the device will wait before triggering an alarm. For example, if sensor 1 is configured to trigger
an alarm when the temperature is above 80 degrees and the Delay has been set to 20 seconds,
then there will be a delay of 20 seconds after the temperature goes above 80 degrees before the
alarm is triggered. At the end of the 20 second delay, before the alarm is triggered, the temperature
will be checked again, if the temperature has dropped below 80 degrees, no alarm will be triggered.
Email Option
Simple email messages can be sent in response to alarm conditions. This parameter is used to
specify what alarm conditions, if any, will cause email messages to be sent. Note that email
notification will work only if email is correctly setup in the Network setup page.
- No Email Messages: No email messages will be sent due to alarm conditions.
- Send Email on Alarm 1: Email notifications will be sent due to Alarm 1 conditions.
- Send Email on Alarm 2: Email notifications will be sent due to Alarm 2 conditions.
- Send Email on Alarm 1 and Alarm 2: Email notifications will be sent due to Alarm 1 or
Alarm 2 conditions.
- Send Email on Alarm 1, Alarm 2, and Normal: Email notifications will be sent due to
Alarm 1, Alarm 2, or when normal conditions are regained.
Remote Service/SNMP
This field specifies the action with a remote server due to an alarm condition.
- No Action: No action is taken.
- Send State Msg/Trap: An event string will be sent to the remote server.
Relay
This drop down menu is used to select the relay to configure.
Description
This text field is used to describe the function of the selected relay. The text appears to the left of the
corresponding relay status on the Control Page and in the email message when email alerts are
On Status Text
The text in this field specifies the text that will be displayed in the Control Page and in email
messages when the relay is ON. Up to 10 characters may be entered in this field. The default text is
ON.
On Status Color
This field specifies the color that will be displayed on the control page when the relay is considered
On. Options are Green, Red, Yellow, Blue and White. The default color is Green.
Off Status Text
The text in this field specifies the text that will be displayed in the control page and in email
messages when the relay is OFF. Up to 10 characters may be entered in this field. The default text
is OFF.
Off Status Color
This field specifies the color that will be displayed on the control page when the relay is considered
Off. Options are Green, Red, Yellow, Blue and White. The default color is Red.
On Button Label
The text entered in this field appears in the 'On' button for the corresponding output on the Control
Page. Up to 8 characters may be entered in this field. The default text is ON.
Off Button Label
The text entered in this field appears in the 'Off' button for the corresponding output on the Control
Page. Up to 8 characters may be entered in this field. The default text is OFF.
Pulse Button Label
The text entered in this field appears in the 'Pulse' button for the corresponding output on the
Control Page. Up to 8 characters may be entered in this field. The default text is PULSE.
Email Option
Simple email messages can be sent in response to relay state changes. This parameter is used to
specify what relay state changes, if any, will cause email messages to be sent. Note that email
notification will work only if the email settings are correctly set up in the Network setup page. The
following options are available:
- No Email Messages: No email notifications will be sent due to relay state changes.
- Send Email when input on: Email notifications will be sent when relay state changes to
ON.
- Send Email when input off: Email notifications will be sent when relay state changes to
OFF.
- Send Email when input changes state: Email notifications will be sent when relay
changes state to ON or OFF.
pulse when input changes Relay pulses on when input changes state. Uses
pulse duration setting.
latch on when alarm 1 Relay turns on when there is an alarm 1 condition for
sensor. Once on, the relay stays on until reset by
other means. (Alarm 1 condition configured on sensor
tab)
latch on when alarm 2 Relay turns on when there is an alarm 2 condition for
sensor. Once on, the relay stays on until reset by
other means. (Alarm 2 condition configured on sensor
tab)
latch on when alarm 1 or Relay turns on when there is either an alarm 1 or
alarm 2 alarm 2 condition for sensor. Once on, the relay stays
on until reset by other means. (Alarm conditions
configured on sensor tab)
latch off when alarm 1 Relay turns off when there is an alarm 1 condition for
sensor. Once off, the relay stays off until reset by
latch on when relay on Relay turns on when control relay turns on. Once on,
the relay can only be turned off through other means.
(Control page, modbus, etc.)
latch on when relay off Relay turns on when control relay turns off. Once off,
the relay can only be turned on through other means.
(Control page, modbus, etc.)
latch on when relay Relay turns on when control relay changes state.
changes Once off, the relay can only be turned on through
other means. (Control page, modbus, etc.)
latch off when relay on Relay turns off when control relay turns on. Once off,
the relay can only be turned on through other means.
(Control page, modbus, etc.)
latch off when relay off Relay turns off when control relay turns off. Once off,
the relay can only be turned on through other means.
(Control page, modbus, etc.)
latch off when relay Relay turns on when control relay changes state.
changes Once off, the relay can only be turned on through
other means. (Control page, modbus, etc.)
toggle when relay on Relay toggles state when control relay turns on.
Relay maintains current state when control relay
turns off.
toggle when relay off Relay toggles state when control relay turns off.
Relay maintains current state when control relay
turns on.
toggle when relay changes Relay toggles state when control relay turns off.
Relay toggles state when control relay turns on.
pulse when relay on Relay pulses on when control relay turns on. Uses
pulse duration setting.
pulse when relay off Relay pulses on when control relay turns off. Uses
pulse duration setting.
pulse when relay changes Relay pulses on when control relay changes state.
Uses pulse duration setting.
Remote Relay
This option allows you to select which remote relay to configure.
IP Address
The IP address of the remote relay is entered here. The default value is 192.168.1.15
TCP Port
The TCP port number used to access the remote relay is entered here. This must match the TCP
port (HTTP port) set in the remote relay. The valid range is 0 to 65530. The default port number is
80
Password
If the remote relay requires a password for control, the password must be entered here
Relay #
The remote relay device may have multiple relays. This field is used to identify the specific relay to
be controlled on a remote device. If the remote device is a single WebRelay™, this field should be
zero. If the remote device has multiple relays, this field should be set to the relay number. For
example if relay 2 is to be controlled on another ControlByWeb™ product, the Relay # would be set
to 2. This field by be set from 0 to 16.
pulse when input off Remote relay pulses on when input turns off. Uses
pulse duration setting on remote device.
pulse when input changes Remote relay pulses on when input changes state.
Uses pulse duration setting on remote device.
pulse (heartbeat mode) Remote relay pulses on when input turns on and
when input on continues to pulse on periodically (periodic state
interval) until the input turns off at which point the
remote relay turns off. Uses pulse duration setting of
remote device.
pulse (heartbeat mode) Remote relay pulses on when input turns off and
when input off continues to pulse on periodically (periodic state
interval) until the input turns on at which point the
remote relay turns off. Uses pulse duration setting of
remote device.
pulse (heartbeat mode) Remote relay pulses on when input changes state
when input changes and continues to pulse on periodically (periodic state
interval). Uses pulse duration setting of remote
device.
Analog Input/ 1- no action when alarm 1 Sensor has no effect on remote relay.
Wire Sensors
no action when alarm 2 Sensor has no effect on remote relay.
no action when alarm 1 or Sensor has no effect on remote relay.
alarm 2
turn on when alarm 1 Remote relay turns on when there is an alarm 1
condition for sensor. Remote relay turns off when
there is no alarm 1 condition. (Alarm 1 condition
configured on sensor tab)
turn on when alarm 2 Remote relay turns on when there is an alarm 2
condition for sensor. Remote relay turns off when
there is no alarm 2 condition. (Alarm 2 condition
configured on sensor tab)
turn on when alarm 1 or Remote relay turns on when there is either an alarm
alarm 2 1 or alarm 2 condition for sensor. Remote relay turns
off when there is no alarm 1 or alarm 2 condition.
(Alarm conditions configured on sensor tab)
turn off when alarm 1 Remote relay turns off when there is an alarm 1
condition for sensor. Remote relay turns on when
there is no alarm 1 condition. (Alarm 1 condition
configured on sensor tab)
turn off when alarm 2 Remote relay turns off when there is an alarm 2
condition for sensor. Remote relay turns on when
there is no alarm 2 condition. (Alarm 2 condition
configured on sensor tab)
turn off when alarm 1 or Remote relay turns of when there is either an alarm 1
alarm 2 or alarm 2 condition for sensor. Remote relay turns
on when there is no alarm 1 or alarm 2 condition.
(Alarm conditions configured on sensor tab)
Relay no action when relay on Control relay has no effect on remote relay
no action when relay off Control relay has no effect on remote relay
no action when relay Control relay has no effect on remote relay
changes
turn on when relay on Remote relay turns on when control relay turns on.
Remote relay turns off when control relay turns off.
turn on when relay off Remote relay turns off when control relay turns on.
Remote relay turns on when control relay turns off.
turn on when relay changes Remote relay turns on when control relay changes
state. Control relay change does not turn remote
relay back off.
turn off when relay on Remote relay turns off when control relay turns on.
Remote relay turns on when control relay turns off.
turn off when relay off Remote relay turns off when control relay turns off.
Remote relay turns on when control relay turns on.
turn off when relay changes Remote relay turns off when control relay changes
state. Control relay change does not turn remote
relay back on.
latch on when relay on Remote relay turns on when control relay turns on.
Once on, the remote relay can only be turned off
through other means. (Control page, modbus, etc.)
latch on when relay off Remote relay turns on when control relay turns off.
Once off, the remote relay can only be turned on
through other means. (Control page, modbus, etc.)
latch on when relay Remote relay turns on when control relay changes
changes state. Once off, the remote relay can only be turned
on through other means. (Control page, modbus,
etc.)
latch off when relay on Remote relay turns off when control relay turns on.
Once off, the remote relay can only be turned on
through other means. (Control page, modbus, etc.)
latch off when relay off Remote relay turns off when control relay turns off.
Once off, the remote relay can only be turned on
through other means. (Control page, modbus, etc.)
latch off when relay Remote relay turns on when control relay changes
changes state. Once off, the remote relay can only be turned
on through other means. (Control page, modbus,
etc.)
toggle when relay on Remote relay toggles state when control relay turns
on. Remote relay maintains current state when
control relay turns off.
toggle when relay off Remote relay toggles state when control relay turns
off. Remote relay maintains current state when
control relay turns on.
toggle when relay changes Remote relay toggles state when control relay turns
off. Remote relay toggles state when control relay
turns on.
pulse when relay on Remote relay pulses on when control relay turns on.
Uses pulse duration setting of remote device.
pulse when relay off Remote relay pulses on when control relay turns off.
Uses pulse duration setting of remote device.
pulse when relay changes Remote relay pulses on when control relay changes
state. Uses pulse duration setting of remote device.
pulse (heartbeat mode) Remote relay pulses on when control relay turns on
when relay on and continues to pulse on periodically (periodic state
interval) until the control relay turns off at which point
the remote relay turns off. Uses pulse duration setting
of remote device.
pulse (heartbeat mode) Remote relay pulses on when control relay turns off
when relay off and continues to pulse on periodically (periodic state
interval) until the control relay turns on at which point
the remote relay turns off. Uses pulse duration setting
of remote device.
pulse (heartbeat mode) Remote relay pulses on when control relay changes
when relay changes state and continues to pulse on periodically (periodic
state interval). Uses pulse duration setting of remote
device.
External Variable
This drop down menu selects the External Variable to configure.
Description
Text entered here will be displayed in the left column of the control page. Up to 12 characters may
be entered here. The default text is extVar #.
On Status Text
The text in this field specifies the text that will be displayed when the extVar is value 1. The text also
appears in the status column on the Control Page. Up to 10 characters may be entered here. By
default the text is ON.
On Status Color
This field specifies the color that will be displayed on the control page when the extVar is considered
On. Options are Green, Red, Yellow, Blue and White. The default color is Green.
Off Status Text
The text in this field specifies the text that will be displayed when the extVar is value 0. The text also
appears in the status column on the Control Page.
If the extVar is any other value than 1 or 0, the value will be displayed in the same column. Up to 10
characters may be entered here. By default the text is OFF.
Off Status Color
This field specifies the color that will be displayed on the control page when the extVar is considered
Off. Options are Green, Red, Yellow, Blue and White. The default color is Red.
On Button Label
This text field is used to describe the function of button 1 of the selected extVar. The text also
appears to the right of the corresponding extVar status. Up to 8 characters may be entered here. By
default, this text is ON.
Off Button Label
This text field is used to describe the function of button 2 of the selected extVar. The text also
appears to the right of the corresponding extVar status. Up to 8 characters may be entered here. By
default, this text is OFF.
The Control Page displays the current state of the X-332™ and presents buttons that can be used to
control the relays of the device. A more detailed explanation of this page can be found in section 3.1
Browser Operation.
The Log File Tab shows a formatted version of the log file when logging has been enabled on the Logging
setup tab. This contains the same information found when the log.txt file is requested from the device. More
details about the log.txt file can be found in Appendix D.
At the top of the Log File page are two buttons. The first button will update the displayed log file from the
X-332™. It has the same function as navigating to the Log File tab for the first time. Depending on the
size of the log file, it can take some time for the log file to be fully loaded and formatted.
The next button is the Graph button. This button will open a popup window that displays a graph of the
log file. The check boxes at the top of the log file data determine what items are graphed. For larger log
files, portions of the log file may be chosen to graph. Left clicking on the log data will choose a starting
row for the graph, and right clicking on the log data will choose a ending row.
Specific values can be found in the graph by hovering the mouse cursor over the graphed data. The time
and value for the location beneath the mouse cursor will appear in the top left corner of the graph popup
window. The graph's Key appears in the top right of the graph.
Left clicking on the graph and dragging the mouse to the right or left will select a portion of the graph to
zoom in on.
If more complex analysis of the logged data is required, a comma separated text file can be downloaded
and used with a graphing/spreadsheet program. For more details refer to Appendix D.
Section 3: Operation
X-332™ can be operated using a web browser, by sending text commands to an XML status/control
page, and/or by sending Modbus/TCP requests. X-332™ also allows you to control the relays using
inputs, sensors, other relays, or events. (Using an input or event to control the relays was described
throughout previous sections of the manual, and will not be described here.)
The second method of accessing the control page is through the setup pages
(http://192.168.1.2/setup.html). Choosing the 'Monitor and Control' button on the left hand side of the
setup pages will bring up the control page shown below. From here the log file can be viewed as
well by selecting the 'Log File' tab at the top. The log file will be explained in more detail in the next
section.
Figure 3.1b - Control Page Through the Setup Pages Menu – Everything displayed
Count 1-2
A cumulative count of OFF to ON states of the digital inputs is displayed when the Display Counter
box is checked.
Input 1 through 18
These rows display the current state of the sixteen optically-isolated inputs and the two counter
inputs (inputs 17 and 18). Each of these rows can be displayed (as shown) or not displayed by
checking or deselecting the appropriate boxes in the Control Page Setup tab in the setup pages.
The text in the left column (by default reads Input 1, Input 2, etc,) is specified in the Description field
in the Input tab in the setup pages.
Relay 1 through 16
These rows display the current state of the internal relays and allows the user to change relay state.
Each of these rows can be displayed (as shown) or not displayed by checking or deselecting the
appropriate boxes in the Control Page Setup tab in the setup pages. The text in the left column (by
default reads Relay 1, Relay 2, etc, ) is specified in the Description field in the Relays tab in the
setup pages. The state of the relays is shown to the right of the relay description text. By default, the
status text will read ON or OFF; however, the status text can be changed in the Relays tab. To the
right of the relay status, buttons are provided to control the relays. The buttons can be removed
when not needed (in the Control Page Setup tab) and the text within the buttons can be
customized (in the Relays tab).
External Variables
These rows display the current state of the five external variables used in the BASIC script. These
rows can be displayed (as shown in figure 3.1a) or not displayed (figure 3.1b) by checking or
clearing the appropriate boxes in the extvar setup page.
The text in the left column is specified in the Description field on the extvar setup page. The state of
the extvar is shown to the right of the description text. By default the status text will read ON or OFF
when the extvar is a value of 1 or 0 respectively . To the right of the extvar status, on/off buttons and
an input box are provided to control the state/value of the external variable. There is also an option
to display up/down buttons that will increment/decrement the extvar when they are pressed or held
down. All of these buttons can be enabled/disabled on the Control Page Setup tab.
3.2.1 state.xml
The numbers enclosed by the tags, <tag>, indicate the current state or value monitored by X-332™.
Values for each tag are described in the table below.
XML computer applications will open a TCP/IP socket with the X-332™ and send a GET command
followed by the state.xml command string. (See Appendix E for instructions on using GET.)
XML Control
Commands can be sent to the X-332™ to control the relays, counters, and external variables.
Relay State Control
Commands are sent using a variable called relayXState (X is replaced by 1 for relay 1, or 2 for relay 2,
etc). A few examples of using relayXState are given here.
Command Description
state.xml?relay1State=0 Turn Relay 1 OFF
state.xml?relay1State=1 Turn Relay 1 ON
state.xml?relay2State=0 Turn Relay 2 OFF
state.xml?relay2State=1 Turn Relay 2 ON
Pulse Relay
When the pulse command is sent, the output will turn ON for the Pulse Duration specified in the Relay
setup page . It is also possible to send a pulse time command that is different than the configured Pulse
Duration. This is done by sending a pulseTime variable. The pulseTime variable does not change the
Pulse Duration in the setup page and it is not stored or recorded. The pulseTime variable only changes
the duration for the single pulse initiated by that command. In other words, you must issue the
Command Description
state.xml?relay1State=2 Pulse Relay 1 for the preset time (1.5 seconds).
state.xml?relay1State=2&pulseTime1=5 Pulse Relay 1 for 5 seconds.
state.xml?relay1State=2&pulseTime1=5 Pulse Relay 1 for 5 seconds.
state.xml?relay1State=2&pulseTime1=5 Pulse Relay 1 for 5 seconds.
state.xml?relay1State=2 Pulse Relay 1 for the preset time (1.5 seconds).
Command Description
state.xml?count1=200 Set counter1 to 200.
Message Acknowledgment
By default, when commands are sent to X-332™, the state.xml page is returned. The xml reply can be
disabled by adding the noReply field as follows:
Command Description
state.xml?relay1State=1&noReply=1 Turn Relay 1 ON without returning state
state.xml?relay1State=0&noReply=1 Turn Relay 1 OFF without returning state
3.2.2 eventX.xml
The X-332™ can configure outputs to turn ON, OFF, or pulse at specific times. An event changes the
output state at a given time (or periodically). The X-332™ supports 100 events, which can be monitored
through the eventX.xml page (where X is the event number 0-99). For example, to access event 0's xml
file in a web browser, you enter the following URL with the IP address of the X-332™.
http://{X-332™ IP address}/event0.xml
The following event.xml page is returned:
<event0>
<active>yes</active>
<currentTime>11/14/2010 15:14:09</currentTime>
<nextEvent>11/15/2010 15:15:00</nextEvent>
<period>1 d</period>
<count>0</count>
<relay>1</relay>
<action>turn relay(s) on</action>
<pulseDuration>0.5 s</pulseDuration>
</event0>
The tags used by X-332™ are described below:
Tags* Description
<eventX> Event tag where X represents the event number (0-99).
<active> This field indicates whether or not the event is active. The text yes indicates
that the event is active and the event will occur at the next event time. The text
no indicates that the event is inactive and the event will no longer take place.
<currentTime> This field indicates the current date and time as MM/DD/YYYY HH:MM:SS in 24-
hour format.
<nextEvent> The next time the event is scheduled to occur is given as MM/DD/YYYY
HH:MM:SS. If an event is inactive, this field will display the date and time as
xx/xx/xxxx xx:xx:xx.
<period> For events that occur more than one time, this field indicates the period of the
event (time between event occurrences). The unit of time is indicated after the
value (seconds (s), minutes (m), hours (h), days (d), or weeks (w)). If this field is
set to 0, then the event has been disabled. For example 1d would be a period of
3 days.
<count> This field indicates the number of remaining times the event will occur. If this
field is 0 and the event is active, then the event is always on.
<relay> Event will apply to the relay(s) specified
<action> One of the follow actions is applied to the event.
turn relay(s) on
turn relay(s) off
pulse relay(s)
toggle relay(s)
set extVar0
clear extVar0
change schedules
<pulseDuration> This field indicates the time (in seconds) that the output will be turned on.
• 'X' is replaced by the I/O number.
3.2.3 Diagnostics.xml
There is a special diagnostics.xml that can be requested by by entering the following in the web browser
address bar:
http://192.168.1.2/diagnostics.xml
The following diagnostics.xml file is returned.
<datavalues>
<memoryPowerUpFlag>1</memoryPowerUpFlag>
<devicePowerUpFlag>1</devicePowerUpFlag>
<powerLossCounter>1</powerLossCounter>
</datavalues>
Diagnostic tags are given in the following table:
Tag Description
<memoryPowerUpFlag> Indicates a loss of power to the capacitor-backed real-time clock. A value
of 1 indicates that the real-time clock lost power. This should only happen if
the device has lost power for several days. There is an internal capacitor
that can power the real-time clock for an extended period of time, even if
the main power is lost. If the real-time-clock loses power, the time will have
to be reset. By default, this will read 1 until it is set to 0.
<devicePowerUpFlag> Indicates a loss of power to the device. This field can also be set to 0. A
value of 1 means the X-332™ has lost power at least one time since the
flag was set to 0.
<powerLossCounter> This field is a count of how many times the X-332™ has lost main power.
The above flags may be cleared by requesting the diagnostics.xml file along with request parameters.
To clear the real-time clock power loss flag:
http://192.168.1.2/diagnostics.xml?memoryPowerUpFlag=0
To clear the device power loss flag:
http://192.168.1.2/diagnostics.xml?devicePowerUpFlag=0
To clear the powerLossCounter flag:
http://192.168.1.2/diagnostics.xml?powerLossCounter=0
Resetting of multiple flags may be done at one time by placing & between each request:
http://192.168.1.2/diagnostics.xml?memoryPowerUpFlag=0&devicePowerUpFlag=0
Note: Requests for the diagnostics.xml file do not require a password.
Every X-332™ has a built in web server that responds to HTTP GET requests. These GET requests are
sent from web browsers when a web page is requested. They are fairly similar to the actual addresses
seen in the browser's address bar. The following section describes the HTTP GET protocol and how it
can be used to control and monitor the X-332™.
No Password
GET requests to the device for XML files.
Password Enabled
If the Control Password is enabled on X-332™ and the state.xml page is requested through a browser,
the user will be prompted for a password. If the XML request is sent from an XML application, the html
request will need to contain the password, encoded as Base64.
The following is an html request header without the password:
GET /state.xml?relay1State=1&noReply=1 HTTP/1.1 (Terminated with two \r\n.)
The following example adds the password:
GET /state.xml?relay1State=1&noReply=1 HTTP/1.1 (Terminated with one \r\n.)
Authorization: Basic bm9uZTp3ZWJyZWxheQ== (Terminated with two \r\n.)
bm9uZTp3ZWJyZWxheQ== is the Base64 encoded version of the user “name:password,”
none:webrelay.
A utility is provided at http://www.controlbyweb.com/encoder to encode the password. Simply type the
string username:password into the website and press 'Encode'.
Parameter Description
e5= Parameter Name: Each event has an identifier (0-99). In this case the parameter name
is e5. Event 100 would be e99.
1290168000 Epoch Time: The number of seconds up to the desired start date since
January 1, 1970.
1 Period: The period value.
3 Period Units: The units of the period, 0-Seconds, 1-Minutes, 2-Hours, 3-Days, 4-
Weeks.
0 Count: Number of times the event will occur. (0 = continuous)
0 Schedule #: The schedule where the event will occur (0-4). 0 = schedule 0, 1=
schedule 1, and so forth.
1 Action: 0-No Action, 1-Turn output on, 2-Turn output off, 3-Pulse output, 4-Toggle
output, 5-change schedules, 7-Set extVar0, 8-Clear extVar0.
4 Pulse Duration: Pulse duration when using the pulse output action.
0 Next Occurrence: This is a report value only, indicating the next time this event will
occur in Epoch Time. When setting an event leave this at 0.
Event5Desc; Description: Text description of the event, up to 20 characters can be entered.
127 Days: This number represents which days the event will occur. This value is the base
ten version of a binary number where each bit represents one day of the week. Bit 0 is
Saturday and Bit 6 is Sunday. See the table below for some common values.
1 Action #: This number represents which output will be affected by the event. This value
is the base ten version of a binary number where each bit represents the ON/OFF state
of one output. Bit 0 corresponds to relay/schedule 1, and Bit 3 corresponds with
relay/schedule 4.
Multiple commands may be sent without closing and re-opening the connection, but if no data is
transferred for 50 seconds, the connection will time out and close. To keep the connection open, a read
request can be sent periodically.
X-332™ has two TCP sockets available for Modbus/TCP. This allows two connections to be open at one
time. Requests for more than two open connections will be rejected.
When errors occur, an error code is returned. Most Modbus client software will interpret this code in a
human readable form. The code is comprised of the original function code plus 0x80. For example, an
error during the read coils function 0x01 would return 0x81. Each error has a qualifying exception
number. The following are the possible exception codes and their meanings:
0x01 - Function code not supported (also when Modbus is disabled in the setup pages).
0x02 - Incorrect starting address/quantity of output combination.
* Data types may be implemented at the discretion of the manufacturer. Address ranges may also over
lap. Discrete is a binary or boolean value, 1 or 0.
Function codes, memory types, and addresses can be converted to the PLC addressing equivalent
using the table below. To use the table, look up the row corresponding to the Modbus function code.
Then take the desired X-332TM feature address and add to it the address offset in the PLC address mode
column.
Input Address + PLC Base Address = PLC Address
For example, to read discrete Input 2
Input Address 1
PLC Base address 1001
PLC Address 1002
Programming the PLC to read from 1002 will return the value of Input 2.
Code Name Modbus X-332 Addresses Data Type PLC Address PLC Address
Function Mode 485 Mode 584/984
Read Coils 01 0-15 (Relays 1-6) Discrete Addr + 1 Addr + 1
Read Discrete Inputs 02 0-17 (Inputs 1-18) Discrete Addr + 1001 Addr + 10001
Read Holding 03 16-23 (Analog 1-4) 32-bit float Addr + 4001 Addr + 40001
Registers
272-278 (Sensors 1-4) 32-bit float Addr + 4001 Addr + 40001
528-530 (Counters 1-2) 32-bit int Addr + 4001 Addr + 40001
Write Coils 05 0-15 (Relays 1-16) Discrete Addr + 1 Addr + 1
Write Multiple Coils 15 0-15 (Relays 1-16) Discrete Addr + 1 Addr + 1
Write Multiple 16 528-530 (Counters 1-2) 32-bit int Addr + 4001 Addr + 40001
Registers
784-815 ( Relays 1-16) 32-bit float Addr + 4001 Addr + 40001
For 32-bit numbers, two registers must be read starting at the desired address, examples of each are
given for the applicable functions.
Request
Start Address: 0x0000 (coil 1) to 0x000F (coil 16)
Coil Quantity: 0x0001 (1 coil) to 0x0010 (16 coils)
All relays may be read at the same time by specifying the correct starting address and quantity of coils to
be read.
Response
The X-332™ will respond to the request with a data field of two bytes, each bit representing the coil
status. A '1' indicates the Output is ON. A '0' indicates that the Output is OFF.
Bit zero of the return value will be the state of the coil corresponding to the start address. For example, if
a start address of 0x0001 is used, bit zero will be the status of Relay 2.
Errors
The sum of the start address and coil count cannot exceed the maximum coil count or an error response
will be returned.
The following are possible error responses.
Coil Read Error Function Code (1 byte): 0x81
Exception Codes (1 byte): 0x01 – Function code not supported.
0x02 – Incorrect combination of start address and quantity of Relays
Request
Start Address: 0x0000 (input1) to 0x0011 (Input 18)
Input Quantity: 0x0001 to 0x0012
The sum of the starting address and the quantity of coils must not be greater than 0x0012. For example,
if you want to read 0x0002, two inputs, then the start address must be 0x0000. To read the second input
only the start address is 0x0001 with a quantity of 0x0001.
Response
The X-332™ will respond to the request with a data field of three bytes, each bit representing the input
state. A 1 indicates that the input is switched high ON. A 0 indicates that the input switched low OFF.
Bit zero of the return value will be the state of the coil corresponding to the start address. For example, if
a start address of 0x0001 is used, bit zero will be the status of input 2.
When reading all 18 inputs, the following table shows the bit positions.
Errors
Input Read Error Function Code (1 Byte): 0x82
Exception codes (1 Byte): 0x01 – Function not supported.
0x02 – Incorrect combination of start address and input quantity.
Request
32-bit sensor values are read from 16-bit register pairs. Consequently, senors addresses and registers
must be even numbers.
Analog Start Addresses
Start Address: 0x0010 (Analog Input 1) to 0x0016 (Analog Input 4)
Input Quantity: 0x0002 to 0x0008
Temperature and Humidity Sensor Start Addresses
Start Address: 0x0110 (Sensor Input1) to 0x0116 (Sensor Input 4)
Input Quantity: 0x0002 to 0x0008
Counter Input Start Addresses
Start Address: 0x0210 (Counter 1) to 0x0212 (Counter 2)
Input Quantity: 0x0002 to 0x0004
Response
32-bit floating-point values are returned, either as little-endian or big-endian numbers, depending on the
configuration in the Advanced Network tab.
With little-endian ordering, a temperature reading of sensor 1 (0x0110) would return 0x800042A2. The
least significant word would be 8000 hex and the most significant word would be 42A2. This
hexadecimal value converts to a temperature reading of 81.25 degrees.
If a temperature or humidity sensor is not installed, a value of 0xFFFFFFFF (NaN) is returned. Other
inputs will show measured values of the open circuits.
Errors
Sensor Read Error Function Code (1 byte): 0x83
Exception Codes (1 byte): 0x01 – Function not supported.
0x02 – Incorrect combination of start address and input quantity
Request
Start Address (2 bytes): 0x0000 (Relay 1) – 0x0000F (Relay 16)
Output Value (1 byte): 0x00 (OFF), 0xFF(ON)
Padding (1 byte): 0x00
Response
The response mirrors the requested state, 0x00 or 0xFF.
Errors
Single Coil Write Error Function Code (1 Byte): 0x85
Exception codes (1 Byte): 0x01 – Function not supported.
0x02 – Address out of range.
0x03 – Padding value.
Request
Relay states are controlled by specifying the start address of the first relay to be controlled, the count of
the relays to be affected, and the relay state byte(s).
A relay value of 0xFFFF would be used to turn ON all sixteen of the relays and 0x0000 would turn them
OFF.
Start Address (2 bytes): 0x0000 (Relays 1) – 0x000F ( Relays 16)
Output Quantity (2 bytes): 0x0001 – 0x0010
Byte Count (1-2 bytes): 0x01
Relay Value (2 bytes): 0x0000 – 0xFFFF
Response
The quantity value is returned.
Errors
Multiple Coil Write Error Function Code (1 Byte): 0x8F
Exception codes (1 Byte): 0x01 – Function not supported.
0x02 – Incorrect combination of start address and Relay quantity
0x03 – Byte count out of range.
Request
Set Counters
The counter value is specified using a 32-bit integer (not a floating point number).
Start Address (2 bytes): 0x0210 (counter 1) - 0x0212 (counter 2)
Register Quantity (2 bytes): 0x0002 - 0x0004 (2 registers for each counter, even number)
Byte Count (1 byte): 0x04 - 0x08 (Multiples of 4)
Counter Quantity (4 bytes/Counter): 0x00000000 – 0xFFFFFFFF
Pulse Relay
The Modbus Write Multiple Registers function is used to pulse the relay(s) for a specified time. When X-
332™ receives this command, it immediately turns the appropriate relay(s) ON (if not already on) and
starts the pulse timer. The relay(s) are selected by writing the pulse time in seconds to the register(s)
associated with the desired relay(s).
The pulse time is specified using floating point format in the register value field and can range from 0.1
seconds to 86400 seconds (1 day). When the pulse time expires, the relay will be turned OFF. If a pulse
time command is sent with a value greater than 86400, the pulse timer will be set to 86400. If a pulse
time command is sent with a value less than 0.1, the pulse timer will be set to 0.1.
If any commands are sent to X-332™ (Modbus, XML, SNMP, or HTML) before the pulse timer has
expired, the pulse timer will be canceled immediately and the new command will be executed.
IEEE 754 floating point format is used for the pulse time. X-332™ may be configured for little-endian or
big-endian transmission. The endian-ness is configured in the Advanced Network tab. (See 2.4.3
Advanced Network Tab for more information.)
Start Address (2 bytes): 0x0310 ( relay 1) – 0x032F ( relay 16)
Register Quantity (2 bytes): 0x0002 – 0x0020 (2 registers for each relay, even number)
Byte Count (1 byte): 0x04 – 0x40 (Multiples of 4)
Pulse Duration (4 bytes/relay): 0x3DCCCCCC – 0x47A8C000 (big-endian)
0xCCCC3DCC – 0xC00047A8 (little-endian)
Response
The request is acknowledged by responding with the register quantity that was requested.
Errors
Pulse Function code Error (1 Byte): 0x90
Exception codes (1 Byte): 0x01 – Feature not supported.
0x02 – Address quantity not an even number.
Incorrect combination of start address and relay count.
Trigger: Relay 1 ON
Relay 1: ON
Relay 2: OFF
Relay 3: OFF
Relay 4: OFF
Input 1: OFF
Input 2: OFF
Input 3: OFF
Input 4: OFF
Analog 1: 4.00 V
Sensor 1: 76.2° F
Sensor 2: 73.7º F
Sensor 3: 32.0º F
Sensor 4: 84.5º F
Count 1: 5.00
Count 2: 0.00
Note: Relays, Inputs, Count, and Sensor names as well as ON and OFF status text may be customized
by the user (installer) in the setup pages. The same field names are used on the Control Page.
Subject Line
The top line (that reads X-332), appears in the subject line of the email message. This is the same text
that appears as the header on the Control Page. It is set in the Main Header Text field under the
Control Page Setup tab.
Trigger
The first line displayed in the body of the message shows the event that triggered the message. The text
“Trigger” will always appear and cannot be changed. The remaining text includes the trigger name, and
what caused the trigger. The text that describes the trigger and its current state are configured in the
setup pages as described below.
Current Status of the Digital Inputs, Relays, Analog Inputs, and Sensors
The remainder of the email message will display the same information shown on the Control Page.
Fields not displayed in the Control Page will not be included in the email message. Displayed fields may
be configured in the Control Page Setup page.
Note: X-332™ must be power-cycled (power disconnected, then reconnected) before network settings
take effect. Only the settings on the Network tab require power-cycling before taking effect.
Email triggers can be generated within a BASIC script (See Appendix G: BASIC Scripts), or can be
explicitly defined for each Relay, Input, and sensor under the Relay, Input, and Sensors tabs.
The email options and recipients for each Relay, Input, and Sensor are configured separately. Select the
the Email Option and the check box for the desired email recipient for each Relay, Input, and Sensor.
Once the email settings are entered, the email functionality can be tested by entering the following
command:
http://IP address/state.xml?testEmail=1
For example, using the default IP address, enter:
http://192.168.1.2/state.xml?testEmail=1
This will cause an email message to be sent immediately. If the messages don't get through, the system
log file may have some clues to assist in diagnosing the problem (http://192.168.1.2/syslog.txt). See
Appendix D: Log Files for additional Logging Information.
Requirements
The firmware update software requires Windows XP/Vista/7 with the .Net framework installed. The .Net
framework is generally installed automatically through Windows update. To install it manually, go to the
following address:
http://www.microsoft.com/downloads/details.aspx?FamilyId=333325FD-AE52-4E35-B531-
508D977D32A6&displaylang=en
Select the Download button. Once you've downloaded the installation file, double click on the installation
file to install the framework.
Setup
1. Download the firmware zip file from the ControlByWeb website. Only a X-332™ image can be installed
on the X-332™ so make sure the correct image is being downloaded.
2. bootloader.exe will connect to the X-332™ using default IP address 192.168.1.2, not the address
currently assigned to the X-332™. After the update, all settings will be lost and the device will return to its
default IP address of 192.168.1.2.
Configure the PC to the same subnet as the IP address 192.168.1.2, such as 192.168.1.10. For
instructions on doing this see section 2.3 Establishing Communications for Setup.
Note: The IP address of X-332™ will automatically be set to the default 192.168.1.2 during the update
process.
Note: A crossover cable cannot be used during the update procedure, an ethernet switch will be
necessary to properly update the firmware.
IP Addresses
Every device on the Internet is identified by a unique address called an IP (Internet Protocol) address. IP
addresses are somewhat similar to mailing addresses in that they identify the precise logical location of
the device on the Internet. The IP address identifies the global region down to the network and then the
specific device on that network. IP addresses are globally maintained and assigned by an entity called
the Internet Assigned Numbers Authority (IANA). IP addresses consist of four sets of numbers that
range from 0 to 255 and are separated by a decimal. For example, 192.168.200.167 is an IP address.
Every device that is “directly” connected to the Internet uses a “public” IP address. X-332™ can be
assigned a public IP address for direct connection to the Internet. Typically, a public IP address to would
only be assigned to X-332™ when it is the only device on the local network. The IP address would be
obtained from an Internet Service Provider (ISP).
Due to the limited number of public IP addresses, private networks can be set up with “private” IP
addresses. These addresses are used within a local network and have no global designation, they are
not routed on the Internet. The following address blocks are designated for private networks (where x
represents decimal numbers from 0 to 255): 192.168.x.x, 10.x.x.x, and 172.16.x.x.
Port Forwarding
The router can be configured to allow outside access to X-332™ and WebRelay™. All requests from the
Internet to any device on the local network must use the public IP address (266.70.164.97). With only a
single IP address, TCP ports are used to identify the intended device for the incoming message.
Using the mailing address analogy, the port is similar to a post office box. The IP address specifies the
location, and the port specifies the specific recipient. Port numbers can be set to any number between 1
and 65235. However, many port numbers are reserved for specific applications and should be avoided.
As a general rule, numbers above 8000 are safe to use. All of the ControlByWeb™ products come from
the factory with the HTTP port set to 80, which is the standard port for HTTP. In this example, X-332™
HTTP port will be changed to port 8000 and WebRelay™ port will be changed to 8001. Once the ports
are changed in the two ControlByWeb™ devices, the router must be set up for port forwarding.
Port forwarding associates the IP address of each local device with an assigned port. In this example,
the address 192.168.1.25 for X-332™ would be associated with port 8000. The address 192.168.1.26
for WebRelay™ would be associated with port 8001. X-332™ would be accessed from the Internet by
entering the public IP address of the router, plus the port number assigned to X-332™ in the URL
window of the browser, http://266.70.164.97:8000. All Internet requests to the router for port 8000 would
be forwarded to X-332™. Similarly, all request for port 8001 would be forwarded to WebRelay.
Note: When an HTTP request comes in to the router without the specific port specified
(http://266.70.164.97), the router will handle this as a port 80 request (default HTTP port). In other
words, http://266.70.164.97 is exactly the same as http://266.70.164.97:80.
Router configuration can vary widely. Some routers have the capability of translating the addresses and
the ports, which would require no port configuration change on the WebRelay. For example, the router
would be configured so that messages sent to http://266.70.164.97:8000 would be forwarded to
http://266.70.164.97:80, which is the default HTTP port.
Note: This screen shot is simply an example of a typical router setup page. Routers will vary.
The file can then be saved using the 'Save As...' option under the 'File' menu of the web browser. If the
TCP port has been changed (not port 80), the port will be required to read the file. For example, using
the default IP address, and port 8000, the log file would be read as follows:
http://192.168.1.2:8000/log.txt
The log.txt file may be erased with the following command:
http://192.168.1.2/log.txt?erase=1
After erasing the file, it might be necessary to refresh the page.
Note: If the Control Password is enabled in the setup pages, the password will be required to access the
log file.
Remote Services
The second approach is for X-332™ to initiate a connection using the “Remote Services.” The settings
under the Advanced Network tab in the setup pages will enable the X-332 TM to open a TCP connection
with an external server. Once the connection is open, the external server can send commands and/or
read the device. The external server can leave the connection open (so that it never closes) or close the
connection.
“Remote Services” is ideal for installations where the server and X-332™ are installed on different
networks. This is especially useful when each X-332™ is installed on a separate private network. For
example, if the user doesn't control the network connections where X-332™ is installed, “Remote
Services” would initiate a TCP connection over the Internet with the control computer. Since X-332™
initiates the connection, the control computer doesn't have to know the IP address of X-332™. This
means that X-332™ can be installed using DHCP. In addition, no special router configuration is required.
This makes the network installation of X-332™ very simple, and since no incoming ports need to be
Connection String
With Remote Services enabled, a connection attempt will be made periodically according to the
Connection Interval setting in the Advanced Network setup tab. The Connection String is a user-
defined character string configured in the Advanced Network tab.
The connection string is also sent at the same interval once the connection is open. The external server
is responsible for closing the connection when it is done.
Standard Objects
X-332™ supports several standard RFC1213 objects that usually come with SNMP management
software. If not, an Internet search for RFC1213-MIB will turn up multiple links.
Xytronix Objects
X-332™ also supports some special objects that can be found in the XYTRONIX.mib. This MIB can be
downloaded from our website.
Inputs
Object Input Type Response
x332_inputOne Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputTwo Digital Value: 0 or 1
x332_inputThree Digital Value: 0 or 1
x332_inputFour Digital Value: 0 or 1
x332_inputFive Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputSix Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputSeven Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputEight Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputNine Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputTen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputEleven Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputTwelve Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputThirteen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputFourteen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputFifteen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputSixteen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputSeventeen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
x332_inputEighteen Digital Value: 0 or 1 (0 – OFF, 1 – ON)
Counters
Scaled values are reported.
Object Response
x332_counterOne Value: 0.0 (Current count)
x332_counterTwo Value: 0.0 (Current count)
Analog Inputs
Scaled values are reported.
Object Response
x332_analogOne Value: 0.0 (Current analog value)
x332_analogTwo Value: 0.0 (Current analog value)
x332_analogThree Value: 0.0 (Current analog value)
x332_analogFour Value: 0.0 (Current analog value)
Sensors
Object Response
x332_sensorOne Value: x.x (Decimal temperature or humidity.)
x332_sensorTwo Value: x.x (Decimal temperature or humidity.)
x332_sensorThree Value: x.x (Decimal temperature or humidity.)
x332_sensorFour Value: x.x (Decimal temperature or humidity.)
Read/Write Objects:
Relays – Read/Write
A Get request will return the current state. A Set request of 0 or 1 will turn the Relay ON or OFF. A Set
request of 2 will pulse the Relay for the time configured in the setup page.
Object Response Set Value
x332_relayOne Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayTwo Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayThree Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayFour Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayFive Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relaySix Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relaySeven Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayEight Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayNine Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayTen Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayEleven Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayTwelve Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayThirteen Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayFourteen Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relayFifteen Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
x332_relaySixteen Value: 0 or 1 0 - OFF, 1 - ON, 2 - PULSE
TRAPS
X-332™ can send SNMP messages when an input or relay changes state, when a particular Sensor
value is reached, or when the supply voltage is out of the desired range. The SNMP Trap must be
configured for each Relay, Input, and Sensor in the setup pages. The following Traps are supported:
Relay Traps
A change in state of the relay will cause the X-332™ to send a Trap message.
Input Traps
When an input on the X-332™ changes state, a Trap message will be sent.
Analog Traps
An SNMP Trap message can be sent when the analog alarm boundaries are crossed.
Sensor Traps
Two alarm thresholds can be configured for each sensor. An SNMP Trap message can be sent when
the temperature boundaries are crossed. See 2.3.9 Sensor Tab for more information on configuring the
sensor alarms.
Password
X-332™ uses the Control Password for both the read and write community strings. If the Control
Password is disabled, any object can be read without the need for a correct community string. By default
the Control Password is webrelay.
Structure
A BASIC script is written as a .txt file, which is then uploaded to the device using the Script setup tab.
The maximum script size is 2 kbytes. Each line within the script contains a single statement. Line
numbers are not used.
Statements are not case sensitive; however, variables are.
IF THEN, FOR loops, and DO loops can only be nested up to 5 times per command. For those not
familiar with nesting, the following is an example of nested FOR loops:
FOR a = 0 to 100
FOR b = 0 to 100
NEXT b
NEXT a
Every program must end with an END statement. Subroutines would then follow after the END
statement, if required. The last line of the script should be left blank.
Line Format
Every line follows the same format. The basic format is:
statement (variable) (=, <, >, <=, >=, <>) (expression) (THEN)
The fields in parentheses are optional depending on the statement. Spaces must be used between all
statements, numbers, variables, operators, expressions, etc. Multiple spaces are valid. Comments may
be inserted, but must begin with an apostrophe. All text on a line after the apostrophe is ignored.
Examples:
LET a=1 'this will return an error because of insufficient spacing
LET a = 1 'this is valid
LET a = 1 'this is valid
Only a single variable or literal is allowed on the left side of any operator. The following example is
incorrect and will return an error. The error occurs because there is more than a single value to the left
of the comparison operator (a + 2 is to the left of =).
IF a + 2 = 3 THEN 'this will return an error
To fix the above line, replace 'a + 2'. One of the following options may be used:
IF a = 1 THEN
LET b = a + 2
IF b = 3 THEN
Supported Statements
The following are the statements supported by the ControlByWeb™ BASIC interpreter.
LET
The LET statement assigns a variable a value. The format is:
LET (variable) = (expression)
DO WHILE, LOOP
The DO WHILE statement loops a section of code while a condition is found true. The LOOP statement
always follows the section of code to be looped. Note that if the condition is omitted, the code will be
looped without end. The format is:
DO WHILE (variable) (=, <, >, <=, >=, <>) (expression)
(code to be looped)
LOOP
Example:
let t0 = 100
do while t0 > 0
' wait
loop
LOG
The LOG statement causes the device to log data according to the settings specified under the Logging
setup tab.
Note: In order to log, logging must be enabled in the Logging setup tab.
The format is: LOG
EMAIL
The EMAIL statement causes the device to send an email of the same format as that generated by other
status change and alarm conditions. The event that triggered the email is given, followed by the I/O or
Sensor that you want to email. The format is:
EMAIL (feature state – relayX, inputX, tempX, anaX) 'X represents the feature number such as
relay2
Examples:
EMAIL 'Status email sent to addresses listed under Network tab.
...or...
EMAIL relay2 'Sends state change message to emails setup in I/O tab.
...or...
EMAIL input1 'Input state change message to emails setup in I/O tab.
...or...
EMAIL temp2 'Temp alarm message sent to recipients in the Sensors tab.
END
The END statement ends the main body of code.
CALL
The CALL statement is found within the main body of code, but requires the interpreter to skip to a
subroutine found at the end of the program. After the subroutine is finished, the interpreter returns to the
line immediately following the CALL statement. The format is:
CALL (name of subroutine)
REM or '
The REM or apostrophe ( ' ) statement designates remarks made by the programmer. The interpreter
will disregard any characters on the line following these statements.
PRINT
The PRINT statement displays a variable or message to the display. The PRINT statement is only
available for the PC version of the BASIC interpreter. The device will not recognize the command since it
does not have an operator display. The format is:
PRINT (variable) 'show variable value to screen
User-Defined Variables
Two types of variables are available for use in the ControlByWeb™ BASIC interpreter, user-defined
variables, and predefined variables.
Up to 10 user variables may be initialized. These must be single character, lower case letters.
a, b, c, d, e, f, g, h, i, j
They are always global and stored internally as floating point numbers. Variables are defined using the
LET statement.
Examples:
Let b = 5 'variable b will be set to 5
Let d = b + 2 'variable d will be set to 7
Predefined Variables
The following are useful predefined variables for the ControlByWeb™ BASIC interpreter. These are
useful for accessing internal values and features states.
Timer Variables
Six timers are available for use in BASIC scripts.
t0, t1, t2, t3, t4, t5
Timers can be set to any positive integer (or 0) by using the LET statement. As soon as a value is
assigned to a timer, it will begin to count down immediately by decrementing one count every 100 ms
until it reaches zero.
Examples:
Let t3 = 1500 'set timer 3 to 150 seconds
Let t1 = 0 'disable time 1
Relay Variables
Relay variables represent the state of the relays and can be used to change the state of the relays.
Remote relays can also be controlled, but not read. The following variables are available.
relay1 'relay 1
. .
. '.
relay16 'relay 16
rmt_relay1 'remote relay 1
. .
. .
rmt_relay3 remote relay 3
.
.
.
rmt_relay16 'remote relay 16
Note: Commands can be sent to remote relays, but the states of those relays cannot be read.
Consequently, remote relays should not be used in safety or security-critical applications.
Input Variables
The digital input states can be read in BASIC scripts.
input1 'digital input 1
input2 'digital input 2
input3 'digital input 3
input4 'digital input 4
. .
. .
input16 'digital input 16
Example:
Let a = input1 'sets 'a' equal to value of input 1
Counter Variables
The input counters can be read in BASIC scripts.
count1 'counter input 1 (input 17)
count2 'counter input 2 (input 18)
Example:
If count1 > 5000 Then 'If input counter 1 is greater than 5000 then
Let relay1 = 1 'turn output 2 on
End If
Analog Variables
The analog input scaled values can be read in BASIC scripts.
ana1 'analog input 1
... 'ana2, ana3
ana4 'analog input 4
Example:
If ana1 > 4 Then 'If Analog Input 1 is greater than 4 then
Let relay1 = 2 'Pulse output 1, otherwise
Else
Let relay1 = 0 'output1 will be off
End If
Event Variables
Data and time variables can be used to execute script events.
Up to five date variables are available.
ed1 'event date variable 1
… 'ed2, ed3, ed4
ed5 'event date variable 5
The value assigned to event variables should be in the format mm/dd/yyyy. The event date variables
store the number of days that have passed since January 1, 1970.
Event time variables may be used in math expressions as well as comparison statements.
Time variables have a similar naming convention.
et1 'event time variable 1
... ' et2, et3, et4
et5 'event time variable 5
Event time variables are declared in the format hh:mm:ss in 24-hour time. The event time variables store
the number of seconds from the beginning of the day.
Event date and event time variables of the same number are linked. If the event time variable is
incremented more than the number of seconds in a day (86400 seconds), the variable is reset to 0 and
the event date variable is incremented by one. For example, if et3 rolls over to zero, ed3 will be
incremented.
The following script example demonstrates defining the event variables and comparing it to the current
date and time. Assume current time is April 10, 2010 at 1:30 AM and the event should occur in one hour
External Variables
External variables are similar to general purpose variables and can be used in the same manner. The
difference between general purpose variables and external variables is that external variables can be
accessed by the user through a web browser and modified while the script is running. Scripts can use
external variables as a method of retrieving user input.
extvar0 'external variable 1
… 'extvar2, extvar3, extvar4
extvar4 'external variable 5
The following example demonstrates this by creating a script that will turn Output 1 ON if extvar1 equals
1 and turn Output 1 OFF if extvar1 equals 0.
Example:
Do
If extvar1 = 1 Then
Let rmt_relay1 = 1
Else
Let rmt_relay1 = 0
End If
Loop
End
External variables can also be used to show numeric values, such as a count down timer. If the extVar is
any other value than 1 or 0, the value will be displayed in the Status 2 column, with a gray background.
See section 2.4.13 Script Tab for instructions on configuring external variables for visibility on the
Control Page.
The following code will show a count down from 10 seconds and automatically restart. The refresh rate
must be configured in the Control Page Setup in order to see each of the count down values.
Example:
let t0 = 10 'Initialize variables and start timer
let extvar0 = 10
'Main Loop
Do
if t0 = 0 'when timer reaches 0 decrement counter
let extvar0 = extvar0 - 1
let t0 = 10
end if
MISSING END OF LINE error may be caused by misspelled names or a program that is too long. 1900
bytes of memory is reserved for BASIC scripts. Each text character, space, punctuation mark, tab, or
carriage return uses one byte. If the script is too long, the script will be truncated and will not function as
desired.
Appendix H: Specifications
Power Requirements
- Voltage Input:
• Model X-332-24I : 9-28 VDC
- Current: See table below for typical values at 25°C.
10 Mbps Network Speed, 28VDC Applied to Inputs, +5Vout Applied to Analog Inputs
100 Mbps Network Speed, 28VDC Applied to Inputs, +5Vout Applied to Analog Inputs
I/O Connector
- 3-position, removable terminal strip, 5.08 mm spacing
(Replacement part number, Phoenix Contact 1757022)
- 8-position, removable terminal strip, 3.81 mm spacing
(Replacement part number, Phoenix Contact 1803633)
- 5-position, removable terminal strip, 3.81 mm spacing
(Replacement part number, Phoenix Contact 1803604)
I/O:
-16 Relays, 16 Optically Isolated Inputs, 2 Counter Inputs (inputs 17 and 18), 4 Analog Inputs, 1-Wire
bus
Relay Contacts:
- Contact Form: SPST (form A)
- Contact Material: AgNi
- Contact Resistance: 125 milli-ohm max
Temperature Sensors
- “1-Wire” Digital Thermometer (Dallas Semiconductor DS18B20)
- Range: -55°C to +125°C (-67°F to +257°F)
- Accuracy: +/-0.5°C from -10°C to +85°C
Humidity Sensors
- “1-Wire” Digital Sensor
- 0-100% RH +/- 1.8%
Network
- 10 Base-T or 100 Base-T Ethernet IPv4
- Static IP address assignment or DHCP
- HTTP port selectable
- Standard 8-pin RJ-45 Modular Socket
- Supports Web Browser (HTTP), XML, Modbus/TCP, SNMP protocols
35 LED Indicators
- Power On
- Relays (1-16)
- Inputs (1-16)
- Network Linked
- Network Activity
Real-Time Clock
- Manual or NTP (Network Time Protocol) setup
- NTP Sync Configurable for Once, Daily, Weekly, or On Power-up
- Automatic Daylight Savings Adjustment
- Battery (capacitor) Power Backup
Capacitor Power Backup
- Supports Real-Time Clock, External Variables, Output State
- 3 days Minimum Duration
Nonvolatile Memory
- Flash Memory
- All user settings are stored in nonvolatile memory. Settings will not be lost when power is
disconnected.
Environmental
- Operating Temperature: -40ºC to 65.5ºC (-40ºF to 150ºF)
- Storage Temperature: -40ºC to 85ºC (-40ºF to 185ºF)
Mechanical
- Size: 8.725 x 1.815 x 3.735 in. (221.6 x 46.1 x 94.9 mm), connectors not included
- Weight: 29.2 oz (827.8 g) without connectors
- Weight: 31.3 oz (887.3 g) with connectors
Logging
- Stored in Nonvolatile Flash
- Circular Buffer
- 512 kB ( 8382 to 23622 log entries depending on configuration)
- Unlimited data storage possible through web services.
Password Settings
- Password protection on Setup Page
- Optional Password protection on Control Page
- Base 64 Password Encoding
- 13 Character, Case-Sensitive Password Length
Electromagnetic Compliance
- IEC CISPR 22, CISPR 24
- FCC 47CFR15 (Class B)
- EU EN55024, EN55022
Product Safety Compliance
UL 61010-1 (Electrical Equipment for Measurement, Control, and Laboratory Use)
Alphabetical Index
1 Speed..................................................................35
1-Wire....................................................................134 Events Scheduler Tab..............................................48
10 Base-T.................................................................25 External Server......................................................117
10/100 Base-T..........................................................25 External Variables...................................................89
10/100/1000 Base-T ................................................25
F
A Factory Default......................................................108
Adv. Network Tab...................................................37 Firmware................................................................109
Alarm........................................................................... Full Duplex..............................................................35
Analog................................................................62
G
Temperature........................................................66
Gateway.............................................................26, 34
Applications.............................................................11
GET.............................................................39, 90, 95
Arp.....................................................................26, 27
Graph.................................................................85, 86
B
H
Base64.....................................................................95
HTTP GET..............................................................95
BASIC Scripts.......................................................125
HTTP Port...............................................................35
C Humidity............................................................12, 22
Cat 5........................................................................23
I
Color coded.............................................................49
Information Tab.......................................................32
Connection...................................................................
Installation...............................................................15
Network..............................................................25
IP address.........................................................34, 116
Power Supply......................................................18
IP Addresses..........................................................111
Sensor.................................................................22
Control Page......................................................84, 87 L
Control Page Setup Tab...........................................54 Linux.......................................................................27
Control Password.....................................................40 Local Area Network...............................................111
Crossover.................................................................25 Log File...................................................................85
Current...................................................................133 Log Files................................................................115
Logging Tab............................................................45
D
Date/Time Tab.........................................................41 M
Daylight Savings......................................................44 MAC address...............................................26, 27, 32
Deadband.................................................................66 Mac OS....................................................................27
Default......................................................................... Manual Time Configuration....................................42
IP address......31, 36, 56, 83, 87, 95, 107, 109, 115 Modbus........................................................................
Password.................................................31, 56, 95 Enabled...............................................................37
Username................................................31, 40, 56 Port.....................................................................38
Delay.......................................................................67 Modbus Operation...................................................97
DHCP......................................................................34 Modbus/TCP............................................................37
Digital Input Tab.....................................................57 Models.....................................................................12
DNS Server..............................................................34 N
DS18B20...............................................................134 Network.......................................................................
E LAN..................................................................111
Email Notification.................................................106 Setup...................................................................26
Email Option......................................................67, 69 WAN................................................................112
Email Server Port.....................................................35 Network Tab............................................................33
Ethernet..................................................13, 14, 25, 35 NTP.........................................................................34