Arduino Software Serial Esp8266

Posted on -
Arduino Software Serial Esp8266 Rating: 5,0/5 5455 reviews
  1. Software Serial Keys
Active3 years, 8 months ago
$begingroup$

I want to interface Arduino Uno and ESP8266 for IoT project where i have to control the device from webpage,but before that i wanted to check the above code for Arduino to ESP8266 by Serial Communication.So interfaced Arduino Uno with ESP8266 and powered ESP8266 with External adapter with 3.3V, ESP8266 baud rate is 115200 and in the code i. The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing and other open-source software. The SoftwareSerial library has been developed to allow serial communication on other digital pins of the Arduino, using software to replicate the functionality (hence the name 'SoftwareSerial '). It is possible to have multiple software serial ports with speeds up to 115200 bps.

I'm using Arduino Nano and ESP8266.

When I setup like the picture and connect Arduino Nano to PC by USB:

The ESP8266 properly works. (Arduino Nano is just used as a bridge)

I print and read from serial with a C# program, it correctly works.

What I send from C# program:

The message from ESP:

But, when I change the setup as follows:

  • Green wire (green wire on picture) to Arduino Digital2 pin
  • Red wire (red wire on picture) to Arduino Digital3 pin
  • Use Arduino code to read/write serial, instead of C# program
  • Create a software serial from code (esp8266 = SoftwareSerial(2, 3))

What I send from SoftwareSerial:

The message from ESP:

Do you have any ideas? Why isn't the result on SoftwareSerial identical to Serial?

Burak Yavuzalp
Burak YavuzalpBurak Yavuzalp

Software Serial Keys

$endgroup$

1 Answer

Software$begingroup$

This is the info taken from arduino website:

The library has the following known limitations:

1) If using multiple software serial ports, only one can receive data at a time.

2) Not all pins on the Leonardo and Micro support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).

This has not explicitly mentioned the board you are using, but I think these limitations are on hardware level. Changing the software serial pins should most likely take care of this issue.

WhiskeyjackWhiskeyjack
4,7292 gold badges25 silver badges70 bronze badges
$endgroup$

Not the answer you're looking for? Browse other questions tagged arduinoesp8266 or ask your own question.

Arduino
Web Editor

Start coding online with the Arduino Web Editor, save your sketches in the cloud, and always have the most up-to-date version of the IDE, including all the contributed libraries and support for new Arduino boards.

Download the Arduino IDE
The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing and other open-source software.
This software can be used with any Arduino board.
Refer to the Getting Started page for Installation instructions.

Windows Installer, for Windows XP and up
Windows ZIP file for non admin install

Linux 32 bits
Linux 64 bits
Linux ARM 32 bits
Linux ARM 64 bits

Release Notes
Source Code
Checksums(sha512)

HOURLY BUILDS

Download a preview of the incoming release with the most updated features and bugfixes.
Windows
Mac OS X (Mac OSX Mountain Lion or later)
Linux 32 bit , Linux 64 bit , Linux ARM, Linux ARM64

14 April 2015, 08:41:16 CET
BETA BUILDS

Download the Beta Version of the Arduino IDE with experimental features. This version should NOT be used in production.
Windows
Mac OX (Mac OSX Mountain Lion or later)
Linux 32 bit, Linux 64 bit, Linux ARM, Linux ARM64

Download the previous version of the current release the classic Arduino 1.0.x, or the Arduino 1.5.x Beta version.

All the Arduino 00xx versions are also available for download. The Arduino IDE can be used on Windows, Linux (both 32 and 64 bits), and Mac OS X.

Active development of the Arduino software is hosted by GitHub. See the instructions for building the code.

The source code archives of the latest release are available here. The archives are PGP-signed so they can be verified using this gpg key.

Easy Installation Procedure (recommended): Download the Upgrade Image then please follow the steps in the Yún sysupgrade tutorial.
Advanced Installation Procedure: This procedure is only recommended to advanced users who wish to completely re-flash the Yún including its U-Boot bootloader. These instructions on reflashing the base images are for reference only. Following them will void your Yún's warranty.
Packages List
The list of available packages for the Yún is available here.
See the list of changes.

By downloading the software from this page, you agree to the specified terms.

THE ARDUINO SOFTWARE IS PROVIDED TO YOU 'AS IS' AND WE MAKE NO EXPRESS OR IMPLIED WARRANTIES WHATSOEVER WITH RESPECT TO ITS FUNCTIONALITY, OPERABILITY, OR USE, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR INFRINGEMENT. WE EXPRESSLY DISCLAIM ANY LIABILITY WHATSOEVER FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR SPECIAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST REVENUES, LOST PROFITS, LOSSES RESULTING FROM BUSINESS INTERRUPTION OR LOSS OF DATA, REGARDLESS OF THE FORM OF ACTION OR LEGAL THEORY UNDER WHICH THE LIABILITY MAY BE ASSERTED, EVEN IF ADVISED OF THE POSSIBILITY OR LIKELIHOOD OF SUCH DAMAGES.