# grpc_client ## Environment - Python: 3.9.25 ## Setup ```bash python -m pip install -r requirements.txt ``` Use the same Python interpreter you run the clients with. For example: ```bash C:\Users\lgv\miniconda3\envs\grpc_client\python.exe -m pip install -r requirements.txt ``` ## Generate gRPC code From repo root: ```bash python scripts/gen_grpc_py.py ``` This reads `.proto` files under `protos/` and writes Python code to `generated/`. ## Run (module mode) ```bash python -m clients.movej_client python -m clients.get_joint_state_client python -m clients.get_pose_client python -m clients.torque_on_client python -m clients.torque_off_client python -m clients.torque_key_client python -m clients.save_joint_to_csv python -m clients.http_server python -m clients.hlc_client ``` ## UI (PyQt) ```bash python -m ui.app ``` ## Runtime parameters - gRPC server address/port: set in `clients/base_client.py` (default `192.168.0.222:50052`). - HTTP server host/port: set in `clients/http_server.py` (default `0.0.0.0:8000`). - `device_id` defaults to `hc01` in most clients; change in code if needed. - UI parameters (host/port/device_id/interval) are set in the PyQt window and passed to the runner.