After I dug more into the ESP8266 WiFi shield, I got curios, why the experiences were so different between various users.
I took a look around in at aliexpress and decided to order another shield. Here is what I got now:
The one on the left is the new „shield“, the one on the right is my well known „shiald“. Apart from a few visible differences (color, maintenance pin header, different ESP8266 version), these are the differences I found so far in their functionality:
|Wires to the debug port, switches off||works as expected||works as expected|
|Wires to the debug port, switches 1+2 on||doesn’t work(?)||works as expected|
|Wires to the debug port, switches 3+4 on||ESP can be flashed||ESP can be flashed|
|Shield mounted on Arduino Uno, switches off||no connection between shield and Arduino. Serial Monitor/Flashing the Arduino does NOT work anymore||no connection between shield and Arduino. both work independently|
|Shield mounted on Arduino Uno, switches 1+2 on||no connection between shield and Arduino. Serial Monitor/flashing the Arduino does NOT work anymore||shield is connected to the Arduinos hardware serial. Communication works fine|
|ESP-Link flashed onto the ESP8266||web interface is fast and stable. WiFi connection works fine||web interface is very slow/unavailable sometimes. Connection to WiFi networks is doesn’t work sometimes|
All in all, I’d highly recommend NOT to buy any of those shields. Their design seems to be flawed. If you still want to buy it anyway, I’d recommend the „shield“ variant. Even if it behaves more stupid than the „shiald“, it seems to provide more stable WiFi. Just bend pins 0 and 1 when attaching it to the Arduino and do the wiring manually as described in my other article.
In case your project is flexible enough and you need WiFi: Just use the something like a NodeMCU instead of the Arduino. You can still program it using the Arudino IDE, but it has the WiFi build in and way cheaper than the shield (or even the Arduino).
I have also seen a Version 0.9 of this shield in some shops, but I am not willing to invest more time and money in crappy hardware for scientific reasons 😉 . If someone has some experience with it, I’d be happy to read about it in the comments.
5 Gedanken zu „Arduino ESP8266 WiFi Shield (elecshop.ml) by WangTongze Comparison“
I have the one on the right, but with DIP 1+2 ON it does not connect to the hardware serial port… I checked with a DMM there’s no continuity between pin 0/1 and anything on the ESP chip itself as far as I can tell, also wiring the serial port to hardware serial with the shield attached yields receive only communication…
It has the old antenna pattern on the module like the one on the right but it seems pretty stable in the right location… I had it on the floor and it was loosing every other packet and since I put it on a chair where it seems happy it’s been stable:
Ping statistics for 192.168.0.xxx:
Packets: Sent = 26595, Received = 26448, Lost = 147 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1044ms, Average = 3ms
It’s suppper picky about it’s location… if I move it a few inches away from where it wants to be it starts dropping packets, but when it’s in a „sweet spot“ it is pretty stable… I will probably try moving it around since it’s WiFi and I can put it anywhere now and see if I can find a better location for it where it’s not so sensitive…
In it’s new more central location (closer to the access point) it’s giving really good ping responses but the web page doesn’t always load… When I had the serial monitor I was seeing occasional TIMEOUT messages from the library… Even though it’s not always sending me a webpage it seems to read my requested URL and then execute the code… So it’s half working reliably anyway but if you are trying to get info from the thing it may drive you nuts… If you keep trying though it will eventually respond to your requests as long as it’s got a stable connection to your network…
I was actually getting better page loads in the super sensitive location, though I am wondering if it might be power related again since I had to turn up the power on my nRF24 for it to work reliably further away from the other nRF module… In any case I think I’m done messing with this thing as it’s working the way I need it to… It’s worth the whole $6 I paid for it….
The connection between the ESP and PIN0/1 should be visible on the bottom. It’s hard to see, but at least with my shields, it’s there.
On my Shia1d the PIN0/1 are connected to voltage dividers (at the rightside of the ESP) and then via the dipswitch 1/2 to the Rx/Tx of the ESP
I have been able to get the ESP8266 WiFi shield (type shia1d) working on an Arduino UNO using the Webserver sketch example in the WifiESP-master library:
– on the shia1d pin0 = Tx (!) and pin1 = Rx of the ESP8266
– bend the shia1d pin0 and pin1 out, so these do not connect to the Arduino UNO’s hardware serial pin0/pin1
– I used pin10 and pin11 on the UNO for software.serial (Rx/Tx) in the webserver sketch
– on the shia1d jumper pin0 to pin10 ; pin1 to pin11
– Dipswitch 1,2 ON
– upload the webserver sketch, adjust the ssid and pass and SoftwareSerial Serial1(10, 11); // RX, TX
This setup allows the ESP8266 shia1d to be used as the WiFi device on the Arduino UNO