Skip to content

Latest commit

 

History

History
89 lines (77 loc) · 9.32 KB

Deep_OBD_for_BMW_and_VAG.md

File metadata and controls

89 lines (77 loc) · 9.32 KB

Deep OBD for BMW and VAG

This page describes how to use Deep OBD for BMW and VAG.
Download app from Google Play: https://play.google.com/store/apps/details?id=de.holeschak.bmw_deep_obd
Table of contents:

Manufacturers

Basically Deep OBD for BMW and VAG can operate in two modes, either BMW or VAG. You have to select the car manufacturer first. The VAG group mode (VW, Audi, Seat, Skoda) is still experimental and only supports the protocols KPW2000, KWP1281 and TP2.0. A Replacement firmware for ELM327 adapter is required for this mode.

Supported adapters

Deep OBD for BMW and VAG supports several OBD II adapters:

  • Standard FTDI based USB "INPA compatible" D-CAN/K-Line adapters (all protocols)
  • ELM327 based Bluetooth and WiFi adapters. Recommended ELM327 versions are 1.4b, 1.5 and origin 2.1, which are based on PIC18F25K80 processor (no MCP2515 chip) (D-CAN protocol only)
  • Custom Bluetooth D-CAN/K-Line adapter (BMW-FAST protocol over D-CAN and K-Line)
  • ELM327 based adapters with Replacement firmware for ELM327 D-CAN and K-Line (all protocols!). When VAG has been selected as manufacturer, only this adapter could be used.
  • ENET WiFi adapters (for BMW F-models)

More details could be found here: Supported adapter types

First start

At the first start of Deep OBD for BMW and VAG you will be asked to extract the ECU files. The extracted files are very large and requires approximately 2.5GB on the external SDCard. An internet connection is required for this to check for update information.
In the next step a configuration (*.cccfg file) must be created. The easiest way to do so is to use the configuration generator. For complex scenarios you could manually create configuration files (see HowTo create Deep OBD pages). After loading and compiling the configuration file, all tabs included in the file will be visible on the main page.
Before connecting to the vehicle via Bluetooth a Bluetooth adapter has to be selected (or you will be asked when connecting). It's recommended to pair the adapter in the android Bluetooth menu before using it in Deep OBD for BMW and VAG, because this way a connection password could be assigned.

Your first configuration

Follow the next steps to generate your first configuration (BMW):

  • Open the Configuration generator from the main menu
  • In the generator menu select the correct interface type and Bluetooth adapter if needed.
  • Press the Read button and wait until the ECU list is populated.
  • Select an ECU entry you are interested in.
  • On the next page select a job and corresponding job result for data you want to see on the main page.
    Make sure you have set the checkmarks for these results!
    You could test reading the value with Test button below.
  • Leave the page and possibly select another ECU.
  • Exit the Configuration generator and store the configuration.
  • On the main page you will see the selected ECU tabs and the Error tab.
  • Press the Connect button.
  • Select the desired tab.

Select Bluetooth device ECU list Job selection Motor page

The main menu

The application has a configuration menu with the following options:

  • Manufacturer: Select the car manufacturer with this menu point first. The default is BMW, the other manufacturers are from the VAG group (VW, Audi, Skoda). The VAG mode is still experimental and requires a [Bluetooth D-CAN/K-Line adapter](Build Bluetooth D-CAN adapter.md).
  • Device: With this menu the Bluetooth adapter could be selected. If the device is not coupled already, searching for new devices is possible. This menu is only enabled if a configuration with interface type BLUETOOTH has been selected.
  • Adapter configuration: When using a FTDI USB or Bluetooth (non ELM327) adapter, this menu item opens the adapter configuration page. The following settings are available (depending from adapter type):
    • CAN baud rate: (500kbit/100kbit) or K-Line (CAN off)
    • Separation time: Separation time between CAN telegrams. The default is 0, only change this value if there are communication problems.
    • Block size: Size of CAN telegram blocks. The default is 0, only change this value if there are communication problems.
    • Firmware update: If a new firmware is available for the adapter, the update could be initiated with this button.
  • Configuration generator: Simple XML configuration files could be generated automatically using the informations obtained from the vehicle. This menu opens the configuration generator which allows to create new or modify existing XML files by simply selecting the ECU and job informations.
  • Configuration: This menu allows the selection of the configuration file (*.cccfg file). When using the configuration generator the configuration is selected automatically. After selection the file will be compiled.
  • Ediabas tool: This is a port of the tool32.exe windows application. Selecting the menu will open the Ediabas tool page.
  • Extract ECU files: The EUC files are very large, so they have to be extraced at first app start. With this menu item files could be extracted again. An internet connection is required to check for update information.
  • Data logging: Selecting this menu entry will open a sub menu with multiple data logging options:
    • Create trace file: If the checkbox of this menu is active, a ifh.trc file will be created when the application is connected. The trace file will be created in the Log subdirectory.
    • Append trace file: If this checkbox is enabled the trace file is always appended. Otherwise the trace file will be overridden after selection of a new configuration or restart of the application.
    • Log data: This checkbox enables logging of the display data to a log file. Only those lines are logged, that have a log_tag property in the configuration file. The logfile property in the page node has to be specified as well to activate logging. When using the configuration generator log_tag is set by default to the job name and logfile to the ECU name. Data will be logged in the Log subdirectory.
  • Translations: (Only for non German languages) This menu opens a submenu that allows configuration of automatic ECU text translation with Yandex.Translate:
    • Translate ECU text: If this menu item is checked, automatic ECU text translation is active.
    • Yandex API Key: For automatic translation with Yantex.Translate a free API Key is required, that allows a limited amount of translations per day. To get this key, a Yandex account is required. This menu provides a GUI that assists in obtaining the API Key.
    • Clear translation cache: To enforce a new translation this menu resets the translation cache.
  • Global settings: Opens the global app settings page.
  • Online help: Displays this help page.
  • App info: Displays the app version and unique id.

Menu

Below are some screenshots from the example E61 configuration:

Motor page Motor page Motor page Motor page Motor page

Log and trace files location

The location of the log and trace files depends from the Android version.
Beginning with Android KitKat (4.4) writing to the external SdCard is not possible any more. For older Android versions log and trace files are stored in a subdirectory relative to de.holeschak.bmw_deep_obd on the external SDCard. For KitKat and above the data could be found in the directory Android\data\de.holeschak.bmw_deep_obd\files of the external SDCard.
The standard log files are stored in the subdirectory Log, whereas the Ediabas tool uses the subdirectory LogEdiabasTool and the configuration generator the subdirectory LogConfigTool.

Background image

It's possible to replace the background image. Simply store a custom Background.jpg file in the directory de.holeschak.bmw_deep_obd\files\Images (The Images subdirectory has to be created first).