Skip to main content

A python 3 interface to Unified Diagnostic Services (UDS) Protocol

Project description


coverage pipeline


A python 3 implementation of Unified Diagnostic Services (UDS) Protocol specifically targeted for socketcan / linux.


Goal of this project is to make UDS available in a "pythonic" way, e.g. use built-in types of python3 for efficiency and "map" the protocol onto the best practices.


All UDS services of 2020's revision are realized in this module.


Usage is intended to be simple. UDS is basically a serial port, so use it as one. You just need to define a CanIsoTpSocket from the corresponding socketcan module and pass it to the uds constructor.


This software is distributed under GPLv3 with some extension because GPLv3 did not manage to deny criminal misuse by organizations. This software is intended for usage by community and private individuals who are interested in car hacking. It is explicitly denied that any company or organization monetizes on this software. Monetize does not only mean money, it means gaining a competitive advantage of any kind by using this software. The author explicitly denies the usage for people associated with military, government agencies of any kind to whatever degree, same for car manufacturers and associates.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

socketcan-uds-1.0.0.tar.gz (61.8 kB view hashes)

Uploaded source

Built Distribution

socketcan_uds-1.0.0-py3-none-any.whl (53.9 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page