Table of Contents
WiFly (GSX/EZX) Setup Guide
- red fast blinking (2 Hz): Module scans for networks / is not associated with a WIFI / can't connect
- green slowly blinking (0.5-1 Hz): No data traffic, but alive and associated
- no led on at all: Intense data traffic and associated
A non-blinking module therefore indicates “all ok”.
Official Roving Networks Documentation
- Connect 3.3V to VDD-BATT
- Connect 3.3V ALSO to VDD-IN
- Connect ground to GND
- Connect RX and TX (3.3V levels)
The green led will only light after about one second after power-up, after that it will slowly blink and the red led will flash slightly faster, at around 2 Hz.
mavlink start -d /dev/ttyS2 -b 230400
This is the command to be run on the NSH shell, but you can also run this on every startup. Custom startups are documented here.
To run MAVLink on TELEM1 on the default baud rate, configure the WiFly to 57600 baud.
You need to ensure that the serial link the WiFly is connected to is operating at the same baud rate as the configuration of the WiFly and that a MAVLink (or other serial) stream is active.
The module is initially configured at 9600 baud, no parity, 8 data bits, 1 stop bit. Start TeraTerm or screen:
screen /dev/tty.usbserial-FTFABC 9600 8N1
In Teraterm or screen, enter
$$$ Enter. The output should look like this (the version number will vary):
Do a quick Wifi scan to verify that the module is operational:
Set the UART baud rate to your preferred rate, e.g. 230400 (the last convenient baud rate, since the interface is still available):
set u b 230400
Save the settings and reboot:
Reconnect with your console:
screen /dev/tty.usbserial-FTFABC 230400 8N1
This guides assumes a recent access point with WPA2-PSK key management.
Set authentification to WPA2-PSK only:
set wlan auth 3
Set auto-channel scan:
set wlan channel 0
Tell the module to auto-join the network when powered on:
set wlan join 1
Set the wlan passphrase
set wlan phrase <yourpassphrase>
Set the wlan SSID
set wlan ssid <yourssid>
Enable continous scanning
set wlan linkmon 5
This guide assumes UDP communication to a ground control station computer on IP 192.168.10.200, port 14550 (QGroundControl default port).
Enable DHCP on each boot
set ip dhcp 1
Enable UDP and TCP
set ip protocol 3
Set remote port
set ip remote 14550
Set remote host
set ip host 192.168.10.200
Test and Save Settings
join <yourssid> ping 192.168.10.200
The output should be:
<2.23> ping 192.168.10.200 Ping try 192.168.10.200 <2.23> 64 bytes from 192.168.10.200: seq=1 ttl=64 time=5.71 ms 64 bytes from 192.168.10.200: seq=2 ttl=64 time=1.72 ms
Ok, all good, save and reboot
This should result in:
<2.23> reboot *Reboot*WiFly Ver 2.23, 04-26-2011 on 131C11 MAC Addr=00:06:66:14:a9:dc Auto-Assoc <yourssid> chan=2 mode=MIXED SCAN OK Joining <yourssid> now.. *READY* Associated! DHCP: Start DHCP in 103ms, lease=86400s IF=UP DHCP=ON IP=192.168.10.100:2000 NM=255.255.255.0 GW=192.168.10.1
Telnet Configuration for higher Baud Rates
If higher baud rates are to be used, the only remaining interface is to telnet to the device. Try to start a telnet session:
telnet 192.168.10.100 2000
Enter three times dollar and Enter:
$$$ CMD <2.23>
The version number might vary. It's now safe to set a higher baud rate (these higher rates have not been tested, just the setting and reverting back to 230400 via telnet):
set u b 460800 save reboot
To get the current IP of the update server, use ping to resolve the IP:
As of April 2014 this resolves to: 22.214.171.124, but quickly cross-checking the IP hasn't changed is probably worth the effort (note: these instructions were taken from reference ).
set ftp address 126.96.36.199 set ftp dir public set ftp user roving set ftp pass Pass123 ftp update wifly-EZX.img reboot
Now reset the original config to ensure the new firmware gets initialized properly. Do not forget that this reset also resets the UART config to the default 9600 baud 8N1 config.
$$$ factory R save reboot
And re-configure the module as described in the sections above.
Testing and Troubleshooting
Make sure your radio is set up correctly to send UDP packets to the computer running QGroundControl (it displays the IP addresses in the title bar). Either use tools such as e.g. Wireshark or, if you are certain that IP address and port are set up correctly, use the communication console in QGroundControl to test the setup by typing bytes manually (WHILE NOT BEING IN SETUP MODE) on the serial port going into the Wifly module. They should end up as ASCII text in the console Window of QGroundControl. You can verify that the WiFly serial port is operating fine by entering setup mode on the module - if this works, you can be confident that (after a reboot) any characters you type on the serial port will be transmitted via UDP.