loading

This instructable will cover the basic steps that you need to follow to get started with the ESP8266 ESP-12.

A lot of this content is already out there, but I had a hard time getting everything in place, and the different tutorials can cause a great deal of confusion, which is why I have tried to make the simplest setup possible.

Specifically, this instructable will cover how to make the ESP-12 behave as a WiFi client by connecting to your home wireless network and how to send sensor data ( we will send random numbers to test, and will not really be covering sensors in this instructable) to a Thingspeak channel.

The following are the materials we will be using :

1. ESP8266 ESP-12 module

2. CP2102 USB to UART Serial module

3. LM1117 3.3V Voltage Regulator

4. Jumper Wires

5. 5V Power adapter

Step 1: Breakout the ESP8266 ESP-12 Onto a Perforated Board

The ESP-12 has a 2mm pitch, which means you cannot access all the pins on a breadboard or a perforated / dot matrix directly, which have a 2.54mm pitch (distance between adjacent pins).

You could use a Xbee adapter board, but there's an easier way out. Take a small length of single strand cable or multi strand cable, and get a spider web breakout like this. I added two rows of pinouts, to make sure the pins were handy. Here's what it looks like.

<p>Hi, Why others using 10K resistor, I used your instructiona and my boards LED doesnot light any more.</p>
<p>Thankyou <a href="https://www.instructables.com/member/ankitdaf/" rel="nofollow">ankitdaf</a>,<br>I was messing around with this ESP-12 and was not able to make it respond.</p><p>This instructable has helped working my ESP.</p><p>Regards.</p>
<p>Progress here! See my post elsewhere on the 12-e post. No one has mentioned that FOUR files need to be flashed to it - but I did and it works. How are you doing with yours?</p>
<p>Mine didn't need flashing initially. It came with the AT firmware on it.</p>
@BoB6, can you please post the link here to your post?
I hooked TX to TX &amp; rx to rx and got mine going.
<p>yeah, some USB to serial converters work like this, I have a PL2303 which works like this.</p>
<p>Hi Dawer,</p><p>I have a PL2303 module. my connections are following</p><p>tx of TTL converter to rxd of esp, similarly rx of ttl to TXD of esp.</p><p>GPIO0 is grounded. I am not getting any out on the serial monitor (not for any speed).</p><p>You are saying i should exchange the wires right. </p><p>Can you please help. </p>
<p>Got to work successfully.</p><p>I forgot to reset the device after connecting to ttl. Needed to adjust the speed to 115200 baud, and then hurray...</p><p>Ai-Thinker Technology Co.,Ltd.<br><br>ready<br>AT<br><br><br>OK<br>AT+GMR<br><br>AT version:0.40.0.0(Aug 8 2015 14:45:58)<br>SDK version:1.3.0<br>Ai-Thinker Technology Co.,Ltd.<br>Build:1.3.0.2 Sep 11 2015 11:48:04<br>OK</p>
<p>hi dawer_saeed, i have PL2303 too. But i cannot upload the sketch. Can you share the connection? Thanks</p>
<p>can you please post your connections what you are doing?<br>it would be good if you could post a fritzing circuit diagram.</p>
Still struggling with it, making some progress. Using the common connections. Only confusion is GPIO2 which SOME say it needs connected to +3.3. NO decent docs ANYWHERE n the web. :) I'm doing Arduino only with it.
<p>Actually you dont need to hookup the GPIO2 at all to make it working.</p><p>can you share your current circuit you have made?</p>
<p>BTW, how did you figured it out, that some other GPIOS also needs to be connected to Vcc or GND?<br>Did you get any official document on ESP-12?</p>
<p>I have been trying to use the esp8266 e12 wifi module to respond to AT commands now currently i dont have the usb to ttl converter so m using the arduino uno as usb to serial converter,i have connected the reset to the gnd in arduino board, but still while making all the connections and trying to flash the esp failed! i have connected tx and rx of esp to the tx and rx of arduino respectively..howevr i have used the 3.3v of the arduino to power the esp...on opening the serial monitor in arduino ide all the baud rates except 74880..on that baud rate while connecting the rst pin to gnd a msg poped &quot;ets Jan 8 2013,rst cause:2, boot mode:(1,7)&quot; and it is also not accepting any AT commands...pls help im in a fix....</p>
<p>I had the same issue then I used 115200 and it worked with AT commands.</p>
<p>but using the 3.3v from the arduino to power up the esp affect its performance ??? cz the led on the esp isnt lighting up...and moreover i used the 115200 baud rate but all that its showing is some highly random words all jumbled togethr possesing no sense</p>
<p>Yes, you need a better power supply in my experience. Give this article a read if you can't get it to work: http://internetofhomethings.com/homethings/?p=396</p>
<p>I designed a nice little PC board for the Esp12-e- here it is. If anyone wants the CAD files, -let me know. I have 7 circuits designed specifically for Esp12-e and IoT Home Automation-</p>
<p>Apart from GPIOs difference, are there any other significant differences between ESP8266-12 and ESP8266-01?</p><p>Thanks!</p>
<p>Please how can I program the built-in MCU of the ESP8266 using my C language compiler and use it for other purposes? I appreciate all contributions to my questions.</p>
<p>HELLO !<br>This is my problem .<br>Can you teach me,how to solve this problem .<br></p>
can I use ld33 ic instead of lm1117
<p>Yes . Just see the pin configuration before using.</p>
and is there any extra driver or board in arduino ide is needed. if not then which board I choose
<p>Interesting, but perhaps I can make a contribution for people who dont get any response to the AT commands: I bought an ESP8266-12E module and separate BOB, soldered it all together, followed the instructions here....no reaction on AT at all. briefly connected reset, no response, change Baudrate, 9600, 115200 back and forth, double checked my connections, tried again... no result.<br>Kinda curious and eager to know if maybe i had a faulty module I thought 'heck with it' connected GPIO0 to ground and flashed a program. I admitt to my surprise that worked immediately, module works fine.<br><br>So maybe some modules just don't come with the Expressif AT commands flashed into them. Now having said that, i didnt try the baudrates between 9600 and 115200 but i guess I should have seen at least some gibberish in the serial monitor if being off with the baudrate was the only problem</p>
<p>Hola, un ejemplo mas de uso facil de ESP8266. Saludos mam@tinet.org</p><p><iframe allowfullscreen="" frameborder="0" height="281" src="//www.youtube.com/embed/bAA2Hnxggm8" width="500"></iframe></p>
<p>Thank you, but i didnt have a problem with i2c, nevertheless, tnx</p>
<p>were you seeing the led flash when it powered up? My led isn't lighting up. I'll try flashing a program next.</p>
<p>I dont think I saw it flash on powerup (when there is no program in it)</p>
<p>hello!<br><br>I'm having the same problem here, and I think the lack of a firmware might be my problem too!</p><p>But at this moment I do not have the USB/Serial converter, so I'm using Arduino to communicate with ESP. Is there a way to flash the ESP through Arduino?</p>
<p>yes, You'll be using the USB-TTL part of the arduino.<br>However just a correction.. you do not need/want a USB to serial converter but a USB to TTL and the Arduinoboard has one. Make sure though that connect via a levelshifter and that you remove the Atmegachip. Which I presume you already did for your current communication with the ESP</p>
<p>hummmm... this may be another reason. I was using the 3.3v from Arduino to feed the ESP (there are a lot of examples on web that worked with it). <br><br>I'm going to try first a separate power source. If it doesn't work, I'll try to flash it using UNO.<br><br>Thank you!<br><br>PS - I'm using the Logic Level shifter... so the connections should be TX &rarr; TX, or TX &rarr; RX?</p>
<p>well hence my advice/ the 3.3 Volt of the arduino is insuffucient.</p><p>when you use the arduino's usbt to ttl interface you need to connect tx to tx-pin and rx to rx-pin via the levelshufter. that might seem illogical but the Tx of the converter goes to the Rx of the atmega, if you connect that subsequently to the Rx of the ESP then in fact the Tx of the converter goes to rx of the esp</p>
<p>Got it!<br><br>I thought it was unnecessary once the maximum DC current that the ESP drains is 170mA (below the limit of 200mA, of Arduino).</p><p>I'll try it.<br><br>Thank you very much!</p>
<p>but first you may want to make sure you feed the ESP through a decent PSU (3.3V) as it can be a bit hungry and if it doesnt get enough juice then it may do a continous reset</p>
<p>Hi,</p><p>I am not able to type any AT commands in Arduino Serial Monitor or in Putty. I am using 9600 baudrate.</p><p>When I connect REST to GND, I see the messages [System Ready, Vendor:www.ai-thinker.com]. But I am not able sent any commands.</p><p>This is my configuration. </p><p>Tx of ESP8266 -&gt; Rx of CP2102</p><p>Rx of ESP8266 -&gt; Tx of CP2102</p><p>GND of ESP8266 &amp; GND of CP2102 -&gt; GND of LD33V</p><p>VCC of ESP8266 -&gt; VOut of LD33V</p><p>GPIO15 -&gt; GND</p><p>CH_PD -&gt; VCC</p><p>GPIO2 and GPIO0 -&gt; VCC</p><p>Any inputs on this will be much appreciated :)</p>
<p>first u have to check the baud-rate of your esp , probably it's working on 115200</p><p>after connecting don't forget after typing AT to press CTRL M then J</p>
<p>You should check if your ESP board supports 9600 baud rate. Most of them only support 115200 baud rate, unless you upgrade the firmware.</p>
<p>Thank you so so much. I didn't know what was I doing wrong. I had everything properly installed and it wasn't working. Changing the baud rate from 9600 ---&gt; to 115200 immediately fixed the problem. </p>
<p>Try to connect RX of ESP to RX of serial, and TX of ESP to TX of serial. all other as you are connecting now. </p>
<p>This might be an issue with the Reset pin, did you try pulling it up ?</p>
Yes I tried connecting RST-&gt; VCC. But it was still giving repeated System ready messages.
<p>I had to set baud rate to 115200 for esp-12f.</p><p>Before AT+CWJAP command I had to use AT+CIPMUX=1</p>
<p>Note that I find that AT+CIPMUX=1 needs to be done on each reset</p>
I want to control 6 relay for home automation.which ESP should i use?
<p>Great! i made it. it was a little confusing the pinout but reading some comments i can see <a href="https://www.instructables.com/member/kaushikw" rel="nofollow">kaushikw</a> comment about different diagrams shown. Also mi esp come with an adapter module that you have take care and desolder the &quot;0 ohm&quot; resistor in red.</p><p>and it has two resistors included for piup and pindown.</p><p>Finally i can improve mi first design and now it has no wires! you can call them mark1 and mark2 and making the second listen to the song has no price!</p>
<p>Thank you for your setup, it help me.</p>
<p>ESP8266 E12</p><p><br>ERROR WHILE UPLOADING .......<br><br>warning: espcomm_sync failed<br>error: espcomm_open failed</p>
<p>If that can help.</p>

About This Instructable

717,457views

442favorites

License:

More by ankitdaf:Turn your CC2541 based HM-10 Bluetooth Smart Module into an iBeacon Getting Started with the Daflabs ESP8266 ESP-12 Breakout Board Getting Started with the ESP8266 ESP-12 
Add instructable to: