Writes binary data to the serial port. This data is sent as a byte or series of bytes; to send the characters representing the digits of a number use the print() function instead.




Serial.write(buf, len)

Parameter Values

  • Serial: serial port object. See the list of available serial ports for each board on the Serial main page.
  • val: a value to send as a single byte.
  • str: a string to send as a series of bytes.
  • buf: an array to send as a series of bytes.
  • len: the number of bytes to be sent from the array.

Return Values

  • write() will return the number of bytes written, though reading that number is optional. Data type: size_t.

Example Code

void setup() { Serial.begin(9600); Serial.write(45); // write a byte with the value 45 => '-' character Serial.write('\n'); // write a newline character Serial.write("\n"); // write a string terminated by a newline character byte buf[] = {'A', 'r', 'd', 'u', 'i', 'n', 'o'}; Serial.write(buf, 7); // write an array } void loop() { }
  • The result on Serial Monitor:
- Arduino
Autoscroll Show timestamp
Clear output
9600 baud  


  • As of Arduino IDE 1.0, serial transmission is asynchronous. If there is enough empty space in the transmit buffer, Serial.write() will return before any characters are transmitted over serial. If the transmit buffer is full then Serial.write() will block until there is enough space in the buffer. To avoid blocking calls to Serial.write(), you can first check the amount of free space in the transmit buffer using availableForWrite().
  • Serial functions are not only used for the communication between an Arduino board and Serial Monitor of Arduino IDE but also used for the communication between:
  • An Arduino board and other Arduino board
  • An Arduino board and other sensors/devices
  • An Arduino board and computer (any Serial software on computer)

See Also


Arduino UNO R3
Arduino Starter Kit
Please note: These are Amazon affiliate links. If you buy the components through these links, We will get a commission at no extra cost to you. We appreciate it.