Softwareserial.h Library May 2026

The classic Arduino Uno, Nano, and Mega 2560 (for its first few ports) have dedicated hardware UARTs (Universal Asynchronous Receiver-Transmitters). However, hardware UARTs are limited in number. Once you connect a GPS module, a Bluetooth module, and a debug console simultaneously, you run out of ports.

You can create multiple instances, but only one can receive at a time . The active receiver is set by the last call to listen() . softwareserial.h library

Default buffer is 64 bytes. Modify SoftwareSerial.h in your Arduino core: The classic Arduino Uno, Nano, and Mega 2560