$npx skillfedfor your agent

udsoncan

Implementation of the Unified Diagnostic Service (UDS) protocol (ISO-14229) used in the automotive industry.

With conditionsPyPI Interface Engine/Protocol TranslatorReleased Jun 2026217.2K downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — udsoncan-1.26.1-py3-none-any.whl
v1.26.1 · released 2026-06-25 · Python >=3.7

Yes, if you need UDS protocol support for automotive diagnostics. The package is actively maintained, has no external dependencies, carries a permissive MIT license, and addresses a specialized but real need in automotive development and testing. 721 repository stars and consistent release cadence suggest production use. No known security vulnerabilities. Install it if your project involves vehicle ECU communication; skip it if you do not work in automotive diagnostics.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.7+; transport layer (e.g., ISO-TP socket) must be configured separately
  • Low install friction with no runtime dependencies.
  • Active maintenance: last commit 2026-08-09, 721 repository stars, and a release within 50 days indicates ongoing development.

License · maintenance · safety

MIT (permissive) — MIT license permits commercial and private use with minimal restrictions, suitable for both open-source and proprietary projects.

last release 2026-06-25 (50 days) · last repo commit 2026-08-09 · 721 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 217,217 downloads/mo, #9,362 on PyPI

Verify before relying

pip install udsoncan

import udsoncan
from udsoncan.client import Client
from udsoncan.connections import IsoTPSocketConnection
from udsoncan.services import DiagnosticSessionControl

conn = IsoTPSocketConnection('can0', ...)
with Client(conn, request_timeout=2) as client:
    client.change_session(DiagnosticSessionControl.Session.extendedDiagnosticSession)
  • Whether isotp library shown in example is an optional or required peer dependency
  • Specific vehicle models or ECU types supported or tested against
  • Performance characteristics under high-frequency diagnostic requests
Same gist for agents: .md · .json

What it is and what it does

udsoncan is a Python implementation of the UDS (Unified Diagnostic Services) protocol standardized in ISO-14229, used primarily in automotive diagnostics to communicate with vehicle electronic control units (ECUs). It provides a client library that handles the protocol's request-response messaging, session management, security access, and data reading/writing operations typical in vehicle diagnostics workflows.

The package requires Python 3.7+ and has no runtime dependencies, making it lightweight to integrate. It exposes high-level client methods like `change_session`, `unlock_security_access`, `write_data_by_identifier`, and `ecu_reset` that abstract away low-level protocol details, allowing developers to focus on diagnostic logic.

Use it for

  • Develop custom vehicle diagnostic tools that read and modify ECU parameters without proprietary OEM software
  • Automate ECU testing and validation during automotive development or manufacturing
  • Build diagnostic applications that unlock security access and perform ECU resets for maintenance workflows
  • Integrate UDS protocol support into Python-based automotive test harnesses or CI/CD pipelines

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you need UDS protocol support for automotive diagnostics.

The package is actively maintained, has no external dependencies, carries a permissive MIT license, and addresses a specialized but real need in automotive development and testing. 721 repository stars and consistent release cadence suggest production use. No known security vulnerabilities. Install it if your project involves vehicle ECU communication; skip it if you do not work in automotive diagnostics.

Install

udsoncan on PyPI

Before you install

Low install friction with no runtime dependencies. Active maintenance: last commit 2026-08-09, 721 repository stars, and a release within 50 days indicates ongoing development.

Requires Python 3.7+; transport layer (e.g., ISO-TP socket) must be configured separately

License in practice

MIT license permits commercial and private use with minimal restrictions, suitable for both open-source and proprietary projects.

Quickstart

pip install udsoncan

import udsoncan
from udsoncan.client import Client
from udsoncan.connections import IsoTPSocketConnection
from udsoncan.services import DiagnosticSessionControl

conn = IsoTPSocketConnection('can0', ...)
with Client(conn, request_timeout=2) as client:
    client.change_session(DiagnosticSessionControl.Session.extendedDiagnosticSession)

Verify before relying

  • Whether isotp library shown in example is an optional or required peer dependency
  • Specific vehicle models or ECU types supported or tested against
  • Performance characteristics under high-frequency diagnostic requests

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.7
Install frictionLow. Pure-Python wheel
Runtime dependenciesNone
MaintenanceActively maintained 50 days since the last release
Last repo commit
First released
Downloads217,217 / month, #9,362 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 4 - BetaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: POSIX :: LinuxProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator

Evidence: udsoncan-1.26.1-py3-none-any.whl

Tags

Capabilities
UDS protocol implementationISO-14229 automotive diagnosticsvehicle ECU communicationautomotive diagnostic servicesdiagnostic protocol librarycar diagnostics python
Topics
automotiveprotocol-implementationdiagnostics
PyPI keywords
uds14229iso-14229diagnosticautomotive

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “UDS protocol implementation”

  • udsoncanImplements the Unified Diagnostic Services (UDS) protocol defined by…
  • doipclientA pure Python 3 Diagnostic over IP (DoIP) client that implements…
  • odxtoolsodxtools parses and processes ODX (Open Diagnostic data eXchange)…

Give your agent the search over MCP, or paste the wish link into any chat.

More Interface Engine/Protocol Translator packages

yfinance With conditions
PyPI · Libraries · released Aug 2026

Fetches financial and market data from Yahoo Finance's public APIs, including ticker information, historical prices, and live streaming data.

However, do not use it for commercial applications or high-volume data collection without confirming compliance with Yahoo's terms of service.

Apache-2.0pure Python
29.2Mdownloads / mo
jsonconversion With conditions
PyPI · Python Modules · released Nov 2025

Converts arbitrary Python objects to JSON strings and back, extending the standard json module with support for custom classes, numpy arrays, and nested structures through JSONEncoder and JSONDecoder subclasses.

However, maintenance is aging (last release 275 days ago), so verify that its feature set meets your needs before adopting it for new projects.

BSD-3-Clausepure Python · 3.9+aging
14.1Mdownloads / mo
crcmod With conditions
PyPI · Utilities · released Jun 2010

Computes Cyclic Redundancy Check (CRC) values for 8, 16, 24, 32, or 64-bit polynomials, providing both Python functions and a class interface compatible with standard library hash modules.

However, it is abandoned (last release 2010-06-27) with no documented support beyond Python 3.1.

MITbuilds from sourceabandoned
8.2Mdownloads / mo
pyusb With conditions
PyPI · Libraries · released Jan 2025

PyUSB provides Python access to USB devices on the host machine through a backend-neutral API, supporting libusb 1.0, libusb 0.1, and OpenUSB backends.

BSD-3-Clausepure Python · 3.9.0+aging
4.7Mdownloads / mo
PyVISA Worth it
PyPI · Python Modules · released Feb 2026

PyVISA provides Python bindings to VISA libraries for controlling measurement instruments and test equipment over GPIB, RS232, Ethernet, and USB interfaces.

Install it if you need to automate laboratory equipment; skip it if you have no instruments to control or use vendor-specific SDKs instead.

MITpure Python · 3.10+
1.1Mdownloads / mo
PyVISA-py With conditions
PyPI · Python Modules · released Sep 2025

PyVISA-py is a pure Python backend for the VISA standard that enables communication with laboratory instruments over Serial, USB, GPIB, and Ethernet without requiring proprietary VISA libraries.

MITpure Python · 3.10+
849.1Kdownloads / mo

See also doipclient · icsneopy · odxtools · pydlt · vininfo · cantools · subarulink · kuksa-client · canopen · pymavlink