Arduino and ESP8266

Right now, I am working on a prototype to log the temperature and humitidy values in a thingspeak channel using ESP8266 and Arduino. I am facing issues getting response from ESP8266 from Arduino IDE.

Here are the details of my connection;

  1. I am connecting Arduino(Rx-Tx) to ESP(Tx-Rx) respectively.
  2. I am using voltage divider to get 3.3V across the ESP RX connection from 5V arduino TX.
  3. I have seen some forums stating to connect Rx-Rx and Tx-Tx to get the response from ESP when uploading a "BareMinimum" sketch to arduino. I tried this and i got the response. But I feel this is not the way to communicate when you are using ESP as a host. It has to be Rx-Tx connection.
  4. I am using version ESP8266-01 version. Is this version not compatible?
  5. Do i need to flash it to the latest firmware?
  6. ESP8266 blue led is blinking while uploading the code.So I think the wifi module isn't bricked yet. Even red LED blinks.

I need some guidance what are the other options i need to check for this to work. Let me know if you need any more details

I am using the following instructable as a reference


which arduino do you use?

if you stick completely to the instruction you provided (given that you are using the arduino uno), you won't be able to see anything from esp8266 since the uno has only one serial port. But to see something from esp8266 on your serial monitor you need two serial ports. One to communicate with the esp and one to communicate with your computer (serial monitor).

You could use the SoftwareSerial Libary to provide a second serial port. In that case you should use the SoftwareSerial port to communicate with your esp8266 and the build in serial port to communicate with your computer.


Thanks for replying. Yes, I am using Arduino UNO. I will check with the SoftwareSerial as per your suggestion.

I will try with Arduino Pro Mini which has two RX-TX pins in which case, i don’t need a SoftwareSerial. Am I right?


Unfortunately you are not :frowning:

As you can read here:

the Arduino has only one serial port as well

Serial: 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the TX-0 and RX-1 pins of the six pin header.

I am not sure if the Arduino mega is the only one providing several serial ports, but you can have a look at it:

Basically I am from aerospace background, so lot low in this electronics and serial communication stuff.

What I understand from what you said is, there are two RX-TX pins on ProMini. But one RX and TX will be connected to USB-TTL and other two RX and TX will be for serial communicating. Earlier I was in misconception that the RX and TX connected to upload the sketch via USB -TTL can be used for serial communicating as well. This made me think to connect the other RX and TX on ProMini to the ESP8266 TX and RX. Did I understand that correctly or is there some other reason.

Thanks for educating.

The two RX pins and the two Tx pins on the promini are connected together,as are the Vcc,, and Gnd/CTS pins. The only unique one is DTR, which goes thru a 0.1uF cap before connecting to Reset. The set of 6 pins on the end are to conveniently plug on an FTDI Basic for the most part.
Same as I did here on these 1284P boards.

Did you know you could program the ESP8266 directly?


Yes I knew a little about it. In arduino 1.6.2 ,they added esp8266 as a board and using arduino IDE, one can program ESP.