skillfed

doipclient

A Diagnostic over IP (DoIP) client implementing ISO-13400-2.

doipclient v1.2.1 126.7K downloads/30d#11,770 on PyPI211
Permissive license MIT Active released

What it is and what it does

Doipclient is a pure Python implementation of the Diagnostic over IP (DoIP) protocol as defined in ISO-13400 (2019). It provides a synchronous client for communicating with modern automotive ECUs over ethernet networks, translating diagnostic requests into DoIP frames and handling the underlying protocol mechanics. The package has no runtime dependencies, making it lightweight and easy to integrate.

The primary use case is as a transport layer for the udsoncan library, which implements the UDS (Unified Diagnostic Services) protocol on top of DoIP. Developers use it to send diagnostic commands to vehicle ECUs—such as reading fault codes, changing diagnostic sessions, or writing data identifiers—over automotive ethernet instead of traditional CAN or ISO-TP links. The package is actively maintained and documented, with examples showing integration with udsoncan for real-world diagnostic workflows.

Use it for:

  • Integrate DoIP transport into udsoncan-based diagnostic applications for modern vehicles with ethernet connectivity.
  • Develop automotive diagnostic tools that communicate with ECUs using ISO-13400 protocol over ethernet networks.
  • Build vehicle testing and validation scripts that send UDS commands through DoIP to ECUs during development or production.
  • Create diagnostic gateways or middleware that translate between different diagnostic protocols and DoIP.
  • Implement ECU reprogramming or calibration workflows that rely on DoIP as the communication backbone.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A pure Python 3 Diagnostic over IP (DoIP) client that implements ISO-13400 (2019) for communicating with automotive ECUs over ethernet, designed primarily as a transport layer for UDS diagnostic protocols.

Yes. Doipclient is a focused, actively maintained library with zero dependencies, permissive licensing, and clear automotive diagnostics use cases. Install it if you need to communicate with modern ECUs over ethernet using DoIP/ISO-13400, especially as a transport layer for udsoncan. The low install friction and recent maintenance signal make it a safe choice for production diagnostic tooling.

Install

doipclient on PyPI

pip

pip install doipclient

uv

uv add doipclient

poetry

poetry add doipclient

Installing doipclient

Before you install

Low friction: pure Python wheel with no runtime dependencies. Actively maintained with recent releases; last commit 2026-05-13. Requires Python 3.6 or later.

License in practice

MIT license (permissive) places no restrictions on use, modification, or distribution in commercial or private projects.

Quickstart

pip install doipclient

from doipclient import DoIPClient
from doipclient.connectors import DoIPClientUDSConnector

doip_client = DoIPClient('127.0.0.1', 0x00E0)
conn = DoIPClientUDSConnector(doip_client)
# Use conn with udsoncan.client.Client for UDS diagnostics
doip_client.close()

Requires Python 3.6 or later; intended for use with automotive ECUs accessible over ethernet.

Verify before relying

  • Whether the package handles all DoIP protocol features beyond the synchronous client model described.
  • Performance characteristics and latency under high-frequency diagnostic requests.
  • Compatibility with specific automotive OEM implementations of ISO-13400.

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.6)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance actively maintained — 93 days since the last release
Last repo commit
First released
Downloads 126,664/month — #11,770 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: doipclient-1.2.1-py3-none-any.whl

Keywords: uds, 14229, iso-14229, diagnostic, automotive, 13400, iso-13400, doip

Operating System :: OS IndependentProgramming Language :: Python :: 3Topic :: Scientific/Engineering :: Interface Engine/Protocol Translator

Tags

diagnostic over IP automotiveDoIP client ISO-13400ECU communication ethernetautomotive UDS transportvehicle diagnostics protocolISO-13400 implementationautomotive ethernet diagnostics
automotive-diagnosticsiso-13400protocol-implementation

More Interface Engine/Protocol Translator packages