Results 1 to 6 of 6

Thread: Ideas for an Android-based app to help you drive economically

  1. #1
    Newbie
    Join Date
    Jul 2010
    Posts
    2

    Ideas for an Android-based app to help you drive economically

    I'm thinking of starting work on an Android application which would pull information from the car's ECU and display the information in such a way as to allow the driver to modify their driving style to be as economical as possible. This app would in no way compete with the more full-featured apps out there like Torque and OBDroid. My app would focus entirely on allowing the driver to get all the information he/she needs to drive as efficiently as possible.

    The interface would be optimised for communicating the information as clearly as possible on a small screen (which rules out analogue "gauges"!).

    First version
    • Display a user-configurable set of realtime sensor data / data calculated from sensor data (instant MPG, trip MPG, engine load etc). Display it using a simple, clear display which makes efficient use of the small screen (i.e. don't display retro "dials" or just numbers, instead display coloured bargraphs so you can still determine what the display is telling you even if you only glimpse it out of the corner of your eye
    • Log OBD data plus GPS location and accelerometer data (from the phone)
    • Allow the user to label the trip and select from a list of "properties" for that trip (e.g. declare if the windows are open, if the air conditioning is on, if you've just pumped up the tires, how many people are in the car etc)


    Second version:
    • Start showing some useful stats. E.g. plot a scatter graph of MPG against speed (and allow the user to tell the system to only include data taken whilst cruising - i.e. not accelerating). It could label points on the plot a different colour based on properties like "windows open = blue, windows closed = red" so you should be able to quickly see if these changes make a measurable difference. By looking at the RPM and speed, it should be able to determine which gear and hence can display this too on the scatter plot).
    • It should be possible to categorise the driving as "city" or "motorway" just by looking at the speed against time and then the system can work out av MPG for these different driving situations
    • Once it's done some stats on historical data, it should be able to tell you if you're currently performing better or worse than the historical data (compensating for speed and acceleration). Using the phone's GPS, it could even bin the data by road. The aim here is to allow the system to determine if something is wrong (whether it's low tyre pressure or something) just by looking at the stats.
    • plot your current MPG along side histograms of past MPG data so you can quickly and easily compare your current performance to previous performance. Multiple histograms available e.g.
      • all MPG data ever collected
      • all MPG data for this journey (and the system would detect when each "jouney" starts and finishes: automatically (based on if the car has been stationary for over x hours) and manually)
      • MPG for the gear you're currently in
      • MPG for speed range you're currently at
      • MPG for current driving style
      • MPG for current acceleration (as measured from the phone's accelerometers)
      • MPG for this particular stretch of road (as figured out from the GPS)
    • The system should be able to map out MPG for a given speed for a given gear and hence could advise the driver to change up/down to improve efficiency
    • Add an option to display miles per /$ of fuel so you can see how much the trip is costing you


    Any other ideas? Are there any apps out there which already do something similar?

    What other information could I pull off the ECU to help inform the driver? For example, I read somewhere that "labouring" the engine (i.e. loading it at very low RPMs) reduces efficiency and is bad for the engine. Would the ECU be able to detect "labouring"?

    A quick dislaimer: at the time of writing, I haven't ever coded a single line of Java and I only just got my first OBD interface! This "MPG" project is kind of a way for me to learn to develop for Android and to learn more about engines. It will take me months to get the first version out the door.

  2. #2
    SuperMod - OBDII GPS Logger forum
    Auto Apps:loading...

    Join Date
    Mar 2009
    Location
    Los Angeles
    Posts
    924
    Any other ideas? Are there any apps out there which already do something similar?
    Let me preface this by saying: awesome idea, go for it!


    Sounds not unlike some of my long term goals for my pet project, which I was interviewed about here: [media]http://www.youtube.com/watch?v=_WeWBXRXUog[/media]

    If you want to actually take a look at what I've done, I *started* some of this in the "analysis" folder in src/ in obdgpslogger's svn. Never got very far with it as I ran out of time. I started by calculating mpg per trip, and then I started working on grouping trips by start, end locations and time of day.

    I always imagined at the very least, a box and whisker plot for each different path to/from work would be good, which might also need to be organised by time. My theory is that it would look something like this [note the lower average but higher variance and massively higher outliers on the freeway. Boxes and averages are roughly the same in my drawing, that almost certainly won't be the case]:


    There are OBD PIDs for "load", which are probably what you want. Current gear is harder to accurately arbitrarily figure than you think, unless you can find a PID for it [will be manufacturer-specific, as there isn't a generic one]. Here's an example graph of vehicle speed divided by RPM [the graph-wide "flat bits" map to gear, with the lowest being first]:


    Admittedly this is mainly C with some C++, not Java, but it might give you some ideas. I have actually just got an Android phone, so now I'm considering porting my stuff.


    If you want some sample data sets to look at, http://icculus.org/obdgpslogger/examples/longterm... man, that's way out of date. Look again later today, I'll try to upload the current version if I can. Be warned that there's a lot of datapoints there, google earth hurts opening the KML if you don't have generous amounts of memory. But you can extract stuff manually from the .db, it's a simple sqlite3 database [or download and build obdgpslogger, which has an obd2csv tool].

    Gary (-;
    OBDGPSLogger, for logging OBDII and/or GPS data
    OBDSim, an OBDII/ELM327 software simulator
    mp3car forums: obdgpslogger, obdsim

  3. #3
    SuperMod - OBDII GPS Logger forum
    Auto Apps:loading...

    Join Date
    Mar 2009
    Location
    Los Angeles
    Posts
    924
    Thar, posted the current log. It has 108 trips, approximately 182 thousand rows of OBDII data.
    http://icculus.org/obdgpslogger/examples/longterm
    [average about 15 minutes per trip]

    Gary (-;
    OBDGPSLogger, for logging OBDII and/or GPS data
    OBDSim, an OBDII/ELM327 software simulator
    mp3car forums: obdgpslogger, obdsim

  4. #4
    licensed to kill - FKA kev000
    Auto Apps:loading...
    tripzero's Avatar
    Join Date
    Aug 2006
    Location
    16.40618, 120.61106
    Posts
    2,494
    I have actually just got an Android phone, so now I'm considering porting my stuff.
    For someone as yourself who often sips the Stevens hot cocoa considers porting to android? How very unportable of you :P.

    But seriously, you've got a dedicated machine in your car that does logging with or without your phone. Why not consider building an analyzer tool for android that just sucks up the db over bluetooth or something?

    I've ported nobdy to maemo5 on my n900. Everything runs fine except I still can't find a real use-case for logging with it. I mean, I plan on having a dedicated device for that which will upload the db nightly to the cloud or to my desktop. What is the point of also logging on my phone? Not to mention it will still log when my wife takes the car. If I still wanted to log, I'd have to loan her my precious, and we can't do that now can we my love?

    Visual analytics though i think would be useful on the phone.
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

  5. #5
    Newbie
    Join Date
    Jul 2010
    Posts
    2
    ChunkyKS, thanks loads for the info! Those logs will come in extremely useful, thanks so much. My plan for the time being is just to build up a library of raw logs and then kick the logs around in MatLab / Excel to get a feel for what's possible and what's not.

    My laptop is too ancient to play video (weird but true!) but I'll make sure I check out your video when I'm next at my desktop.

  6. #6
    SuperMod - OBDII GPS Logger forum
    Auto Apps:loading...

    Join Date
    Mar 2009
    Location
    Los Angeles
    Posts
    924
    Ah, cool. If you're using matlab, mex sqlite thing. Those logs are simply sqlite3 databases.

    Gary (-;
    OBDGPSLogger, for logging OBDII and/or GPS data
    OBDSim, an OBDII/ELM327 software simulator
    mp3car forums: obdgpslogger, obdsim

Similar Threads

  1. OBDroid, Android based bluetooth OBD2 scan tool
    By malcom2073 in forum Engine Management, OBD-II, Engine Diagnostics, etc.
    Replies: 121
    Last Post: 12-21-2011, 11:10 PM
  2. VW Jetta
    By dMand in forum Show off your project
    Replies: 90
    Last Post: 12-11-2009, 06:02 AM
  3. hard drive based head units or nice ipod mount?
    By miketunes in forum Car Audio
    Replies: 6
    Last Post: 04-29-2009, 12:12 PM
  4. App to slow down your CD-ROM or DVD drive
    By Defiler in forum Software & Software Development
    Replies: 9
    Last Post: 04-05-2003, 06:12 AM
  5. External notebook hard drive help
    By mtmsol in forum General Hardware Discussion
    Replies: 4
    Last Post: 04-18-2002, 01:24 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •