MeshScape™ Commercial- and Industrial-class Wireless Sensor Networks RK-5409-5 Reference Kit for 916 MHz MeshScape Systems User’s Guide Document Number: Revision: Released: DOC-0051 01 August 2005
COPYRIGHT This manual is produced and copyrighted by Millennial Net, Inc. Any use or reproduction of the contents of this manual without the prior written consent of Millennial Net, Inc. is strictly prohibited. NOTICE All title and copyrights to this document are owned by Millennial Net, Inc. No part of the contents of this document may be reproduced or transmitted in any form or by any means without the written permission of Millennial Net, Inc. Millennial Net, Inc.
CAUTION Initialization of the product should be performed only by a qualified systems administrator. Compliance Statements FCC Compliance FCC compliance for Millennial Net’s RK-5409-5 Reference Kit (916MHz, 5-3-1) consisting of the following models/components: • EN-5409 end node • MN-5409 mesh node • MG-5409 MeshGate gateway Compliance Statement (Part 15.19) The Millennial Net RK-5409-5 Reference Kit complies with Part 15 of the FCC Rules and with RSS-210 of Industry Canada.
Nearson ½ wave Antenna Part Number: S467AH-915S Linx ¼ wave Antenna Part Number: ANT-916-CW-QW 3. The OEM must use the same cable type and of the same length or longer than that defined below. Use of another cable type or of a shorter length will require testing to ensure compliance with FCC rules and regulations. RF Cable type: RG174 RF Cable Length: 5.9" +/- 0.
Contents About This Guide Audience ....................................................................................................................xvi Using This Guide .........................................................................................................xvi Symbols and Conventions .......................................................................................... xvii Contacting Millennial Net .....................................................................................
Configuring AD (analog-to-digital) Converter Operation.................................... 3-14 Configuring RS-232 Operation (MN-5409 only) ................................................. 3-15 Configuring RS-485 Operation (MN-5409 only) ................................................. 3-16 Using Watch Function to Display Configuration Information.............................. 3-17 Labeling an End Node or Mesh Node ........................................................................
Performing MeshScape Programmer Operations......................................................... B-4 Upgrading Firmware on the Target Device .......................................................... B-4 Unlocking Features on the Target Device ............................................................ B-5 Reprogramming the Group and Device IDs on the Target Device......................... B-6 Getting Started with End Node Configurator..............................................................
x Millennial Net
Figures Figure 1-1. Figure 1-2. Figure 1-3. Figure 1-4. Figure 2-5. Figure 2-6. Figure 2-7. Figure 2-8. Figure 2-9. Figure 2-10. Figure 2-11. Figure 3-12. Figure 3-13. Figure 3-14. Figure 3-15. Figure 3-16. Figure 3-17. Figure 3-18. Figure 3-19. Figure 3-20. Figure 3-21. Figure 3-22. Figure 3-23. Figure 3-24. Figure 3-25. Figure 3-26. Figure 3-27. Figure 3-28. Figure 3-29. Figure 3-30. Figure 4-1. Figure 4-2. Figure A-2. Figure A-1. Figure A-2. Figure A-3. Figure A-4. Figure A-5. Figure A-6. Figure B-1.
xii Millennial Net
Tables Table 2-1. Table 2-2. Table 2-3. Table 2-4. Table 2-5. Table 3-6. Table 3-7. Table 3-8. Table 4-1. MeshGate status LEDs ................................................................................... 2-5 MeshGate default Settings ............................................................................ 2-6 Mesh node status LEDs.................................................................................. 2-8 MeshScape mesh node default settings ...........................................
xiv Millennial Net
About This Guide This section provides information related to the content of the user guide: • ’Audience’ on page xvi • ’Using This Guide’ on page xvi • ’Symbols and Conventions’ on page xvii • ’Contacting Millennial Net’ on page xviii RK-5409-5 Reference Kit User’s Guide xv
Audience This guide is intended for the following qualified service personnel who are responsible for installing, operating, and developing software to interface with the RK-5409-5 MeshScape Wireless Sensor Network Reference Kit: • System installer • Hardware technician • System operator • System administrator • Software developer Using This Guide The sections of this guide provide the following information: Section Provides Chapter 1, “Introduction” General overview of wireless sensor networki
Symbols and Conventions This guide uses the following symbols and conventions to emphasize certain information. Note: A note is used to highlight important information relating to the topic being discussed. Caution A caution means that a specific action could cause harm to the equipment or to the data. Warning A warning describes an action that could result in physical injury, or destruction of property. Hazard A hazard is a particular form of warning related expressly to electric shock.
Contacting Millennial Net World Wide Web Millennial Net maintains a site on the World Wide Web where information on the company and its products can be found. The URL is: www.millennialnet.com Customer Support For answers to your technical questions, Millennial Net’s Customer Service department can be reached at: phone: +1 781.222.1030 e-mail: support@millennialnet.com Technical Publications Millennial Net is committed to providing you with quality technical documentation.
1 Introduction This chapter provides an overview of the MeshScape system and Reference Kit.
Introduction Wireless Sensor Networking Overview This section provides you with a basic understanding of wireless sensor network concepts and components. Defining Wireless Sensors Networks Until recently, networks designed for monitoring and controlling sensors or actuators on a network were limited in application and scope due to a major network design consideration—the cables required to connect the various sensors and actuators to a centralized collection point.
Wireless Sensor Networking Overview In an ad hoc network, sensor nodes consisting of a sensor attached to a wireless module can be randomly placed and moved as needed. If the network needs to scale up, additional sensor nodes are easily added. The new sensor nodes and surrounding network will do the work of discovering each other and establishing communication paths through single- and multi-hop paths.
Introduction System Modules The modules of a wireless sensor network enable wireless connectivity within the network, connecting an application platform at one end of the network with one or more sensor or actuator devices at the other end. As shown in Figure 1-2, the gateway and end node modules create a transparent, wireless data path between the application platform and sensor. Figure 1-2.
Wireless Sensor Networking Overview Gateway The gateway is the interface between the application platform and the wireless nodes on the network. The gateway can be a discrete module, or it can be integrated onto a Flash card form factor for a handheld device, for example. All information received from the various network nodes is aggregated by the gateway and forwarded on to the application platform.
Introduction MeshScape System Overview In order to realize benefits wireless sensor networking promises, the technology must be able to address several critical requirements: reliability of data transmission, responsiveness to adapt to dynamic environments, power efficiency, and scalability. The MeshScape™ wireless sensor networking system from Millennial Net delivers on all of these requirements.
MeshScape System Overview techniques including, Persistent Dynamic Routing for reliable and scalable wireless sensor networks. When forming an ad hoc sensor network, Persistent Dynamic Routing requires minimal overhead for requesting and establishing connectivity without relying on the bandwidth-consuming flooding technique. MeshScape Network Monitor and Application APIs The MeshScape system delivers the tools to view and control network dynamics.
Introduction Another critical design issue associated with periodic sampling applications is the phase relation among multiple sensor nodes. If two sensor nodes operate with identical or similar sampling rates, collisions between packets from the two nodes is likely to happen repeatedly.
MeshScape System Overview on-demand data model is a medical monitoring application where patients in a hospital wear sensors to monitor vital signs and doctors access that data via a PDA that is a mobile gateway. A doctor enters a room and the mobile PDA automatically binds with the network associated with that patient and downloads vital sensor data. When the doctor enters a second patient's room, the PDA automatically binds with that network and downloads the second patient's data.
Introduction The MeshScape RK-5409-5 Reference Kit Millennial Net's RK-5409-5 Reference Kit contains everything you need to set up a self-organizing, wireless star-mesh network. Once installed, you are able to observe the performance and operation of the network components and prototype your application.
The MeshScape RK-5409-5 Reference Kit Major Features Major features of the MeshScape RK-5409-5 Reference Kit include the following: • Frequency band: 916 MHz • Bi-directional/multiple-access communication • MeshScape Network Monitor graphical user interface (GUI) for configuring the MeshScape system and evaluating its performance • Application Programming Interface (API) • End node and mesh node-specific features include: – configurable sampling interval – digital I/O - 4 channels – ADC input
Introduction Warning These electronic products are sensitive to electrostatic discharge (ESD). Permanent damage to these devices can result if subjected to high energy electrostatic discharges. Proper precautions are recommended to avoid performance degradation or loss of functionality. Host PC Requirements The reference kit requires a personal computer (PC) for to run the supplied application software. The host PC must have the following minimal configuration: • Microsoft Windows XP • Processor: 1.
2 Installing the MeshScape System This chapter provides the following MeshScape System installation information: • ’Installing the MeshScape Wireless Sensor Network’ on page 2-2 • ’Installing the Hardware’ on page 2-3 • ’Installing MeshScape Network Monitor’ on page 2-14 RK-5409-5 Reference Kit User’s Guide 2-1
Installing the MeshScape System Installing the MeshScape Wireless Sensor Network This section of the user’s guide describes how to install the reference kit’s hardware and software components. Installation should be performed in the following order: 1. MeshGate (see ’MeshGate Setup (MG-5409)’ on page 2-3) 2. mesh nodes (see ’Mesh Node Setup (MN-5409)’ on page 2-7) 3. end nodes (see ’End Node Setup (EN-5409)’ on page 2-12) 4.
Installing the Hardware Installing the Hardware The following procedures describe in order, how to install the various hardware components of the reference kit. When initially setting up the hardware, it is recommended that the MeshGate, mesh nodes, and end nodes be placed close to the host PC. This will make verifying proper network installation and operation easier when first establishing a session with MeshScape Network Monitor. The devices can then be moved away from the host PC as needed.
Installing the MeshScape System To set up the MeshGate: 1. Attach one of the four included 1/2-wave antennas to the REV-SMA antenna connector. The antenna screws onto the connector. Caution When attaching the antenna, only hand-tighten the antenna to the connector. Using excessive force may damage the connector. 2. Connect the RS-232 cable between the MeshGate and the host PC. 3. Plug the supplied AC adapter into the MeshGate power connector and then into a 110 VAC power source. 4.
Installing the Hardware Mounting the MeshGate to a DIN Rail Millennial Net offers an optional DIN rail mounting kit (MG-DIN) to enable you to mount the MeshGate to a standard DIN rail easily and quickly. To mount the MeshGate to a DIN rail using the supplied DIN rail mounting bracket and hardware, refer to Figure 2-6 and complete the following steps: Figure 2-6. Mounting the MeshGate to a DIN rail Adapter Bracket Mounting Bracket DIN Rail 1.
Installing the MeshScape System Table 2-1. MeshGate status LEDs LED ACT STS Led State Status Flashing Gateway detects RF activity. The Activity LED will flash when detecting valid packets (packets destined for device) and may also flash when detecting invalid packets (packets destined for other devices) or environmental noise. Only valid packets are processed by the device. Off No RF activity detected. (Reserved for future use.
Installing the Hardware Mesh Node Setup (MN-5409) The mesh nodes, model number MN-5409 (label with model number on bottom), are shipped enclosed in cases that have openings for instant access to the antenna, and RS-232 connectors as shown in Figure 2-7. Figure 2-7. Mesh node components Regulated AC Adapter Product Label with: - Model Number - GroupID - Device ID REV-SMA Antenna Connector Online LED RS-232 Port RF Activity LED Installing antenna and applying power To install a mesh node: 1.
Installing the MeshScape System The mesh node is ready to operate as a router device (see note below). For information on the behavior of the status LEDs, see Table 2-3. 3. Repeat Steps 1and 2 for each mesh node in the kit. Note: C For information on accessing and using the mesh node internal I/O connections for interfacing with an external device see ’Accessing I/O connections’ on page 2-10. Mounting options You may operate the mesh node while it is resting on a desktop or mounted to a wall.
Installing the Hardware Table 2-4.
Installing the MeshScape System 7. Turn the Power Switch ON. The mesh node is ready to operate as a router device (see note below). For information on the behavior of the status LEDs, see Table 2-3 on page 2-8. 8. Replace the cover and secure in place with the four philips head screws. Note: C For information on accessing and using the mesh node internal I/O connections for interfacing with an external device see ’Accessing I/O connections’ on page 2-10. Figure 2-8.
Installing the Hardware 1. Remove the four cover screws that secure the top cover to the base as shown in Figure 2-8. 2. Lift the top cover off the base. Note: C Configuring and connecting an end node or mesh node to external devices via their digital or analog I/O connectors is discussed in Chapter 3, “Running MeshScape Network Monitor”. Figure 2-9.
Installing the MeshScape System End Node Setup (EN-5409) The end nodes, model number EN-5409, are mounted to terminal boards as shown in Figure 2-10. A terminal board provides easy access to I/O connections and the power switch. The terminal board also contains a battery holder and battery for supplying power to the end node. The label on top of the end node contains the device and group IDs assigned to the end node. Figure 2-10.
Installing the Hardware Mounting options A 2-inch x 2-inch plastic housing is supplied with each end node and terminal board. You may operate the end node installed within its housing while it is resting on a desktop or mounted to a wall. When mounting the end node housing to a wall, we recommend that you secure it in place using two #6 screws and screw anchors (not supplied) of the appropriate type for the mounting surface. Default settings Table 2-5 lists the default settings for the MeshScape end node.
Installing the MeshScape System Installing MeshScape Network Monitor The procedures in this section describe how to do the following: 1. 2.
Installing MeshScape Network Monitor Launching MeshScape Network Monitor Using Windows Using the standard application launching methods of Windows, the following procedure describes how to launch MeshScape Network Monitor and verify proper communication with the network nodes (see Figure 2-11): 1. To launch MeshScape Network Monitor, do one of the following: – Double-click on the desktop’s MeshScape Network Monitor icon.
Installing the MeshScape System 2-16 Millennial Net
3 Running MeshScape Network Monitor This chapter provides the following MeshScape Network Monitor information: • ’MeshScape Network Monitor Overview’ on page 3-2 • ’Configuring a Node’s Operation’ on page 3-6 • ’Labeling an End Node or Mesh Node’ on page 3-19 • ’Configuring Persistence Attributes’ on page 3-20 • ’Selecting a Com Port on the Host PC’ on page 3-21 • ’Configuring Serial and ADC Data Formats’ on page 3-22 • ’Turning Event Tracking On/Off’ on page 3-23 • ’Broadcasting Data to All
Running MeshScape Network Monitor MeshScape Network Monitor Overview Millennial Net’s MeshScape Network Monitor is a monitoring and management system for MeshScape networks. This management tool will discover and display active mesh nodes in the vicinity of the MeshGate, and end nodes in the range of the MeshGate and mesh nodes as shown in Figure 3-12.
MeshScape Network Monitor Overview As shown in Figure 3-12, the main window is divided into the following sections: Menu Bar From the menu bar, system users access the following: • Monitor This menu option provides access to the following functions: – • Exit: Ends the session and closes MeshScape Network Monitor. Edit – Labels: Assign user-defined names to end nodes and mesh nodes on the network. For details, see ’Labeling an End Node or Mesh Node’ on page 3-19.
Running MeshScape Network Monitor Gateway This section displays the following information on the MeshGate connected to the host PC’s RS-232 port: • Com Port: Host PC’s RS-232 port connected to MeshGate. • ID: Device identifier assigned to the MeshGate. The ID consists of two octets (A.B), where each octet’s value = 000 to 255. • Group: Group identifier assigned to the MeshGate. All mesh nodes and end nodes with the same Group identifier will communicate with the displayed MeshGate.
MeshScape Network Monitor Overview • RX Packets: Number of packets successfully delivered to MeshScape Network Monitor from a node since the node was detected by the MeshGate. The counter is reset if one of the following actions occur: – The node is powered down. – The MeshGate is powered down. – MeshScape Network Monitor program is restarted. • Up/Down Time: Total time since the node was last detected on/off by the MeshGate.
Running MeshScape Network Monitor Configuring a Node’s Operation To configure the operation of an end node or mesh node, double-click on the desired device from the list of discovered sensor nodes in the main display. The Device window is displayed, showing the current configuration of the selected device (see Figure 3-13). The Device window is a modeless dialog that may be left open while you interact with other MeshScape Network Monitor features, windows, and dialogs.
Configuring a Node’s Operation Table 3-6. Device window functions (continued) Item E Description Serial Data Config Function This panel is used to select a serial I/O operation for a device: Digital UART, RS-232 (MN-5409 only), or RS-485 (MN-5409 only). Selecting serial operation disables digital I/O functionality because these operations share the same pins.
Running MeshScape Network Monitor Configuring Sample Interval of Single Node To configure the time interval between data packets transmitted by a node (see Figure 3-14): 1. Double-click on the desired device from the list of discovered sensor nodes. The Device window is opened, displaying the device’s current configuration. 2. Using the Sampling Interval panel, enter the interval sampling rate as a multiple of 100 milliseconds.
Configuring a Node’s Operation 2. Enter the interval rate as a multiple of 100 milliseconds. For example, to configure a sampling interval rate of 20 seconds, enter a value of 200. 3. Select OK. All nodes on the network are configured with the sampling interval rate entered. Figure 3-15.
Running MeshScape Network Monitor Digital Output Setup 1. Connect the digital signal destination devices to the connectors (D0–D3) and ground (GND) of the following: – end node’s terminal block (P2 located on terminal board). – mesh node’s terminal pins (connector SL3). See Figure 3-16 on page 3-11 for connector locations. 2. From MeshScape Network Monitor, double-click on the desired device from the list of discovered sensor nodes.
Configuring a Node’s Operation Figure 3-16.
Running MeshScape Network Monitor Configuring UART Operation The following procedures describes how to use the end node’s digital I/O connections or the mesh node’s UART connector for serial/UART communications (see Figure 3-17). Refer to the technical specification sheets for the end node and mesh node for additional information required when using the device for serial communications.
Configuring a Node’s Operation Figure 3-17.
Running MeshScape Network Monitor Configuring AD (analog-to-digital) Converter Operation The following procedure describes the steps that need to be taken to set up the hardware and configure an end node or mesh node for AD Converter operation (see Figure 3-18): 1. Connect 0–3 VDC signals to the following A/D Converter connectors: – end node: Connect signal source ground to GND_CPU of the A/D Converter terminal block. – mesh node: Connect signal source ground to Pin 1 (Ground) of connector SL4.
Configuring a Node’s Operation Configuring RS-232 Operation (MN-5409 only) The following procedure describes the steps that need to be taken to set up the hardware and configure a mesh node for RS-232 operation (see Figure 3-19): 1. Use a DB-9 cable to connect the network device to the RS-232 female connector using the pinout information provided in Figure 3-19. 2. From MeshScape Network Monitor, double-click on the desired device from the list of discovered sensor nodes.
Running MeshScape Network Monitor Configuring RS-485 Operation (MN-5409 only) The RS-485 interface of the mesh node operates using the following parameters: • Half-duplex mode • 9600 baud • Transmitting data: Maximum byte length for one request is 80 bytes • Receiving data: Reception is terminated by the mesh node when the maximum input byte length is reached or there is no input for more than 20 ms. Once the input is terminated, the data is transferred to MeshScape Network Monitor.
Configuring a Node’s Operation Using Watch Function to Display Configuration Information Use the Watch window to track changes to a device’s configuration. You may open multiple instances of the Watch window. The selected device’s ID and label (if configured) are displayed in the Watch window title bar. To display the current and desired configuration for a device (see Figure 3-21): 1. Double-click on the desired device from the list of discovered sensor nodes.
Running MeshScape Network Monitor Table 3-7. Watch window functions (continued) Item B C D E 3-18 Description A-D Channels DIO Channels Sampling Interval Serial Data Function This panel displays the following information for each analog-to-digital channel (0–3): • State: Current on/off state of the channel • Desired: Desired on/off state of channel, which can be changed using the Device window. • Value: Numeric values of the channel.
Labeling an End Node or Mesh Node Labeling an End Node or Mesh Node Labels are meaningful, persistent text strings used to identify network nodes beyond their group and device IDs. The following procedure describes the steps required to assign a label to an end node or mesh node (see Figure 3-22): 1. From MeshScape Network Monitor, click on the desired device from the list of discovered sensor nodes. 2. From MeshScape Network Monitor, select Edit>Labels. The Edit Labels window is opened. 3.
Running MeshScape Network Monitor Configuring Persistence Attributes The following procedure describes how to configure the persistence setting of the network’s end nodes and mesh nodes (see Figure 3-23): 1. From MeshScape Network Monitor, click on the desired device from the list of discovered sensor nodes. 2. From MeshScape Network Monitor, select Edit>Persistence. The Edit Persistence window is opened. 3.
Selecting a Com Port on the Host PC Selecting a Com Port on the Host PC The following procedure describes how to select the RS-232 com port for MeshScape Network Monitor to use to communicate with the MeshGate (see Figure 3-24): 1. From MeshScape Network Monitor, select Network>Connection. The Connection window is opened. 2. Select the RS-232 com port to use from the drop down list of available ports, then select OK.
Running MeshScape Network Monitor Configuring Serial and ADC Data Formats The following procedure describes how to configure the format of displayed serial and ADC information (see Figure 3-25): 1. From MeshScape Network Monitor, select Edit>Data format. The Edit Data Format window is opened. 2. Configure the following network attributes: 3. – Serial data format: Select the desired format for displaying serial data (ASCII/Hex/Decimal).
Turning Event Tracking On/Off Turning Event Tracking On/Off The following procedure describes how to turn event tracking on or off. Tracked events are recorded in the Event log file (see Figure 3-26): 1. From MeshScape Network Monitor, select Network>Events. The Events window is opened. 2. Configure the following event tracking settings: – Configuration Events: Display event tracking status for Analog-to-digital Converter, Digital Input/Output, and Serial configuration events.
Running MeshScape Network Monitor Broadcasting Data to All Nodes. Note: Broadcasting capabilities are available on your MeshScape only if you have enabled (i.e., unlocked) the ultra-low power feature.
Broadcasting Data to All Nodes. Figure 3-27.
Running MeshScape Network Monitor Creating an Event Log File The following procedure describes the steps required to have MeshScape Network Monitor record reported network events to a log file (see Figure 3-28): 1. From MeshScape Network Monitor, select Log>Attributes. The Edit Logging Attributes window is opened. 2. Configure the following mesh node and end node log file attributes: 3. – Log data: Record input/output/performance data.
Viewing the Contents of an Event Log File Viewing the Contents of an Event Log File The following procedure describes how to view the network event log file generated by MeshScape Network Monitor, which records node-generated events (see Figure 3-29): 1. From MeshScape Network Monitor, select Log>View. The log file window is opened, displaying the user-defined event log information (see also ’Creating an Event Log File’ on page 3-26). 2.
Running MeshScape Network Monitor Table 3-8. Event log key definitions (continued) 3-28 Key Key Meaning D0 ... D3 Digital I/O Channel 0 ... 3 SubKey Sub-Key Meaning Output to device example In Input D0=In Out Output D1=Out:1 Input to device example D0=In:1 EP Endpoint N/A N/A EP=001.001 EP=001.002 FH First Hop Mesh Node N/A N/A N/A FH=001.002 HC Hop Count N/A N/A N/A HC=3 LH Last Hop Mesh Node N/A N/A N/A LH=002.
Viewing MeshScape Statistics Viewing MeshScape Statistics The following procedure describes how to view the network statistics recorded by MeshScape Network Monitor, which provides information on the packets received and transmitted by the network nodes (see Figure 3-30): 1. From MeshScape Network Monitor, select Window>Statistics. The Statistics window is opened, displaying the following information: – Sample Time: Current date and time. – Start Time: Date/time statistics recording session began.
Running MeshScape Network Monitor Figure 3-30.
4 Using the MeshScape API This chapter describes the following API functions: • ’Using the MeshScape API’ on page 4-2 • ’MeshScape API Functions Overview’ on page 4-5 • ’iBeanAPI.h’ on page 4-7 • ’iBeanAPI_IO.h’ on page 4-23 • ’iBeanAPI_Utils.h’ on page 4-32 • ’iBeanAPI_LPR.h’ on page 4-36 • ’iBeanAPI_performance.
Using the MeshScape API Using the MeshScape API Millennial Net’s MeshScape™ API enables you to effectively use the features provided by Millennial Net’s MeshScape wireless sensor network. You can develop custom applications that utilize the MeshScape API library on Windows- or Linux-based platforms such as Network Controllers, PCs, or PDAs. The Millennial API provides a serial command set that enables a MeshScape MeshGate standalone gateway to communicate with user applications via a serial interface.
MeshScape API Directory Structure MeshScape API Directory Structure The MeshScape API sub-directory contains five sub-directories which hold the API related files, including header files, dll and library files, and various compiled examples along with their source code listings. Figure 4-2 is a representation of the directory structure. Figure 4-2. MeshScape API directories The contents of each directory is described below. bin Directory: This sub-directory contains the iBeanAPI.
Using the MeshScape API – src Directory: This sub-directory contains the source code and their corresponding Microsoft Visual Studio .Net solution files. When these examples are built from these solution files, the executables are generated in the bin directory.
MeshScape API Functions Overview MeshScape API Functions Overview Table 4-1 provides a list of API functions associated with MeshScape system products. Table 4-1. MeshScape API functions iBeanAPI.
Using the MeshScape API Table 4-1. MeshScape API functions (continued) ibApi_IO_SetSerialConfig() Serial data interface (UART) ibApi_IO_GetSerialConfig() ibApi_IO_GetSerialBufferStatus() ibApi_IO_WriteSerial() ibApi_IO_ReadSerial() ibApi_IO_SetDeviceConfigAndData iBeanAPI_Utils.
iBeanAPI.h iBeanAPI.h Data Structures 1. ibApi_APIHANDLE typedef ibApi_INT32 ibApi_APIHANDLE; This handle represents an API session. It is created by ibApi_Open() and used by most of the other API functions. 2. ibApi_RESULT typedef ibApi_INT32 ibApi_RESULT; The API functions are standardized to return the value ibApi_RESULT, which is a signed 32-bit integer. If the integer is negative, then it is an error code such as ibApi_RESULT_ERR_INVALIDHANDLE or ibApi_RESULT_ERR_NOTPERMITTED. (See iBeanAPI.
Using the MeshScape API 5.
iBeanAPI.h 8. ibApi_DEVICEINFO #define ibApi_MAX_VERSION_STRLEN 32 struct ibApi_DEVICEINFO_s { ibApi_UINT16 struct_size; ibApi_DEVICETYPE device_type; ibApi_CHAR hardware_version[ibApi_MAX_VERSION_STRLEN]; ibApi_CHAR firmware_version[ibApi_MAX_VERSION_STRLEN]; }; typedef struct ibApi_DEVICEINFO_s ibApi_DEVICEINFO; This data structure is used by ibApi_GetDeviceInfo() to report static device attributes that are fixed at manufacturing time.
Using the MeshScape API 10. ibApi_DEVICESTATUS struct ibApi_DEVICESTATUS_s { ibApi_UINT16 struct_size; ibApi_UINT16 hop_count; ibApi_DEVICEID first_hop_router; ibApi_DEVICEID last_hop_router; ibApi_FLOAT battery_level; ibApi_UINT16 seq_num; ibApi_GROUPID group_id; }; typedef struct ibApi_DEVICESTATUS_s ibApi_DEVICESTATUS; This struct is used by ibApi_FUNC ibApi_GetDeviceStatus() to report read-only device properties that change with time.
iBeanAPI.h 11.
Using the MeshScape API 12. ibApi_VERSION typedef ibApi_UINT32 ibApi_VERSION; #define ibApi_MAKE_VERSION(MAJOR,MINOR,RELEASE) ((ibApi_VERSION)((MAJOR<<16)|(MINOR<<8)|RELEASE)) #define ibApi_GET_VERSION_MAJOR(VER)((VER>>16) & 0xff) #define ibApi_GET_VERSION_MINOR(VER)((VER>>8) & 0xff) #define ibApi_GET_VERSION_RELEASE(VER)(VER & 0xff) The ibApi_VERSION type is used by functions such as ibApi_GetApiVersion() to encode version numbers as a 32-bit integer.
iBeanAPI.h Functions 1. ibApi_Open ibApi_FUNC ibApi_Open( ibApi_VERSION expected_version, ibApi_CONST ibApi_CHAR *server_type, ibApi_CONST ibApi_CHAR * connection_str ); ibApi_Open() should be called to initialize the API before any other function is called. If the MeshScape Network Monitor software has not yet been started, this function starts the software and then connects to it. If MeshScape Network Monitor is already running, this function connects to it.
Using the MeshScape API 3. ibApi_GetApiVersion() ibApi_FUNC ibApi_GetApiVersion (); This function returns the actual software version for the API, which can differ from ibApi_EXPECTED_VERSION if DLL’s are mixed. Return Value: An IbApi_VERSION value if successful, error code (<0) if not. 4. ibApi_GetNetworkList() ibApi_FUNC ibApi_GetNetworkList( ibApi_APIHANDLE api_hdl, ibApi_GROUPID networks[], ibApi_UINT32 networks_size ); This retrieves a list of group ID’s for the networks managed by the server.
iBeanAPI.h 5. ibApi_GetDeviceList() ibApi_FUNC ibApi_GetDeviceList( ibApi_APIHANDLE api_hdl, ibApi_GROUPID network, ibApi_DEVICETYPE device_type ibApi_DEVICEID devices[], ibAPI_UINT32 devices_size ); This function retrieves the ID’s of the devices in the network. The device_type parameter is a bitwise OR of the ibApi_DEVICETYPE constants that filters the result. (To retrieve all devices, use ibApi_DEVICETYPE_ANY.) Parameters: param api_hdl: (input) API handle returned from ibApi_Open().
Using the MeshScape API 7. ibApi_GetDeviceStatus() ibApi_FUNC ibApi_GetDeviceStatus( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_DEVICESTATUS *device_status ); This function retrieves various read-only device properties whose values can change with time. See ibApi_DEVICE STATUS above for details. Note: To avoid memory corruption, size of (ibApi_DECVICESTATUS) must be assigned to the “struct_size” field prior to calling this function.
iBeanAPI.h 9. ibApi_SetSamplingInterval() ibApi_FUNC ibApi_SetSamplingInterval( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_UNIT32 sampling_interval_ms ); This function sets the sampling interval for the device. The sampling interval determines how frequently updates occur; lower values mean quicker response times, at the price of higher bandwidth and power consumption. Typically the current interval must elapse before the new interval will be programmed.
Using the MeshScape API 11. ibApi_WaitForDeviceEvent() ibApi_FUNC ibApi_WaitForDeviceEvent( ibApi_APIHANDLE api_hdl, ibApi_DEVICEEVENTTYPEevent_types, ibApi_INT32 timeout ms, ibApi_DEVICEID * device_id ); Note: This function is now obsolete and only retained for backward compatibility. Please use ibApi_WaitForDeviceEvents() instead.
iBeanAPI.h 12. ibApi_WaitForDeviceEvents() ibApi_FUNC ibApi_WaitForDeviceEvents( ibApi_APIHANDLE api_hdl, ibApi_DEVICEEVENTTYPE events_interested, ibApi_INT32 timeout_ms, ibApi_DEVICEID * device_id, ibApi_DEVICEEVENTTYPE * events_happened ); This function implements the simplest form of event notification using the application thread context. It causes the calling thread to sleep until a network packet has arrived (i.e.
Using the MeshScape API 13. ibApi_SetEventMask() ibApi_SetEventMask( ibApi_APIHANDLE ibApi_DEVICEEVENTTYPE ibApi_DEVICEID ); api_hdl, event, device_id This function sets the event mask for the triggering of asynchronous events. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). event: (input) The event mask. device_id: (output) ID of the device that changed. Return Value: An ibApi_RESULT_SUCCESS if a device changed or an error code (<0) if unsuccessful. 14.
iBeanAPI.h 15. ibApi_GetDevicePacketSequenceNumber() ibApi_FUNC ibApi_GetDevicePacketSequenceNumber( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id ); This function Gets a device packet sequence number that is carried by a upstream packet sent from the device. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). device_id: (input) The device id. Return Value: A 0 - 255 sequence number if successful, or an error code (<0) if failed. 16.
Using the MeshScape API 18. ibApi_RegisterEvent() ibApi_RegisterEvent( ibApi_APIHANDLE api_hdl, ibApi_CALLBACK_FUNCTIONapi_callback) ; This function registers a callback function to be called upon receipt of the specified asynchronous event. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). api_callback: (input) Callback function to register for asynchronous events as defined by prior call to ibApi_SetEventMask().
iBeanAPI_IO.h iBeanAPI_IO.h Data Structures 1. ibApi_IO_SERIALMODE enum ibApi_IO_SERIALMODE_e { ibApi_IO_SERIALMODE_DISABLED = 0, ibApi_IO_SERIALMODE_UART, ibApi_IO_SERIALMODE_RS232, ibApi_IO_SERIALMODE_RS485 }; typedef ibApi_UINT16 ibApi_IO_SERIALMODE; This is used by ibApi_IO_SERIALCONFIG to select the serial interface. 2.
Using the MeshScape API 3. ibApi_IO_DEVICECAPS struct ibApi_IO_DEVICECAPS_s { ibApi_UINT16 struct_size; ibApi_UINT8 num_dio_channels; ibApi_UINT8 num_adc_channels; ibApi_UINT8 adc_resolution_bits; ibApi_UINT8 serial_input_buffer_depth: ibApi_UINT8 serial_output_buffer_depth }; typedef struct ibApi_IO_DEVICECAPS_s ibApi_IO_DEVICECAPS; This structure is used by ibApi_IO_GetDeviceCaps() to return various static device attributes that are predetermined at manufacturing time.
iBeanAPI_IO.h Functions 1. ibApi_IO_GetDeviceCaps() ibApi_FUNC ibApi_IO_GetDeviceCaps ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_IO_DEVICECAPS *device_caps ); This function retrieves various static device attributes that are predetermined at manufacturing time. Thus, these values only need to be queried once for a particular device. See ibApi_IO_DEVICECAPS above for details.
Using the MeshScape API 3. ibApi_IO_GetADCConfig() ibApi_FUNC ibApi_IO_GetADCConfig ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_UINT8 channel_index ); This queries whether the specified ADCchannel is enabled or disabled. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). device_id: (input) ID of the device to be accessed. channel_index: (input) Channel index to access. Return Value: An ibApi_TRUE if enabled, ibApi_FALSE if disabled, or an error code (<0) if not. 4.
iBeanAPI_IO.h 5. ibApi_IO_SetDIOConfig() ibApi_FUNC ibApi_IO_SetDIOConfig ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_UINT8 channel_index, ibApi_IOMODE io_mode ); This sets whether the specified DIO channel is configured for input or output, which governs the interpretation of ibApi_IO_ReadDIO() and ibApi_IO_WriteDIO(). Parameters: api_hdl: (input) API handle returned from ibApi_Open(). device_id: (input) ID of the device to be accessed. channel_index: (input) Channel index to access.
Using the MeshScape API 7. ibApi_IO_WriteDIO() ibApi_FUNC ibApi_IO_WriteDIO ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_UINT8 channel_index, ibApi_UINT8 dio_value ); This sets the value of the specified DIO channel. Note that an error will result if the channel is not configured for output. Note: In some product models, the DIO pins are shared with the serial data interface and will be disabled when it is active. Parameters: api_hdl: (input) API handle returned from ibApi_Open().
iBeanAPI_IO.h 9. ibApi_IO_SetSerialConfig() ibApi_FUNC ibApi_IO_SetSerialConfig ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_IO_SERIALCONFIG *serial_config ); This configures the serial “user data” interface. If these pins are shared with the DIO pins, the DIO will be disabled. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). device_id: (input) ID of the device to be accessed. serial_config: (input) New configuration.
Using the MeshScape API 11. ibApi_IO_GetSerialBufferStatus() ibApi_FUNC ibApi_IO_GetSerialBufferStatus ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_IOMODE io_mode ); For the given device, this function retrieves the status of the out going serial data buffer. The return value gives the number of empty packet slots in the buffer. A negative return value denotes an error and a zero return value means there is currently no out going empty packet slots.
iBeanAPI_IO.h 13. ibApi_IO_ReadSerial() ibApi_FUNC ibApi_IO_ReadSerial ( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_UINT8 buffer[], ibApi_UINT16 buffer_size, ibApi_UINT8 seq_num ); For the given device, this retrieves the user data packet that arrived most recently. The ibApi_IO_SERIALMODE setting must have been previously something other than ibApi_IO_SERIALMODE_DISABLED. The input buffer holds a single packet (i.e., an arriving packet overwrites the previous one).
Using the MeshScape API iBeanAPI_Utils.h Functions 1. ibApi_Utils_GetErrorDescription() ibApi_FUNC ibApi_Utils_GetErrorDescription( ibApi_RESULT error_code, ibApi_CHAR * description, ibApi_UINT32 description_size ); This function returns an English language interpretation for an API error code. Parameters: error_code: (input) ibApi_RESULT to be interpreted. description: (output) Pointer to buffer storing the text. description_size: (input) Maximum size of buffer.
iBeanAPI_Utils.h 3. ibApi_Utils_ConvertTextToGroupID() ibApi_FUNC ibApi_Utils_ConvertTextToGroupID( ibApi_CONST ibApi_CHAR *group_id_text, ibApi_GROUPID * group_id ); This parses a text string such as “1.2.3.4” and stores the result in the group_id structure. If fewer than 4 digit groups are provided, the result is left-padded with 0’s. Parameters: group_id_text: (input) Buffer to be parsed. group_id: (output) Structure to store the result.
Using the MeshScape API 5. ibApi_Utils_ConvertTextToDeviceId() ibApi_FUNC ibApi_Utils_ConvertTextToDeviceId( ibApi_CONST ibApi_CHAR *device_id_text, ibApi_DEVICEID * device_id ); This function parses a text string such as “1.2.3.4.5.6.7.8” and stores the result in the device_id structure. If fewer than 8 digit groups are provided, the result is left-padded with 0’s. Parameters: device_id_text: (input) Buffer to be parsed. device_id: (output) Structure to store the result.
iBeanAPI_Utils.h 7. ibApi_Utils_ConvertAdcReadingToVoltage() ibApi_FUNC ibApi_Utils_ConvertAdcReadingToVoltage( ibApi_DEVICEINFO info, ibApi_UINT16 adcRaw, ibApi_FLOAT *adcFloat ); This function converts a device’s battery level reading from raw data to voltage. Parameters: info: (input) Device information. adcRaw: (input) ADC reading in raw data. adcFloat: (output) Structure to store the ADC reading as a voltage. Return Value: ibApi_RESULT_SUCCESS if successful, error code (<0) if not.
Using the MeshScape API iBeanAPI_LPR.h Functions 1. ibApi_LPR_SetClock() ibApi_FUNC ibApi_LPR_SetClock( ibApi_APIHANDLE api_hdl, ibApi_GROUPID network, ibApi_UINT32 utc_sec ); This function sets the UTC clock for all devices. The UTC clock is used for the time synchronization purposes. The gateway will synchronize each device's clock through time synchronization process. The clock setting is a global attribute that applies to all devices in the network.
iBeanAPI_LPR.h 3. ibApi_LPR_SetWakeupAndDutyRatio() ibApi_FUNC ibApi_LPR_SetWakeupAndDutyRatio( ibApi_APIHANDLE api_hdl, ibApi_GROUPID network, ibApi_UINT32 wakeup_interval, ibApi_UINT32 duty_ratio ) This function sets the low power router wakeup interval and duty ratio for all devices. The wakeup interval and duty ratio are global attributes that applies to all devices in the network.
Using the MeshScape API 4. ibApi_LPR_GetWakeupAndDutyRatio) ibApi_FUNC ibApi_LPR_GetWakeupAndDutyRatio( ibApi_APIHANDLE api_hdl, ibApi_GROUPID network, ibApi_UINT32 * wakeup_interval, ibApi_UINT32 * sleep_interval, ibApi_UINT32 * duty_ratio ); This function retrieves the low power router wakeup interval and duty ratio for all devices. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). network: (input) Group ID of the network. wakeup_interval: (output) Wakeup interval in milliseconds.
iBeanAPI_performance.h iBeanAPI_performance.h Data Structures 1. ibApi_PFM_PacketStats_s struct ibApi_PFM_PacketStats_s { ibApi_UINT8 ctrlcode; ibApi_UINT16 packetTxCount; ibApi_UINT16 packetSearchCount; }; Structure Fields: ctrlcode Control code. packetTxCount Number of transmissions and acks for this packet. packetSearchCount Number of search packets and responses caused by this packet. 2.
Using the MeshScape API Structure Fields: ctrlcode Control code. reportingFrequency packetSearchCount Number of search packets and responses caused by this packet. searchPacketTxCount Number of search packets transmitted. searchResponseRxCount Number of search packets received. searchPacketRxCount Number of search packets received. searchResponseTxCount Number of search responses transmitted. rejectedPacketCount Number of upstream packets rejected.
iBeanAPI_performance.h Functions 1. ibApi_GetStatisticData ibApi_FUNC ibApi_GetStatisticData( ibApi_APIHANDLE api_hdl, ibApi_DEVICEID device_id, ibApi_PFM_STATS *statisticData); This function retreives the statistical data for the given device. Parameters: api_hdl: (input) API handle returned from ibApi_Open(). device_id: (input) the ID of the device to be accessed. device_id: (output) the statistic data of the device. Return Value: An ibApi_RESULT_SUCCESS if successful, or an error code (<0) if not.
Using the MeshScape API Example API Code Millennial Net provides as part of the reference kit, several example API applications. This section examines in detail one of the API examples, ListDevicesVC7, including the code it uses. ListDevicesVC7 provides a list of all detected network nodes (MeshGate, Mesh Node(s), and End Node(s)). ListDevicesVC7 Example Note: Be sure that MeshScape Network Monitor is running before executing the following procedure. To run the ListDevicesVC7 example (see Figure 2.): 1.
Example API Code ListDevicesVC7 Code The C file containing the code shown here can be found in the Programs directory: Programs\MeshScape\examples\src\ListDevices /* * ListDevices.c * * Copyright (c) 2000-2005 Millennial Net, Inc. All Rights Reserved. * Reproduction or modification is strictly prohibited without express * written consent of Millennial Net. * * This example illustrates the basic operations of connecting to the i-Bean * API and obtaining basic information about the devices in the network.
Using the MeshScape API /***************************************************************************/ void WaitForKey(void) { printf("\r\nPress any key to close..."); _getch(); printf("\r\n"); } /**************************************************************************** * This is a simple wrapper for detecting and reporting API error return * values. In C++, this function could throw an exception object.
Example API Code /***************************************************************************/ void ListDevices(ibApi_APIHANDLE api_hdl) { #define DEVICEIDS_MAX 100 ibApi_GROUPID groupid; ibApi_DEVICEID deviceids[DEVICEIDS_MAX]; int deviceids_count; char deviceid_text[256]; int sampling_interval; int i; ibApi_DEVICEINFO deviceinfo; ibApi_DEVICESTATUS devicestatus; /* * The ibApi_GetNetworkList() function returns a list of the groups * currently managed by the network.
Using the MeshScape API CheckResult(ibApi_GetDeviceInfo(api_hdl,deviceids[i],&deviceinfo)); CheckResult(ibApi_Utils_ConvertDeviceIdToText(deviceids[i], deviceid_text,sizeof(deviceid_text),MIN_DEVICEID_WORDS)); printf(" %10s fw=\"%s\" hw=\"%s\"\r\n", deviceid_text, deviceinfo.firmware_version,deviceinfo.hardware_version); } /* * List the mesh nodes. */ printf("\r\nROUTERS\r\n"); deviceids_count = CheckResult(ibApi_GetDeviceList(api_hdl, groupid, ibApi_DEVICETYPE_ROUTER|ibApi_DEVICETYPE_ROUTERBEAN, dev
Example API Code CheckResult(ibApi_Utils_ConvertDeviceIdToText(deviceids[i], deviceid_text,sizeof(deviceid_text),MIN_DEVICEID_WORDS)); sampling_interval = CheckResult(ibApi_GetSamplingInterval(api_hdl,deviceids[i])); printf(" %10s (%i ms)\r\n", deviceid_text, sampling_interval); } } /***************************************************************************/ int main() { /* * This handle represents the current API session.
Using the MeshScape API 4-48 Millennial Net
A Sample Application This chapter contains information on how to perform the sample application included with the RK-5409-5 Reference Kit: • ’Application Overview’ on page A-2 • ’Application Setup & Operation’ on page A-4 • ’Changing Temperature Sensor Battery’ on page A-7 RK-5409-5 Reference Kit User’s Guide A-1
Application Overview Millennial Net includes a sample application in the RK-5409-5 Reference Kit. This application demonstrates a real-world application of Millennial Net's end node peripheral interface and how it is used for monitoring and data collection purposes across a wireless network. The RK-5409-5 Reference Kit includes a temperature sensor assembly with a 10,000 Ohm Kele sensor (Type 3) that changes resistance as its environmental temperature changes.
Application Overview Figure A-2 describes the process flow. Figure A-2.
Application Setup & Operation The following procedures describe how to set up the RK-5409-5 Reference Kit hardware and software for creating the Reference Kit’s sample application. Note: Before this sample application can be executed, you must install the RK-5409 Reference Kit’s hardware and software according to the instructions found in Chapter 2, “Installing the MeshScape System”. The MeshGate must be installed and powered on, and MeshScape Network Monitor must be running before proceeding.
Application Setup & Operation Launching TempMonitor Application To launch the TempMonitor application (see Figure A-4): 1. From the Windows task bar, select Star>All Programs>MeshScape>API Examples. The Examples window opens with a list of options. 2. Select TempMonitor from the Examples window. TempMonitor launches. Figure A-4.
TempMonitor Overview The TempMonitor application displays temperature changes vs. time for one device only. Use the Device Selection area to select the end node with matching device ID, then click Update button to configure the device (enable ADC channel 1). The Run/Stop button is used to control the display curve updating; Run means continuously update the curve, Stop means to freeze the current curve. The precise reading can also be obtains from the Realtime Sensor Reading(F) area. Figure A-5.
Changing Temperature Sensor Battery Changing Temperature Sensor Battery The temperature sensor assembly comes with a factory installed lithium battery. The procedure below describes how to replace the battery when needed. Millennial Net recommends using the following replacement battery type: DigiKey Part Number: P189-ND. To replace the battery (see Figure A-6): 1. Use an Allen wrench to turn in the two set screws holding the cover to the base and remove the cover. 2. Turn the power switch OFF. 3.
A-8 Millennial Net
B Performing Firmware Upgrades and Configuring Device IDs The MeshScape Programmer application supplied with your RK-5409-5 Reference Kit enables you to upgrade the firmware on your MeshGates and mesh nodes, and re-program the group and device IDs on your MeshScape System. The supplied End Node Configurator enables you to program the group and devices IDs, default sample interval, and statistics reporting rate on end nodes.
Getting Started with MeshScape Programmer MeshScape Programmer is a feature-rich application that enables you to upgrade your MeshScape system by: • re-programming the device flash memory • unlocking firmware feature upgrades • re-programming group and device IDs To use MeshScape Programmer, you will need to: • connect the target device that you wish to upgrade to your computer • run the MeshScape Programmer application on your computer Connecting the Target Device to Your Computer You may upgrade
Getting Started with MeshScape Programmer Figure B-1.Connecting MeshGate programming cable w/adapter to mesh node Pin 1 External Programming Port on MeshGate SL-7 on Mesh Node Launching MeshScape Programmer Using Windows To launch MeshScape Programmer, do one of the following: – Double-click on the desktop’s MeshScape Programmer icon. – From the Windows taskbar, select: Start>All Programs>MeshScape Programmer>MeshScape Programmer. MeshScape Programmer runs as described in the next section.
Performing MeshScape Programmer Operations You may use MeshScape Programmer to: • upgrade the firmware image on the target device • unlock features on the target device • re-program the device and group IDs on the target device Upgrading Firmware on the Target Device To upgrade the firmware on a MeshGate or mesh node using the MeshScape Programmer application: 1. Connect the target device to your computer and launch the MeshScape Programmer application as described in the previous section.
Performing MeshScape Programmer Operations 2. 3. Select the target device to program by selecting an option from the Device Select drop-down menu: – Auto-Select - Allow MeshScape Programmer to determine the connected device type (default). – MeshGate Application - Upgrade the firmware on the MeshGate’s main application terminal board. – MeshGate RF - Upgrade the firmware on the MeshGate’s RF daughter board. – External Device - Upgrade a mesh node connected to the MeshGate.
3. Select the PC serial port to use when communicating with the connected MeshGate from the Programming Port drop-down menu. If a required Comm port is being used by another application, close the application and then click Refresh List to make the Comm port available for use by MeshScape Programmer. 4. 5. Select the feature unlock file to load on the target device. a. Mark the Enable checkbox to enable the feature unlock operation. b.
Performing MeshScape Programmer Operations 5. b. Enter the new IDs in the Group ID and Device ID fields. c. Optional. Mark the Auto Increment checkbox if you will be reprogramming the group and device IDs on multiple devices and wish to do so in sequence. Upload the new group and device IDs to the target device. a. Mark the Get Device Type checkbox to display information about the target device in the Device Type field as the upgrade progresses. b.
Getting Started with End Node Configurator End Node Configurator is a feature-rich application that enables you to upgrade your MeshScape end nodes by programming: • group and devices IDs • default sample interval • statistics reporting rate To use End Node Configurator, you will need to: • connect the target end node that you wish to upgrade to your computer • run the application on your computer Connecting the Target End Node to Your Computer A special terminal board equipped with an RS-232 seri
Getting Started with End Node Configurator Launching End Node Configurator Using Windows To launch End Node Configurator, do one of the following: – Double-click on the desktop’s End Node Configurator icon. – From the Windows taskbar, select: Start>All Programs>End Node Configurator. End Node Configurator runs as described in the next section.
Performing End Node Configurator Operations You may use End Node Configurator to program an end node’s: • group and devices IDs • default sample interval • statistics reporting rate To use End Node Configurator: 1. Connect the target end node to your computer and launch the End Node Configurator application as described in the previous section. The End Node Configurator main window appears as shown in Figure B-4. Figure B-4.The End Node Configurator main window 2.
Performing End Node Configurator Operations The default end node sample interval setting is 60 seconds. 6. Enter the rate at which the end node sends statistics in the Statistics Reporting Rate field. The Statistics Reporting Rate is the number of normal packets transmitted before performance statistics are added to a packet. A Statistics Reporting Rate of 0 means every packet has performance statistics added to it.
B-12 Millennial Net
Glossary API Application Programming Interface: A set of definitions of the ways in which one piece of computer software communicates with another. It is a method of achieving abstraction, usually (but not necessarily) between lower-level and higher-level software. One of the primary purposes of an API is to provide a set of commonly used functions-for example, to poll a wireless network for active network nodes (mesh nodes and end nodes).
Glossary FHSS Frequency Hopping Sequence Spread Spectrum: Spread spectrum method of spreading a narrow band signal out across a broad portion of the radio band. This method “hops” the signal as a function of time. (See also DSSS and spread spectrum.) gateway The network module that provides the interface between the application platform and the modules on the wireless sensor network.
Glossary personal area network A personal area network (PAN) is the interconnection of information technology devices within the range of an individual person, typically within a range of 10 meters. protocol The protocol defines a common set of rules and signals that devices (nodes) on the network use to communicate. protocol stack A set of network protocol layers that work together. The OSI reference model that defines seven protocol layers is often called a stack.
Glossary Glossary-4 Millennial Net
Index A AD converter configuring 3-14 API code, example 4-42 API directory structure 4-3 API functions, overview of 4-5 API, using the MeshScape 4-2 audience for this document xvi examples directory 4-3 F FCC compliance statement v firmware, upgrading B-1 frequency band 1-11 functions, MeshScape API 4-5 G B gateway, function of 1-5 bin directory 4-3 burst, data model 1-9 H C com port selecting on host PC 3-21 compliance statement, FCC and RSS-210 v configuring ADC 3-14 digital I/O 3-9 RS-232 3-15 RS
Index N world-wide-web address xviii node status 3-4 O on-demand, data model 1-8 organization of this document xvi P periodic sampling, data model 1-7 persistence configuring 3-20 persistent dynamic routing™ technology 1-6 polling, data model 1-8 R reference kit contents 1-11 RS-232 configuring on mesh node 3-15 RS-485 configuring on mesh node 3-16 RSS-210 compliance statement v S sample application A-2 sample application overview A-2 sample interval all nodes 3-8 single node 3-8 serial communication