Introduction: Send Email With ESP8266 and Arduino UNO

How to get Adafruits "send_email_smtp.ino" to send email with ESP8266 and Arduino UNO.

And eliminating the problem with "no response from module" many have.

The module works on 3.3v logic according to documentation, but I had no issue with 5v rx and tx of arduino, play it at your own risk !!

Step 1: Firmware on the ESP8266

  • To get it working, must the firmware on the ESP8266 be version: 0.9.2.4 ! (old firmware!)
  • USB-connect the Arduino UNO and upload the "BareMinimum"-sketch with Arduino IDE software, so nothing disturb the flasher software. (Find the BareMinimum in "File" > "Examples" > "01.Basics" > "BareMinimum")

  • Take note of what COM-port the Arduino UNO use. (See your COM in "Tools" > "Port:")
  • Close Arduino IDE after upload and unplug power/USB.
  • Wirring the ESP8266 to the Arduino UNO as pictures above shows.

  • Connect the Arduino UNO to USB again.

  • Download flasher-software and the 0.9.2.4 firmware BIN-fil here : http://www.mediafire.com/download/zcw2gy07s2z60y6/ESP8266_flasher_and_0.9.2.4.zip

  • Unzip the files into a folder, and run the flasher software (esp8266_flasher.exe)

  • Click on the "BIN"-button and find the BIN-fil (v0.9.2.4 AT Firmware-ESPFIX.bin) in the folder.

  • Check whether it is the correct COM port or change it to the correct port.

  • To start the upload/flashing, Click on the "Download"-button
  • If everything is runs, will the flasher software show you the status of flashing and the blue LED on the ESP8266 will blink very fast.

  • If: Failed to connect, just try unplug USB and replug the USB again and click on the "Download"-button again !
  • In the end at 99%, it will show some error but this is ok.

  • The ESP8266 has now firmware version: 0.9.2.4 !!!

Step 2: Rewiring

  • Unplug power/USB.
  • Rewirring the ESP8266 to the Arduino UNO as pictures above shows. VERY IMPORTANT !!!
  • Download the "ESP8266 library" here : http://www.mediafire.com/download/q79ud0f6qzkvcv9/Adafruit_ESP8266-master.zip

  • Open the Arduino IDE software and import the library (click "Sketch" > "Include Library" > "Add ZIP. Library..." > find the Adafruit_ESP8266-master.zip -file and click "Open")
  • USB-connect the Arduino UNO again and upload the "send_email_smtp"-sketch with Arduino IDE software ("Files" > "Examples" > "Adafruit_ESP8266-master" > "send_email_smtp")

  • Now just see this YouTube video https://www.youtube.com/watch?v=n5WZ_BNRvRY
  • And adjust the same things as he does. :-)

Comments

author
Alexan24 made it!(author)2017-04-27

I keep getting this error. Any idea?? I changed HELO TO EHLO but nothing happened. :/

Στιγμιότυπο οθόνης (789).pngΣτιγμιότυπο οθόνης (792).png
author
Neavvy made it!(author)2017-03-26

In serial monitor I have "Hard reset...'

no response from module." Could someone help me please?

author
lalittsuwalka made it!(author)2017-02-18

I have followed all steps carefully as above. But after uploading program, when I open serial monitor it always shows :

Hard Reset...'
no response from module.

please help

author
mybotic made it!(author)2016-12-13

hi, may i know whether the connection of esp8266 to arduino mega is the same as the connection to arduino uno?

author
AnkitB4 made it!(author)2016-11-05

class Adafruit_ESP8266' has no member named 'cipSend'

plz help me to solve this problem?????

urgent

author
Eryn+Ahmad made it!(author)2016-11-30

hye, have you fix the error yet?

author
johnnyfrx made it!(author)2016-11-30

Have you tried changing HELO to EHLO? There are a number of causes of this error so we'd need to see more of your code.

author
johnnyfrx made it!(author)2016-11-30

Have you tried changing HELO to EHLO? There are a number of causes of this error so we'd need to see more of your code.

author
johnnyfrx made it!(author)2016-09-25

This has been a fun little project! I pretty much followed all instrux here and added a PIR sensor to the mix and used SMS instead of email notifications. Still need to use SMTP2GO to get around the TLS SSL security issues. So...for me this is now a portable security device of sorts, as long as there is WIFI nearby. When the PIR is tripped, i substituted its flag for the 'send it' flag. So now I get a SMS text to my mobile whenever whatever it is watching or guarding is violated. Pretty Cool! I wired all without any added voltage regulation. It's been running for the last 2 days without issues.

16 - 1.jpg
author
Eryn+Ahmad made it!(author)2016-09-27

Hello John, did you used an exact coding as given or did you changed any in the coding? :)

Big thanks

author
johnnyfrx made it!(author)2016-09-27

Hi There,

The only thing I needed to change was the SMTP command from HELO to EHLO. Once I did that, all finally worked. Obviously you'll still need to mod the accounts info and email server personalized to you. Let me know how you make out with it.

author
Eryn+Ahmad made it!(author)2016-09-27

I'm currently working out with this project but same as yours I used PIR sensor as to trigger the circuit. It will be an honoured if you can guide me throughout this process. Basically, I'm using gmail as an email from and the coding wants to define the host.

#define HOST "smtp.gmail.com"

#define PORT 587

The problem here is I'm not pretty sure about this two lines. Am I doing it right?

Thank you for helping me out :)

author
johnnyfrx made it!(author)2016-09-27

Hi there, Have you setup a smtp2go.com account? Gmail will not accept insecure connections, so you need a jump server of sorts, that being smtp2go.Let me know. Have a good night and I will check in tomorrow.

author
Eryn+Ahmad made it!(author)2016-09-28

Hai there, may I know what is your connections between the pir sensor to others? Because your pir sensor is differ to mine.

Big thanks.

author
johnnyfrx made it!(author)2016-09-28

I am running all on 3.3V. The PIR is on pin7.

author
Eryn+Ahmad made it!(author)2016-09-28

Thus you dont used 5v connection? is it the PIR output is on pin7? May I share my board photos with you so that you can recognize what is wrong with my board, please?

author
johnnyfrx made it!(author)2016-09-28

You need to set pin7 as an input so when it detects movement from the PIR, it goes high and triggers the email notification. Please feel free to share any pics and I shall take a look.

author
Eryn+Ahmad made it!(author)2016-09-28

This is the picture, I really hope you can help me to sort this circuit out. Thankyou

IMG_5835.JPG
author
johnnyfrx made it!(author)2016-09-28

I DM'd you so please check your actual Inbox here. We can continue troubleshooting there for now.

author
Eryn+Ahmad made it!(author)2016-11-30

Hello Joh, can you please check your inbox please?

author
NavalJ made it!(author)2016-09-24

I wasted my 2 esp on this tut. Every time it falshes .ESP does not repond on AT. What should i do??

author
johnnyfrx made it!(author)2016-09-25

Have you tried changing the baud rate in Serial Monitor? I had to test a bunch of different rates until 57,600 worked. Also, make sure you change the wiring back after flashing as described in directions.

author
RodrigoC146 made it!(author)2016-09-12

AT+CIPCLOSE

<--- '

ERROR

Any chance?

author
johnnyfrx made it!(author)2016-09-24

Try changing HELO to EHLO. It worked for me.

author
RodrigoC146 made it!(author)2016-09-24

It worked! Many thanks!

author
NavalJ made it!(author)2016-09-11

Writing at 0x0007e400... (99 %)

Writing at 0x0007e800... (99 %)

Writing at 0x0007ec00... (99 %)

Leaving...

Failed to leave Flash mode

This is fine. My Module stopped responding after Update :D

author
joe5143 made it!(author)2016-09-03

unable to upload arduino code.

'class Adafruit_ESP8266' has no member named 'cipSend'

need help:(

author
NavalJ made it!(author)2016-09-11

well i saw this today only. try another libaray from Adafruit. it will work.

author
PabloSoetard made it!(author)2016-05-21

it shows me an error

author
DIY+Hacks+and+How+Tos made it!(author)2015-11-28

Awesome. Great Arduino project. Thanks for sharing.

About This Instructable

29,348views

65favorites

License:

More by kryder91:Send email with ESP8266 and Arduino UNO
Add instructable to: