#diagnostics #vehicle #codec #doip

doip-definitions

A Diagnostics over Internet Protocol (DoIP) definition library for use in DoIP applications

4 stable releases

1.0.3 Jan 3, 2025

#412 in Network programming

Download history 345/week @ 2025-01-01 60/week @ 2025-01-08

405 downloads per month
Used in 2 crates

MIT license

150KB
3K SLoC

Diagnostics over Internet Protocol (DoIP) Definitions

An open-source implementation of Diagnostics over Internet Protocol (DoIP) standards, focused on data structures, types, and constants for vehicle Electronic Control Unit (ECU) diagnostics.

Features

  • DoIP Protocol Compliance: Provides data structures and types in alignment with ISO 13400 standards.
  • Extensive Utility Functions: Includes helpers for encoding/decoding DoIP messages and managing diagnostic data.
  • Lightweight and Modular: Designed as a foundational library for integrating DoIP capabilities into larger projects.
  • Customizable and Extensible: Easily extendable to support additional diagnostic services or integrate with networking layers.

Getting Started

Prerequisites

  • Rust programming language (latest stable version). Install Rust from rust-lang.org.

Installation

To use this library, add it as a dependency in your Cargo.toml file:

[dependencies]
doip-definitions = "1.0.0"

Documentation

Comprehensive documentation is available here (link to hosted docs).

Development

Building the Project

Clone the repository and build the project using Cargo:

git clone https://github.com/samp-reston/doip-definitions.git
cd doip-definitions
cargo build

Running Tests

Run unit tests to ensure functionality:

cargo test

Contributing

We welcome contributions! Please read the CONTRIBUTING.md for guidelines on submitting issues and pull requests.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For support, questions, or feature requests, please open an issue on the GitHub repository.

Dependencies

~235–680KB
~16K SLoC