# hardbyte/python-can

The can package provides controller area network support for Python developers

Repository: https://github.com/hardbyte/python-can
Canonical: https://ross.abutalabs.com/products/python-can
Homepage: https://python-can.readthedocs.io
Language: Python
License: LGPL-3.0
License Family: copyleft
Topics: can-bus, python
Last push: 2026-07-01T00:10:31+00:00

## Health v2 (maintenance only)
Score: 67/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 90, release rhythm 18, longevity 100
- inputs: {"age_days": 3630, "days_push": 64, "days_rel": 386, "gap_med": 128.0, "n_releases_24m": 3}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1585, forks 696 (observed 2026-08-28T04:05:07.487011+00:00)

## What it is
python-can is a Python library providing controller area network (CAN bus) support with common abstractions over many hardware interfaces. It enables sending, receiving, and periodically transmitting CAN messages across CPython and PyPy on Mac, Linux, and Windows.

## Use cases
- send and receive CAN bus messages from Python
- interface with SocketCAN on Linux
- log and replay CAN traffic from a vehicle
- periodically broadcast CAN frames
- work with multiple CAN hardware adapters through one API
- build automotive diagnostics tooling

## When to choose
- you need a unified Python API across different CAN hardware backends
- you are developing automotive or embedded tooling in Python
- you need cross-platform CAN support including Windows and macOS

## When to avoid
- you need hard real-time CAN performance
- your project is not Python-based
- you need CAN FD features unsupported by your chosen backend

## Facets
- artifact type: library
- maturity: stable
- function: sdk, developer-tools
- domain: embedded-systems, hardware
- platform: python, windows, cross-platform
- tags: can-bus, automotive, socketcan, message-bus, obd, automation, linux, macos

## Member repositories
- hardbyte/python-can (main) score 67

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:07.487011+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:55:32.463177+00:00, confidence not recorded.
  - readme: https://github.com/hardbyte/python-can (fetched 2026-08-28T04:05:07.487011+00:00, sha a039d72b8f52)
  - registry_pypi: https://pypi.org/pypi/python-can/json (fetched 2026-08-29T11:26:49.793905+00:00, sha ff7bb6551e70)
- Data as of 2026-08-30T08:39:29.467469+00:00.
