I have bought this shield from ebay and now I don't know how to use it, ESP 12E ESP8266 UART WIFI Wireless Shield for Arduino UNO R3 Bouclier Sans filfr:

Photo of shield

There are no instructions in the box or anywhere on internet for this board. The only description I found everywhere is this:


  1. Standard pin interface to achieve full compatibility with the pitch Arduino Uno, Mega and so on. (Unless the standard size Arduino, such as Nano, Mini)
  2. 3.3V power supply using advanced chip (with the official expansion board power chip CC3000 same), so 3.3V Arduino board provided more accurate, so ESP8266 as official CC3000 chip work as normal, there is no gap.
  3. It leads to a WiFi module power supply / service interface to facilitate developers to extend the power supply and maintenance.
  4. Onboard ESP8266-12 stable industrial grade serial WiFi module, using an enhanced PCB antenna, signal better.
  5. You can quickly switch DIP switch ESP8266-12 industrial grade WiFi stable operation mode (such as operating mode and upgrade mode) module, integrated serial chip, quickly flashing the firmware.
  6. Built-in 5V to 3.3V TTL level converter to prevent high-pressure Arduino TTL level of the WiFi module damage.
  7. Onboard ESP8266-12 stable industrial grade WiFi module with a metal shield, immunity to interference.
  8. Onboard ESP8266-12 standard pitch leads to a stable industrial grade WiFi module all interfaces, enabling developers to easily develop deep.
  9. Use stackable design, it can continue to accumulate above the other modules, easy to use.
  10. Onboard four LED displays the status of ESP8266, namely PWR, DFU, AP, STA

What should be the board settings for this?

I am new to electronics please help me how can I connect this with Arduino.

  • I presume you plug it into the Arduino, as it is a shield. Are you asking how to code for it?
    – Nick Gammon
    Jun 7, 2016 at 23:03
  • yes I need some generic library so I can run simple code for that device, I have code
    – Teenenggr
    Jun 9, 2016 at 16:02
  • Very often the seller list example code and libraries, did you try those?
    – Avamander
    Jun 13, 2016 at 18:54
  • thry didnt list anything and I didn't found anything anywhere, I searched lot, I search same device on ebay and other sites but nothing found in description
    – Teenenggr
    Jun 14, 2016 at 17:39
  • Nice board, but I'm also puzzled why you bought it if you don't know what to do with it. Did you have something in mind when you got it? More background is required. If you have code, post it. Describe what it does, what it doesn't do and what you're trying to but can't achieve. The possibilities with this board are really endless
    – Madivad
    Jun 18, 2016 at 8:09

6 Answers 6


There are some fake Modules on eBay! Only after changing the wiring can you use them. The fake modules have the wrong text printed on it.

Moer info $ tech

instead of

More info & tech

Example Fake

But when you change the wiring you can use the shield!

The two transistors which are connected to Arduino board pin 0 and 1 have to disconnected. Also the connection to the switches 1 and 2 have to change. Then you can stack ESP-12 shield on the Arduino. You can now flash the Arduino Uno when you switch off (switch 1 and 2) With the old wiring you can't use it because the transistors are wrong connected.

The voltage divider is need for 3,3 V ESP-12 RX pin



Just to add to Andreas' answer, this is what the shield's circuit looks like at the board level:

Layout of ESP8266 shield components

For connecting to a 3.3v Arduino I found the neatest solution was:

  • Remove all the components from the area above
  • add 2 small bits of wire to short the areas shown in green above
  • Switch the DIP switch so 1&2 are towards 'ON' (to connect serial to D0/D1) and 3&4 are 'OFF' (to disable the bootloader)
  • Use with your Arduino on D0/D1 at 115200 baud

(You may have to flash you own ESP8266 command firmware using the debug port and a USB-TTL converter, in which case setting 3&4 to 'ON' and resetting the ESP8266 will stick it into bootloader mode. If you're doing this you can also send AT+UART_DEF=9600,8,1,0,0 to put the ESP8266 into 9600 baud mode permanently if you're using an Arduino that can't handle the higher baud rates)


Same Shield here, the most useful guide I've found is https://www.espruino.com/arduino-esp8266

The DIP switches are:

Switch  Function
SW1 Connect ESP8266 TX to pin D0
SW2 Connect ESP8266 RX to pin D1
SW3 Enable bootloader mode
SW4 Use DFU LED to show serial activity (?)

For connection to the Arduino, just stack the shield over the Arduino board. Shield Arduino connection
(source: robotshop.com)


A search on the designer's name turned up a few posts by people working with this board. This post was the most useful one I found. I don't have this shield and haven't tested this poster's instructions, but it seems worth trying:

Hi! Finally back here, more enlightened! :D I have finally done some stuff with the 8266 shield. I just wanted to share it with you all. Since I know I wanted all this before I started. I write all this a little bit as a "for dummies" just to make sure every step is included. So to be more precise, I use a Arduino uno with a (se below).

1: (identifying) The shield is a "ESP8266 ESP-12E UART WIFI Wireless Shield for Arduino UNO R3" (from Ebay). Since there seems to be none documentation about this board, hopfully this will help you. I think there was some pictures before on this thread. On my board it states:

"Arduino ESP8266 Wifi shield. Version 0.9 by WangTongze." (and 1.0.. I've got two)

Here is a good link to identify which ESP8266 module you got if you want to know exacly what you got (if it is a different wifi board) : wiki/doku.php?id=esp8266-module-family

There a 4 DIP switches on this board are numbered from 1-4. To be honest I really don't know what 1 and 2 is. But my guess is that you can use TTL levels on TX & RX opposed to 3.3 which the 8266 module uses directly. These two are always set to DOWN for me. Second though, if so, I might set them to UP when using Arduino. I usually play around with the board with a USB to 232 converter when testing. The other two, 3-4, are connected to GPIO 0 and something else xD. I really doesn't matter really. All I know, that I set these to UP to start a firmware update. Here is a good link that might be somewhat equal to what the shield has implemented.

http://blog.falafel.com/how-to-wire-the ... ogramming/

2: (using Arduino with the shield) So everywhere, including this thread states that Arduino UNO doesn't handle the software emulated serial very good at high speeds. That is true :D So I got it to work perfectly with a baud rate 9600. What I did was to find a firmware that has default baud rate 9600 from AI thinker. I never really got the baud change to work. AT+CIOBAUD=9600 never got stuck after a reset (rst button och a AT+RST). And the other AT+IPR=9600 broke the firmware. If someone got this to work, please write here in this thread!!

Here is a link: http://wiki.aprbrother.com/wiki/Firmware_For_ESP8266

The only wiring I did to make it work, is to connect the tx and rx to Arduino's pins. (rx->tx and tx->rx). According to this example: http://allaboutee.com/2014/12/27/esp826 ... d-circuit/ connect to pins 2 and 3. The tx and rx from the 8266 shield are located on the left down side. There are other pins you can use also.

3: (flashing a firwmware) To set the board on flash mode, put the DIP switches to 3-4 to UP, press the 'ESP-RST' button. When flashing is done, set these to DOWN and press the 'ESP-RST'. Maybe there is a way to flash a firmware with the Arduino, but I finally bought a "FT232RL 3.3V 5.5V FTDI USB to TTL Serial Adapter Module for Arduino Mini Port T". There is a picture here: http://blog.falafel.com/how-to-wire-the ... ogramming/. I use this flash software:

https://github.com/Stadslab/ESP8266_exa ... te%20Ready

Because you can't really do any setting with it and it has worked 100% of all time for me and my use.

So to connect the FT232RL to the 8266 board:

(pins down) from left to right you have: dtr, rx, tx, vcc,cts and gnd and on the wifi shield from left to right: txd, rxd, 5v, gnd, 3v3. rx->txd, tx->rxd, gnd->gnd, vcc-> 3v3. Remeber that the FT232RL board has a jumper to change the voltage. You should use 3.3v. But for me I had some problems flashing, so I actually the the voltage to 5v and then connect the vcc to 5v connector on the wifi board. Never had any problems after that.


I just managed to get mine working and wrote a blog article about it. Long story short:

  • Set all DIP switches "off"
  • configure the ESP8266 to use 9600 baud using the AT command "AT+UART_DEF=9600,8,1,0,0"
  • connect debug ports RX/TX to Arduino pins of your choice (not being pin 0 and 1)
  • Use the WiFiEsp Lib and tell it to use "your" pins and 9600 baud

In addition to Andreas' answer, I believe he is correct about the general wiring of the 2 pins #0, #1 for some cheap clones.

I got mine to talk to the serial monitor (Arduino) by jumpering over the shield pins directly to the header pins next to the ESP-12E module.

This is at 115200 baud and Both NL and CR on the serial monitor.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.