Metadata-Version: 2.4
Name: sbp
Version: 6.3.1
Summary: Python bindings for Swift Binary Protocol
Home-page: https://github.com/swift-nav/libsbp
Author: Swift Navigation
Author-email: dev@swift-nav.com
Platform: linux
Platform: osx
Platform: win32
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python
Classifier: Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Dist: construct
Requires-Dist: pyftdi~=0.13.4
Requires-Dist: pylibftdi
Requires-Dist: pyserial
Provides-Extra: sbp2json
Requires-Dist: python-rapidjson~=1.0; extra == "sbp2json"
Requires-Dist: pybase64~=1.1; extra == "sbp2json"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: home-page
Dynamic: platform
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: summary

SBP Bindings for Python
=======================

Python client for Swift Binary Protocol (SBP). 

Since v2.5 libsbp is compatible with Python 2.7, 3.5 to 3.9. For new projects,
Python 3.7 or newer is recommended.

Setup
-----

You must have ``python`` and ``pip`` installed.

Install dependencies only::

  $ pip install -r requirements.txt

Install from source::

  $ pip install ./python

Install package from PyPI (use ``sudo ...`` to install globally)::

  $ pip install sbp

Setup using a virtual environment
---------------------------------

Setup and activate the ``virtualenv``::

   $ virtualenv .env && source .env/bin/activate

Install ``py.test`` in the virtualenv::

   $ pip install pytest-virtualenv

Install the ``pt.test`` coverage tools::

   $ pip install pytest-cov

Finally, proceed to the standard setup instructions.

Usage Examples
--------------

Simple example
~~~~~~~~~~~~~~

Receives SBP messages over a serial port, decodes MSG_BASELINE
messages and prints them out. See `simple.py`_ .

Run this example with::

  $ python -m sbp.client.examples.simple -p /path/to/serial/port

Sending SBP messages over UDP
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Receives SBP messages over a serial port and sends all incoming
messages to a UDP socket. See `udp.py`_ .

Run this example with::

  $ python -m sbp.client.examples.udp -s /path/to/serial/port

Testing
--------------

To run the tests and check for coverage::

  $  py.test -v --cov sbp tests/

To run the tests without suppressing stdout output:

  $  py.test -v -s --cov sbp tests/

License
-------

Copyright © 2015-2021 Swift Navigation

Distributed under MIT.

.. _simple.py: https://github.com/swift-nav/libsbp/blob/master/python/sbp/client/examples/simple.py
.. _udp.py: https://github.com/swift-nav/libsbp/blob/master/python/sbp/client/examples/udp.py
