Skip to main content

Python library for piezosystem NV200 device

Project description

nv200

Python library for piezosystem NV200 device control

PyPI version Python Version Docs


📦 Installation

Install from TestPyPI:

pip install nv200

🚀 Quick Start

from nv200.device_types import DetectedDevice
from nv200.device_discovery import discover_devices
from nv200.device_interface import DeviceClient, create_device_client

async def main_async():
    print("Discovering devices...")
    detected_devices = await discover_devices()
    
    if not detected_devices:
        print("No devices found.")
        return

    # Create a device client for the first detected device
    device = create_device_client(detected_devices[0])
    await client.connect()

if __name__ == "__main__":
        asyncio.run(main_async())

For more advanced usage and async control, see the full API documentation.


📚 Documentation

📖 Full documentation is available at
👉 https://nv200-python-lib-e9158a.gitlab.io/

It includes:

  • Setup & Installation
  • Device Communication Protocols
  • Full API Reference
  • Examples and Tutorials

🛠 Features

  • ✅ Asynchronous communication via aioserial and telnetlib3
  • ✅ Simple Pythonic interface for device control
  • ✅ Query & set device position
  • ✅ Supports NV200 data recorder functionality
  • ✅ Easy interface for NV200 waveform generator

📁 Examples

See the examples/ folder in the repository for:

  • Basic device connection
  • Position control scripts
  • Integration with GUI frameworks (via PySide6)

🧪 Development & Testing

Git Repository

The Git repository is available at: https://gitlab.com/gitlabuser0xFFFF/nv200_python_lib

Install dependencies

poetry install

Run tests

poetry run pytest

Build documentation locally

poetry run build-doc
open doc/_build/index.html

🤝 Contributing

Contributions are welcome! If you encounter bugs or have suggestions:

  • Open an issue
  • Submit a pull request
  • Or contact us directly

For major changes, please open a discussion first.


📜 License

This project is licensed under the MIT License.
See the LICENSE file for details.


👤 Authors

piezosystemjena GmbH
Visit us at https://www.piezosystem.com


🔗 Related

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

nv200-0.2.7.dev1.tar.gz (52.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nv200-0.2.7.dev1-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file nv200-0.2.7.dev1.tar.gz.

File metadata

  • Download URL: nv200-0.2.7.dev1.tar.gz
  • Upload date:
  • Size: 52.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Linux/5.15.167.4-microsoft-standard-WSL2

File hashes

Hashes for nv200-0.2.7.dev1.tar.gz
Algorithm Hash digest
SHA256 401086ae6f96a80bddf421980c349262cbb07cc488c9909173bb911e823daad7
MD5 3724ee8ea5f912d4f360f3234fd431af
BLAKE2b-256 848d69d17b8eb1e77a06de6d02540d264bd5752c8ec0489e531ef4d4b446ba4e

See more details on using hashes here.

File details

Details for the file nv200-0.2.7.dev1-py3-none-any.whl.

File metadata

  • Download URL: nv200-0.2.7.dev1-py3-none-any.whl
  • Upload date:
  • Size: 29.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Linux/5.15.167.4-microsoft-standard-WSL2

File hashes

Hashes for nv200-0.2.7.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 772c72a68bb01e9e8b099d810b97970dc20f97e45c7fbe469e9616832d2b04b3
MD5 cae4a0dcddd280e2b9b67a8490003d4b
BLAKE2b-256 5668fc74239f4e2883f6b6d737d404cc96a7588669293cb40a3ad5926c85e06d

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