Författare:
Per Stenebo
Skapad:
2013-02-17 07:43:07
Ändrad:
2023-10-04 07:53:15
sv

Serial communication in Python

Internal links: | Seriell kommunikation | pymodbus |

pySerial site on github

readthedocs  | pySerial tools |

pySerial | serial - TCP bridge |

Install pyserial

Install from default repositorys (might be older version):

sudo apt install python-serial 2022-02-04: Unavailable on raspberry pi

sudo apt install python3-serial 

Check pyserial version:

python2 -c "import serial; print(serial.__version__)"
or python3 -c "import serial; print(serial.__version__)"

2017-10-27 on Raspbian, gave version 3.2.1.
2018-08-21 on Raspbian 9 (stretch), gave version 3.2.1
2019-06-29 on Ubuntu 16.04 gave version 3.4

Or, get the tools to use easy_install or pip, example for Ubuntu:

sudo apt install python-pip python3-pip

2018-08-21 on Raspbian 9 (stretch), pip -V or pip --version gave
pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7)

 

Install pyserial:

pip install --upgrade pyserial

2016-11-15 installed version 3.2.1 to: /usr/local/lib/python2.7/dist-packages
2017-10-10 installed version 3.4 to: /usr/local/lib/python2.7/dist-packages
2018-08-21 on Raspbian 9 (stretch), installed version 3.4.

Install pyserial for python 3:

python3 -m pip install pyserial

 

Check package

python2 -c "import imp as _; print(_.find_module('serial'))"
(None, '/usr/lib/python2.7/dist-packages/serial', ('', '', 5))

 

python2 -c "import serial as _; print(_.__file__)"
/usr/lib/python2.7/dist-packages/serial/__init__.pyc

If installed via apt:

find /usr/lib/python2.7/dist-packages -iname '*serial*'
/usr/lib/python2.7/dist-packages/pyserial-3.4.egg-info
/usr/lib/python2.7/dist-packages/cryptography/hazmat/primitives/serialization
/usr/lib/python2.7/dist-packages/serial
/usr/lib/python2.7/dist-packages/serial/serialcli.py
/usr/lib/python2.7/dist-packages/serial/serialjava.pyc
/usr/lib/python2.7/dist-packages/serial/serialwin32.pyc
/usr/lib/python2.7/dist-packages/serial/serialposix.pyc
/usr/lib/python2.7/dist-packages/serial/serialposix.py
/usr/lib/python2.7/dist-packages/serial/serialutil.py
/usr/lib/python2.7/dist-packages/serial/serialutil.pyc
/usr/lib/python2.7/dist-packages/serial/serialcli.pyc
/usr/lib/python2.7/dist-packages/serial/serialjava.py
/usr/lib/python2.7/dist-packages/serial/serialwin32.py

If installed via pip:

find /home/pi/.local/lib/python2.7/site-packages -iname '*serial*'
/home/pi/.local/lib/python2.7/site-packages/serial
/home/pi/.local/lib/python2.7/site-packages/serial/serialcli.pyc
/home/pi/.local/lib/python2.7/site-packages/serial/serialwin32.py
/home/pi/.local/lib/python2.7/site-packages/serial/serialutil.py
/home/pi/.local/lib/python2.7/site-packages/serial/serialwin32.pyc
/home/pi/.local/lib/python2.7/site-packages/serial/serialcli.py
/home/pi/.local/lib/python2.7/site-packages/serial/serialjava.py
/home/pi/.local/lib/python2.7/site-packages/serial/serialjava.pyc
/home/pi/.local/lib/python2.7/site-packages/serial/serialutil.pyc
/home/pi/.local/lib/python2.7/site-packages/serial/serialposix.pyc
/home/pi/.local/lib/python2.7/site-packages/serial/serialposix.py
/home/pi/.local/lib/python2.7/site-packages/pyserial-3.4.dist-info

 

Uninstall pyserial

sudo apt remove --purge python-serial

sudo pip uninstall pyserial

 

Kommentarer till sidan pyserial