aboutsummaryrefslogtreecommitdiff
path: root/documentation/pyserial.rst
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/pyserial.rst')
-rw-r--r--documentation/pyserial.rst145
1 files changed, 145 insertions, 0 deletions
diff --git a/documentation/pyserial.rst b/documentation/pyserial.rst
new file mode 100644
index 0000000..080066f
--- /dev/null
+++ b/documentation/pyserial.rst
@@ -0,0 +1,145 @@
+==========
+ pySerial
+==========
+
+Overview
+========
+
+This module encapsulates the access for the serial port. It provides backends
+for Python_ running on Windows, OSX, Linux, BSD (possibly any POSIX compliant
+system) and IronPython. The module named "serial" automatically selects the
+appropriate backend.
+
+It is released under a free software license, see LICENSE_ for more
+details.
+
+Copyright (C) 2001-2020 Chris Liechti <cliechti(at)gmx.net>
+
+Other pages (online)
+
+- `project page on GitHub`_
+- `Download Page`_ with releases (PyPi)
+- This page, when viewed online is at https://pyserial.readthedocs.io/en/latest/ or
+ http://pythonhosted.org/pyserial/ .
+
+.. _Python: http://python.org/
+.. _LICENSE: appendix.html#license
+.. _`project page on GitHub`: https://github.com/pyserial/pyserial/
+.. _`Download Page`: http://pypi.python.org/pypi/pyserial
+
+
+Features
+========
+- Same class based interface on all supported platforms.
+- Access to the port settings through Python properties.
+- Support for different byte sizes, stop bits, parity and flow control with
+ RTS/CTS and/or Xon/Xoff.
+- Working with or without receive timeout.
+- File like API with "read" and "write" ("readline" etc. also supported).
+- The files in this package are 100% pure Python.
+- The port is set up for binary transmission. No NULL byte stripping, CR-LF
+ translation etc. (which are many times enabled for POSIX.) This makes this
+ module universally useful.
+- Compatible with :mod:`io` library
+- RFC 2217 client (experimental), server provided in the examples.
+
+
+Requirements
+============
+- Python 2.7 or Python 3.4 and newer
+
+- If running on Windows: Windows 7 or newer
+
+- If running on Jython: "Java Communications" (JavaComm) or compatible
+ extension for Java
+
+For older installations (older Python versions or older operating systems), see
+`older versions`_ below.
+
+
+Installation
+============
+
+This installs a package that can be used from Python (``import serial``).
+
+To install for all users on the system, administrator rights (root)
+may be required.
+
+From PyPI
+---------
+pySerial can be installed from PyPI::
+
+ python -m pip install pyserial
+
+Using the `python`/`python3` executable of the desired version (2.7/3.x).
+
+Developers also may be interested to get the source archive, because it
+contains examples, tests and the this documentation.
+
+From Conda
+----------
+pySerial can be installed from Conda::
+
+ conda install pyserial
+
+ or
+
+ conda install -c conda-forge pyserial
+
+Currently the default conda channel will provide version 3.4 whereas the
+conda-forge channel provides the current 3.x version.
+
+Conda: https://www.continuum.io/downloads
+
+From source (zip/tar.gz or checkout)
+------------------------------------
+Download the archive from http://pypi.python.org/pypi/pyserial or
+https://github.com/pyserial/pyserial/releases.
+Unpack the archive, enter the ``pyserial-x.y`` directory and run::
+
+ python setup.py install
+
+Using the `python`/`python3` executable of the desired version (2.7/3.x).
+
+Packages
+--------
+There are also packaged versions for some Linux distributions:
+
+- Debian/Ubuntu: "python-serial", "python3-serial"
+- Fedora / RHEL / CentOS / EPEL: "pyserial"
+- Arch Linux: "python-pyserial"
+- Gentoo: "dev-python/pyserial"
+
+Note that some distributions may package an older version of pySerial.
+These packages are created and maintained by developers working on
+these distributions.
+
+.. _PyPi: http://pypi.python.org/pypi/pyserial
+
+
+References
+==========
+* Python: http://www.python.org/
+* Jython: http://www.jython.org/
+* IronPython: http://www.codeplex.com/IronPython
+
+
+Older Versions
+==============
+Older versions are still available on the current download_ page or the `old
+download`_ page. The last version of pySerial's 2.x series was `2.7`_,
+compatible with Python 2.3 and newer and partially with early Python 3.x
+versions.
+
+pySerial `1.21`_ is compatible with Python 2.0 on Windows, Linux and several
+un*x like systems, MacOSX and Jython.
+
+On Windows, releases older than 2.5 will depend on pywin32_ (previously known as
+win32all). WinXP is supported up to 3.0.1.
+
+
+.. _`old download`: https://sourceforge.net/projects/pyserial/files/pyserial/
+.. _download: https://pypi.python.org/simple/pyserial/
+.. _pywin32: http://pypi.python.org/pypi/pywin32
+.. _`2.7`: https://pypi.python.org/pypi/pyserial/2.7
+.. _`1.21`: https://sourceforge.net/projects/pyserial/files/pyserial/1.21/pyserial-1.21.zip/download