I would like to get an advice about CAN bus communication with Android tablet. I am working in electrical vehicle project with colleague. We have CAN bus communication between BMS, inverter, control logics. And i need to get data like speed to the cluster. The cluster will be Android tablet. I have Arduino shield for CAN and bluetooth adapter to send data to tablet. I am fairly new to Android.
Based on your inputs. You will need to use your arduino to connect your android device to you vehicle. The arduino code will translate data from CAN to bluetooth and the other way around. Indeed your android device can't communicate directly to your CAN bus.
Then you will have to create your android application to send/receive data from the arduino. To do so take a look at the android bluetooth guide (it could also be possible to do the same with a wifi shield or an ethernet shield or over usb(mutch more difficult)).
For OBD II codes it depends on your vehicle if those are implemented on itself.
For data decoding:
Here is a simple solution here in an android-can bus adapter that allows an Android device to connect to a CAN bus.