Technical Note RN-111b-UG-1.0 WiFLy RN-111B 802.11b "wifi" wireless LAN - OEM Module Integration Guide and Users Manual Version 1.25 June 19, 2009 Copyright (c) 2008 Roving Networks, Inc. All Rights Reserved. The contents of this document can be changed by Roving networks without prior notice and do not constitute any binding undertakings from Roving networks. Roving networks is not responsible under any circumstances for direct, indirect, unexpected damage or consequent damage that is caused by this document. Printed in the United States of America. Roving Networks Wifly RN-111B User Guide Version 1.23 1. Contents 2. RN-111B Overview ............................................................................................................ 3 2.1. RN-111B Features ....................................................................................................... 3 2.2. RN-111B Options ........................................................................................................ 3 2.3. RN-111B Specifications .............................................................................................. 4 2.4. RN-111B Block Diagram ............................................................................................ 4 2.5. RN-111B Electrical Characteristics ............................................................................. 5 2.6. RN-111B Operating and Environmental Conditions .................................................. 5 2.7. RN-111B Dimensions .................................................................................................. 6 2.8. RN-111B Pin Description ............................................................................................ 6 3. Introduction ........................................................................................................................ 7 3.1. Hardware Interface ...................................................................................................... 7 3.2. Configuration ............................................................................................................... 8 3.3. LED indications ........................................................................................................... 8 4. WiFLY Command Reference ............................................................................................. 9 4.1. SET COMMANDS .................................................................................................... 10 4.2. GET COMMANDS ................................................................................................... 13 4.3. STATUS COMMANDS ............................................................................................ 13 4.4. ACTION COMMANDS ............................................................................................ 14 4.5. FILE IO COMMANDS ............................................................................................. 14 5. System timers and other features...................................................................................... 15 5.1. Wake on Sensor INPUTs ........................................................................................... 15 5.2. Wake on UART ......................................................................................................... 16 5.3. Uart Receiver, RTS/CTS Hardware Flow Control .................................................... 16 5.4. Setting PIO directions, Disabling LED drivers ......................................................... 16 5.5. Alternate IO functions ............................................................................................... 17 5.6. 4.6 Setting Print levels ............................................................................................... 17 6. Making an Outbound Connection .................................................................................... 18 7. FTP Upgrade and Image Storage ..................................................................................... 19 8. Security and Authentication Modes ................................................................................. 20 9. Factory Default Power up Settings ................................................................................... 21 www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -2- Roving Networks Wifly RN-111B User Guide Version 1.23 2. RN-111B Overview The RN-111b "WiFly" radio module is a complete, stand alone, embedded wireless LAN access device. The device has on board TCP/IP stack and applications. Requiring only 4 pins (POWER, TX, RX, GND) to design in. Once initial configuration is set, the radio can automatically access the WiFi network and send/receive serial data over UART. * Fully Qualified 2.4GHz IEEE 802.11b Wireless LAN radio module. * 32bit CPU, 230K ROM, 80KRAM, 4MB on board flash. * On board ECOS -OS, TCP/IP stacks. * 3.3V UART and SPI interfaces available to various applications. * Accepts wide voltage range input 3.3V - 12VDC. * Multiple Antennae options, SMA, U.FL, ceramic Chip, 1/4 wave wire. * Conforms to FCC, CE and the EMI standard of each country. * Modular Approval: * RoHS compliance. 2.1. FCC ID: T9J-RN111b, ICS: 6514A-RN111b, CE: 0681 RN-111B Features * Baud rate speeds: 1200bps up to 921.6Kbps and non-standard baudrates. * Ultra low power consumption (110mA TX, 40ma RX, 12uA deep sleep). * Real time clock for timestamping, auto-sleep and auto-wake modes. * UART local configuration using simple ASCII commands. * Over the air firmware upgrade (FTP), and data file upload. * 3 on board LEDs for status. * 6 Programmable IO pins, 8 analog sensor inputs. * On board flash can be used for secondary applications,data logging, and stored data forwarding at intervals to the network. * Small-form factor low profile radio modem 25mm x 36mm x 5mm. * 32 pin Standard 2mm DIP socket pin spacing. 2.2. RN-111B Options * Larger flash memory (up to 16Mb) for data logging. * On board boost regulator can power from low voltage 2-3V battery source. * SMA, Chip, U.FL or wire ANT. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -3- Roving Networks Wifly RN-111B User Guide Version 1.23 2.3. RN-111B Specifications Item Specifications Frequency 2402 ~ 2480MHz Modulation DSSS(CCK-11, CCK-5.5, DQPSK-2, DBPSK-1) Channel intervals 5MHz Number of channels 13CH Transmission rate (over the air) 11/5.5/2/1 Mpbs Receive sensitivity -85dBm typ. Output level (Class1) 12dBm max. Dimensions With antenna 2.4. 25.4(W)X36(L)X5(H)mm RN-111B Block Diagram www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -4- Roving Networks Wifly RN-111B User Guide Version 1.23 2.5. RN-111B Electrical Characteristics Min Typ. Max. Unit Supply Voltage VIN 4.0 5.0 12 VDC Supply Voltage VDD 3.0 3.3 3.6 VDC Supply Voltage (VBATT option) 2.0 3.0 3.3 VDC - 35 - mA 10 12 15 uA (micro) Average power consumption Standby/Idle (default settings) Sleep Connected(idle, RX) 40 Connected( TX) 2.6. mA 110 180 RN-111B Operating and Environmental Conditions Operating Temperature Range -40 oC ~ 85 oC Storage Temperature Range -40 oC ~ 85 oC Relative Humidity (Operating) 90% Relative Humidity (Storage) 90% www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -5- mA Roving Networks Wifly RN-111B User Guide Version 1.23 2.7. RN-111B Dimensions 2.8. RN-111B Pin Description Pin Pin Name Pin 32 Pin Name 1 NO CONNECT 2 VDD_SW (NO CONNECT) 31 SENSE-1 (WAKE GPIO) 3 SENSE-5 30 SENSE-2 (WAKE GPIO) 4 SENSE-6 29 SENSE-3 (WAKE GPIO) 5 SENSE-7 28 SENSE-4 (WAKE GPIO) 6 SENSE-8 27 TX - data output 7 PIO6 (RED LED) 26 RX - data input 8 PIO9 (factory reset ) 25 CTS (PIO2) input 9 NO CONNECT 24 RTS (PIO3) output 10 NO CONNECT 23 PIO4 (GREEN LED) 11 RESET* (active LOW ) 22 PIO5 (YELLOW LED) 12 SHUTDOWN (NO CONNECT) 21 SPI_MI 13 VIN (3.6-16VDC) 20 SPI_CS 14 VREG (3.3V LDO output) 19 SPI_CK 15 VBATT (TIE to VREG) 18 SPI_MO 16 GND 17 VDD (3.3V ) *** NOTE: Any unused pins should be left floating. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -6- GND Roving Networks Wifly RN-111B User Guide Version 1.23 3. Introduction Scope This Integration and Users Guide, along with the RN-111b module have been developed to assist users in embedding Wifi technology into their serial, SPI, and sensor devices. The goal is to make the implementation of embedded Wifi wireless networks as seamless and easy as possible. This document will explain how to setup and establish communications between the RN-111b and Wifi enabled networks for data applications. 3.1. Hardware Interface There are 3 options to power the RN-111b. 1. 2. 3. Supply 3.6 to 16VDC power to VIN (pin 13). Tie VREG (pin 14) to VBATT(pin 15). Apply 3.3VDC regulated power to VDD (pin 17). Apply battery = 2.0 to 3.0VDc to VBATT (pin 15). If VIN is powered, VREG will supply 3.3VDC output and can be used for other circuits, with a current limitation of 50 ma. Reset is active LOW, is optional and does not need to be connected. There is a built in voltage monitor that will pull Reset LOW (open drain FET) if the input voltage drops below 2.7VDC. If external reset is desired, use an OPEN DRAIN driver and do not drive the Reset pin to any voltage > 1.0 Vdc. Warning: Do NOT exceed the voltage ratings on the 3.3V pins, damage to the module will result. Important Notes: #1: RESET input is a low voltage (1.2VDC ) input, with a 10K pullup and built in power monitor circuits. If external reset is desired, use pull down (open drain or collector) only. #2: The Sensor inputs SENS1-7 are extremely sensitive to over voltage. Under no conditions should these pins be pulled high above 1.2VDC. Placing any voltage above this will permanently damage the radio module and render it useless. #3: Placing 5VDC or any voltage above 3.3Vdc into the VDD pins of the module will permanently damage the radio module. Be sure to use the VIN = pin 13 power pin for any power supplied that is > 3.3VDC. #4: Placing 3.3Vdc into the PIO's while they are set as outputs will permanently damage the radio modules. The failure mode is a short across GND and VCC. Use a 10K resistor in series or a 10K pull up resistor for input and output PIO's respectively. * * * Connect a common ground when using the external TX, RX inputs. For a 3 wire DB-9 interface (tx, rx, gnd only) connect/short CTS to RTS, Factory default is hardware flow control disabled, CTS and RTS not connected. When using a 5.0Vdc Input, PIO's require a 10K ohm series resistor. PIO's are 03.3Vdc not 5 volt tolerant. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -7- Roving Networks Wifly RN-111B User Guide Version 1.23 3.2. Configuration Command Mode (vs Normal Data mode)- Upon powerup, the device will be in data mode. To enter command mode, The characters "$$$" must be sent. The device will respond with "CMD". To exit command mode, send "exit". The device will respond with "EXIT". Parameters, such as the SSid, Channel, IP address, Serial Port settings, and all other settings can be viewed and configured. While in command mode, the device will accept ASCII bytes as commands. When passing ASCII characters through UART interface of the RN-111b, The communications settings of your device or terminal should match the settings of the RN111b which default to 9600bps, 8 bits, No Parity, 1 stop bit, and hardware flow control disabled. Run your favorite terminal emulator, Roving Networks provides a free one, Teraterm, at http://www.rovingnetworks.com/support/teraterm.zip. Type "$$$" on your emulator. You should see "CMD" returned to you. This will verify that your cable and comm. settings are correct. Most valid commands will return an "AOK", response, and invalid ones will return an Error description. Commands that are not recognized will return a "ERROR: Unknown Cmd". To exit command mode, type "exit". NOTE1 : You can enter command mode locally over the serial port at any time when not connected, and also when connected if the appropriate settings are enabled. 3.3. LED indications Condition ON Solid GREEN YELLOW CONNECTED over TCP RED LED NOT ASSOCIATED WiFI Receive Packet Fast BLink NO IP ADDRESS Slow Blink IP ADDRESS OK ASSOCIATED, but no Internet NO power ASSOCIATED and Internet OK OFF www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -8- Roving Networks Wifly RN-111B User Guide Version 1.23 4. WiFLY Command Reference The commands begin with a keyword, and have optional additional parameters, generally space delimited. Commands and options are case sensitive. hex input data can be upper or lower case. String text data, such as SSID, are also case sensitive. The first keyword is fully decoded, and the optional parameters can be short-formed. For example, set uart baudrate 115200 is valid, set uart b 115200 set u b 115200 is also valid, is also valid, however, s uart baudrate 115200 is NOT valid. ENTERING VALUES Numbers can be entered as either decimal, (like 115200 above ) or HEX. To enter HEX, use 0x. For example, the HEX value FF would be entered as 0xFF. Commands fall into 5 general categories: SET COMMANDS -Take effect immediately, permanently (save command issued). GET COMMANDS -Retrieve the permanently stored information for display to user. STATUS COMMANDS -See what is going on with the interface, IP status, etc. ACTION COMMANDS- Perform action such as scan, connect, disconnect, etc. FILE IO COMMANDS - Upgrade, load and save configuration, delete files, etc. IMPORTANT: HOW CONFIGURATION WORKS When the system boots, all configuration data is loaded into RAM variables from the file called "config". The set commands actually only modify the RAM copy of variables in the system. This allows temporary change of parameters "on the fly" to test features, minimizes power usage and saves on flash re-write cycles. Once all configuration is complete, the user should be sure to use the save command to store the configuration data, otherwise it will not take effect upon reboot or reset. Multiple configurations can be stored by using the save command, and these configurations can be loaded using the load command. These files can be upload to remote FTP site, such that once a desired configuration is created, it can quickly be copied into additional devices (cloning). www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 -9- Roving Networks Wifly RN-111B User Guide Version 1.23 4.1. SET COMMANDS These commands begin with "set". There are 6 major categories. 1. COMM- communication and data transfer, timers, matching chars. 2. IP -IP settings. 3. SYS - system settings such as sleep and wake timers. 4. TIME - timer server settings. 5. UART - serial port settings such as baudrate and parity. 6. WLAN - wireless interface settings, such as ssid, chan, and security options. COMM PARAMETERS - TCP connection status strings set comm close sets the string to send locally when the port is closed. If no string is desired, use the command set comm close (without the parameter) set comm open sets the string to send locally when the port is opened. set comm remote sets the number of bytes to receive before forwarding. COMM PARAMETERS - receive data forwarding set comm idle sets the idle disconnect timer in seconds, causes disconnect if no transmit or receive data is seen. set comm match sets the decimal value of the matching character to search for to initiate forwarding. 0 disables. set comm size sets the number of bytes to receive before forwarding 0-1 forwards immediately. maximum value = 255 bytes. set comm time sets the number of 10 millisecond intervals after a byte is received to begin forwarding data. 0 disables. IP PARAMETERS set ip address sets the IP address. Numbers are SPACE delimited. Example : "set ip a 10 10 10 2" set ip dchp <0,1> Enable or disable DHCP client. set ip gateway sets the gateway address. set ip host sets the remote host address. set ip backup sets a secondary host address. set ip localport sets the local port number. set ip netmask sets the netmask. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 - 10 - Roving Networks Wifly RN-111B User Guide Version 1.23 set ip protocol <0,1,2,3> set ip remote set ip ftp sets the protocol. 0=UDP, 1=TCP client, 2=TCP server, 3=UDP server. sets the remote host port number. sets the ftp server address. set ip uport sets the ftp server port number. SYSTEM PARAMETERS set sys autoconn TCP mode: sets the auto-connect TCP timer. 0 disables. set sys autosleep UDP mode: sets the auto-sleep timer. 0 disables. set sys iofunc set sys mask sets the IO port alternate functions. Bit-mapped value. sets the IO port direction mask. Bit-mapped value. set sys printlvl sets numerous print functions. Bit-mapped value. set sys output sets output PIO pins to HIGH or LOW. Bit-mapped value. Optional mask only sets a subset of pins. set sys sleep sets the sleep timer. 0 disables. set sys trigger sets the sensor input to wake on (1-4). set sys wake 0 disables. sets the auto wake timer. 0 disables. TIME SERVER PARAMETERS set time address sets the time server address. This is also the server address for UDP packet mode. set time port sets the time server port number. set time enable <0,1,2> Enable or disable time server. 1= get time on powerup. 2=get time continuously every 60 seconds. UART PARAMETERS set uart parity sets the UART parity. Example : "set u p e" sets even parity set uart baud {1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600 }. Example : "set u b 9600" sets the baudrate to 9600 baud. set uart raw sets a RAW uart value. Used to set non-standard rates. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 - 11 - Roving Networks Wifly RN-111B User Guide Version 1.23 Example : "set u r 760" sets the baudrate to 7200 baud. set uart flow <0,1> sets the flow control mode. 0=off, 1= hardware RTS/CTS. set uart tx <0, 1> Disables or enables the TX pin= PIO0 of the UART. set PIO0 to an INPUT with weak pulldown. Disable will WLAN PARAMETERS set wlan auth sets the authentication level. 0= disabled, 1=WPA-PSK, 2=WPA2-PSK, 3=WEP-128. set wlan channel sets the wlan channel, 1-13 is the valid range for a fixed channel. If 0 is set, then a probe scan is performed, using the ssid, for all the channels set in the channel mask. set wlan key sets the WEP key. key must be EXACTLY 13 bytes (26 ASCII chars). Data is expected in HEX format, "0x" should NOT be used here. Example : "set w k 112233445566778899AABBCCDD" Hex digits > 9 can be either upper or lower case. set wlan mask sets the wlan channel mask, bit-mapped value. Bit 0 = ch 1. set wlan num sets the default WEP key to use. 1-4 is the valid range. Example : "set w n 2" sets the default key to 2. set wlan phrase sets the passphrase for WPA security modes. 1-64 chars. The passphrase can be alpha and numeric, and is used along with the ssid to generate a unique 32 byte Pre-shared key (PSK), which is then hashed into a 256 bit number. However, if exactly 64 chars are entered, it is assumed that this entry is already an ASCII HEX representation of the 32 byte PSK and no such processing is done. Example : "set w p password" sets the phrase. set wlan ssid sets the wlan ssid to associate with. 1-32 chars. set wlan rate sets the preferred wlan data rate. Default = 1. Valid settings are: 1 = 1MBit, 2 = 2Mbit, 4=5Mbit, 8 = 11Mbit. Note that the effective range will be reduced as the datarate is increased. set wlan window sets the TCP max. buffer size. Default is 1460 bytes. www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 - 12 - Roving Networks Wifly RN-111B User Guide Version 1.23 4.2. GET COMMANDS These commands begin with "get". They represent the stored values as configured. get com display comm. settings. get ip display IP address and port number settings. get mac display the device MAC address. get port return current value of the PIO pins in hex format. get sys display system settings, sleep, wake timers, etc. get time display the time server UDP address and port number. get wlan display the ssid, chan, and other wlan settings. get uart display the UART settings. In addition to the above, there are a few other useful commands available. ver return the software release version 4.3. STATUS COMMANDS These commands begin with "show", and they return the current values of variables in the system. In some cases, for example IP addresses, the current values are received from the network, and may not match the stored values. show net Displays current network status, association, authentication, etc. show rssi Displays current last received signal strength. show stats Displays current statistics, packet rx/tx counters, etc. show time Displays number of seconds since last powerup or reboot show i Displays IO pin levels status in this HEX format: 8ABC Example: show I returns show c Bit loc function value 8103 indicates pins 0, 1 and 9 high level. Displays connection status in this HEX format: 8XYZ 13-16 fixed 8 9-12 channel 1-13 7 DNS found 1=resolved 6 DNS server 1= contacted www.rovingnetworks.com support@rovingnetworks.com Phone 408-395-6539 - 13 - 5 Authen 1= OK 4 Assoc 1=OK 0-3 TCP status 0= Idle, 1=Connected 3= NOIP 4= Connecting Roving Networks Wifly RN-111B User Guide Version 1.23 4.4. ACTION COMMANDS $$$ Enter command mode Characters are PASSED until this exact sequence is seen. If any bytes are seen before these chars, or after these chars, in a 1 second window, command mode will not be entered and these bytes will be passed on to other side. close Disconnect a TCP connection. exit Exit command mode. Exit command mode. "EXIT" will be displayed. open TCP connect. The device will attempt to connect to the remote stored address and port number. Ping Ping remote host. Default sends 1 packet. Optional sends pings at 10 pings per second. Use "Ping 0" to terminate a ping command. ping g reboot pings the gateway. Forces a reboot of the device (similar to power cycle) scan