Skip to content
This repository has been archived by the owner on Jun 2, 2022. It is now read-only.

Latest commit

 

History

History
69 lines (60 loc) · 2.55 KB

README.md

File metadata and controls

69 lines (60 loc) · 2.55 KB

java-cardiag

Description

Car diagnostic software for vehicles with OBD2 compatible interface.

Example

  • now we can run two actions. Program looks for serial interfaces and lets the user to select one. Then it runs the action.
  • report creates a text file in the current directory containing all implemented values.
  • clear_trouble_codes erases the saved errors.
sudo java -jar ./java-cardiag-0.0.1-SNAPSHOT-jar-with-dependencies.jar report;
sudo java -jar ./java-cardiag-0.0.1-SNAPSHOT-jar-with-dependencies.jar CLEAR_TROUBLE_CODES;

Targets

  • support for most of today's operating systems
  • communication via USB ELM327/OBD2 car interface, probably other in future
  • stability
  • simple startup, no system modifications needed (only JRE6 and higher)
  • pretty maintainable code covered by tests, both unit (without real serial interface) and integration (with interface and car)
  • open source free code

Problems

  • how
  • only available hardware for testing - ELM327 clone (1.5a)
  • only few available cars for testing - Lada Kalina 1.6 8V 2007, Škoda Fabia 2010, Ford Focus 2007, Seat Ibiza 2001.
  • need help with a selection of the license ... GNU GPL v3? EPL? BSD? MIT?

Troubleshooting

Port name - /dev/ttyUSB0; Method name - openPort(); Exception type - Permission denied. (Linux)

  • sudo gpasswd --add ${USER} dialout
  • or run the program with sudo.

Current stage

  • early development.
  • can reset error codes
  • can produce a report file with the current values
  • version 0.0.1 will be released after I will fix my problem with my car (P300, P303, P304) ... or later, in 2017 ;)
  • if someone will start implementing GUI, many people will be finally happy ;)

Useful links

Maybe useful links

These libraries were not selected due to license or incompatibilities or other reason: