Coronis Wavenis Wavecard, Wavenis Waveport User Manual

Wavecard-Waveport User Manual Coronis Systems
Wavecard - Waveport
User Manual
Coronis Systems
Waveport , Wavecard 25 mW and 500 mW products
CS-SUP-MUTI-WPORTAPP-E04 1
Wavecard-Waveport User Manual Coronis Systems
Written by Romain Chapuis. Contributions by Michael Modjeska.
Copyright © 2005, Coronis Systems, S.A. All rights reserved. This documentation may be printed and copied solely for use in developing products and software applications for Wavenis technology. Coronis Systems reserves the right to revise this documentation and to make changes in content from time to time without obligation on the part of Coronis Systems to provide notification of such revision or changes.
CORONIS SYSTEMS MAKES NO REPRESENTATIONS OR WARRANTIES THAT THE DOCUMENTATION IS FREE OF ERRORS OR THAT THE DOCUMENTATION IS SUITABLE FOR YOUR USE. THE DOCUMENTATION IS PROVIDED ON AN “AS IS” BASIS. CORONIS SYSTEMS MAKES NO WARRANTIES, TERMS OR CONDITIONS, EXPRESS OR IMPLIED, EITHER IN FACT OR BY OPERATION OF LAW, STATUTORY OR OTHERWISE, INCLUDING WARRANTIES, TERMS, OR CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND SATISFACTORY QUALITY.
TO THE FULL EXTENT ALLOWED BY LAW, CORONIS SYSTEMS ALSO EXCLUDES FOR ITSELF AND ITS SUPPLIERS ANY LIABILITY, WHETHER BASED IN CONTRACT OR TORT (INCLUDING NEGLIGENCE), FOR DIRECT, INCIDENTAL, CONSEQUENTIAL, INDIRECT, SPECIAL, OR PUNITIVE DAMAGES OF ANY KIND, OR FOR LOSS OF REVENUE OR PROFITS, LOSS OF BUSINESS, LOSS OF INFORMATION OR DATA, OR OTHER FINANCIAL LOSS ARISING OUT OF OR IN CONNECTION WITH THIS DOCUMENTATION, EVEN IF CORONIS SYSTEMS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Wavenis is a registered trademark, and Wavecard and Waveport, the Coronis Systems logo, and the Wavenis logo are trademarks of Coronis Systems or its subsidiaries. All other product and brand names may be trademarks or registered trademarks of their respective owners.
November 2005
For more information please visit these web sites:
www.coronis-systems.com
www.wavenis.com
For inquiries, please write to info@coronis-systems.com, or contact one of our regional offices directly:
France
Coronis Systems, S.A. Le Millénaire 290 rue Alfred Nobel 34000 Montpellier France
Tel. +33 467 22 66 70 Fax +33 467 22 66 71
USA
Coronis Systems, Inc. 76 Bedford Street #33 Lexington, MA 20420 USA
Tel. 1-847-430-8080 Fax 1-847-720-4405
Germany
Paul-Lincke-Ufer 25 10999 Berlin Germany
Tel. +49 30 616 210 60 Fax +49 30 698 166 81
CS-SUP-MUTI-WPORTAPP-E04 2
Wavecard-Waveport User Manual Coronis Systems
Revision History
Rev. Description Author Date Comments
1 Original document RCS Jan 2005
2 FCC approvals added RCS July 2005
3
Test mode updates, minor corrections
RCS Sept. 2005
4 Review and update RCS/MMA Nov. 2005
Supported firmware
Card Compatible Firmware
Wavecard 25 mW 2.01 and higher
Wavecard 500 mW 4.01 and higher
FCC APPROVAL
This module complies with part 15 of the FCC rules. Operation is subject to the following two conditions: this module may not cause harmful interference, and this module must accept any interference received, including interference that may cause undesired operation.
Caution: any changes or modifications not explicitly approved by Coronis-Systems could void the user's authority to operate the equipment.
CS-SUP-MUTI-WPORTAPP-E04 3
Wavecard-Waveport User Manual Coronis Systems
TABLE OF CONTENTS
1. INTRODUCTION.............................................................................................................................................6
1.1 Scope of this document.................................................................................................................................7
1.1.1 Terms...............................................................................................................................................7
1.1.2 Usage scenarios .............................................................................................................................7
2. RS232 SERIAL PROTOCOL PRESENTATION.............................................................................................8
2.1 Basic data exchange.....................................................................................................................................8
2.1.1 Low-level acknowledgement............................................................................................................8
2.1.2 Request / response mechanism......................................................................................................9
2.2 Format of exchanged frames......................................................................................................................10
2.2.1 Wake-up and synchronization mechanism....................................................................................10
2.2.2 Frame description..........................................................................................................................10
2.2.3 Sample CRC code (C language)....................................................................................................11
2.3 Command description.................................................................................................................................12
2.3.1 Control commands.........................................................................................................................12
2.3.2 Application commands...................................................................................................................12
2.3.3 Service commands.........................................................................................................................14
3. SETTING INTERNAL WAVECARD PARAMETERS ...................................................................................15
3.1 Configuring functional parameters..............................................................................................................15
3.1.1 Format for accessing internal parameters.....................................................................................16
3.1.2 Example: Configuring repeater table and activating error frames.................................................18
3.2 Wake-up and synchronization.....................................................................................................................19
3.2.1 Transmitting and receiving frames.................................................................................................19
3.2.2 Examples of different wake-up conditions.....................................................................................20
3.2.3 Example of point-to-point request / response exchange...............................................................21
3.3 Configuring control parameters...................................................................................................................22
3.3.1 Selecting RF communication mode...............................................................................................23
3.3.2 Selecting radio channel when FHSS is deselected........................................................................25
3.3.3 Selecting radio board transmission power.....................................................................................26
3.3.4 Activating RSSI threshold auto-correction......................................................................................28
3.3.5 Selecting the serial baud rate.........................................................................................................29
3.3.6 Reading Wavecard firmware version.............................................................................................30
3.3.7 Reading RSSI.................................................................................................................................31
3.3.8 RSSI command format...................................................................................................................32
3.3.9 TEST Mode....................................................................................................................................33
4. SERVICE COMMANDS................................................................................................................................34
4.1 Command description and formats.............................................................................................................34
4.2 Request types..............................................................................................................................................35
4.3 Detecting presence of Wavecard (Wavenis) modules................................................................................36
5. COMMUNICATION MODES.........................................................................................................................37
5.1 Frame exchange mode...............................................................................................................................37
5.1.1 Configuring parameters..................................................................................................................37
5.1.2 Commands and formats.................................................................................................................38
CS-SUP-MUTI-WPORTAPP-E04 4
Wavecard-Waveport User Manual Coronis Systems
5.1.3 Using relay mode...........................................................................................................................39
5.1.4 Managing time-outs........................................................................................................................41
5.2 Message mode............................................................................................................................................44
5.2.1 Configuring message mode parameters........................................................................................44
5.2.2 Commands and formats................................................................................................................44
5.2.3 Using relay mode...........................................................................................................................46
5.3 Polling mode................................................................................................................................................50
5.3.1 Configuring polling mode parameters............................................................................................50
5.3.2 Commands and formats.................................................................................................................51
5.3.3 Selective vs. non-selective polling mode.......................................................................................52
5.3.4 Diagram of a polling mode exchange............................................................................................55
5.4 Broadcast mode..........................................................................................................................................57
5.4.1 Configuring broadcast mode parameters......................................................................................57
5.4.2 Using broadcast mode (without waiting for response)...................................................................58
5.4.3 Using broadcast mode (waiting for responses).............................................................................59
5.4.4 Command format from the transmitter side...................................................................................61
5.4.5 Command format from the receiver side.......................................................................................62
5.4.6 Using selective and non-selective broadcast modes.....................................................................63
5.5 Multi-frame mode........................................................................................................................................64
5.5.1 Overview........................................................................................................................................64
5.5.2 Received frame format...................................................................................................................64
Appendix I – Wavecard physical layout........................................................................................................65
Appendix II – Wavecard electronic interface................................................................................................67
Appendix III – Parameter list..........................................................................................................................68
Appendix IV – Parameter setting commands...............................................................................................69
Appendix V – Data transmission commands...............................................................................................70
CS-SUP-MUTI-WPORTAPP-E04 5
Wavecard-Waveport User Manual Coronis Systems
1. INTRODUCTION
Wavecard allows you to establish Wavenis wireless links between modules in wireless mesh networks, typically for machine-to-machine data communications, access control, security, and track 'n trace applications. The module is driven through a USART link (RS232 or TTL) by an embedded client application running on a connected host module, or by an application running on a PC (via installed Wavenis drivers).
Coronis Systems Wavecard and Waveport products use the same Wavenis wireless board. Therefore, this document covers both products, as well as Waveport module with serial, USB, or compact flash connectors. We will generally refer to Wavecard, except where there are specific differences between products
Wavecard’s role is to:
Send data frames wirelessly between host modules
Notify the host module about received frames
Each Wavecard needs to be connected to a host module in order to exchange data. However, Wavecard can process some specific frames without being connected to a host. These exchanges are called Service Exchanges, and are mainly used for installation and maintenance procedures.
CS-SUP-MUTI-WPORTAPP-E04 6
Figure 1 – Waveport USB, serial, and compact flash products are all based on Wavecard
Wavecard-Waveport User Manual Coronis Systems
1.1 Scope of this document
The purpose of this document is to present:
A low-level description of the exchange protocol used to drive the Wavecard wireless board
through an asynchronous serial RS232 (±12V) or TTL level (0-3V) interface
The Wavecard electrical interface
The Wavecard mechanical interface
1.1.1 Terms
This document provides specifications for using supplied Wavenis DLLs for Windows as well as for writing your own. This allows you to use Wavecard as a wireless modem that can be integrated into existing modules or driven by a specific host module with its own micro-controller.
As mentioned above, this document is valid for both Wavecard and Waveport products. The main difference is that Waveport is a ready-to-use Wavenis network interface for PCs with USB, serial, or compact flash (type II) connectors.
In this documentation, host refers to the module or subsystem that drives the Wavecard; radio board indicates Wavecard equipment.
1.1.2 Usage scenarios
Use Waveport to establish Wavenis connections from your PC.
Integrate Wavecard into your own projects or prototypes.
CS-SUP-MUTI-WPORTAPP-E04 7
Wavecard-Waveport User Manual Coronis Systems
2. RS232 SERIAL PROTOCOL PRESENTATION
This protocol is dedicated to an asynchronous RS232 or TTL link between the host and the radio board. The transmission format is:
8 data bits
1 stop bit
No parity
Speed: 9600 baud (please contact us if your application requires other speeds)
2.1 Basic data exchange
In most cases, the host module initiates data exchange, but either the host or the radio board can do it.
Figure 2 – Overview of data exchange between a Waveport modem and host
2.1.1 Low-level acknowledgement
Serial frames exchanged between a host and radio board are always managed by an acknowledge mechanism.
In order to take processing time into account on the radio board, a minimum latency time of 1 ms must be respected between frame reception and transmission of the corresponding acknowledgement.
If the Acknowledge frame is not received by the initiator, it can decide to re-send the frame several times (retry mechanism). The default setting for this is:
Time-out = 500 ms
retry count = 3
CS-SUP-MUTI-WPORTAPP-E04 8
Wavecard-Waveport User Manual Coronis Systems
2.1.2 Request / response mechanism
Some exchanges require using a request/response mechanism. In this case, a high-level acknowledgement (command prefix: RES) is initiated by the RF board following the request frame (command prefix: REQ) sent by the host.
Request frames are identified by “REQ_XXX_XXX” (i.e. REQ_SEND_FRAME)
High-level acknowledgement frames are identified by “RES_XXX_XXX” (i.e. RES_SEND_FRAME).
In this example, the RECEIVED_FRAME frame is the response to the REQ_SEND_FRAME request. High­level acknowledgement of the request is identified by the RES_SEND_FRAME frame.
CS-SUP-MUTI-WPORTAPP-E04 9
Wavecard-Waveport User Manual Coronis Systems
2.2 Format of exchanged frames
2.2.1 Wake-up and synchronization mechanism
Wavecard normally stays in standby mode to optimize power consumption, waking up either:
To poll for radio activity periodically
When a serial frame is received from host equipment
In order to give the radio board time to wake up, a synchronization character is needed before the data in the serial frame. This character is 0xFF in hexadecimal notation.
To be consistent, the radio board also precedes its frame transmissions with this synchronization character.
2.2.2 Frame description
The standard frame format is as follows:
SYNC STX LENGTH CMD DATA CRC ETX
1 byte 1 byte 1 byte 1 byte 0 - 250 bytes 2 bytes 1 byte
Sync.
character
Start of
transmission
character
Frame length
Command Data
Control
Redundancy
Check
LSB First
End of
transmission
character
0xFF 0x02 0x03
LENGTH
Minimum frame size is 6 bytes.
Maximum frame size is 256 bytes.
Frame length (byte LENGTH) is computed from its own position
through the included CRC. SYNC, STX, and ETX bytes are not included in the length.
To ensure the integrity of information transmitted between the host and radio board, a 16-bit CRC code is computed on overall frame data, not including STX and ETX characters (byte LENGTH is inserted in the CRC).
The CRC code is computed by dividing the binary frame sequence by the following polynomial:
X16 + X12 + X5 + 1
Sample code for this is shown on the following page.
CS-SUP-MUTI-WPORTAPP-E04 10
Wavecard-Waveport User Manual Coronis Systems
2.2.3 Sample CRC code (C language)
This example shows how to compute CRC on a fixed frame length equal to 9.
#include <iostream.h>
#include <stdio.h>
#include <string.h>
void main ( )
{
int Poly = 0x8408;
int lg = 9;
unsigned int Frame [] = { 0x0B, 0x20, 0x43, 0x06, 0x01, 0x00, 0x00, 0x02, 0X01};
unsigned int Crc;
int j, i_bits, carry;
Crc = 0;
for ( j=0 ; j < lg ; j++ )
{
Crc = Crc ^ Frame[j] ;
for ( i_bits=0 ; i_bits < 8 ; i_bits++ )
{
carry = Crc & 1 ;
Crc = Crc / 2 ;
if ( carry )
{
Crc = Crc ^ Poly;
}
}
}
printf ( “CRC = %x “, Crc);
}
Notes:
The computed CRC is: 41D2 hexadecimal
The LSB and MSB bytes must then be inverted before storing them in the frame.
CS-SUP-MUTI-WPORTAPP-E04 11
Wavecard-Waveport User Manual Coronis Systems
2.3 Command description
This chapter describes the format of serial bus data frames. The distinction between frames is made using the CMD fields representing the command (or action) to carry out.
The types of available commands can be split into three categories:
Control type commands
Application commands
Service type commands
2.3.1 Control commands
These commands are used for low-level acknowledgement of serial frames.
CMD Name Description Data field format
0x06 ACK
Acknowledgement frame: Sent by the receiver after receiving a request/response frame type that was supported and understood.
No data field
0x15 NAK
Non-acknowledgement frame: Sent by the receiver after receiving a request/response frame that was not understood.
No data field
0x00 ERROR
Error frame: Sent by the receiver after receiving a request/response frame that was understood but not supported.
Byte 1: 0x01: unknown command
2.3.2 Application commands
Application type commands use the request/response mechanism. There are two types of application type commands: (1) those relating to parameter settings and board configuration, and (2) those related to radio frame exchanges.
Commands related to parameter settings
Read or update internal parameters
Read or select radio operating channel when FHSS is deselected
Read or select the radio communication mode
Read or select radio board transmission power
Activate Wavenis RF ASIC RSSI threshold auto-correction
Modify serial link baud rate
Read RSSI level of a remote module
Reading Wavecard RSSI level following an exchange with a remote module
Read Wavecard firmware version
Set Wavecard to test mode
CS-SUP-MUTI-WPORTAPP-E04 12
Wavecard-Waveport User Manual Coronis Systems
Commands related to radio frame exchanges
Radio exchanges are composed of several transmission/reception modes. In some cases it is possible to receive several consecutive radio frames (multi-frame mode which is accessible in reception only).
The following modes allow point-to-point exchange:
Frame exchange mode Wavecard sends a request and waits for a response from remote module.
Following the radio frame sending, the Wavecard radio board stay in radio reception during a time (fixed by default at 2s, cf. RADIO_USER_TIMEOUT) in order to receive the response from the addressed equipment. During this time the serial RS232 link is not managed. This command is particularly intended to read CORONIS SYSTEMS radio modules used to collect remote information (temperature, humidity, meters index, ...).
Message mode Wavecard sends a request without waiting for a response from the remote
module.
After sending a frame, the Wavecard radio board goes back to listening on the serial RS232 link. This command may be used for simple data transfer between Wavecard modules.
Relay mode When a remote module is beyond a transmitting module's radio range, relay
mode may be used to forward frames via intermediate nodes (repeaters). The maximum number of repeaters is 3.
The modes below allow selective and non-selective exchange with several remote modules at once:
Polling This mode is used to address requests to a known list of remote modules.
Responses are sent to the host that issued the request when all remote modules have responded, or after a time-out.
The list of remote modules is configured with a parameter setting command (see chapter 3).
Broadcast This mode allows a Wavecard to issue a request to all remote modules
within radio range of the transmitter. Broadcast may also be limited to a selected group of modules.
Multi-frame reception This is a particular case in which multi-frame exchange takes place between
a Wavecard or Waveport module (considered to be the master of the exchange) and another Wavenis-based telemetry module, such as Wavetherm, Waveflow, Wavesense, etc.
Note: Wavecard does not currently allow multi-frame mode between two Wavecard/Waveport modules.
CS-SUP-MUTI-WPORTAPP-E04 13
Wavecard-Waveport User Manual Coronis Systems
2.3.3 Service commands
Service commands are used to configure a Wavecard or to read radio parameters independently of the connected host equipment.
When a Wavecard recognizes a service command, no data is sent to the connected host. These commands are mainly used to handle:
Detection of remote RF modules
Link budgets with respect to remote modules (RSSI level detection)
Setting parameters via RF
The details of the frame format and its usage are described in chapter 4.
CS-SUP-MUTI-WPORTAPP-E04 14
Wavecard-Waveport User Manual Coronis Systems
3. SETTING INTERNAL WAVECARD PARAMETERS
Internal Wavecard parameters can be separated into two categories:
Control parameters that are carried out by specific types of request/response frames. These
parameters (transmission power level, channel selection, etc...) allow you to change the communication mode (either serial and/or RF).
Functional parameters that are carried out by the same frame as those used for writing internal
parameters. These parameters (Wake-up period, group number, etc...) allow you to modify Wavecard behavior according to the type of radio exchange used.
Commands for setting parameters only apply to a local Wavecard, not remote ones.
3.1 Configuring functional parameters
Functional parameters are directly related to Wavecard's default operation, and to the types of radio exchanges used (i.e. functional parameters are initialized according to the intended type of radio exchange).
Default values are set when the unit is first initialized.
Parameter number
Description Value
Size
(bytes)
0x00
AWAKENING_PERIOD: RF polling period, in multiples of 100 ms
Period in multiples of 100ms (by default, 0x0A for one second; max. = 10 sec.)
0 = nearly constant reception (every 20ms)
1
0x01
WAKEUP_TYPE: wake-up type used during frame transmission
0: long wake-up (default setting) 1: short wake-up = 50 ms
1
0x02
WAKEUP_LENGTH: wake-up duration when long wake-up is set used
This value must be higher than the RF polling period. Value in multiples of 1 ms, LSB defined first.
Default value: 1100 ms min. value = 20 ms (0x1400) max. value = 10 sec. (0x1027)
2
0x03
WAVECARD_POLLING_GROUP: byte containing the Wavecard polling group.
Byte 1: Polling_Group Default Polling_Group = 0x00
1
0x04
RADIO_ACKNOWLEDGE: indicates whether radio frames should acknowledged by the receiver.
0: no acknowledgement 1: with acknowledgement (default value)
1
0x05 RADIO_ADDRESS: radio board address
This value is set a the factory. Read-only
6
0x06
RELAY_ROUTE _STATUS: Parameter related to relay route transmission in each relayed frame received.
0x00: Relay route transmission deactivated 0x01: Relay route transmission activated By default, relay route transmission is
deactivated
1
0x07
RELAY_ROUTE : Table containing the radio addresses for successive repeaters used to reach the destination module.
BYTE 1: number of repeaters in route Maximum number of repeaters = 3
If BYTE 1 != 0 BYTES 2 to 7: First repeater's radio
address..., etc.
1 to 19
CS-SUP-MUTI-WPORTAPP-E04 15
Wavecard-Waveport User Manual Coronis Systems
0x08
POLLING_ROUTE: Table containing the list of module radio address to be queried.
BYTE 2: number of modules to query IF BYTE 2 != 0 BYTES 3 to 8: radio address of the first
module..., etc.
1 to 241
0x09
GROUP_NUMBER: Byte containing the group number of radio modules to address in radio polling mode.
Group number Default GROUP_NUMBER = 0x00
1
0x0A
POLLING_TIME: delay between two consecutive transmissions in polling mode
Value in multiples of 100 ms Default POLLING_TIME = 0x0A
1
0x0C
RADIO_USER_TIMEOUT: time-out for receiving a response frame
Value in multiples of 100ms default value = 0x14 (2 seconds)
1
0x0E
EXCHANGE_STATUS: parameter for activating error or status frame management.
0: status and error frames deactivated 1: error frame activated 2: status frame activated 3: both status and error frames activated Default EXCHANGE_STATUS = 0x00.
1
0x10
SWITCH_MODE_STATUS: automatic selection of Radio communication mode used to address an equipment depending on radio address
0: automatic selection deactivated 1: automatic selection activated Default SWITCH_MODE_STATUS = 0x01
1
0x16
WAVECARD_MULTICAST_GROUP: byte containing the Wavecard multicast group (starting with version 2.00).
By default, no group selected = 0xFF 1
0x17
BCST_RECEPTION_TIMEOUT: time-out for receiving CSMA frame following a transmitted REQ_SEND_BROADCAST command (starting with firmware version 2.01)
Value in multiples of100 ms. Default = 0x3C (6 seconds)
1
3.1.1 Format for accessing internal parameters
Wavecard manages internal parameters mainly for RF features. RS232 commands allow you to access these parameters in read or write mode. Default values are set when the module is first used.
REQ_READ_RADIO_PARAM is used to read parameters, and REQ_WRITE_RADIO_PARAM is used to write parameters. Each parameter must be accessed individually.
CMD NOM DESCRIPTION
0x40 REQ_WRITE_RADIO_PARAM Request to update radio parameters
0x41 RES_WRITE_RADIO_PARAM Radio board response to radio parameter update
0x50 REQ_READ_RADIO_PARAM Request to read radio parameters
0x51 RES_READ_RADIO_PARAM Radio board response to parameter reading
In command byte coding, response frames reuse the request command with the LSB bit set to 1.
CS-SUP-MUTI-WPORTAPP-E04 16
Wavecard-Waveport User Manual Coronis Systems
The format for data fields for reading or updating radio parameters is given below:
Request to read radio parameters
REQ_READ_RADIO_PARAM
HEADER CMD DATA CRC ETX
3 bytes 1 byte 1 byte 2 bytes 1 byte
0xFF ; 0x02 ; 0x05 0x50 Number of the parameter to read 0x03
Radio board response to parameter reading
RES_READ_RADIO_PARA M
HEADER CMD DATA CRC ETX
3 bytes 1 byte 1 byte variable 2 bytes 1 byte
0xFF ; 0x02 ; 0xXX 0x51
Status = 0x00 read ok
Status = 0x01 read error
value
-
0x03
Request to update radio parameters
REQ_WRITE_RADIO_PARAM
HEADER CMD DATA CRC ETX
3 bytes 1 byte 1 byte variable 2 bytes 1 byte
0xFF ; 0x02 ; 0xXX 0x40
Number of the parameter
to update
Parameter data 0x03
Radio board response to radio parameter update
RES_WRITE_RADIO_PARAM
HEADER CMD DATA CRC ETX
3 bytes 1 byte 1 byte 2 bytes 1 byte
0xFF ; 0x02 ; 0x05 0x41
STATUS
= 0x00 update OK
= 0x01 update error
0x03
Managing time-outs
Your product may need servicing if you consistently encounter the following latencies. Please contact technical support for more information.
REQ_WRITE_RADIO_PARAM 2 seconds REQ_READ_RADIO_PARAM 2 seconds
CS-SUP-MUTI-WPORTAPP-E04 17
Wavecard-Waveport User Manual Coronis Systems
RES_WRITE_RADIO_PARAM
HEADER CMD DATA CRC ETX
3 bytes 1 byte 1 byte 2 bytes 1 byte
0xFF ; 0x02 ; 0x05 0x41
STATUS
= 0x00 update OK
= 0x01 update error
0x03
3.1.2 Example: Configuring repeater table and activating error frames
In this case there is a repeater module (radio address: 0X AA AA AA AA AA AA) between the Wavecard (initiating the exchange) and the remote module. We must enable error frames in order to determine which remote module caused the error.
Configure repeater list
Host request to the Wavecard (REQ_WRITE_RADIO_PARAM)
HEADER
SYNC STX LENGTH
CMD
DATA
Parameter
number
Parameter data
CRC ETX
0xFF 0x02 0x0C 0x40 0x07 0x01 ; 0xAAAAAAAAAAAA 0xXXXX 0x03
Wavecard response to host (RES_WRITE_RADIO_PARAM)
HEADER
SYNC STX LENGTH
CMD
DATA
Status of the update
CRC ETX
0xFF 0x02 0x05 0x41 0x00 0xXXXX 0x03
Activate error frames
Host request to Wavecard (REQ_WRITE_RADIO_PARAM)
HEADER
SYNC STX LENGTH
CMD
DATA
Parameter
number
Parameter data
CRC ETX
0xFF 0x02 0x06 0x40 0x0E 0x01 0xXXXX 0x03
Response from the WaveCard to the host (RES_WRITE_RADIO_PARAM)
HEADER
SYNC STX LENGTH
CMD
DATA
Status of the update
CRC ETX
0xFF 0x02 0x05 0x41 0x00 0xXXXX 0x03
CS-SUP-MUTI-WPORTAPP-E04 18
Wavecard-Waveport User Manual Coronis Systems
3.2 Wake-up and synchronization
Wavecard optimizes power consumption by using STANDBY mode, waking up periodically to poll for radio activity. The wake-up period is defined by the value of the AWAKENING_PERIOD parameter, expressed in multiples of 100 ms (1 second by default).
3.2.1 Transmitting and receiving frames
When transmitting a frame to a remote module, the transmitter begins an awakening procedure called WakeUp, which is used to wake receiving modules, which then switch to RF reception mode. A succession of binary symbols are sent by the radio during this preamble procedure.
There are two types of wake-up procedures:
Long wake-up Used when transmitting a request towards a remote module. You may set
duration parameters (1100 ms by default), which is generally equal to the wake-up period of the module you are trying to reach, plus 100 ms in order to avoid transmitting between two reception periods.
Short wake-up Used only when responding to a point-to-point request. Duration is 50ms and
cannot be changed.
NUM DESCRIPTION VALUE
SIZE (in bytes)
0x00
AWAKENING_PERIOD RF polling period in multiples of 100 ms
Period in multiples of 100 ms (by default, 0x0A for one second) 0 = nearly constant reception (every 20 ms)
1
0x01
WAKEUP _TYPE Type of wake-up used during frame transmission
0: long wake-up (default setting) 1: short wake-up = 50 ms
1
0x02
WAKEUP _LENGTH Duration of the Wake up when long wake up is set up.
This value must be higher than the RF polling period. Value in multiples of 1ms, LSB defined first.
Default value : 1100 ms Min. value = 20 ms (0x1400) Max. value = 10 sec. (0x1027)
2
When the receiving RF module detects the wake-up procedure, it executes the following operations:
It starts a time-out to wait for the synchronization word (sync). Duration of the time-out is slightly
longer than its WakeUp period, and cannot be changed.
It begins a phase of validating the WakeUp preamble (WakeUp detection). This phase
corresponds to the detection of several successive symbols that compose the preamble. If detection fails, the module returns to stand-by mode. Detection time depends on transmission speed.
CS-SUP-MUTI-WPORTAPP-E04 19
Wavecard-Waveport User Manual Coronis Systems
The periodic wake-up having to occur when waiting of synchronization, are memorized (in order to preserve the periodicity), but not carried out.
At the end of the the wake-up phase, the transmitter modules sends a synchronization sequence, followed by the data to be transmitted.
3.2.2 Examples of different wake-up conditions
Typical case (Long WakeUp = receiver WakeUp period + 100 ms):
Case where wake-up is too short (lower than the receiver's WakeUp period):
CS-SUP-MUTI-WPORTAPP-E04 20
Wavecard-Waveport User Manual Coronis Systems
Case where WakeUp is too long (much higher than the receiver's WakeUp period):
3.2.3 Example of point-to-point request / response exchange
When using a point-to-point (request/response) exchange, the request is transmitted in the same manner as before. However, in this case, the transmitter waits for a response after sending the data. The time-out period for this can be configured using the RADIO_USER_TIMEOUT parameter (0x0C).
After processing the request, the receiver returns its response by using a specific WakeUp preamble, called short WakeUp (Long WakeUp is not applicable since the transmitter is already in the receiving phase).
Exchange without radio acknowledgement:
CS-SUP-MUTI-WPORTAPP-E04 21
Loading...
+ 49 hidden pages