Crestron Active CNX Specifications

This document was prepared and written by the Technical Documentation department at:
Crestron Electronics, Inc.
15 Volvo Drive
Rockleigh, NJ 07647
1-888-CRESTRON
Crestron Active CNX
Software
Contents
Active CNX
1
Introduction ............................................................................................................................... 1
Step by Step Tutorial ................................................................................................................. 1
Properties ................................................................................................................................... 3
Methods ..................................................................................................................................... 3
Events ........................................................................................................................................ 4
Errors ......................................................................................................................................... 5
Software License Agreement..................................................................................................... 6
Introduction & Tutorial - DOC. 5777A
Active CNX • i
Crestron Active CNX
Software
Active CNX
Introduction
The ActiveCNX control can be thought of as a touchpanel symbol in SIMPL™
Windows. It can send and receive the three data types: digital, analog, and serial
data. These inputs go into the control system and appear to the control system as an
“e-control PC Interface” symbol. From that point, the user programs the SIMPL
logic as if the system was a real touchpanel.
When a signal changes on the inputs of the “e-control PC Interface”, a message is
sent to the ActiveCNX control. The control responds by firing an event. There are
three main control events that the user can capture and utilize in a PC program.
• OnDigital
• OnAnalog
• OnSerial
All three events return a join number and their corresponding value. The user’s
program can then interpret this data however it needs to. For example, an incoming
digital signal can be used to enable a button on a screen or could be used to trigger a
non-graphical event such as sending an email.
An important aspect of the control is the fact that it is hidden at runtime. This allows
any readily available visual OCX components to easily attach to the ActiveCNX
control component to provide a custom GUI. For example, the digital control signals
can be “attached” to a simple windows button or some type of elaborate image
button OCX that the user downloads from the Web.
The ActiveCNX control can also be used to communicate directly to any CEN
device. In this configuration, the signals map directly to the device instead of signal
number inputs to the SIMPL program. For example, with the CENIO to close relay 7
simply send a “enabled” signal to join 7.
Step by Step Tutorial
The ActiveCNX control can be used in Visual Basic or any other visual development
environment that supports OCX controls. The following example shows how this
control is used in Visual Basic. To add ActiveCNX to the development environment
right click in the components window and select Components or go to Project |
Components. A dialog similar to the one after this paragraph appears.
Introduction & Tutorial - DOC. 5777A
Active CNX • 1
Software
Crestron Active CNX
Components Dialog Box
Look in the list for ActiveCNX ActiveX Control module, if the component has not
been registered yet, click the Browse button. From the “Browse” dialog, select the
ActiveCNX.OCX file. Once the control is in the list ensure the control is checked
and press OK or Apply.
The component now has an icon in the component window. The icon is the Crestron
Swirl. Since the component is available on the toolbar, it can be used just like any
other Visual Basic Control. Simply highlight the control and draw it on the form.
Like the timer component and the Microsoft Winsock control, the components are
invisible at runtime. This means they are on the form to allow the user to connect
other components but there is no need for a visual representation at runtime. The
following image shows what the ActiveCNX control looks like on the form.
ActiveCNX Control
2 • Active CNX
Introduction & Tutorial - DOC. 5777A
Crestron Active CNX
Software
See the Visual Basic examples in the Crestron e-control™ SDK for examples using
this control with the CNMSX control system and a CEN-IO device.
Properties
To get and set the components properties right click the ActiveCNX icon and select
Properties. The “Property Pages” dialog appears. It permits the programmer to set
initial values
NOTE: These property values can always be set programmatically as well.
Property Pages Dialog Box
GatewayIPAddress - This property is the IP address of the PC that is running the
CNX Gateway software. If the configuration is a local server then this property is
need not be set, since it defaults to the local host (127.0.0.1). For distributed
applications there maybe one server and many PC clients (ActiveCNX controls)
connecting to the CNX Gateway from different places on the network (or Internet).
In this case, the CNX Gateway IP address needs to be set by typing the new value in
the property sheet or dynamically by setting the GatewayIPAddress Property.
Dynamic - This property is only used with CEN devices, therefore this property is
ignored if used with the CNMSX control system. If this value is set to TRUE, a
dynamic entry is added into the device's IP ID table. Otherwise, to get feedback to
the application, a static entry must be manually added to the IP table in the CEN
device (refer to the latest revision of the specific CEN documentation). The default
value of this property is FALSE.
There is only one connection per ActiveCNX Control so if connect is called the
second time Disconnect() is automatically called and Connect() is issued again with
the new properties. For multiple connections per application, simply drop multiple
ActiveCNX controls on the form.
Methods
The general procedure for using the components methods are to first call Connect()
to start the control session and when complete call Disconnect(). Between Connect()
and Disconnect() any combination of the sending and receiving the three data types
can be used. At anytime during development if the programmer needs to see
Introduction & Tutorial - DOC. 5777A
Active CNX • 3
Software
Crestron Active CNX
methods, properties, or events available for the ActiveCNX they can bring up the
“Object Browser” in Visual Basic. The Object browser list for the ActiveCNX
control is shown below.
Object Browser List
Events
OnDigital
OnAnalog
OnSerial
OnError
OnConnect
OnDisconnect
The ActiveCNX control also triggers events used for feedback and for handling
errors. In “design mode” the user can select the ActiveX component from the combo
box on the left then select which event to capture. Once the event is selected, it is
entered into the program as a “sub procedure”. From this point, the programmer can
handle the signal however they choose. For example, a digital “on” could signal
another component to send a specific email. The event returns the join number and
the corresponding value. For example if a temperature sensor value on the Cresnet
network changes and the signal is fed into the “Virtual Touch Panel” symbol the
OnAnalog event is fired with its join number and the analog value (Long) as
parameters.
The OnConnect() event is only fired if the connection is successful after calling the
Connect() method. If Connect() fails for some reason the type and description is sent
to the OnError() event.
The OnDisconnect() event is only fired if there is a successful disconnection.
4 • Active CNX
Introduction & Tutorial - DOC. 5777A
Crestron Active CNX
Software
Errors
When an error occurs the OnError() event is triggered with one of the following
parameters and a description string.
ERROR CODES:
CNX_BASEERROR
CNX_CANNOT_CREATE
CNX_ALREADY_CONN
CNX_NOT_CONN
7000
7001
7002
7003
CNX_NETDOWN
CNX_CONNRESET
7004
7005
CNX_CONNABORTED
7006
CNX_CONNREFUSED
7007
CNX_CONNCLOSED
CNX_INVALID_IP
CNX_NOT_AVAIL
CNX_TIMEDOUT
CNX_NOT_SOCK
CNX_NOTCONNECTED
CNX_REJECT
7008
7009
7010
7011
7012
7013
7014
CNX_GENERAL
CNX_NOTCIPNODE
7015
7016
Introduction & Tutorial - DOC. 5777A
Can not create socket.
Already connected
Not connected to server
The Windows Sockets implementation detected that the
network subsystem failed.
The virtual circuit was reset by the remote side.
The virtual circuit was aborted due to timeout or other
failure.
The virtual circuit was aborted due to timeout or other
failure.
The attempt to connect was rejected. Make sure the
server is running.
Connection closed by the remote side.
Invalid IP address.
IP address not available.
Timed out waiting for connection to remote socket.
Not a socket. Call Connect() first.
Not connected yet.
Crestron CIP device not found at specified Cresnet ID
or IP address.
General Windows Sockets Error.
Destination IP is not a valid CIP node
Active CNX • 5
Software
Crestron Active CNX
Software License Agreement
This License Agreement (“Agreement”) is a legal contract between you (either an individual or a single business entity) and
Crestron Electronics, Inc. (“Crestron”) for software referenced in this guide, which includes computer software and, as applicable,
associated media, printed materials, and “online” or electronic documentation (the “Software”).
BY INSTALLING, COPYING, OR OTHERWISE USING THE SOFTWARE, YOU REPRESENT THAT YOU ARE AN
AUTHORIZED DEALER OF CRESTRON PRODUCTS OR A CRESTRON AUTHORIZED INDEPENDENT PROGRAMMER
AND YOU AGREE TO BE BOUND BY THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO THE TERMS OF
THIS AGREEMENT, DO NOT INSTALL OR USE THE SOFTWARE.
IF YOU HAVE PAID A FEE FOR THIS LICENSE AND DO NOT ACCEPT THE TERMS OF THIS AGREEMENT,
CRESTRON WILL REFUND THE FEE TO YOU PROVIDED YOU (1) CLICK THE DO NOT ACCEPT BUTTON, (2) DO NOT
INSTALL THE SOFTWARE AND (3) RETURN ALL SOFTWARE, MEDIA AND OTHER DOCUMENTATION AND
MATERIALS PROVIDED WITH THE SOFTWARE TO CRESTRON AT: CRESTRON ELECTRONICS, INC., 15 VOLVO
DRIVE, ROCKLEIGH, NEW JERSEY 07647, WITHIN 30 DAYS OF PAYMENT.
LICENSE TERMS
Crestron hereby grants You and You accept a nonexclusive, nontransferable license to use the Software (a) in machine
readable object code together with the related explanatory written materials provided by Creston (b) on a central processing unit
(“CPU”) owned or leased or otherwise controlled exclusively by You, and (c) only as authorized in this Agreement and the related
explanatory files and written materials provided by Crestron.
If this software requires payment for a license, you may make one backup copy of the Software, provided Your backup copy
is not installed or used on any CPU. You may not transfer the rights of this Agreement to a backup copy unless the installed copy of
the Software is destroyed or otherwise inoperable and You transfer all rights in the Software.
You may not transfer the license granted pursuant to this Agreement or assign this Agreement without the express written
consent of Crestron.
If this software requires payment for a license, the total number of CPU’s on which all versions of the Software are installed
may not exceed one per license fee (1) and no concurrent, server or network use of the Software (including any permitted back-up
copies) is permitted, including but not limited to using the Software (a) either directly or through commands, data or instructions from
or to another computer (b) for local, campus or wide area network, internet or web hosting services; or (c) pursuant to any rental,
sharing or “service bureau” arrangement.
The Software is designed as a software development and customization tool. As such Crestron cannot and does not
guarantee any results of use of the Software or that the Software will operate error free and You acknowledge that any development
that You perform using the Software or Host Application is done entirely at Your own risk.
The Software is licensed and not sold. Crestron retains ownership of the Software and all copies of the Software and
reserves all rights not expressly granted in writing.
OTHER LIMITATIONS
You must be an Authorized Dealer of Crestron products or a Crestron Authorized Independent Programmer to install or use
the Software. If Your status as a Crestron Authorized Dealer or Crestron Authorized Independent Programmer is terminated, Your
license is also terminated.
You may not rent, lease, lend, sublicense, distribute or otherwise transfer or assign any interest in or to the Software.
You may not reverse engineer, decompile, or disassemble the Software.
You agree that the Software will not be shipped, transferred or exported into any country or used in any manner prohibited
by the United States Export Administration Act or any other export laws, restrictions or regulations (“Export Laws”). By downloading
or installing the Software You (a) are certifying that You are not a national of Cuba, Iran, Iraq, Libya, North Korea, Sudan, or Syria or
any country to which the United States embargoes goods (b) are certifying that You are not otherwise prohibited from receiving the
Software and (c) You agree to comply with the Export Laws.
If any part of this Agreement is found void and unenforceable, it will not affect the validity of the balance of the Agreement,
which shall remain valid and enforceable according to its terms. This Agreement may only be modified by a writing signed by an
authorized officer of Crestron. Updates may be licensed to You by Crestron with additional or different terms. This is the entire
agreement between Crestron and You relating to the Software and it supersedes any prior representations, discussions, undertakings,
communications or advertising relating to the Software. The failure of either party to enforce any right or take any action in the event
of a breach hereunder shall constitute a waiver unless expressly acknowledged and set forth in writing by the party alleged to have
provided such waiver.
6 • Active CNX
Introduction & Tutorial - DOC. 5777A
Crestron Active CNX
Software
If You are a business or organization, You agree that upon request from Crestron or its authorized agent, You will within
thirty (30) days fully document and certify that use of any and all Software at the time of the request is in conformity with Your valid
licenses from Crestron of its authorized agent.
Without prejudice to any other rights, Crestron may terminate this Agreement immediately upon notice if you fail to comply
with the terms and conditions of this Agreement. In such event, you must destroy all copies of the Software and all of its component
parts.
PROPRIETARY RIGHTS
Copyright. All title and copyrights in and to the Software (including, without limitation, any images, photographs,
animations, video, audio, music, text, and “applets” incorporated into the Software), the accompanying media and printed materials,
and any copies of the Software are owned by Crestron or its suppliers. The Software is protected by copyright laws and international
treaty provisions. Therefore, you must treat the Software like any other copyrighted material, subject to the provisions of this
Agreement.
Submissions. Should you decide to transmit to Crestron’s website by any means or by any media any materials or other
information (including, without limitation, ideas, concepts or techniques for new or improved services and products), whether as
information, feedback, data, questions, comments, suggestions or the like, you agree such submissions are unrestricted and shall be
deemed non-confidential and you automatically grant Crestron and its assigns a non-exclusive, royalty-tree, worldwide, perpetual,
irrevocable license, with the right to sublicense, to use, copy, transmit, distribute, create derivative works of, display and perform the
same.
Trademarks. CRESTRON and the Swirl Logo are registered trademarks of Crestron Electronics, Inc. You shall not remove
or conceal any trademark or proprietary notice of Crestron from the Software including any back-up copy.
GOVERNING LAW
This Agreement shall be governed by the laws of the State of New Jersey, without regard to conflicts of laws principles.
Any disputes between the parties to the Agreement shall be brought in the state courts in Bergen County, New Jersey or the federal
courts located in the District of New Jersey. The United Nations Convention on Contracts for the International Sale of Goods, shall
not apply to this Agreement.
CRESTRON LIMITED WARRANTY
CRESTRON warrants that: (a) the Software will perform substantially in accordance with the published specifications for a
period of ninety (90) days from the date of receipt, and (b) that any hardware accompanying the Software will be subject to its own
limited warranty as stated in its accompanying written material. Crestron shall, at its option, repair or replace or refund the license fee
for any Software found defective by Crestron if notified by you within the warranty period. The foregoing remedy shall be your
exclusive remedy for any claim or loss arising from the Software.
CRESTRON shall not be liable to honor warranty terms if the product has been used in any application other than that for
which it was intended, or if it as been subjected to misuse, accidental damage, modification, or improper installation procedures.
Furthermore, this warranty does not cover any product that has had the serial number or license code altered, defaced, improperly
obtained, or removed.
Notwithstanding any agreement to maintain or correct errors or defects Crestron, shall have no obligation to service or
correct any error or defect that is not reproducible by Crestron or is deemed in Crestron’s reasonable discretion to have resulted from
(1) accident; unusual stress; neglect; misuse; failure of electric power, operation of the Software with other media not meeting or not
maintained in accordance with the manufacturer’s specifications; or causes other than ordinary use; (2) improper installation by
anyone other than Crestron or its authorized agents of the Software that deviates from any operating procedures established by
Crestron in the material and files provided to You by Crestron or its authorized agent; (3) use of the Software on unauthorized
hardware; or (4) modification of, alteration of, or additions to the Software undertaken by persons other than Crestron or Crestron’s
authorized agents.
ANY LIABILITY OF CRESTRON FOR A DEFECTIVE COPY OF THE SOFTWARE WILL BE LIMITED
EXCLUSIVELY TO REPAIR OR REPLACEMENT OF YOUR COPY OF THE SOFTWARE WITH ANOTHER COPY OR
REFUND OF THE INITIAL LICENSE FEE CRESTRON RECEIVED FROM YOU FOR THE DEFECTIVE COPY OF THE
PRODUCT. THIS WARRANTY SHALL BE THE SOLE AND EXCLUSIVE REMEDY TO YOU. IN NO EVENT SHALL
CRESTRON BE LIABLE FOR INCIDENTAL, CONSEQUENTIAL, SPECIAL OR PUNITIVE DAMAGES OF ANY KIND
(PROPERTY OR ECONOMIC DAMAGES INCLUSIVE), EVEN IF A CRESTRON REPRESENTATIVE HAS BEEN ADVISED
OF THE POSSIBILITY OF SUCH DAMAGES OR OF ANY CLAIM BY ANY THIRD PARTY. CRESTRON MAKES NO
WARRANTIES, EXPRESS OR IMPLIED, AS TO TITLE OR INFRINGEMENT OF THIRD-PARTY RIGHTS,
MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE, OR ANY OTHER WARRANTIES, NOR
AUTHORIZES ANY OTHER PARTY TO OFFER ANY WARRANTIES, INCLUDING WARRANTIES OF
MERCHANTABILITY FOR THIS PRODUCT. THIS WARRANTY STATEMENT SUPERSEDES ALL PREVIOUS
WARRANTIES.
Introduction & Tutorial - DOC. 5777A
Active CNX • 7