Hello All,
First, I know I can technically just flash things to the ESP8266-01 without the Arduino. I couldn't get that to actually work so I wanted to use the ESP8266-01 out of the box as a Wifi connection for my arduino nano.
I have looked at a lot of tutorials for this setup and found they vary here and there. I have tried a lot of them but I am not seemingly able to get the Nano to talk to the ESP8266-01.
Here's how I have it all wired up (currently)
The 9VDC @1500mA is a 9V Power Supply I purchased online to give the ESP8266-01 enough current to not have it unable to perform. Should be overkill, but I read that the 3.3v out from the nano won't have enough on it's own plugged in via USB to make Wifi work.
I included a graphic of the ESP8266-01 So you can also see which pins are which.
The resistors in the middle-top area are a voltage divider so that the signal from the nano at 5V doesn't fry the ESP8266-01 which accepts 3.3V as HIGH. I read that somewhere too.
The TX/RX Pins are going to regular Arduino digital pins so the Nano can communicate with the ESP8266-01 via Software Serial libraries, since you don't get extra TX/RX pins to use for this from the Nano.
Here's the basic sketch I am trying to run:
---------------------------------------------------------------------------------------------------------------------------
#include <SoftwareSerial.h>
SoftwareSerial ESPserial(2, 3); // RX | TX
void setup()
{
Serial.begin(115200); // communication with the host computer
// Start the software serial for communication with the ESP8266
ESPserial.begin(115200);
Serial.println("");
Serial.println("Remember to to set Both NL & CR in the serial monitor.");
Serial.println("Ready");
Serial.println("");
}
void loop()
{
// listen for communication from the ESP8266 and then write it to the serial monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
---------------------------------------------------------------------------------------------------------------------------
I figured out that my connection to the ESP8266-01 needs to take place at a 115200 Baud rate based on some previous testing I did using an FTDI Connector and directly communicating with it through the arduino console.
When I run this sketch, all I get is a little bit of gibberish at the beginning as output from the ESP8266-01, and the rest of the sketch prints out it's startup stuff fine. I type in AT commands and sometimes get weird characters, and sometimes a few question marks (?), etc.
I am sure I am making a bunch of mistakes and bad assumptions in my wiring/coding, but I feel a bit stuck and could really use some help figuring out where I am going wrong.
Feel free to ask me to test a voltage on something or any other questions and I'll provide whatever other details I can.
Thanks!
-Steve
First, I know I can technically just flash things to the ESP8266-01 without the Arduino. I couldn't get that to actually work so I wanted to use the ESP8266-01 out of the box as a Wifi connection for my arduino nano.
I have looked at a lot of tutorials for this setup and found they vary here and there. I have tried a lot of them but I am not seemingly able to get the Nano to talk to the ESP8266-01.
Here's how I have it all wired up (currently)

The 9VDC @1500mA is a 9V Power Supply I purchased online to give the ESP8266-01 enough current to not have it unable to perform. Should be overkill, but I read that the 3.3v out from the nano won't have enough on it's own plugged in via USB to make Wifi work.
I included a graphic of the ESP8266-01 So you can also see which pins are which.
The resistors in the middle-top area are a voltage divider so that the signal from the nano at 5V doesn't fry the ESP8266-01 which accepts 3.3V as HIGH. I read that somewhere too.
The TX/RX Pins are going to regular Arduino digital pins so the Nano can communicate with the ESP8266-01 via Software Serial libraries, since you don't get extra TX/RX pins to use for this from the Nano.
Here's the basic sketch I am trying to run:
---------------------------------------------------------------------------------------------------------------------------
#include <SoftwareSerial.h>
SoftwareSerial ESPserial(2, 3); // RX | TX
void setup()
{
Serial.begin(115200); // communication with the host computer
// Start the software serial for communication with the ESP8266
ESPserial.begin(115200);
Serial.println("");
Serial.println("Remember to to set Both NL & CR in the serial monitor.");
Serial.println("Ready");
Serial.println("");
}
void loop()
{
// listen for communication from the ESP8266 and then write it to the serial monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
---------------------------------------------------------------------------------------------------------------------------
I figured out that my connection to the ESP8266-01 needs to take place at a 115200 Baud rate based on some previous testing I did using an FTDI Connector and directly communicating with it through the arduino console.
When I run this sketch, all I get is a little bit of gibberish at the beginning as output from the ESP8266-01, and the rest of the sketch prints out it's startup stuff fine. I type in AT commands and sometimes get weird characters, and sometimes a few question marks (?), etc.
I am sure I am making a bunch of mistakes and bad assumptions in my wiring/coding, but I feel a bit stuck and could really use some help figuring out where I am going wrong.
Feel free to ask me to test a voltage on something or any other questions and I'll provide whatever other details I can.
Thanks!
-Steve