WiFi Shield R3 - Issues Connecting

Greetings, fellow hackers!

I'm pretty new to Arduino, but I feel pretty confident with the examples.

I picked up the official WiFi shield, R3, but I've had absolutely no luck getting it to connect to my network. I'm using the ConnectWithWEP example code, making the necessary changes to suit my network configuration. If it matters, my router is currently running in BG mixed mode.

I've tried re-flashing the firmware with the binaries that are on github, but the lack of documentation on which is which is frustrating. Flashing with the dnld firmware seems to work just fine, but the board is unable to be detected and the example fails with "WiFi shield not present". However, the "Link" LED illuminates briefly, then goes out and the "Data" LED illuminates and remains indefinitely.

Re-flashing again with the HD firmware works okay, but it returns a status code of 0 when begin() is called, which maps to WL_IDLE_STATUS, making no sense at all. While this is going on I get a solid "Error" LED.

Can someone please point me in the right direction here. This is getting frustrating, and after spending $80 on the thing I'd like for it to work.

Oh yeah, I forgot to mention that I'm working with an Uno R3.

I just changed the network from WEP to WPA-Personal, updated my code, and everything works as expected with the wifiHD firmware. Thus, I believe this to be a bug in the WEP support. Has anyone else run into this and if so, what was the fix (if any)?

Not yet. I am only using WPA2. Just wait until you get connected and try to client.print a string more than 90 bytes long. It will not be sent and it's not documented at all. I did the same thing as you did in terms of flashing one of my two wifi R3 shields. I then couldn't use the original wifi library and had to switch to the "latest" library. But since they added UDP support, the firmware+library has not worked with iOS on HTTP requests. Server.available() keeps getting problem only with iOS devices. I have to revert to older library with original R3 and then the problem goes away. I am in contact with someone in the arduino trying to resolve the 90 byte send limit issue. I recommend you do this too. Post a comment here:


They do get back to you.

Good luck. Too bad you flashed your wifi. Now there is no way to go back.

I think you can go back to prior firmwares by using the "history" button in the github repository for the official code. It's a little confusing, but I think it is there.


I have been having trouble too with the latest firmware. I will test your idea that it only works with the latest library. If so, that is very confusing because I have multiple wifi shields running different levels of software/firmware.

Thanks fpga6. But I still don't know which one of them in history the R3 ships with.

Well you have the firmware you used to re-flash the device so what do you have to loose, Try them both...

is the WiFi board properly mounted onto the uno? all pins connected?