/ESP8266_SoftwareSerial

Based on ITEAD's library this library improves communication when using SoftwareSerial to comminucate between the Arduino and the ESP8266

Primary LanguageC++GNU General Public License v3.0GPL-3.0

ESP8266_SoftwareSerial

Based on ITEAD's library this library improves communication when using SoftwareSerial to comminucate between the Arduino and the ESP8266.

Intro

We have modified the original library due to Software serial baudrate problems. Now, the init function, when using software serial only, will set the ESP8266 baudrate to 9600.

Wiring

You'll need:

  1. Arduino Uno
  2. ESP8266
  3. Logic Level Converter

Wiring ESP8266 to Arduino Uno

Usage

See example usage in Firmware.ino

Troubleshooting

  • If you receive partial response from the esp8266 when using software serial - go to C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\SoftwareSerial\src\SoftwareSerial.h Change line 42: #define _SS_MAX_RX_BUFF 64 // RX buffer size To: #define _SS_MAX_RX_BUFF 256 // RX buffer size this will enlarge the software serial buffer.
  • Sometimes setting the baudrate on initialization fails, try resetting the Arduino, it should work fine.
  • On some cases it might be necessary to flash the ESP's firmware. See Flashing the ESP

Flashing the ESP

  1. Use a 3.3v FTDI board like this one
  2. Hookup the ESP to the FTDI Wiring ESP8266 to FTDI
  3. Get the ESP8266Flasher
  4. Get the 1.1.1.1 Firmware
  5. Flash the ESP!

Reference

License

Released under GPLv3. View the license