AMX RMS CodeCrafter Operation/Reference Manual
AMX RMS CodeCrafter Operation/Reference Manual

AMX RMS CodeCrafter Operation/Reference Manual

V3.2 or higher
Hide thumbs Also See for RMS CodeCrafter:
Table of Contents

Advertisement

Operation/Reference Guide
RMS CodeCrafter
v3.2 or higher
E n t e r p r i s e A p p l i c a t i o n s
L a s t R e v i s e d : 9 / 2 2 / 2 0 1 0

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the RMS CodeCrafter and is the answer not in the manual?

Questions and answers

Summary of Contents for AMX RMS CodeCrafter

  • Page 1 Operation/Reference Guide RMS CodeCrafter v3.2 or higher E n t e r p r i s e A p p l i c a t i o n s L a s t R e v i s e d : 9 / 2 2 / 2 0 1 0...
  • Page 2 LICENSE GRANT. AMX grants to Licensee the non-exclusive right to use the AMX Software in the manner described in this License. The AMX Software is licensed, not sold. This license does not grant Licensee the right to create derivative works of the AMX Software.
  • Page 3: Table Of Contents

    Table of Contents Welcome to RMS CodeCrafter ................1 Overview ........................1 System Requirements ....................1 Other PC requirements: ....................1 The RMS CodeCrafter Work Area ................1 File Menu ........................1 Edit Menu........................2 View Menu ........................2 Help Menu........................2 Toolbar ........................
  • Page 4 Opening An Existing Project................... 45 Closing A Project Or Template File................. 45 Importing RMS SDK Spreadsheets................45 SERVERINFO.TXT Window ..................46 Exiting RMS CodeCrafter..................47 Adjusting RMS CodeCrafter..................47 Changing Visual Style ....................47 Web Update ........................47 Setting Template Folder Destination ................47 Setting Default RMS Server Address................
  • Page 5 Anterus Module Identifiers ................... 61 Anterus DATA_EVENT ....................62 Anterus Copy Files ....................... 62 RMS Concepts ....................63 Device Monitoring Framework ................63 Device Values ........................ 63 Parameter Values ......................64 Status Types........................65 RMS SDK And RMS CodeCrafter ................66 RMS CodeCrafter...
  • Page 6 Table of Contents i!-ConnectLinx ....................67 Using i!-ConnectLinx ....................67 RMS CodeCrafter...
  • Page 7: Welcome To Rms Codecrafter

    Welcome to RMS CodeCrafter Overview RMS CodeCrafter is a Microsoft Windows application that offers accelerated development of the NetLinx® include (.axi) file required to provide code for monitoring devices using one of the applications in the AMX ® Resource Management Suite .
  • Page 8: The Rms Codecrafter Work Area

    View Menu The View menu allows you to toggle the toolbar and status bar of the RMS CodeCrafter wizard on and off. A check next to the title indicates it is visible. Additionally you can change the appearance of the application itself.
  • Page 9: Toolbar

    Delete: Delete selected text within fields. Print: Prints the active generated code. Help: Launches the RMS CodeCrafter help file. Text Field Context Menu Right click within any text field to access the text field context menu. Undo: Undoes last text action.
  • Page 10 Welcome to RMS CodeCrafter RMS CodeCrafter...
  • Page 11: Rms Codecrafter Device Template Pages

    You can create persistent templates for monitored devices, where you provide the settings and parameters. RMS CodeCrafter can then use the device templates for similar or the same devices in other projects. When you opt to use device templates RMS CodeCrafter pulls all available templates from the template folder destination, which you can set in the Preferences window.
  • Page 12: Device Template Parameters Page

    RMS CodeCrafter Device Template Pages Device Template Main Page (Cont.) Communication Timeout: Place a check in the box to enable the function. • Measured in 1/10ths of a second, where 0 is a valid value. • Default is 300. Control Failure Detect: Placing a check in the box adds a call to RMSEnablePowerFailure() in the generated code file.
  • Page 13: Add/Edit Device Template Parameters Window

    RMS CodeCrafter Device Template Pages Add/Edit Device Template Parameters Window The Add/Edit Device Template Parameters window allows you to add device parameters or edit existing ones. FIG. 3 Add/Edit Device Template Parameters Window Add/Edit Device Template Parameters Window Name: A text field you can edit to name the parameter.
  • Page 14: Set Range For Index Parameter

    RMS CodeCrafter Device Template Pages Add/Edit Device Template Parameters Window (Cont.) Reset Value: A text field you can edit to set reset value. 32-bit signed number for Number, 16-bit unsigned number for Index and any string up to 100 characters for String and Enum.
  • Page 15: Set Range For Enum Parameter

    RMS CodeCrafter Device Template Pages Set Range for Enum Parameter FIG. 5 Edit Numeration List dialog Edit Enumeration List dialog Add string: adds the sting to the parameter use. Remove: removes the string from parameter use. Move Up: moves the string up the list of parameter use.
  • Page 16: Device Template Wizard Finished Page

    Save Template to: A text field where you can either type or click the Browse button to designate where RMS CodeCrafter wizard is to save the template file (.CGT). Previous: Regresses the RMS CodeCrafter wizard to the Device Template Parameters Page. Finish: Generates the template file and stores in the directory specified by the Save Template to field.
  • Page 17: Rms Codecrafter Project Pages

    RMS CodeCrafter Project Pages RMS CodeCrafter Project Pages Introductory Page The Introductory page is the initial page displayed upon launching the RMS CodeCrafter wizard. FIG. 1 Introductory Page The button you select will determine what file is generated. Introductory Page New Project: Opens a new RMS CodeCrafter project file (.CGP) and progresses to the Project...
  • Page 18 RMS CodeCrafter Project Pages Edit User Preferences dialog The options in this dialog allow you to set user preferences. FIG. 2 Edit User Preferences dialog Edit User Preferences dialog Template Folder: A text field where you can either type or click Browse to designate the default template folder destination.
  • Page 19: Code Generation Wizard - Start Page

    (.APW) to be integrated into this • The file can be either a NetLinx code (.AXS) or NetLinx Studio project. workspace (.APW) file. • The incorporation of either file into a RMS CodeCrafter project is optional. Next: Progress to the next page.
  • Page 20: Integrated Netlinx Code Files Page

    RMS CodeCrafter Project Pages Integrated NetLinx Code Files Page You will see the Code File Selection page if you selected a NetLinx Studio workspace file (.APW) in the Project Start page. A list of all available NetLinx code files within the .APW file is displayed.
  • Page 21: Room Information/Options Page

    Enter the name of the room’s owner in this text field (required). Anterus Options: Support Anterus RFID for Select this option if AMX Anterus RFID Solution support will be defined in device tracking in RMS? the generated code. RMS SDK version 3.2.x (or greater) is required to support the AMX Anterus RFID Solution.
  • Page 22: Rms Server Address Page

    RMS CodeCrafter Project Pages Room Information/Options Page (Cont.) Display Options: Main and welcome scheduling If selected, the RMSUIMod is defined in the generated code file. panels: Additionally, the array of this module is dependant upon an input argument defined. Welcome scheduling panels...
  • Page 23: Rms Virtual And Socket Device Definitions Page

    RMS CodeCrafter Project Pages RMS Server Address Page RMS Server Address: Enter the IP address of the RMS server if necessary in this text field. Previous: Regresses to the Room Information/Options page. Next: Progresses to the RMS Virtual and Socket Device Definitions page.
  • Page 24: Scheduling: Main Panels Page

    RMS CodeCrafter Project Pages RMS Virtual and Socket Device Definitions Page (Cont.) i!-ConnectLinx Virtual Device: vdvCLActions: Enter the device, port and system information of the virtual device and ConnectLinx in these text fields. If this device is defined in the integrated file, the fields are automatically populated and pro- tected.
  • Page 25: Add/Edit Main Panel Window

    Edit Panel: Launches the Add/Edit Main Panel window. When a main panel is selected you can edit its prop- erties. Previous: Regresses the RMS CodeCrafter wizard to the RMS Virtual and Socket Device Definitions page. Next: Progresses the RMS CodeCrafter wizard to the Scheduling: Welcome Panels page.
  • Page 26: Scheduling: Welcome Panels Page

    RMS CodeCrafter Project Pages Scheduling: Welcome Panels Page The Welcome Panels page allows you to add, edit and delete welcome panels used to display scheduling. This page is only available if you selected Main and Welcome panels or Welcome panels only on the Room Information/Options page.
  • Page 27 RMS CodeCrafter Project Pages Add/Edit Welcome Panel dialog FIG. 11 Add/Edit Welcome Panel dialog Use the options in the Add/Edit Welcome Panel dialog to add and edit panel information: Add/Edit Welcome Panel dialog Panel Size: Select the panel size for the Welcome panel from a list of panel sizes supported by CodeCrafter.
  • Page 28: Named Netlinx Devices Page

    RMS CodeCrafter Project Pages Named NetLinx Devices Page The Named NetLinx Devices page allows you to add, edit and delete devices monitored as Named Devices. A Named Device is a NetLinx device that supports a logical name (i.e., a touch panel)..
  • Page 29 RMS CodeCrafter Project Pages Add/Edit Named Devices dialog FIG. 13 Add/Edit Named Devices dialog The Add/Edit Named Devices dialog is available to add and edit named devices: Add/Edit Named Devices dialog Device: Select a Base Device from a drop down list of devices extracted from the integrated NetLinx file.
  • Page 30: Monitored Third-Party Devices Page

    RMS CodeCrafter Project Pages Monitored Third-Party Devices Page The Monitored Third-Party Devices page allows you to add, edit and delete devices intended to be monitored as Monitored Devices. A Monitored Device is a device that supports a logical name, manufacturer, and model, i.e., a projector.
  • Page 31 RMS CodeCrafter Project Pages Add/Edit Monitored Devices dialog FIG. 15 Add/Edit Monitored Devices dialog The Add/Edit Monitored Devices dialog is available to add and edit named devices. The fields you can edit are as follows: Add/Edit Monitored Devices dialog Device: Select a device from a drop-down list of devices extracted from the integrated NetLinx file.
  • Page 32 RMS CodeCrafter Project Pages Add/Edit Monitored Devices dialog (Cont.) Control Failure Detect: Placing a check in the box adds a call to RMSEnablePowerFailure() in the generated code file. Accepts changes and closes this dialog. Cancel: Closes this dialog and does not keep changes.
  • Page 33: Device Parameters Page

    RMS CodeCrafter Project Pages Device Parameters Page The Device Parameters page allows you to add, edit and delete Device Parameters. This page is only available if your project has Named NetLinx, Monitored devices or both. FIG. 17 Device Parameters Page Device Parameters Page Add Parameter: Launches the Add/Edit Device Parameters dialog, to add a device parameter to the project.
  • Page 34 RMS CodeCrafter Project Pages Add/Edit Device Parameter dialog The Add/Edit Device Parameter dialog allows you to add device parameters or edit existing ones. FIG. 18 Add/Edit Device Parameter dialog Add/Edit Device Parameter dialog Name: A text field you can edit to name the parameter.
  • Page 35 RMS CodeCrafter Project Pages Add/Edit Device Parameter dialog (Cont.) Reset Value: A text field you can edit to set reset value. 32-bit signed number for Number, 16-bit unsigned number for Index and any string up to 100 characters for String and Enum.
  • Page 36 RMS CodeCrafter Project Pages Edit Enumeration List dialog FIG. 20 Edit Enumeration List dialog Edit Parameter List dialog Add string: Adds the sting to the parameter use. Remove: Removes the string from parameter use. Move Up: Moves the string up the list of parameter use.
  • Page 37: I!-Connectlinx Touch Panel Button Mappings Page

    The window provides a box to select the touch panel device and a numeric field for the button number, but if the device and button fields are populated, RMS CodeCrafter will attempt to add the mapping without offering the dialog.
  • Page 38: Edit Touch Panel Button-Mappings

    Previous: Regresses the RMS CodeCrafter wizard to the Device Parameters Page. Next: Progresses the RMS CodeCrafter wizard to the Generate NetLinx Code File Page. Edit Touch Panel Button-Mappings The Add Function dialog allows you to edit the button-mappings. Listed is the i!ConnectLinx function name and number. This field is static.
  • Page 39: Anterus Duet Module Virtual Device Page

    RMS CodeCrafter Project Pages Anterus Duet Module Virtual Device Page The Anterus Duet Module Virtual Device page is available if you selected Support Anterus RFID for device tracking in RMS? on the Room Information/Options page.  Use this page to specify a device address (<D:P:S>) for the Anterus Duet Module Virtual Device.
  • Page 40: Anterus Rfid Reader Devices Page

    RMS CodeCrafter Project Pages Anterus RFID Reader Devices Page The Anterus RFID Reader Devices page is available if you selected Support Anterus RFID for device tracking in RMS? on the Room Information/Options page. Use this page to add all Anterus RFID Readers to the system.
  • Page 41: Add Anterus Rfid Reader

    RMS CodeCrafter Project Pages Add Anterus RFID Reader dialog The Add Anterus RFID Reader dialog allows you to add RFID Readers to the system. FIG. 25 Add Anterus RFID Reader dialog Add Anterus RFID Reader dialog Anterus RFID Reader Device: A list of RFID Readers available. This field is populated by devices extracted from the integrated NetLinx file.
  • Page 42: Generate Netlinx Code File Page

    RMS CodeCrafter Project Pages Generate NetLinx Code File Page The Generate NetLinx Code File page prompts CodeCrafter to generate the NetLinx include code file. FIG. 27 Generate NetLinx Code File Page Generate NetLinx Code File Page Generated NetLinx Code File: This is a text field you can either type the path or click Browse and specify the file name and target to generate.
  • Page 43: Code Generation Wizard - Finished Page

    RMS CodeCrafter Project Pages Code Generation Wizard - Finished Page The Code Generation Wizard - Finished page is the final step in the process of creating your own RMS code. The results of the code generation operation and confirmation of the target location is listed.
  • Page 44 RMS CodeCrafter Project Pages RMS CodeCrafter...
  • Page 45: Basic Operations

    Click Finish to create the template file and save it. Creating A New RMS Project The RMS CodeCrafter wizard creates project files that it uses in generating the NetLinx code you need. To create a .CGP file: From the Introductory page click New Project.
  • Page 46 Device Parameters. To add a device parameter, click Add Device and open the Add/Edit Device Parameters window. To edit a device parameter, select the device from the list and click Edit Device to open the Add/Edit Device Parameters dialog. RMS CodeCrafter...
  • Page 47: Saving A Device Template File

    Select the target location for the file and click Save. Saving A Project File Once you have created a RMS CodeCrafter file, it is necessary to save the file. You can then return to the file at a later date.
  • Page 48: Opening An Existing Project

    You can now begin working from your saved project. Closing A Project Or Template File Once you are done with a project or template file, but would like to keep RMS CodeCrafter open, you can close the file. To close a file: ...
  • Page 49: Serverinfo.txt Window

    Basic Operations SERVERINFO.TXT Window RMS CodeCrafter allows you to generate a text file, SERVERINFO.TXT, that contains the IP address of the RMS server, and then transfer the file to the RMS directory on the system master for the room. FIG. 1 SERVERINFO.TXT Window...
  • Page 50: Adjusting Rms Codecrafter

    Click OK. Setting Default RMS Server Address As part of the code generated by RMS CodeCrafter, the IP address of the RMS server can be included. The IP address is necessary when using Scheduling and i!-ConnectLinx options. To set the location RMS CodeCrafter uses: With RMS CodeCrafter open to the Introductory page, click Edit Preferences to open the Preferences window.
  • Page 51 Basic Operations With RMS CodeCrafter open to Introductory page, click Edit Preferences to open the Preferences window. Click the checkbox next to Generate Device Variable Warnings to remove the check. Click OK. RMS CodeCrafter...
  • Page 52: Code Generation

    Software clause at DFARS 252.227-7013 or subparagraphs (1) and (2) of the Commercial Computer Software Restricted Rights at 48 CFR 52.227-19, as applicable. RMS CodeCrafter obtains the RMS SDK version by reading a registry key set by the SDK installer, HKEY_LOCAL_MACHINE\SOFTWARE\AMX Corp.\RMS SDK\Version. RMS CodeCrafter...
  • Page 53: Define_Devices Section

    An option is provided to enable/disable these warnings. By default they are enabled. DEFINE_CONSTANT Section Server Address Definition RMS CodeCrafter will create a definition for the server address, using the value provided in the RMS Server Address Page. // RMS Server IP CHAR RMS_SERVER_IP[100] = '192.168.222.51'...
  • Page 54: Define_Variable Section

    Each variable definition is preceded on the line above it by a comment containing its corresponding device’s name. Each definition is immediately followed on the same line with a comment containing the parameter name, like // dvLProj VOLATILE SLONG slRMSLeftProjectorLampHours // Lamp Hours RMS CodeCrafter...
  • Page 55: Function Definitions

    Code Generation Function Definitions RMSCommon Callbacks RMS CodeCrafter creates definitions for the following callback functions: RMSDevMonRegisterCallBack This function has the following signature: (***************************************) (* Call Name: RMSDevMonRegisterCallback*) (* Function: time to register devices *) (* Param: None (* Return: None...
  • Page 56: Rms Device Parameters

    RMS CodeCrafter generates the following module definitions in the DEFINE_START section. Monitored Device/Support Modules RMS CodeCrafter generates a module definition for each Monitored device that uses a Support Module. Each module declaration is created using the Module name, the monitored devices virtual and actual device names, and the RMS Engine’s virtual device name (vdvRMSEngine).
  • Page 57: I!-Connectlinxenginemod

    Event Definitions RMS CodeCrafter generates the following DATA_EVENT blocks the DEFINE_EVENT section. RMS Engine Device RMS CodeCrafter generates a DATA_EVENT block for the RMS Engine device. This block will always be generated, boilerplate, with these exceptions:  If the Use Multiple Displays option is selected, RMS CodeCrafter will generate a call to RMSSetMultiSource(TRUE) ...
  • Page 58: Monitored Devices

    Code Generation Monitored Devices RMS CodeCrafter generates a DATA_EVENT block for each Monitored Device not using a support module. This block will always be generated as follows: (*******************************************) (* DATA: Left Projector (*******************************************) DATA_EVENT [dvLProj] ONLINE: // Register Device and Parameters...
  • Page 59: Data_Event Block

    Code Generation DATA_EVENT Block RMS CodeCrafter generates a DATA_EVENT block for the vdvCLActions virtual device. This block will create the following: A fixed format STRING parsing block A SEND_COMMAND statement to register the room name, owner, and location. Registration commands for each function-touch panel button mapping. These registration commands can be combined using the AND and THROUGH syntax.
  • Page 60: Button_Event Block

    CD Search Rev (1737) SEND_COMMAND DATA.DEVICE,'ADD STD-1731-1737' BUTTON_EVENT Block RMS CodeCrafter generates a BUTTON_EVENT block for each device with button mappings. It does not make use of the i!-ConnectLinx variables defined in the variables section. An example block is provided below.
  • Page 61: Channel_Event Block

    Code Generation CHANNEL_EVENT Block RMS CodeCrafter generates a CHANNEL_EVENT block for each device with button mappings. It does not make use of the i!-ConnectLinx variables defined in the variables section. An example block is provided below. (*******************************************) (* CHANNEL: i!-ConnectLinx Feedback...
  • Page 62: Anterus Rfid Device Registration & Monitoring

    Identify the reader instances to the Duet mod. (* Param: ReadersDeviceArray, AnterusDuetVirtualDevice (* Return: None (**************************************************************) DEFINE_FUNCTION RMSSendRFIDModuleIdentifiers(DEV dvRFIDReaders[], DEV vdvRFIDGtwy) STACK_VAR INTEGER nLoop CHAR cRFIDReaderDeviceIdentifiers[200] // loop over the RFID reader device array and construct an identifiers string to send to the Duet module RMS CodeCrafter...
  • Page 63: Anterus Data_Event

    If support is enabled in the CodeCrafter project for Anterus AND the "Copy RMS Module Files" option is checked on the Generate NetLinx Code File page, then the code generator will also include the following files:  AMX_Anterus_Comm_dr1_0_0.jar (only included if this file exists in the project directory)  RMSRFIDTrackingMod.axs RMS CodeCrafter...
  • Page 64: Rms Concepts

    A device connected via IP will display "TCP/IP" for the address type and the IP address for the address. Axcess devices will display "AxLink" for both values. This information may be useful for diagnosing device connectivity problems. This information is registered automatically by the RMS server. RMS CodeCrafter...
  • Page 65: Parameter Values

    This value is used to restrict the range of the threshold and reset values that the administrator can enter on the RMS server console. This value would be used when the parameter represents a value with a bounded list, Power On and Power Off. RMS CodeCrafter...
  • Page 66: Status Types

    "Room Communication Error", "Control System Error", "Network Error", "Security" and "Equipment Usage." While there are no firm rules for what these status types mean and how they are used, AMX provides the following description of each status type and recommends that your usage is consistent with these descriptions.
  • Page 67 RMS Concepts RMS CodeCrafter...
  • Page 68: Using I!-Connectlinx

    VCR. Imagine you have two touch panel buttons that do these functions; write code that responds to the pushes: BUTTON_EVENT[TP,1] (* VCR Play *) PUSH: PULSE[VCR,1] BUTTON_EVENT[TP,2] (* VCR Stop *) PUSH: PULSE{VCR,2] RMS CodeCrafter...
  • Page 69 In addition to specifying the name of an action, you can also supply a help string and a folder name. The help string helps a user understand the intent of the action more clearly. The folder name allows you to organize the actions in a tree view so that actions are more easily browsed. RMS CodeCrafter...
  • Page 70 RMS CodeCrafter...
  • Page 71 It’s Your World - Take Control™ 3000 RESEARCH DRIVE, RICHARDSON, TX 75082 USA • 800.222.0193 • 469.624.8000 • 469-624-7153 fax • 800.932.6993 technical support • www.amx.com...

Table of Contents