Get the number of bytes (characters) available for reading from the serial port. This is data that’s already arrived and stored in the serial receive buffer (which holds 4096 bytes).

available() inherits from the Stream utility class.


All boards:

  • Serial.available()
  • Serial1.available()

86Duino One specific:

  • Serial2.available()
  • Serial3.available()
  • Serial485.available()

86Duino EduCake specific:

  • Serial2.available()
  • Serial3.available()
  • Serial232.available()




the number of bytes available to read


int incomingByte = 0;   // for incoming serial data
void setup() {
        Serial1.begin(9600);     // opens serial port, sets data rate to 9600 bps
void loop() {
        // send data only when you receive data:
        if (Serial1.available() > 0) {
                // read the incoming byte:
                incomingByte =;
                // say what you got:
                Serial1.print("I received: ");
                Serial1.println(incomingByte, DEC);

another example:

void setup() {
void loop() {
  // read from port 0, send to port 1:
  if (Serial.available()) {
    int inByte =;
    Serial1.print(inByte, BYTE);
  // read from port 1, send to port 0:
  if (Serial1.available()) {
    int inByte =;
    Serial.print(inByte, BYTE);

See also

Language Reference Home

The text of the 86Duino reference is a modification of the Arduino reference and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top