No description
- Python 76.4%
- Rust 23.6%
A runnable TCP device server with a SimController whose axes move in the background (position ramps toward target at a configurable velocity; state reports Moving then On), so the full stack — TCP server, ServerService, concurrent ControllerManager, the Python MotaremClient, and the Sardana bridge — can be driven end-to-end without hardware. Axes cover distinct behaviours for testing every feature: 'linear' (plain), 'servo' (supports acceleration), 'limited' (limit switch at travel ends), 'faulty' (enters Fault at target 5.0), and 'device_a'/ 'device_b' (each read carries a 300 ms simulated bus round-trip so concurrent access to two devices can be timed). Run: cargo run -p sim_server (127.0.0.1:7900; SIM_ADDR to override). Covered by 11 unit tests; verified end-to-end, including a live parallel-vs-serial measurement (two devices: ~300 ms concurrent vs ~600 ms serial) demonstrating concurrent command dispatch (#5). |
||
|---|---|---|
| examples | ||
| gui | ||
| motarem_client | ||
| motarem_core | ||
| motarem_proto | ||
| motarem_server | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| motarem_gui.py | ||
| pyproject.toml | ||
| README.md | ||
| requirements-py38.txt | ||