Coder Social home page Coder Social logo

devoneonline / android-obd-reader Goto Github PK

View Code? Open in Web Editor NEW

This project forked from pires/android-obd-reader

0.0 2.0 0.0 1.87 MB

Android OBD-II Reader application that uses pure OBD-II PID's Java API.

License: Apache License 2.0

Java 100.00%

android-obd-reader's Introduction

android-obd-reader

NOTICE

I am no longer involved in any way with OBD and related activities, so don't expect my feedback on issues, pull-requests and most of all, email.

I can't even remember when I first picked this project from Brice Lambi (the original author). But one thing I'm sure, it was a time my interests changed quite frequently and I'd contribute simultaneously to totally unrelated projects. But for some reason this project stuck with me the longest.

Initially, it was more of an Android hack (sorry, Brice!). With time, I've redesigned the code and split it into two: a Java API library that could run anywhere the JVM ran without concerning about which transport protocol one would use (because it just asks for one InputStream/OutputStream pair) and, after learning about Android development, a revamped Android app.

I know, the UI sucks, but I've never had the eye for UI/UX, I'll admit!

Years went by and a few contributors jumped in with amazing, smart features and fixes. To those fine people, Thank you! This is your baby, too.

Now, it's time to say goodbye. Pires

CircleCI

Android OBD-II reader designed to connect with Bluetooth Elm327 OBD reader.

screenshot

The latest release can be found here.

Prerequisites

  • JDK 8
  • Android Studio 1.5.x or newer
  • Android SDK (API 22, Build tools 23.0.1)
  • OBD Java API (already included)

Test with device

Be sure to have the device connected to your computer.

cd whatever_directory_you_cloned_this_repository
gradle clean build installDebug

Test with OBD Server

If you want to upload data to a server, for now, check the following:

  • OBD Server - a simple implementation of a RESTful app, compiled into a runnable JAR.
  • Enable the upload functionality in preferences
  • Set proper endpoint address and port in preferences.

Troubleshooting

As @dembol noted:

Have you checked your ELM327 adapter with Torque or Scanmaster to see if it works with your car? Maybe the problem is with your device?

Popular OBD diagnostic tools reset state and disable echo, spaces etc before protocol selection. Download some elm327 terminal for android and try following commands in order:

ATD
ATZ
AT E0
AT L0
AT S0
AT H0
AT SP 0

One may need to turn off echo and headers depending on the dongle in use:

AT E0 - Turn echo off. Characters sent to ElmScan are not retransmitted back to the host computer.
AT E1 - Turn echo on. This is the default state, characters are echoed back to the host computer.
AT H0 - Turn headers off. This is the default state, header information and CRC byte are omitted.
AT H1 - Turn headers on. Header information and CRC byte are displayed.

Building with custom obd-java-api

This project depends on a pure-Java OBD library. For testing with a custom version of it, do the following:

  • Clone obd-java-api it into your project folder:
git clone https://github.com/pires/obd-java-api.git
  • Create obd-java-api/build.gradle with the following content:
apply plugin: 'java'
  • Edit main build.gradle and change:
compile 'com.github.pires:obd-java-api:1.0-RC14'`

to

compile project(':obd-java-api')
  • Edit settings.gradle and add:
include ':obd-java-api'

Tested on

  • Samsung Galaxy Nexus (Android 4.4.1)
  • LG Nexus 5 (Android 6.0 Preview 3)
  • Nexus 7 2013 WiFi (Android 4.4.4)
  • Samsung Galaxy S4 Active I9295 (Android 5.0.2)
  • Samsung Galaxy S6 Edge SM-925F (Android 5.0.2)
  • Samsung Galaxy Note 3

android-obd-reader's People

Contributors

pires avatar nomwerp avatar bricelambi avatar elagin avatar pho3nix90 avatar maxbenchrist avatar amouly avatar spapas avatar jbits avatar sytolk avatar zkjellberg avatar philippgrulich avatar kuburoman avatar roalts avatar adennie avatar diegomalone avatar hankay avatar seanhold3n avatar godfreyduke avatar jeepingben avatar popescustefanradu avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.