Using Wifi Shield WLS06201P with Mega

I have the Wifi Shield WLS06201P connected to my Mega:

Remove the header jumpers from the TX/RX pins Jumper WIFI_TX to Mage Pin 10 (black wire in photo) Jumper WIFI_RX to Mega Pin 11 (yellow wirein photo) Alter the definition of WiFly class for pins 10,11: WiflyClass Wifly(10,11);
What this does is allow the shield’s library, which uses the SoftwareSerial class, to communicate with the Mega using pins 10 and 11. The Mega doesn’t support SoftwareSerial on pins 0-7: “Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69”

The WiFly device is now pingable. I have some garbage in my serial port monitor, but those characters are the “connection refused” TCPIP packet returned from the computer I am connecting to. Now I can get to work on a communication protocol between the Mega and other computers.
Screen Shot 2013-03-17 at 12.35.10 PM.png


We already have a new library(and demo) for Wifly. It will be release coming soon.

Hey thanks,

I am also thinking of rewriting the library for Serial1,2,3 etc for the Mega, if I have time. I’ll post a link here if I get around to that.

The RN-171 is a great choice for a module, it has a lot of interesting capabilities.

Thanks wsanders for your detailed description - it worked fine for me.

Please notice that the following library is available and works for your configuration:

WiFlyHQ - available in github ( the board did not allow me to post the URL )


Hi i posted this in other topic, but then i tought maybe if i posted here it would be more appropriate, so here it goes.
Im using mega 2560 with the RN-171, the very same in the picture posted in by wsanders.
I get messy characters on console and i dont think im connecting because both D1 and D5 are still blinking.
Im using the softwareserial library and the WiflyHQ-master i saw here, still i can’t understand why it doesn’t work.

here is my code:

#include “Wifly.h”
#include <SoftwareSerial.h>
WiflyClass Wifly(10,11);

void setup()
void loop()
Any ideas are welcome.