semvec/pypi-packages huggingface dataset:
pymctp-exerciser-qemu 0.2.5
QEMU I2C/I3C exerciser for pymctp
License: MIT
Requires Python: >=3.8
Keywords: i2c, i3c, mctp, qemu, virtualization

# pymctp-exerciser-qemu

QEMU I2C and I3C exerciser support for pymctp.

This package provides exerciser implementations for interfacing with QEMU's I2C and I3C virtual devices to send and receive MCTP packets in virtualized environments.

## Installation

```bash
pip install pymctp-exerciser-qemu
```

## Requirements

- pymctp >= 0.1.0
- crc8 >= 0.1.0
- QEMU with I2C/I3C device support

## Exercisers Included

### QemuI2CNetDevSocket

Interfaces with QEMU I2C devices via network sockets.

```python
from pymctp.exerciser import get_exerciser

QemuI2CSocket = get_exerciser('qemu-i2c')
socket = QemuI2CSocket(
    host='localhost',
    port=5555,
    addr=0x20
)
```

### QemuI3CCharDevSocket

Interfaces with QEMU I3C devices via character devices.

```python
from pymctp.exerciser import get_exerciser

QemuI3CSocket = get_exerciser('qemu-i3c')
socket = QemuI3CSocket(
    chardev_path='/tmp/i3c-socket',
    addr=0x20
)
```

## Auto-Registration

This package automatically registers both exercisers with pymctp when installed:
- `qemu-i2c`: QemuI2CNetDevSocket
- `qemu-i3c`: QemuI3CCharDevSocket

## License

MIT
pymctp-exerciser-aardvark 0.2.5
Total Phase Aardvark I2C exerciser for pymctp
License: MIT
Requires Python: >=3.8
Keywords: aardvark, i2c, mctp, total-phase

# pymctp-exerciser-aardvark

Total Phase Aardvark I2C exerciser support for pymctp.

This package provides an exerciser implementation for interfacing with Total Phase Aardvark I2C/SPI adapters to send and receive MCTP packets over I2C.

## Installation

```bash
pip install pymctp-exerciser-aardvark
```

## Requirements

- pymctp >= 0.1.0
- pyaardvark >= 0.7.1
- Total Phase Aardvark I2C/SPI adapter hardware

## Usage

```python
from pymctp.exerciser import AardvarkI2CSocket

# List available Aardvark devices
AardvarkI2CSocket.list_devices()

# Open a connection
socket = AardvarkI2CSocket(
    port=0,  # Device port number
    addr=0x20,  # Target I2C address
    bitrate=100  # I2C bitrate in kHz
)

# Send/receive MCTP packets
from pymctp.layers.mctp import SmbusTransport

pkt = SmbusTransport(...)
socket.send(pkt)

response = socket.recv()
```

## Auto-Registration

This package automatically registers itself with pymctp when installed. You can access it through the exerciser registry:

```python
from pymctp.exerciser import get_exerciser

AardvarkSocket = get_exerciser('aardvark')
```

## License

MIT