Alex
Alex

Reputation: 44305

How to configure a tty in python with pySerial?

The module pySerial provides an interface to communicate with a serial device. However, looking at the configuration of a serial device, for example /dev/ttyS1, there are MANY things to configure:

stty -F /dev/ttyS1 -a
speed 1200 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
parenb -parodd cs7 -hupcl cstopb cread clocal -crtscts
-ignbrk -brkint ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel -iutf8
-opost -olcuc -ocrnl -onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0 -isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -xcase -tostop -echoprt -echoctl -echoke

I am especially interested in the parameter -parodd cs7. Is there a way to configure this parameter from within python, or do I have to call an external command to do this (like stty -F /dev/ttyS1 ...)?

Upvotes: 2

Views: 4706

Answers (1)

Jiminion
Jiminion

Reputation: 5168

Yes, you can even configure after declaring it

ser = serial.Serial('/dev/ttyS1', 19200, timeout=1, parity=serial.PARITY_ODD)

ser.parity = serial.PARITY_EVEN

ser.bytesize = serial.SEVENBITS

Upvotes: 2

Related Questions