Win a copy of The Little Book of Impediments (e-book only) this week in the Agile and Other Processes forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Peer Review: Open Source Automotive Scan Tool

 
Luke Leber
Ranch Hand
Posts: 69
2
C++ Linux Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello, first of all let me say that android development is by far the most painful computer science experience that I have ever endured. Everything seems backwards from what my intuition tells me. Nevertheless, I have gotten this project to a working state and require some feedback from professional (industry) android developers.

Project Synopsis: Utilize SAE-J1979 in order to communicate with all 1996 and newer vehicles. This is a free, open source scan tool implementation.

Project Page: https://github.com/LukeLeber/Scandroid

Project Overview:
* View live data obtained through onboard modules
* View freeze-frame data obtained through onboard modules
* Review diagnostic trouble codes (DTCs) stored in onboard modules
* Reset diagnostic information (turn off the check engine light)
* Review monitor test information
* Request remote control of onboard systems
* For more information on support (and future support) review the SAE-J1979 document

Unfortunately, this project requires an additional piece of interpreter hardware to communicate with your vehicle. This hardware is called the ELM327 (www.elmelectronics.com) and can be purchased over ebay for under $10 if anyone is interested in actually giving it a test drive.

Currently the only supported interpreter interface is through bluetooth, meaning that the ELM327 hardware must be bluetooth compatible, although I plan on making interfaces for wifi, USB, and SMS (remote connections).

I plan on making manufacturer specific functionality part of Scandroid in the future depending on whether or not I can obtain enough information with my limited project budget ($0).

Cheers!

PS. Please use extreme care when performing operations not explicitly defined in SAE-J1979. These operations could potentially brick your vehicle if you somehow manage to write to protected memory.
 
Luke Leber
Ranch Hand
Posts: 69
2
C++ Linux Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
New code is up:

* Automatic detection of all SAE-J1979 protocols and partial compliance with SAE-J1978.

I was hoping for at least one review. Are there any other places where one might look for reviews if none are to be found here?

Regards,
Luke
 
Paul Clapham
Sheriff
Posts: 21581
33
Eclipse IDE Firefox Browser MySQL Database
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
It seems like a very specialized application -- probably there aren't a lot of people who want to hack their vehicles like that. (Personally I would think twice before trying out code like that from some guy on the internet -- I don't mean that to be impolite, but the reality is that all I know about you is that you're posting here. That's a plus in that we don't expect black-hat hackers here, but you're still an unknown.)

There may well be an online community of people who want to develop and use software like yours, but I don't know where it might be.
 
ibrahim yener
Ranch Hand
Posts: 202
Android Java PHP
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Dear Luke
First of all i want to thank you about posting your code to here. I have downloaded it but was unable to import to eclipse.

Also currently i have no Bluetooth device to connect to vehicle. I was trying to build something like your project but i was totally out of idea where to start.

Anyway, thank you again to sharing.
 
Luke Leber
Ranch Hand
Posts: 69
2
C++ Linux Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Paul Clapham wrote:It seems like a very specialized application -- probably there aren't a lot of people who want to hack their vehicles like that. (Personally I would think twice before trying out code like that from some guy on the internet -- I don't mean that to be impolite, but the reality is that all I know about you is that you're posting here. That's a plus in that we don't expect black-hat hackers here, but you're still an unknown.)

There may well be an online community of people who want to develop and use software like yours, but I don't know where it might be.


"Hack"? This is an implementation of a piece of diagnostic test equipment based on *open standards developed by ISO / SAE (Society of Automotive Engineers) and enforced by international law.

That being said, I can see your concern of interfacing with a $30,000+ piece of hardware. How would you advise me to step away from being an "unknown" to earning some legitimate recognition if this way is inappropriate? *I have not been blessed with a college education in a CS field nor do I have any kind of professional network.

Thanks for the reply.
 
Luke Leber
Ranch Hand
Posts: 69
2
C++ Linux Netbeans IDE
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
ibrahim yener wrote:Dear Luke
First of all i want to thank you about posting your code to here. I have downloaded it but was unable to import to eclipse.

Also currently i have no Bluetooth device to connect to vehicle. I was trying to build something like your project but i was totally out of idea where to start.

Anyway, thank you again to sharing.


Hi, thanks for the reply. I honestly do not have a clue which files types should be added to the git ignore file and which are auto-generated during a project import. Perhaps you were missing a dependency? I use the ButterKnife annotation processor library.

If nothing else, I hope that browsing the code might satisfy any curiosity that you have. I've still in the process of documenting things with the text from the SAE documents (which are public domain as far as I know), but there is quite a bit of hard to come by information packed in there.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic