- 1 Prerequisites
- 2 Installation
- 3 Starting
- 4 (Re) Configuring your OBD connection
- 5 Panels
- 6 Troubleshooting
- 6.1 Connection refused
- 6.2 NoClassDefFoundError: javafx/event/EventHandler
- 6.3 java.net.BindException: Address already in use (Bind failed)
- 6.4 java.net.SocketException: Network is unreachable (connect failed)
- 6.5 com.bitplan.elm327.OBDException
- 6.6 java.net.ConnectException: Connection refused (Connection refused)
- 7 Mediawiki Help
or if you'd like to build can4eve yourself:
- Download the software for your platform from Downloads
or build the software yourself
Run the software with java -jar can4eve.jar or can4eve (If you built the software yourself: cd can4eve/obdii/release before this command) A Welcome Wizard will guide you thru the setup process.
(Re) Configuring your OBD connection
Select the menu Settings/OBDII
- Network connection: Select the deviceType Network, set the hostname and port
- USB connection: Select the deviceType USB, select the serialDevice via the "..." button near the serialDevice, set the baudRate (only click direct if you are setting the baudrate via a different means e.g. stty)
- Bluetooth connection: Not directly supported as of 2017-07 - you might want to e.g. use the OBDLink_LX#Forwarding the OBDII Adapter via TCP/IP or forward via can4eve options
- Simulator connection: Select the deviceType simulator
Now you should be able to use the Menu OBD/Start or OBD/Start withLog.
If you get the message "Connection failed", "ConnectException: Connection refused(Connection refused)". You might want to check the hostname and port settings. Also you can tryout the connection e.g. on a command line.
See e.g. VGate_ICar_2#Testing
If you get the following error message on OpenJDK:
java -jar can4eve.jar Exception in thread "main" java.lang.NoClassDefFoundError: javafx/event/EventHandler at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:763) ... Caused by: java.lang.ClassNotFoundException: javafx.event.EventHandler at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
You might want to follow the following instructions:
sudo apt-get install openjfx
fix for Raspberry PI
If on a Raspberry PI you get the message java.lang.NoClassDefFoundError: javafx/application/Application>
get the SDK from: http://gluonhq.com/products/mobile/javafxports/get/
cd /usr/local/src sudo wget http://download.gluonhq.com/javafxports/embedded/armv6hf-sdk-8.60.9.zip sudo unzip armv6hf-sdk-8.60.9.zip cd /usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/lib/ext sudo ln -s /usr/local/src/armv6hf-sdk/rt/lib/arm . sudo ln -s /usr/local/src/armv6hf-sdk/rt/lib/ext/jfxrt.jar . sudo ln -s /usr/local/src/armv6hf-sdk/lib/javafx-mx.jar . sudo ln -s /usr/local/src/armv6hf-sdk/rt/lib/jfxswt.jar .
java.net.BindException: Address already in use (Bind failed)
There is probably another instance of can4eve already running. In rare cases another application might use the same port as can4eve.
java.net.SocketException: Network is unreachable (connect failed)
At the network address and port you selected there was no connection possible. Please check the settings and the network device you'd like to connect to. E.g. you can do a ping to the network address and try a telnet to the given port. see Help/NetworkConnection
Their has been a problem with the OBD connection. The most common error is a timeout which might e.g. happen if you set the wrong baud rate or the device is not listening e.g. because it went to sleep.
java.net.ConnectException: Connection refused (Connection refused)
The network is reachable at the address but not the port you specified.\nYou might want to check the network device and the settings. see Help/NetworkConnection