--- id: doipclient version: "1.2.1" license: MIT license_treatment: permissive maintenance: active --- # doipclient — A Diagnostic over IP (DoIP) client implementing ISO-13400-2. License: permissive · Maintenance: active · Downloads: 126.7K/mo ## 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 above — 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 pip install doipclient uv add doipclient 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_current - Install friction: low - Maintenance: active - Downloads: 126.7K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags diagnostic over IP automotive, DoIP client ISO-13400, ECU communication ethernet, automotive UDS transport, vehicle diagnostics protocol, ISO-13400 implementation, automotive ethernet diagnostics, automotive-diagnostics, iso-13400, protocol-implementation [View on SkillFed](https://skillfed.io/packages/doipclient) · [View on PyPI](https://pypi.org/project/doipclient/)