CANdid Server
A server that faciliates connections between remote TCP clients and a local CAN bus. Clients are sent frames read off the bus, and may send frames back to the server that are then written to the bus.
Repository: https://gitlab.com/avandesa/candid-rs
Documentation: https://docs.rs/crate/candid_server/
Getting Started
Prerequisites
Because the server uses the socketcan crate, a wrapper for the Linux SocketCAN kernel module, the server can only run on a Linux system with the relevant modules compiled and loaded.
Installing
To install the server:
$ cargo install candid_server
To run the server on a vcan0
interface and localhost
:
# modprobe can can_raw vcan
# ip link add dev vcan0 type vcan
# ip link set up vcan0
$ candid_server 127.0.0.1:6556 vcan0
Use candid_client to connect to the server. There are examples in the repository for both sending and receiving frames.
Built With
- SocketCAN - The underlying kernel module.
- socketcan Crate - Rust bindings for the C library.
- clap - For command line argument parsing.
- byteorder - For writing frames
Versioning
We use SemVer for versioning. For the versions available, see the tags on this repository.
Authors
- Alex van de Sandt - avandesa
License
This project is licensed under the MIT License - see the LICENSE file for details