Python Language

Python Serial Communication (pyserial)

Syntax#

  • ser.read(size=1)

  • ser.readline()

  • ser.write()

Parameters#

parameter details
port Device name e.g. /dev/ttyUSB0 on GNU/Linux or COM3 on Windows.
baudrate baudrate type: int default: 9600 standard values: 50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200
## Remarks#
For more details check out pyserial documentation
## Initialize serial device
import serial
#Serial takes these two parameters: serial device and baudrate
ser = serial.Serial('/dev/ttyUSB0', 9600)

Read from serial port

Initialize serial device

import serial
#Serial takes two parameters: serial device and baudrate
ser = serial.Serial('/dev/ttyUSB0', 9600)

to read single byte from serial device

data = ser.read()

to read given number of bytes from the serial device

data = ser.read(size=5)

to read one line from serial device.

data = ser.readline()

to read the data from serial device while something is being written over it.

#for python2.7
data = ser.read(ser.inWaiting())

#for python3
ser.read(ser.inWaiting)

Check what serial ports are available on your machine

To get a list of available serial ports use

python -m serial.tools.list_ports

at a command prompt or

from serial.tools import list_ports
list_ports.comports()  # Outputs list of available serial ports

from the Python shell.


This modified text is an extract of the original Stack Overflow Documentation created by the contributors and released under CC BY-SA 3.0 This website is not affiliated with Stack Overflow