Metadata-Version: 2.4
Name: ikalogic-cs8000
Version: 1.0.9
Summary: Python API for CS8000 series RF switches
Author-email: IKALOGIC <info@ikalogic.com>
License: MIT
Project-URL: Homepage, https://github.com/ikalogic/cs8000
Project-URL: Repository, https://github.com/ikalogic/cs8000.git
Project-URL: Documentation, https://github.com/ikalogic/cs8000/tree/main/docs
Keywords: cs8000,cs8216,cs8224,rf-switch,serial,python,api,ikalogic
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: pyserial>=3.5
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: flake8; extra == "dev"
Requires-Dist: mypy; extra == "dev"

# CS8000 Python API

Python library for controlling [CS8000 series RF switches](https://ikalogic.com/rf-switches/cs8216/intro/).

## Installation

```bash
pip install ikalogic-cs8000
```

## Quick Start

```python
from ikalogic.cs8000 import CS8000

# Create instance and connect (model detected from the device; CS8000("CS8216") to require one)
sw = CS8000()
sw.open()  # Auto-detect first available device
print(sw.model, sw.product.channels)  # e.g. CS8216 16

# Switch connections
sw.prepare(1, 1)  # Connect COM1 to CH1
sw.prepare(2, 0)  # Disconnect COM2
sw.commit()
# Close connection
sw.close()
```

## Supported products

| Model  | Topology  | Channels |
|--------|-----------|----------|
| CS8216 | 2 x SP16T | 16       |
| CS8224 | 2 x SP24T | 24       |

`CS8000.list_devices()` returns the connected devices with their detected model; the
product table is available as `ikalogic.cs8000.PRODUCTS`.

## Documentation
Full documentation is available at: https://ikalogic.com/kb/cs8000-api/cs8000_home/
