Skip to main content

Library to easily interface with Vallen Systeme WaveLine™ devices

Project description

WaveLine

CI Documentation Status Coverage Status License: MIT PyPI PyPI - Python Version Code style: black

Python library to easily interface with Vallen Systeme WaveLine™ devices using the public APIs:

  • linWave / conditionWave
  • spotWave

Documentation

Please visit http://pywaveline.rtfd.io for the documentation.

Check out the examples for implementation details.

Installation

Install the latest version from PyPI:

pip install waveline

Please note, that waveline requires Python 3.6 or newer. On Linux systems, pip is usually mapped to Python 2, so use pip<version> (e.g. pip3 or pip3.7) instead. Alternatively, you can run pip from your specific Python version with python<version> -m pip.

Contributing

Feature requests, bug reports and fixes are always welcome!

Development setup

After cloning the repository, you can easily install the development environment and tools (pylint, mypy, pytest, tox) with. Using a virtual environment is strongly recommended.

git clone https://github.com/vallen-systems/pyWaveLine.git
cd pyWaveLine

# create virtual environment in directory .venv
python -m venv .venv
# activate virtual environment
source .venv/bin/activate  # linux
.venv\Scripts\activate  # windows

# install package (editable) and all development tools
pip install -e .[dev]

Run auto-formatter:

black .
isort .

Run linter:

pylint src/

Run the test suite in the current environment:

pytest

Run the CI pipeline (checks and tests) for all targeted (and installed) Python versions with tox:

tox

Build the documentation with sphinx:

cd docs
sphinx-build . _build

Run system tests

System level tests are only available, if the targeted device can be discovered.

Run system tests with a spotWave device:

pytest tests/system/spotwave --duration-acq 1

Measurement durations for long-term acquisition tests can be specified with the --duration-acq parameter (default: 1 second).

Run system tests with a linWave device (a specific IP can be provided with the --linwave-ip argument, otherwise the first discovered device will be used):

pytest tests/system/linwave --duration-acq 1 --linwave-ip 192.168.0.100

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waveline-0.6.0.tar.gz (18.4 kB view details)

Uploaded Source

File details

Details for the file waveline-0.6.0.tar.gz.

File metadata

  • Download URL: waveline-0.6.0.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for waveline-0.6.0.tar.gz
Algorithm Hash digest
SHA256 b4b4d7541a1fee8b9790daf57159a3c132859a3441066be4f5c7a7f05af514c3
MD5 7ab83b9bf79c89938977bc7cebd45b49
BLAKE2b-256 8cfd208ab1d05a699ca91dca4dd84fbb395b6504765a0f21214293c13809cbf4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page