Adapter for ethernet shield to communicate on WiFi

I have a project based on the Ethernet shield A000075 that I would like to make it to communicate over Wifi. I do not want to change any of the code. The idea would be to buy an adapter that takes wired Ethernet and transceive on Wifi.

I don' t think that a WiFi router is what I am looking for, because I do not want to create a new WiFi network.

What would be the cheapest easiest solution?

I would first try to use a WiFi shield. The Arduino Network API is pretty standard, so you wouldn't have to change your code much, just include the WiFi Shield library instead of the Ethernet Shield library.

That being said, if you really want to keep using the Ethernet shield, you have some options.

You could use a WiFi-enabled computer, and bridge the WiFi to Ethernet. The obvious downside is that you always need to have the computer on.

A second alternative is to get a wireless router that can be used as a wireless bridge. Here's an ancient article, but you get the idea: Linksys Official Support - Configuring an Access Point as a Wireless Bridge

The last option is to use a router that doesn't support wireless bridging (maybe you have an old one lying around), and flash it with custom firmware, like DD-WRT or OpenWRT. Using this firmware, you can then enable wireless bridging.

If I had to do this myself, I'd just use a WiFi shield or an ESP8266, because it is well-supported, and there's a ton of information available, because it's such a standard solution.


TL-WR702N. I use it to test my code with Ethernet shield in a house with WiFi only


If you want to use an ESP8266 shield instead of the Ethernet shield, this library has pretty much the same API as the Ethernet library and so you will only need to make very minimal changes to your code:

Thanks for all your great ideas! I will buy the TL-WR702N.

Which arduino pinout ESP8266 shield would you recommend?

Two years ago, I had SparkFun WiFi Shield - ESP8266 - WRL-13287 - SparkFun Electronics, but there was a small difference with the Arduino Ethernet API and I stopped putting effort into making it compile with my code. I used ESP-01 ESP8266 with purely my own code. I had some transfer problems on rare occasions.


That SparkFun shield is nice because you can switch between using pins 0/1 and pins 8/9 as the connection to the ESP8266.

For an Uno I think the SparkFun is the best shield because it's really a pain to have the ESP8266 connected to pins 0/1 and since Serial is the only port on the Uno software serial is the best choice.

For Leonardo I would probably recommend the "" shield you find on eBay because it has the headers pre-soldered and is cheaper. There would usually be no good use for the SparkFun shield's connections on pins 8/9 since pins 0/1 on the Leonardo are a spare hardware serial port instead of Serial as on the Uno.

For the Mega I would want to connect the ESP8266 to Serial1-3 and none of the shields has those connections. So again I would recommend the "" shield because you're going to need to modify the connections no matter which shield you buy.

I used the Due with Visual Micro for the project in question.

In the future, I will be using the Arduino M0 Pro because I have better debugging in Atmel Studio 7.