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

#31 in Robotics

Download history 14/week @ 2024-09-20 5/week @ 2024-09-27 12/week @ 2024-10-04 185/week @ 2024-10-11 155/week @ 2024-10-18 266/week @ 2024-10-25 80/week @ 2024-11-01 178/week @ 2024-11-08 162/week @ 2024-11-15 116/week @ 2024-11-22 173/week @ 2024-11-29 549/week @ 2024-12-06 299/week @ 2024-12-13 17/week @ 2024-12-20 20/week @ 2024-12-27 53/week @ 2025-01-03

494 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