Skip to content

Frequently asked questions

Erwin Scheuch-Heilig edited this page Apr 21, 2022 · 11 revisions

Frequently asked questions

Activation of AndrOBD DEMO mode

In order to allow demonstrations and app feature testing without the availability of any OBD adapter and/or vehicle connection, AndrOBD supports a DEMO mode. In this mode AndrOBD simulates some basic vehicle Features.

Activation

  • Turn OFF Android Bluetooth connections
  • Ensure in AndrOBD settings: OBD Settings -> Adapter type is set to Bluetooth
  • (Re-)Start AndrOBD
    • Answer to reject bluetooth access

Now AndrOBD indicates- and runs in DEMO mode!

Build problems - Could not resolve project :plugin

Since Version 2.1.0 the plugin module is organized as a GIT submodule to allow shared usage of the same library between AndrOBD and AndrOBD-plugin project. Because of this either repo (AndrOBD, AndrOBD-plugins) have to be cloned with the git option --recurse submodules.

So, in order to build the AndrOBD project please perform following sequence:

git clone https://github.com/fr3ts0n/AndrOBD.git --recurse-submodules

If you now open the project with AndroidStudio it can be built without problems

What programming languages can be used for contributions?

AndrOBD app & plugins

The AndrOBD project is set up as a Java based project to be used in AndroidStudio.

Since Version 2.0 the project also supports Kotlin files, since this is used in the SpeedView gauge libraries.

Sub-Project: library

Because of the sub-project library is a plain, generic java library without any dependency to Android or any other OS environment, I would prefer to keep that sub-project to plain, generic Java.

No data display after update to new version

Affected Updates

  • V1.2.7 -> V1.2.8
  • V1.3.2 -> V1.3.3

Between above versions the assignment of settings "Data items to display" to PIDs has changed. If you see an empty data list with status connected, please clear application data (Settings -> Apps -> AndrOBD -> Clear data) and re-try

Bluetooth disconnected right after initialisation / connection attempt

There are several cheap, chinese ELM327 clone adapters out there which behave rather strange on new connection attempts. They loose bluetooth connection with the issue of an ATZ initialization comand.

Workaround

There is a workaround for this problem, to disable issuing the ATZ command at initialisation. This prevents the corruption of bluetooth connection by the adapter and makes the adapter usable.

For detailed description please see posts / comments on Issue #52

Compatibility of AndrOBD-Plugins and AndrOBD

Plugin support was initially introduced in AndrOBD V2.0.0. However, this was only a partial implementation of the design specification to support data consumer plugins.

The full design specification, which also includes support for data provision plugins, was implemented with AndrOBD V2.1.0

Following is a compatibilty matrix for all AndrOBD plugins:

Plugin Version Android >= AndrOBD >=
MqttPublisher V1.0.3 V4.1 V2.0.0
GpsProvider V1.0.3 V4.1 V2.1.0
SensorProvider V1.0.3 V4.1 V2.1.0
MqttPublisher V1.1.0 V4.1 V2.4.0
GpsProvider V1.1.0 V4.1 V2.4.0
SensorProvider V1.1.0 V4.1 V2.4.0

Plugin not detected by AndrOBD

In order for AndrOBD to detect- and operate plugins correctly:

  • Plugin must be installed
  • Plugin must match above compatibility table
  • Plugin must be initially started once in the system
  • Required system permissions must be granted
  • System permission to run plugin in background must be granted
    • This permission may also be limited by supplemental apps (i.e. DuraSpeed, etc.)
  • Android >= 10 : System permission to "Show PopUp screens in background" must be granted
    • Without this permission plugin configuration can not be initiated from AndrOBD

Support of USB ELM adapters

What you have to do to use a USB adapter is

  • plug in your USB adapter and confirm the automatic start of AndrOBD
  • select your USB adapter

All the rest ist identical to BT adapters 👍

Will AndrOBD support additional (NON OBD) sensor data?

Short Answer: No!

Long Answer

The OBD protocol is mandated by government to be supported by every road vehicle, but only for control units which are relevant for exhaust emissions.

The OBD protocol and data mapping is standardized for all vehicles, unlike all other diagnostic protocols and data items (i.e.: ABS, body, suspension, etc.) which are specific to the vehicle OEMs / types.

AndrOBD does support the OBD protocol only, and therefore is limited to emissions related data as well.

  • Any support for additional diagnostic data within AndrOBD would:
    • Require OEM internal documentation about diagnostic data mapping and scaling
      • and/or a huge amount of time for reverse engineering, and testing of these
    • Require to change to a full time, closed source, pay app project, to pay off above efforts.
    • Make the app OEM specific (at least extensions)

Since I prefer AndrOBD development to stay a open source spare time project, I don't see a chance to implement any additional protocols / ECU data.