mercedes-benz / odxtools

odxtools is a collection of utilities to interact with the diagnostic functionality of automotive electronic control units using python
MIT License
171 stars 70 forks source link

Implement diagnostic variables #323

Closed andlaus closed 1 month ago

andlaus commented 1 month ago

In true "design by committee" spirit, the ODX specification supports to layer an entirely different communication paradigm over its default RPC-based model: Diagnostic variables. In this model, communication with the ECU is done by reading from and writing to a set of "variables". ODX glues this communication approach on its "normal" service-oriented model by specifying a set of variables plus setter and getter services for each.

Note that, since odxtools is not concerned with communicating with ECUs directly, odxtools can only expose the required information for this, not implement this approach itself.

Besides the diagnostic variables infrastructure, this patch also adds the code to internalize the information necessary for dynamically defined messages (DYN-DEFINED-SPEC), i.e., messages which exhibit formats that are defined at runtime instead of being known a-priori.

Note that, since I don't have any data file which use either of these features, your mileage may vary.

Andreas Lauser <andreas.lauser@mercedes-benz.com>, on behalf of MBition GmbH. Provider Information

andlaus commented 1 month ago

@kayoub5 do you see any remaining issues here?