9 unstable releases (3 breaking)

0.3.3 Dec 11, 2024
0.3.1 Nov 11, 2024
0.1.4 May 13, 2024
0.1.1 Mar 28, 2024
0.0.1-alpha2 Oct 5, 2023

#38 in Robotics

Download history 264/week @ 2024-10-27 86/week @ 2024-11-03 171/week @ 2024-11-10 154/week @ 2024-11-17 130/week @ 2024-11-24 170/week @ 2024-12-01 615/week @ 2024-12-08 216/week @ 2024-12-15 31/week @ 2024-12-22 2/week @ 2024-12-29 96/week @ 2025-01-05 82/week @ 2025-01-12 81/week @ 2025-01-19 115/week @ 2025-01-26 105/week @ 2025-02-02 49/week @ 2025-02-09

350 downloads per month
Used in canopen-tokio

BSD-2-Clause

74KB
1.5K SLoC

CAN socket

This library exposes a CanSocket and related types, allowing you to communicate over a Controller Area Network (CAN) bus.

The is a standard blocking or non-blocking CanSocket, and an asynchronous tokio::CanSocket.

This library uses the SocketCAN interface and only works on Linux.

Supported features:

  • Bind sockets to specific interfaces by name or index.
  • Bind sockets to all CAN interfaces at the same time.
  • Send and receive data frames and RTR frames.
  • Send and receive standard frames and extended frames.
  • Setting per-socket filters.
  • Control over the loopback and recv_own_msgs options.
  • Constructing compile-time checked CAN IDs.

lib.rs:

CAN socket

This library exposes a CanSocket and related types, allowing you to communicate over a Controller Area Network (CAN) bus.

The is a standard blocking or non-blocking CanSocket, and an asynchronous tokio::CanSocket.

This library uses the SocketCAN interface and only works on Linux.

Supported features:

  • Bind sockets to specific interfaces by name or index.
  • Bind sockets to all CAN interfaces at the same time.
  • Send and receive data frames and RTR frames.
  • Send and receive standard frames and extended frames.
  • Setting per-socket filters.
  • Control over the loopback and recv_own_msgs options.
  • Constructing compile-time checked CAN IDs.

Dependencies

~0–8MB
~61K SLoC