/ddt4all

OBD tool

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

DDT4All Python App Donate Discord

DDT4All is tool to create your own ECU parameters screens and connect to a CAN network with a cheap ELM327 interface.

Android porting:

Notes:

This application is work in progress, so be very careful when using expert mode. Using the application in non expert mode should not be harmful for your vehicle (leave the expert mode button released).

Important :

Do not use this software if you don't have a strong knowledge of how a CAN network (or ECU) works, you can really do bad things with it, especially if you're working on a vehicle

The author declines all responsibility about a bad use of this tool. You are the only responsible

This tool is mainly aimed for CAN ISO_TP network study

Cloning Source Code

Dependencies :

python_3.12.x

Supported diagnostic adapters (so far)

  • ELM327 USB/BlueTooth/WiFi (Original one with PIC18F25K80, Chinese clone not working)
  • ObdLink SX
  • ELS27

Next, you need to get the source code. This source code repository uses git submodules. So when you clone the source code, you will need to clone recursively:

git clone --recursive https://github.com/cedricp/ddt4all.git

Or if you already cloned without the recursive option, you can update the submodules by running:

git clone --recursive https://github.com/cedricp/ddt4all.git
cd ddt4all
git submodule update --init --recursive

Windows installer

Get the fully packaged installer here : Release area

Features :

  • Read/Clear DTC
  • Manual ECU request
  • Log recorder
  • Plugins system for automated functions
  • CAN / KWP2000 supported bus protocols
  • AutoScan ECUs and select the related files
  • Internal JSON file format for high speed parsing
  • Database zip compression of converted JSON files
  • Can bus sniffing (Read/Decode non-ISOTP frames)
  • Screen recorder (via autorefresh button) and export to CSV format

How to launch the application ?

  • A terminal, type python main.py (python3 main.py in linux/mac)

Platforms

  • Gnu/Linux (Ubuntu approved)
  • Windows (For winXP, 2000, vista, try the winXP branch (Not updated version))
  • MacOS

Videos

Troubleshootings

No serial connection

  • Linux : Check user rights to access serial port Ubuntu
  • Windows :
    • Check serial drivers installation
    • Try to disable antivirus software

Informations

DataBase not included, do not forget to install database as ecu.zip or full mode in to root clone repo.

Report bugs

Report bugs you found in issues. In order to help us fix the problem, please take a screenshot of the error you get and also attach your log file (under the Logs folder) as well. Add [Bug] to the title to help us quickly identify the category of the issue.

Suggestions/ideas

Tell us what you think we can do better in discussions. Give detailed discription to help us understand what you are looking for. Add [Suggestion] to the title to help us quickly identify the category of the issue. Your suggestion might not be accept, but hey, maybe we will accept your suggestion next time! :)

Legal Disclaimer

This Website and Project is in no way affiliated with, authorized, maintained, sponsored or endorsed by ANYONE. This is an independent and unofficial project for educational use ONLY. Do not use for any other purpose than education, testing and research.

Happy CAN-Hacking :)

To make this application more reliable, I need to buy hardware, cables and devices, so please consider contributing by making a donation (hardware or money). Of course you can contribute by filling bug reports and sending patches.