Metadata-Version: 2.4
Name: vention-firmware-grpc-client
Version: 1.0.0
Summary: A python grpc client for calling vention firmware endpoints
License: Proprietary
Keywords: Vention,grpc,client,vrmcs,firmware
Author: VentionCo
Requires-Python: >=3.10,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Dist: grpc-stubs (>=1.53.0)
Requires-Dist: grpcio (>=1.74.0)
Requires-Dist: grpcio-tools (>=1.74.0)
Requires-Dist: protobuf (>=6.31.1,<7.0.0)
Description-Content-Type: text/markdown

# Vention Firmware gRPC Client

A Python gRPC client for calling Vention firmware endpoints. It is commonly referred to as Vention Robot Motion Control Stack (VRMCS)

## Features

- **Robot Management**: Register and manage robots
- **Motion Control**: Execute movements, plan trajectories, and control robot motion
- **Kinematics**: Forward and inverse kinematics operations
- **Real-time Streaming**: Stream robot states, joint states, position data, and alarms
- **Operating Modes**: Control normal and freedrive modes
- **TCP/Payload Configuration**: Set tool center point and payload properties

## Installation

Install the package using pip:

```bash
pip install vention-firmware-grpc-client
```

## Quick Start

```python
from vrmcs.client import VRMCSClient
from vention.robots.v1.move_request_pb2 import MoveRequest
from vention.robots.v1.joint_position_pb2 import JointPosition

# Connect to the VRMCS server
client = VRMCSClient("localhost:50550")

# List available robots
robots = client.list_robots()
for robot in robots.robots:
    print(f"Robot ID: {robot.id}")
    print(f"Name: {robot.name}")
    print(f"Type: {robot.robot_type}")

# Use types for type-safe requests
move_request = MoveRequest(
    robot_id="my_robot",
    joint_position=JointPosition(positions=[0.0, 0.0, 0.0, 0.0, 0.0, 0.0])
)
response = client.move(move_request)
```

## Requirements

- Python >= 3.10

## License

Copyright © Vention

