Electronics123 UART2WF User Manual

www.linksprite.com
1 / 50
LS-UART-WiFi Module User Manual
May 2010
)PIGXVSRMGWGSQ-RG
[[[IPIGXVSRMGWGSQ
www.linksprite.com
2 / 50
TABLE OF CONTENTS
1.OVERVIEW........................................................................................................................................4
1.1. Main Function ...................................................................................................................4
1.1.1. Summary ....... ....... ....... ...................................................................................4
1.1.2. Specifications . ....... ....... ....... ....... ....... ..........................................................4
1.2. Typical Applications...........................................................................................................4
1.2.1. Wireless POS Machine......................................................................................5
1.2.2. Wirelsee Monitoring and Control System...........................................................5
2. FUNCITON DESCRIPTION .............................................................................................................6
2.1. Block Diagram...................................................................................................................6
2.2. Parameter management ...................................................................................................6
2.3. Connection Model .................................................................................................... ........7
2.3.1. Automatic Connection........................................................................................7
2.3.2. Manual Connection ...........................................................................................9
2.4. Encryption.........................................................................................................................9
2.5. Data transmission.............................................................................................................9
2.5.1. RAW format .....................................................................................................10
2.5.2. UDP format .....................................................................................................10
2.5.3. TCP format.......................................................................................................13
3. TESTING GUIDE ……………........................................................................................................14
3.1. Summary .......................................................................................................................14
3.2. Client Software...............................................................................................................15
3.3. Server Software...............................................................................................................16
3.4. Parameter management .................................................................................................17
3.4.1. Parameter query/edit .......................................................................................17
3.4.2. Parameter Explanation ...................................................................................18
3.5. Automatic networking.....................................................................................................20
3.6. Manual networking .........................................................................................................21
3.7. TCP Monitor Mode Test..................................................................................................23
3.8. Text Transfer Test...........................................................................................................24
3.9. Document Trabsfer Test .................................................................................................26
3.10. The Answers of Familiar Questions .............................................................................27
4. SERIAL PROTOCOL......................................................................................................................30
4.1. Summary ........................................................................................................................30
4.2. UART serial protocol ......................................................................................................30
4.2.1. Data Format.....................................................................................................30
4.2.2. Transfer Mechanism........................................................................................31
4.2.3. Serial Configuration..........................................................................................32
4.3. User Serial Control Protocol ...........................................................................................33
4.3.1. Data Format.....................................................................................................33
4.3.2. Order of Starting to Scan Network...................................................................34
4.3.3. Message of Scanning Network Result.............................................................34
4.3.4. Order of Starting to Connect to Network ........................................................35
4.3.5. Message of Network Connected ....................................................................35
4.3.6. Order of Starting to Disconnect Network........................................................36
4.3.7. Message of Network Disconnected................................................................36
4.3.8. Setting Parameter Order ................................................................................36
4.3.9. Message of Setting Parameter Result.............................................................38
4.3.10. Inquiring Parameter Order ............................................................................38
4.3.11. Message of Inquiring Result..........................................................................38
www.linksprite.com
3 / 50
4.3.12. Reset Order...............................................................................................39
4.3.13. Message of Finished Initialization .............................................................39
4.3.14. TCP Connection order................................................................................40
4.3.15. Message of TCP connection Status ..........................................................40
4.3.16. Message of TCP Failed Sending ...............................................................40
4.4. Configuration parameters............................................................................................41
4.4.1. System parameters .....................................................................................41
4.4.2. Network parameters ....................................................................................41
4.5. Programming Guide ...................................................................................................43
4.5.1. The Example of Network Control.................................................................43
4.5.2. The Example of Parameters Setting ...........................................................45
4.5.3. The example of sending data.......................................................................45
4.5.4. CRC-8 Algorithm Reference Implementation...............................................46
4.6. Serial Protocol Modification Notes…...........................................................................47
www.linksprite.com
4 / 50
1. Overview
LS-UART-WiFi is a WLAN Module with UART serial interface by LinkSprite (www.linksprite.com).
1.1. Main Functions
1.1.1 Summary
SOC chip based solution: cost-effective high quality and stable, built-in WiFi protocol stack and serial transfer protocol;
Simple interface: 5V, ground, RX, TX four-wire connection;
Small dimension 22 * 60 * 7 mm;
Simple and efficient serial user interface, easy for development.
Can be easily driven by 8,16, 32-bit microcontroller such as MSC51/PIC/ARM7.
Simple programming.
1.1.2 Specifications
Support UART data interface, baud rate: 19.2k / 38.4k / 57.6k / 115.2k bps;
Support 802.11b wireless data rate up to 11Mbps;
Support Integrated 802.11 MAC protocol functions;
Support STA applications in basic networks;
Support OPEN / WEP authentication method;
Support shared key encryption method wep64/wep128 data transmission;
Support automatic networking mode and manual networking mode.
o In the automatic mode, the module can automatically scan the target network, and can
automatically reconnect when disconnected
o In manual mode, user can control to connect or disconnect flexibly;
Support RAW / UDP / TCP format of network data transmission;
Support 7 groups of basic parameter settings, can connect up to seven target networks;
Support parameter configuration through the user interface;
Support online firmware upgrade
Support external antenna, UFL interface. Maximum transmission power is 100mW, and receiving
sensitivity is -90dBm;
1.2. Typical Applications
1.2.1. Wireless POS Machine
In a Wireless Bus System using WLAN techniques, terminals can be car held or hand held. When buses reach the terminal, wireless POS machine detects the identification automatically, and then connects to the AP. Operational Data in POS machine is uploaded to the Data Center Server in Bus terminal through AP.
3YV9%68;*MWE;0%21SHYPI[MXL9%68WIVMEPMRXIVJEGI
www.linksprite.com
5 / 50
1.2.2. Wireless Monitoring and Control System
Serial device networking through TCP/IP has been popular for industrial networking. However, with wired communication, deployment of new wires and the following construction often become a bottleneck. In contrast, WLAN can be embedded in the monitoring and control terminals, therefore, reduces the wire deployment and construction cost. Furthermore, it can be easily modified to meet the requirements of the Industrial Environment and Factory Automation Systems, and on-site monitoring system etc.
www.linksprite.com
6 / 50
2.
Function Descriptions
2.1. Block Diagram
www.linksprite.com
7 / 50
www.linksprite.com
8 / 50
2.2.
Parameter management
WLAN module provides for user parameters reconfiguration. These parameters are used to control the module operation. Parameters are divided into two types: system parameters and network parameters.
System Parameters
These parameters are used to control the working mode of the module, it include: Networking Mode: WLAN module supports two modes: automatic networking and manual
networking.
Transparent Transmission Mode: WLAN module supports transparent transmission mode
in the serial port. It is worth noting that this mode is valid only when the module is in automatic networking mode AND it uses the UDP protocol in Link Layer.
TCP Monitoring Mode: WLAN module supports the use of TCP listening mode when TCP
protocol is used in Link Layer. After this mode is selected, the WLAN module can be used as a TCP server, waiting for client’s connection requests.
Baud Rate of Serial Port: LAN module supports four baud rates:192003840057600
115200 bps.
Device Physical Address: It’s the MAC address of WLAN module.
Network Parameters
These are the parameters that need to be set to connect to the target network. This module supports up to seven target networks, and users can set seven groups of network parameters. Each group of network parameter includes:
BSSID: The BSSID of target networkIts value is the MAC address of the AP used in target
network. Each AP owns their unique and non-repeated MAC address. The module uses this BSSID to identify a different network.
Channel: It specifies the channel of the target network. This module supports Channel 1-14.  SSID: It specifies the SSID of the target network.  Encryption Type: It defines the encryption method used in the target network. The
encryption methods that this module supports include Non-encrypted, WEP, CCMP, and WPI.
Key: It defines the key used by the target network. According to different method of
encryption, key is in different format.
Data format of the Link Layer: This module supports three data formats: RAW, UDP, TCP.  Physical Address of the Server: It defines the MAC address of the Data Center Server
(only used in RAW format).
IP Address of the Device: It defines the WLAN module’s own IP address (only used in
UDP/TCP format).
IP Address of the Server: It defines the IP address of the Data Center Server (only used in
UDP/TCP format).
Service Port: It defines the server port number (only used in UDP/TCP format).
www.linksprite.com
9 / 50
2.3.
Connection Mode
WLAN module supports two connection modes: automatic mode and manual mode for users to choose from. It needs to be noted that in the 1.3 and older versions, when the WLAN module is set to TCP Link Layer format, the process of connection automatically includes the process of connection with the TCP server.
2.3.1. Automatic Connection
In automatic connection mode, without any user intervention, WLAN module automatically scans and connects to the network after the power-on reset.
If one of the following situations occurs, WLAN module will automatically re-connect:
1Connection fails; 2connection is disconnected 3The target network is rescanned; 4Server disconnects the TCP connection when TCP Data format is used.
If one of the following situations occurs, WLAN module will automatically scan:
1The AP of the target network is off. 2WLAN module leaves the signal coverage area of the AP.
Its work procedure is as follows.
www.linksprite.com
10 / 50
In the automatic mode, all connection process is automatically completed by WAN module without any user intervention. This makes it very easy to use for users. To successfully connect the network, users only need to set at least one group of basic parameters in the first use. Then WLAN module will automatically scan the network after each power-on reset. If the target network is detected, connection will be connected automatically, and user will receive a confirmation message after successful connection. After that, user can send data normally. If the connection is disconnected accidentally in the process, the module can do automatic reconnection. In the case that the AP in the network is off or WLAN module leaves the signal coverage area of the network, WLAN module starts automatic scan until an available net work is found. This module supports at most seven target networks at the same time. When there are more than one target networks in the area, WLAN module may connect automatically to the first available network.
2.3.2. Manual Connection
www.linksprite.com
11 / 50
In the manual connection mode, users need to control connection and disconnection of WLAN module through user command.
2.4.
Encryption
WLAN module supports three encryption modes: WEP, WPI, and CCMP, and the non encrypted OPEN mode.
WEP
In the WEP encryption mode, user can set 4 sets of key, and choose one set as default key. The length of the key can be 64 bit or 128 bit.
64 bit key: In addition to the 24 random bits, user needs to set the rest 40 bits, or 5 bytes.
128bit key: In addition to the 24 random bits, use needs to set the rest 104 bits, or 13 bytes.
WPI In the encryption mode of WPI, user needs to set 32-byte key. Broadcast is achieved from AP automatically. This encryption mode must be used with the AP designed by LinkSprite.
CCMP In the encryption mode of WPI, user needs to set 16-byte key. Broadcast is achieved from AP
automatically. This encryption mode must be used with the AP designed by LinkSprite.
2.5. Data transmission
In a connection, WLAN module automatically transmits the payload data that it receives between the user’s serial (UART) port and the wireless port.
According to the user setting, the Data Link Layer of WLAN module can work in RAW, UDP or TCP data formats.
2.5.1. RAW format
In the raw data format, user data is not encapsulated while it is transmitted in Data Link Layer. Instead, it is directly packed into an 802.11 network frame and transmitted. In this format, WLAN module uses the server’s MAC address as the target address of the transmission.
The RAW data transmission model is as following:
www.linksprite.com
12 / 50
2.5.2. UDP format
UDP (User Data Protocol) is a connectionless data transmission protocol in the TCP/IP protocol stack. UDP protocol supports unreliable data transmission, and does not guarantee the integrity of the data. But UDP uses little network source and processes data fast. Therefore, it is suitable for applications that require real-time but low-integrity data transmission, such as audio and video data transmission. UDP format is also good for data broadcasting.
When Data Link Layer of the WLAN module uses UDP format, the information including device IP address, server IP address and service port number must be set accurately. If server and WLAN module are not in the same subnet, subnet mask and gateway must be set. Otherwise they cannot communicate with each other (the setting of IP address and port number must follow the TCP/IP potocol).
The UDP data transmission model is as following:
www.linksprite.com
13 / 50
Transparent Transmission Mode
In UDP format, WLAN module also supports transparent transmission mode. Transparent transmission means that the WLAN module transmits “transparently” the data it receives from the serial user port to the network. The data transmission model is as following:
The module must meet all the following conditions before it can work in the transparent transmission mode:
1 Automatic networking mode is used;
www.linksprite.com
14 / 50
2 UDP Link Layer data format is used;
3 WLAN module is in successful connection status;
It must be noted that once the WLAN module enters the transparent transmission mode, it cannot receive user’s command from the UART serial port. (In testing or demonstration using the simulation environment, please turn off the WLAN module client software, and use general­purpose serial tools, such as Hyper Terminal, serial debugging assistant etc. to do the data transmission testing).
2.5.3. TCP format
TCP (Transmission Control Protocol) is a connection-oriented data transmission protocol. In TCP format, a virtual connection is created between the two sides of the communication. TCP supports reliable data transmission, and can handle out-of-order, loss, damage of data in the process of transmission.
When TCP format is used in Link Layer, it is highly recommended that the user enables ACK when sending data through UART serial port. In other words, it is recommended to use Send/ACK manner to further ensure the reliability of transmission.
The TCP data transmission model is as following:
TCP Monitoring Mode
When Link layer is set to TCP format, in addition to being used as a client to connect to the TCP server defined in the network parameters, the WLAN module can also be used as a TCP server in the TCP monitoring mode. The TCP monitoring mode can be enabled or disabled by configuring a system parameter. When the data format of Link Layer is not TCP, this parameter can be neglected. According to the status of TCP monitoring mode, the connection procedure of WLAN module is different.
www.linksprite.com
15 / 50
Disable TCP Monitoring
After associating with the AP, the WLAN module automatically connects to the server defined in the network parameters, and returns the message of successful connection to user. If the connection fails, it returns a failure message. The procedure of the WLAN module is the same as that in Version 1.3 and older versions which do not support the TCP Monitoring mode.
Enable TCP Monitoring
After connecting with the AP, the WLAN module returns the message of successful connection to user. Then WLAN module enters TCP Monitoring mode, and can accept external TCP connection requests. If user wishes it works as the client to connect to the server, the server can use TCP connection command to initiate the connection request.
This module does not support multiple TCP connections at the same time. If currently a TCP connection is in place, it can no longer receive or send new connection requests.
www.linksprite.com
16 / 50
3. Testing Guide
WLAN cannot work properly until it is embedded in a system. We support the following simulation environment for users to do the functional testing of the module.
3.1. Summary
All the testing environments consist of the following devices:
Tester 1
It is used to run the client software of WLAN module, and communicates with WLAN module through the computer serial port. The functions include:
1 Send command to control the WLAN module
2 Receive and analyze the message sent by the WLAN module
3 Set or inquire the configuration parameters of WLAN module;
4 Work with server software to run data transmission testing
WLAN module
It consists of the STAU network card that supports UART serial port. The functions include:
1 Wireless connection
2 Data transmission between serial port and wireless network
AP
It’s used to build a wireless network.
Tester 2
www.linksprite.com
17 / 50
It is used to run the server software of WLAN module. This computer must have network connection. The functions include: 1conduct the data transmission testing with client software;
2Use as server for online update of the WLAN module firmware.
3.2. Client Software
The client software connects to WLAN module through the computer serial port, and achieves the following functions:
Serial Configure
The choice of serial baud rate includes 192003840057600115200 bps
www.linksprite.com
18 / 50
Sending control command
Control commands can be sent to WLAN module by clicking the buttons, the supported commands include scanning network, join network, leave network, parameter configuration, reset.
Receiving control message
It analyzes the control message it receives, and displays the result in the export window.
Parameters configuration
It analyzes and modifies the system parameters and the seven groups of network parameters of WLAN module.
In the connection status, text data or document can be sent to or received from the server software through wireless network.
Serial Data Detection
It can snatch the data frames of serial communication. It provides a convenient method for user’s further development using the UART serial protocol.
3.3. Server Software
www.linksprite.com
19 / 50
The server software runs on the computer with a WLAN connection. When the computer and the WLAN module both connect to a network defined by an AP, the server software can do the data transmission testing with the client software.
UDP Testing
First set up a UDP server and set the Link Layer data format of WLAN module to UDP. Then data communication can be established, including sending and receiving text, receiving document. In this mode, the server does not support sending document.
TCP Testing
First set up a TCP server and set the Link Layer data format of WLAN module to TCP. Then data communication can be established, including sending and receiving text.
Online Update
The server works as the online update server, enables the remote firmware update for the WLAN module.
3.4. Parameter Management
3.4.1. Parameter Query/Edit
The client software can be used to manage the parameters of the WLAN module. The following example demonstrates how to modify the encryption method.
www.linksprite.com
20 / 50
1 Click the “parameter configuration” button (Please do not set the parameter during
transmission).
2 Choose parameter index
3 Check the box of encryption setting, and modify the encryption method.
4 Click the “Save” button.
5 Modification is finished.
3.4.2. Parameter Explanation
www.linksprite.com
21 / 50
Network parameters include the parameters needed to connect to AP and server. This module supports 7 groups of network parameters. These parameters are defined as follows.
Parameter Index
This is the group number of the network parameter.
ChannelSSIDEncryption styleKey
These are all the configuration parameters; please refer to the setting of AP.
BSSID
This is MAC address of the target AP.
The data format of Link Layer
This is the data format used by the transmission between the WLAN module and the server. The setting of the client must be same as the setting of the server. (Note: the server software in this testing system can only support UDP and TCP data formats.)
Local IP address
This is the IP address of the WLAN module. It is arbitrarily defined by user, but it must be a valid IP address of the target AP and is not used by other devices.
It is worth noting that this IP address has nothing to do with the IP address of the network card of the tester1 computer, on which client software runs.
Subnet Mask
This is the subnet mask of the network that the WLAN module connects to.
Gateway IP Address
This is the gateway IP address of the network that the WLAN module connects to.
Server IP Address
This is the IP address of the network card of tester2 computer.
Service Port
This is the port number of the server. This setting must be the same as the server port number.
There is only one set of system parameters. They are used to control the work mode of WLAN module.
Connection Mode
Users can choose auto or manual connection mode.
www.linksprite.com
22 / 50
Transparent Transmission Mode
This is the transmission format of the serial data. This transmission mode can be set to enabled or closed. It must be noted that the transparent transmission mode can only be supported when automatic connection mode is used and the server data format is UDP. Otherwise, this parameter can be ignored.
Serial Baud Rate
It defines the data rate of the serial port. It configures the serial transmission data rate of the WLAN module. Please refer to the serial port setting in the server software for more information on the serial data rate setting of the client software. The data rates on both sides of the communication must be same. Otherwise the communication between the client software and module becomes impossible.
3.5. Automatic Connection
www.linksprite.com
23 / 50
In automatic mode, all process of connection is automatically completed by the WLAN module without user’s intervention. User only needs to set at least one group of network parameters before first use. Then the WLAN module will automatically scan network after power-on reset. If it finds a target network, it automatically connects and sends out an confirmation message of a successful connection, as shown here.
3.6. Manual Connection
Manual connection mode supports a more flexible method for user to use. User can use command to control the module to scan, connect, and transmit data etc.
With the client software, user can send the following commands to the WLAN module:
Connect to a Network
www.linksprite.com
24 / 50
1Click the “Join” button;
2Choose the group number of the network parameters, then click “OK”;
3Connect successfully
Disconnect the connection
1Click “Leave” button; 2Disconnect successfully;
Scan the network
www.linksprite.com
25 / 50
1click “Scan” button;
2return the scan result;
3.7. TCP Monitor Mode Test
1Accurately set the network parameters, and enable TCP monitor mode;
2WLAN module gets in monitor status after a successful connection;
3Use the Internet Explorer in tester 2, and connect to the WLAN module. Fill in IP address and port number with the their actual values;
4After receiving a request, the WLAN module sets up a TCP connection with the Internet Explorer. A message of successful TCP connection and the requested HTTP data sent from the Internet Explorer are shown in the client software.
www.linksprite.com
26 / 50
5Type in random character string in the input window of the client software, click “TXT send”, then click the “TCP connection” button and choose “disconnect” to disconnect the TCP connection, as shown below.
6In the Internet Explorer window, the character string that was typed in the client software is shown.
3.8. Text Transmission Test
After WLAN module successfully connects to a network, the client and server software can be used to test the text transmission.
www.linksprite.com
27 / 50
www.linksprite.com
28 / 50
3.9. Document Transmission Test
The client and server software also support the document transmission. As an example, the process that the client sends a document to the server is shown below.
www.linksprite.com
29 / 50
It is noted that when WLAN module uses UDP data format, document transmission is only supported from the client to the server. Due to uncertainty, document transmission may be incomplete. To ensure the transmission reliably, TCP format is suggested.
3.10. FAQ
QuestionWhy does the message of [Notice] Module disconnected appear when a user command is sent in the client software?
Check if the serial port setting of the client software is accurate;
Check if the WLAN module is powered on;
Check if the WLAN module is in working in transparent transmission mode.
Question: Why does a connection fail?
There are a variety of causes for a connection failure.
1 The target network is not available
Check if the power of AP is on and the configuration is correct;
www.linksprite.com
30 / 50
Scan network manually, be sure the target network can be found;
Check if the wireless mode of AP is set to B mode or B/G mixed mode.
2 Network configuration parameters of the AP is not correct
Check the configuration of WLAN module, ensure channel, BSSID, SSID, and
encryption setting is the same as the setting of AP.
3 If Link Layer data format is TCP, incorrect network parameters related to service can also
cause connection failure.
Check that MAC address of server, IP address of device, IP address of server and
service port setting are valid and correct. Please note, MAC address of server refers to the physical address of the network card in the computer which the server software runs. IP address of server refers to the IP address of the computer which the server software runs in. Service port refers to the service port set in server software. IP address of device refers to the IP address set for WLAN module. It must be in the same sub network as the server.
.
Question: Why is my secret key always being incorrect?
The representation of the key in client software of this system may be different from that of your AP. If so, format conversion is needed. Here is an example of the format conversion for a 64­bit WEP key.
If the key of AP uses hexadecimal format
Suppose the key of AP is 10 hexadecimal numbers: 1234567890. Then after conversion the key is represented as 5 hexadecimal numbers: 0x12, 0x34, 0x56, 0x78, 0x90.
If the key of AP uses ASCII format
Suppose the key of AP is 5 ASCII lettersabcde. Then after conversion the key is represented as 5 hexadecimal numbers0x61, 0x62, 0x63, 0x64, 0x65
Please refer to the normal ACSII character set for the hexadecimal representation of ASCII characters. Common letters and numbers are represented as follows. The hexadecimal number for letter ‘A’ is 0x41, ‘B’ is 0x42, etc. The hexadecimal number for letter ‘a’ is 0x61, ‘b’ is 0x62 etc. The hexadecimal number for character ‘0’ is 0x30, ‘1’ is 0x31 etc.
Question: Why does connection failure or quick disconnection after successful connection happen when the TCP format is used?
TCP connection is a virtual connection. If the network connection disconnects abnormally, such as power-off or manual reset, then the connection between the WLAN module and the server cannot be cleared. This causes failure in reconnection to the server. The method to resolve this problem is as follow.
Restart the server software;
Set different service port.
Question: Why can not the server receive any data?
www.linksprite.com
31 / 50
Check if the encryption method and key setting in network parameters are consistent with
the setting of AP;
Check if IP address of device, IP address of server and service port in network parameters
are set correctly;
Check if the firewall of the computer which the server software runs in is turned off;
Question: What is the relationship between the IP address of the network card of the computer which the client software runs in and the device IP address defined in the configuration parameters of the WLAN module?
The WLAN module itself has the capability of network connection. It does not use the network connection of Windows system in the computer which the client software runs in. So the IP address of the network card has nothing to do with the WLAN module.
In the demo system, the tow sides of the communication are
IP of the WLAN module device
IP of the network card in the server computer
Question: when UDP format is used, why does the server software show a non­connection status while the client has returned a successful connection message?
UDP is a connectionless protocol. The server software does not know the address of the sender unless it has received some data in its monitor port. Therefore, the client, as the communication originator, must send some data to the server. There is no such problem when the TCP format is used.
Question: Why is the network delay when a WLAN module is used bigger than normal?
Check if the wireless network mode of AP is set to B mode or B/G mixed mode.
Question: How is the transparent transmission mode terminated?
Turn off the power of AP, reset the WLAN module, or use the client software to modify the configuration parameters.
www.linksprite.com
32 / 50
4. Serial Protocol
4.1. Summary
Interface Data:
The format and transmission mechanism of the data transmitted between a user terminal and a WALN module through UART serial is defined in the corresponding serial protocol.
Serial data may include control data and user data.
Control Data:
The definition and transmission mechanism of control data between a user terminal and a WALN module is defined in the User Serial Control protocol.
User Data
This is the user’s private data. Its protocol is defined by user.
4.2. UART serial protocol
4.2.1. Data Format
www.linksprite.com
33 / 50
SYN
Synchronized Field, it indicates the start of a data frame, the fixed value is ‘0xAA’.
CTL
Control Field, its meaning is as follow,
TYPE
Frame type,
000b indicates control data
001b indicates common data
010b indicates the ACK acknowledgement to the previous frame. LENGTH field must be 0.
Others are reserved.
A: This bit in data frame must be set to ‘1’. It indicates that the data frame includes CRC and the receiver needs to return ACK acknowledgement. It is not used in an ACK frame.
SN: SN stands for sequence number. The range of its value is 0~15. In data frame, if it is the retry of the previous frame, then the sequence number remain unchanged; Otherwise, the sequence number increments 1 every time; In ACK acknowledgement frame, SN is equal to the sequence number of the previous frame it receives.
LENGTH
LENGTH field, it defines the length of DATA field. The maximum value is 140 bytes.
CHK
Frame Head Verification field. It is sum of the CRC of the CTL field and the LENGTH field.
DATA
Actual transmission data. If ‘A’ is set to ‘1’, the last byte of DATA is the 8-bit CRC sum of early LENGTH-1 byte data.
PADDING
Fill field at frame end. Its value is 6 continuous ‘0x00’.
4.2.2. Transmission Mechanism
Two different transmission modes can be used for two types of the frames,
www.linksprite.com
34 / 50
Send/response Mode
The data frame whose A is set to ‘1’ uses this transmission mode. The sender needs to wait for ACK from the receiver after the sender has sent a frame of data. Then it starts to send the next frame as following:
Continuous sending mode
The data frame whose A is set to ‘0’ uses this transmission mode. The sender can continuously send frame after it has sent a frame of data. It does not need to wait for the ACK form the receiver.
4.2.3. Serial Configuration
The following is the configuration of the UART serial port.
Data rate19200/38400/57600/115200 bps Data bit8bits Parity bitnone Stop bit1bits
www.linksprite.com
35 / 50
flow controlnone
4.3. User Serial Control Protocol
4.3.1. Data Format
This protocol is used to define the format of the control data transmitted through UART user serial port. Control data includes the following two types, COMMAND and MESSAGE.
COMMAND: The receiver must execute the command it receives. In this system, command can only be originated by a host computer.
MESSAGE: It defines the message that the sender wants to send to the receiver. The sender does not need ACK from the receiver.
The definition of data format is as following.
TYPE
00Command from host to WLAN module
01Message from WLAN module to host
10Reserved
11Reserved
SUBTYPE
000000bScan network
000001bConnect to the network
000010bDisconnect to the network
000011bSet parameters
www.linksprite.com
36 / 50
000100bInquire the parameters
000101bReset/ initialization
000110bTCP connection
000111bTCP failed transmission
OthersReserved
PARAMETERS
They are defined differently according to the TYPE and SUBTYPE.
4.3.2. Command to Scan Network
FLG0x00
PORTMASKChannel mask. The first byte represents channels 1~8. Bit0 represents Channel 1, Bit1 represents Channel 2, etc. The lower 6 bits of the second byte represent channels 9~14.
4.3.3. Message of Scanning Network Result
FLG0x40
IDXIn 1.51 or older versions, it defines the network number, and is used to return the index number of scanned networks. This number begins from 1, and increments 1 for each network.
www.linksprite.com
37 / 50
In versions newer than 1.53, this parameter is defined as signal strength, and is used to return the strength of signal of the target network. The range of its value is 0~255, ‘0’ indicates strongest signal, ‘255’ indicates weakest signal.
CHChannel number
BSSIDBSSID of network
LENLength of SSID
SSIDSSID of network
4.3.4. Command to Connect to a Network
FLG0x01
IDX0indicates default configuration network.
17indicate which group of network configuration parameters is used.
othersnot defined
4.3.5. Message of Network Connected
FLG0x41
RES0indicates connection is successful
Othersconnection is failed, and the latter fields after RES are insignificant
CHChannel number
BSSIDBSSID of network
LENLength of SSID
www.linksprite.com
38 / 50
SSIDSSID of network
4.3.6. Command to disconnect network
FLG0x02
RES0disconnects normally
Othersdisconnect abnormally.
4.3.7. Message of Network Disconnected
FLG0x42
RES0disconnects normally
Othersdisconnect abnormally.
4.3.8. Command to Set Parameters
www.linksprite.com
39 / 50
FLG0x03
PBGroup number of network parameter. The value range is 0xb1~0xb7 representing 1st~7th group of parameters. Parameter PB is an optional field. It can be ignored when only setting system parameters.
MParameter IDdefined in the following table.
Para ID Parameter Meaning
0x00 Reserved
0x01 BSSID
0x02 Channel
0x03 SSID
0x04 Encryption method
0x05 Secret Key
0x06 Data format of Link Layer
0x07 Service Port
0x08 IP address of device
0x09 IP address of server
0x0a MAC address of server
0x0b Subnet Mask
0x0c IP address of gateway
0x0d
~
0xa0
Reserved
0xa1 * Serial type
0xa2 Serial baud rate
0xa3 * B/G mode
0xa4 * maximum speed
0xa5 * Transmission power
0xa6 * MAC address of device
0xa7 Connection mode
0xa8 * the number of automatic retries after connection
failure
www.linksprite.com
40 / 50
0xa9 Transparent transmission mode
0xaa TCP monitor mode
Reserved
(* the parameters set by the manufacturer can only be read by user)
LENLength of INFO field
INFOParameter content
4.3.9. Message of Setting Parameters
FLG0x43
RES0successful
othersfailed
4.3.10. Command to Inquire Parameters
FLG0x04
PBGroup number of network parameter. Its definition is same as command to set parameters.
MParameter ID. Its definition is same as command to set parameters.
4.3.11. Message of Inquiring Parameters
www.linksprite.com
41 / 50
FLG0x44
PBGroup number of network parameter
MParameter ID. Its definition is same as setting parameter
LENLength of INFO field
INFOParameter content
4.3.12. Reset Order
FLG0x05
RESNot defined
4.3.13. Message of Finished Initialization
FLG0x45
www.linksprite.com
42 / 50
TYPReset type: 0hardware reset, 1software reset, othersnot defined.
VVersion, value fixed to 0x76
INFOCharacter strings of firmware version.
4.3.14. Command to connect a TCP connection
FLG0x06
RES
0 Set up a connection
1 Disconnect a connection
Other reserved
4.3.15. Message of TCP connection Status
FLG0x46
RES
0 connection is successful
1 connection has been disconnected
2 connection is busy
3 does not join the network
4 invalid value
others reserved
4.3.16. Message of Failed TCP Sending
www.linksprite.com
43 / 50
FLG0x47
RESNo defined
4.4. Configuration parameters
WLAN module’s configuration parameters are defined as follows.
4.4.1. System parameters
Baud rate
Its length is 1 byte. It defines the baud rate of the UART serial port in bps,
0 192001384002576003115200
Auto Connect
Its length is 1 byte. It defines the connection mode of the WLAN module, 0 manual1
automatic.
Transparent
Its length is 1 byte. It defines the transparent transmission mode, 0 close,1enablethis mode is only valid in automatic connection mode and UDP data format.
TCP Server Mode
Its length is 1 byte. It defines the TCP monitor mode, 0close,1enable (this mode is only valid in TCP data format).
4.4.2. Network parameters
This module supports up to 7 groups of network parameters, so there are 7 network parameter configurations, whose indexes are 1~7. Each group of parameters includes:
BSSID
Its length is 6 bytes. It defines BSSID of the target network. Its value is the MAC address of the AP used by the target network.
Channel
Its length is 1 byte. It defines the channel of the target network, its valid value range is 1~14.
www.linksprite.com
44 / 50
SSID
Its length is variable, but not longer than 32 bytes. It defines SSID of the target network.
Privacy Type
Its length is 1 byte. It defines the encryption method of WLAN module. Its definition is as following:
Value
Description
0
Not encrypted
1 WEP
2
WPI
3
CCMP
Reserved
Privacy Key Its length is 54 bytes. It defines the privacy key that the target network uses. For different encryption method, the definition of privacy key framework is as following:
WEP
typedef struct KEY_WEP{
INT8U KeyLength; INT8U KeyIndex; INT8U Groups[4][13];
} KEY_WEP;
WPI
typedef struct KEY_WPI{ INT8U Unicast[32]; INT8U pad[22]; }KEY_WPI;
CCMP
typedef struct KEY_CCMP{ INT8U Unicast[16]; INT8U pad[38]; }KEY_CCMP;
Data Type Its length is 1 byte. It defines the data format of Link Layer. Valid values are: 0RAW,1
UDP,2 TCP.
Port Its length is 2 bytes. It defines service port. The order of its bytes uses BigEndian, namely the port number 6000 indicates 0x170x70.
StaIpAddr Its length is 4 bytes. It defines the IP address of WLAN module itself. The order of its bytes uses BigEndian, namely the address 192.168.1.1 indicates 0xC00xA80x010x01.
SubnetMask Its length is 1 byte. It defines the subnet mask of the network which the WLAN module is in. Its valid value is,
0 no setting
1 subnet mask 255.255.255.0
2 subnet mask 255.255.0.0
3 subnet mask 255.0.0.0
others reserved
www.linksprite.com
45 / 50
SubnetGate Its length is 4 bytes. It defines the subnet gate IP address of the network which the WLAN module is in, and its format is as above. It needs to note that, according to the specific SubnetMask value, the valid data filed length of SubnetGate is different and others are ignored. For example,
SubnetMask1 SubnetGate[0]192 SubnetGate[1]168 SubnetGate[2]1 SubnetGate[3]1
Then, only SubnetGate[3] is in use, others are ignored.
SerIpAddr Its length is 4 bytes. It defines the IP address of data center server. The format is same as
StaIpAddr.
SerMacAddr Its length is 6 bytes. It defines the MAC address of data center server(only used in RAW format).
4.5. Programming Guide
4.5.1. Examples of Network Control
Example 1: Scan the network whose channel numbers are 15611
Create the following command, where the highlighted blue part is to scan (00) the specified channels, 31=channels 156, 04=channel 11.
The returned message,
www.linksprite.com
46 / 50
The explanation of content is,
Example 2: Connect to the target network defined in the first group of parameters.
Create the following command, where the highlighted blue part is to connect (01) to first group of parameters (01).
The returned message of successful connection is
The explanation content is,
Connect successfully
www.linksprite.com
47 / 50
Channel5
BSSID00-1a-70-35-b9-32
SSIDstauart_wrv_wep128
4.5.2. Example of Parameters Setting
Example 1: Set the first group of network parameters as following:
BSSID00-1a-70-35-b9-32
Channel5
SSIDstauart_wrv_wep128
Encryption typeWEP
Privacy key128 bitschoose the second group of privacy keys, the keys are
0x30,0x30, 0x30,0x30, 0x30,0x30, 0x30,0x30, 0x30,0x30, 0x30,0x30,0x30
Create the following command (look at the highlighted blue part):
4.5.3. Example of sending data
Example 1: Send the following data to WLAN module with send /response mode:
This is a test text with ack.
Create the following data frame according to the request:
Example 2: Send the following data to WLAN module with continuous sending:
This is a test text without ack.
Create the following data frame according to the request:
www.linksprite.com
48 / 50
4.5.4. CRC-8 Algorithm Reference Implementation
INT8U __crc8_tbl[256]= {
0x00,0x91,0xe3,0x72,0x07,0x96,0xe4,0x75, 0x0e,0x9f,0xed,0x7c,0x09,0x98,0xea,0x7b, 0x1c,0x8d,0xff,0x6e,0x1b,0x8a,0xf8,0x69, 0x12,0x83,0xf1,0x60,0x15,0x84,0xf6,0x67, 0x38,0xa9,0xdb,0x4a,0x3f,0xae,0xdc,0x4d, 0x36,0xa7,0xd5,0x44,0x31,0xa0,0xd2,0x43, 0x24,0xb5,0xc7,0x56,0x23,0xb2,0xc0,0x51, 0x2a,0xbb,0xc9,0x58,0x2d,0xbc,0xce,0x5f, 0x70,0xe1,0x93,0x02,0x77,0xe6,0x94,0x05, 0x7e,0xef,0x9d,0x0c,0x79,0xe8,0x9a,0x0b, 0x6c,0xfd,0x8f,0x1e,0x6b,0xfa,0x88,0x19, 0x62,0xf3,0x81,0x10,0x65,0xf4,0x86,0x17, 0x48,0xd9,0xab,0x3a,0x4f,0xde,0xac,0x3d, 0x46,0xd7,0xa5,0x34,0x41,0xd0,0xa2,0x33, 0x54,0xc5,0xb7,0x26,0x53,0xc2,0xb0,0x21, 0x5a,0xcb,0xb9,0x28,0x5d,0xcc,0xbe,0x2f, 0xe0,0x71,0x03,0x92,0xe7,0x76,0x04,0x95, 0xee,0x7f,0x0d,0x9c,0xe9,0x78,0x0a,0x9b, 0xfc,0x6d,0x1f,0x8e,0xfb,0x6a,0x18,0x89, 0xf2,0x63,0x11,0x80,0xf5,0x64,0x16,0x87, 0xd8,0x49,0x3b,0xaa,0xdf,0x4e,0x3c,0xad, 0xd6,0x47,0x35,0xa4,0xd1,0x40,0x32,0xa3, 0xc4,0x55,0x27,0xb6,0xc3,0x52,0x20,0xb1, 0xca,0x5b,0x29,0xb8,0xcd,0x5c,0x2e,0xbf, 0x90,0x01,0x73,0xe2,0x97,0x06,0x74,0xe5, 0x9e,0x0f,0x7d,0xec,0x99,0x08,0x7a,0xeb, 0x8c,0x1d,0x6f,0xfe,0x8b,0x1a,0x68,0xf9, 0x82,0x13,0x61,0xf0,0x85,0x14,0x66,0xf7, 0xa8,0x39,0x4b,0xda,0xaf,0x3e,0x4c,0xdd, 0xa6,0x37,0x45,0xd4,0xa1,0x30,0x42,0xd3, 0xb4,0x25,0x57,0xc6,0xb3,0x22,0x50,0xc1,
0xba,0x2b,0x59,0xc8,0xbd,0x2c,0x5e,0xcf
};
INT32S ChkCrc8(INT8U *ptr, INT32U len) {
INT8U crc8,data; crc8=0; while(len--!=0) {
data = *ptr++;
crc8=__crc8_tbl[crc8^data]; } if(crc8==0x00)
return 0; else
return -1;
www.linksprite.com
49 / 50
}
INT8U GetCrc8(INT8U *ptr, INT32U len) {
INT8U crc8,data; crc8=0; while(len--!=0) {
data = *ptr++;
crc8=__crc8_tbl[crc8^data]; } return crc8;
}
4.6. Serial Protocol Modification Notes
Version 1.3 modification from Version 1.0
1The largest value of LENGTH field in data format definition of UART serial protocol is modified to 1400;
2In data format definition of user serial protocol, a TCP failed sending message is added
3The definition of the parameter IDX in the start connection command is modified to the index number of network parameter group;
4In parameter setting command /parameter inquiry command /parameter inquiry message of user serial protocol, a new PB field is added;
5M field of Parameter ID in parameter setting command/parameter inquiry command / parameter inquiry message of user serial protocol is redefined.
6In the initialization completion message of user serial protocol, new fields of TYP, V and INFO are added.
Version 1.4 modifications from Version 1.3
1In data format definition of user serial protocol, TCP connection command/status message are added;
2In system parameter setting, a parameter of TcpServerMode is added;
Version 1.5 modifications from Version 1.4
1In network parameter configuration, parameters of subnet mask and subnet gate are added
2The length of the wireless privacy key in network parameter is changed from 64 bytes to 54 bytes.
3Starting in Version 1.53, IDX parameter in the message ofresult is modified to denote the network signal strength.
www.linksprite.com
50 / 50
LinkSprite Technologies, Inc.
Add1410 Cannon Mountain Dr, Longmont, CO 80503
Tel 720-204-8599
Emailsales@linksprite.com
Supportsupport@linksprite.com
Webwww.linksprite.com
)PIGXVSRMGWGSQ-RG
)EWX4EVO%ZI'SPYQFMERE3,

KIRIVEP$IPIGXVSRMGWGSQ
WYTTSVX$IPIGXVSRMGWGSQ
[[[IPIGXVSRMGWGSQ
Loading...