I built a simple Android app that reads in basic car parameters via OBD-II like VIN number and battery voltage. It work nice but I have problems retrieving VIN number from non-German/non-American cars. So for instance in case of Citroen or Fiat one cannot get the VIN number and the returned value is either NULL or UNKNOWN.
Any idea how to solve it? I use the command 09 02 (elm327).
Not all cars support the 0902 command (mode 9 PID 2) to get the VIN. It is optionally supported. If you send 0900 first, that provides a "bit map" of the supported PIDs for mode 9 on that ECU.