Metadata-Version: 2.4
Name: sensirion_shdlc_sensorbridge
Version: 1.0.0
Summary: Driver for Communicating With Sensirion SEK-SensorBridge
Project-URL: Changelog, https://github.com/Sensirion/python-shdlc-sensorbridge/blob/master/CHANGELOG.rst
Project-URL: Repository, https://github.com/Sensirion/python-shdlc-sensorbridge
Project-URL: Documentation, https://sensirion.github.io/python-shdlc-sensorbridge
Author-email: Sensirion <info@sensirion.com>
License-Expression: BSD-3-Clause
License-File: LICENSE
Keywords: sensirion,sensor bridge,sensorbridge driver,shdlc
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: System :: Hardware :: Hardware Drivers
Requires-Python: <4.0,>=3.8
Requires-Dist: sensirion-shdlc-driver>=1.0.2
Provides-Extra: docs
Requires-Dist: sphinx-rtd-theme==3.0.2; extra == 'docs'
Requires-Dist: sphinx==8.2.3; extra == 'docs'
Provides-Extra: test
Requires-Dist: flake8>=7.1.0; extra == 'test'
Requires-Dist: mock~=5.2.0; extra == 'test'
Requires-Dist: pytest-cov>=5.0.0; extra == 'test'
Requires-Dist: pytest>=8.3.5; extra == 'test'
Requires-Dist: setuptools>=73.2.0; extra == 'test'
Description-Content-Type: text/markdown

# Python Driver for Sensirion SEK-SensorBridge

This repository contains the SHDLC driver for the
[Sensirion SEK-SensorBridge](https://www.sensirion.com/sensorbridge/)
as a Python package. For details, please read the package description in
[README.rst](https://github.com/Sensirion/python-shdlc-sensorbridge/blob/master/README.rst).

## Usage

See package description in [README.rst](https://github.com/Sensirion/python-shdlc-sensorbridge/blob/master/README.rst) and user manual at
https://sensirion.github.io/python-shdlc-sensorbridge/.

## Development

We develop and test this driver using our company internal tools (version
control, continuous integration, code review etc.) and automatically
synchronize the `master` branch with GitHub. But this doesn't mean that we
don't respond to issues or don't accept pull requests on GitHub. In fact,
you're very welcome to open issues or create pull requests :)

### Check coding style

The coding style can be checked with [`flake8`](http://flake8.pycqa.org/):

```bash
pip install -e .[test]  # Install requirements
flake8                  # Run style check
```

In addition, we check the formatting of files with
[`editorconfig-checker`](https://editorconfig-checker.github.io/):

```bash
pip install editorconfig-checker==2.0.3   # Install requirements
editorconfig-checker                      # Run check
```

### Run tests

Unit tests can be run with [`pytest`](https://pytest.org/):

```bash
pip install -e .[test]          # Install requirements
pytest -m "not needs_device"    # Run tests without hardware
pytest                          # Run all tests
```

The tests with the marker `needs_device` have following requirements:

- A SensorBridge must be connected to the computer:
  - Firmware version must be 5.8
  - Default settings (baudrate 460800, address 0)
  - Port 0: SHTC3 connected
  - Port 1: No device connected
- Pass the serial port where the SensorBridge is connected with `--serial-port`,
  e.g. `pytest --serial-port=COM7`


### Build documentation

The documentation can be built with [Sphinx](http://www.sphinx-doc.org/):

```bash
python setup.py install                        # Install package
pip install -r docs/requirements.txt           # Install requirements
sphinx-versioning build docs docs/_build/html  # Build documentation
```

## License

See [LICENSE](https://github.com/Sensirion/python-shdlc-sensorbridge/blob/master/LICENSE).
