Welcome to UDS documentation!
Overview
The purpose of this project is to provide python tool to handle Unified Diagnostic Services (UDS) protocol defined by ISO-14229. The created package helps to simulate either communication side (client or server), monitoring and decode diagnostic communication.
The architecture enables to use it with various communication buses (e.g. CAN, LIN).
The most likely use cases of this package are:
communication with your vehicle (e.g. reading Diagnostic Trouble Codes)
monitoring and decoding UDS communication
performing tests against on-board ECU (server)
performing tests against OBD Tester (client)
Implementation Status
The package is currently in the early development phase, therefore only a few features are currently available. If you want to speed up the development, please visit contribution section to find out what are your options.
Features
Current implementation status of package features:
Feature |
Implementation Status |
---|---|
UDS Messages and Packets |
Available since version 0.0.2 |
UDS Packets Reception and Transmission |
Available since version 0.3.0 |
UDS Messages Reception and Transmission |
Available since version 1.0.0 |
Messages Segmentation |
Available since version 0.2.0 |
UDS Packets Desegmentation |
Available since version 0.2.0 |
Client Simulation |
Planned |
Server Simulation |
Planned |
UDS Sniffer |
Planned |
Support for Messages Databases |
Planned |
Buses supported
Current implementation status of support for communication buses:
Bus |
Implementation Status |
---|---|
CAN |
Full |
FlexRay |
Planned |
Ethernet |
Planned |
K-Line |
Planned |
LIN |
Planned |
License
The project is licensed under the MIT license - https://github.com/mdabrowski1990/uds/blob/main/LICENSE
Contact
group: UDS package development
discord: https://discord.gg/y3waVmR5PZ
Documentation generated
Oct 29, 2024