Problem statement
EDIT: There has been success in communicating over SDL protocol! See post 17 for a video showcase.
I am not too happy on spending 1000-1500Rs each time I want to hook up a scanner to my baleno for getting live engine params.
Overview of interacting with ECU
Scoured through forums and it's pretty much clear that ELM327 chips cannot work with baleno.
There are two wires provided by suzuki in baleno:
- Serial Data Line (SDL) (Proprietary)
- ISO 9141 (k-line) (Open standard)
However, these two wires are both present only in ECU that uses O2 sensor. Mine is basic and has trimpot, so they use another ECU (mine is 33920-65GP), which only has SDL.
All would've been good if ISO 9141 wire was present. ELM327 and generic handheld scanners would've just worked fine.
So we only have one data wire i.e. Serial Data Line (SDL) coming from A3 (ECU) to pin 9 of J1962 (OBD) connector.
Expensive scanners are able to interface with the ECU on this proprietary protocol. Since there's no documentation, not sure if it's even possible to reverse engineer alone w/o having spare ECUs and a test bench to spend time on.
Some hope (sort of)
In old suzuki forums there was someone by the name "rhinoman" who created "rhinopower" and he had figured out the protocol and was able to extract live engine params. Sort of everything that the expensive scanners do. He had made his own hardware and software.
Hardware link has been dead.
Some differences about SDL and ISO 9141
- ISO 9141 works on 12V, SDL works on 5V
- ISO 9141 by standard is present on pin 7 of OBD, SDL is on pin 9
- ISO 9141 was not present in wiring diagram for immobilizer equipped baleno (like mine is)
- SDL is connected to ECU, ICM (immobilizer control module) and finally to pin 9 of obd, which is why expensive scanners can do immobilizer related actions since it's linked to ICM
Own assumptions and shenanigans
I have a feeling I won't be needing to build my own circuit or something. I had bought this weird cable called VAG KKL FTDI, which is made for audi, GM etc. Reason I still went ahead and ordered it is because it allows serial communication.
I couldn't have use wired ELM327 since it is an abstraction over open protocols. The only way I have a possibility of interacting with SDL is to get raw access to SDL wire. This cable seems to let me do just that.
But the cable works on pin 7 of OBD connector. There was nothing on pin 7. So I uh... yoinked SDL wire from pin 9 to pin 7.. in hope that the cable could communicate over the SDL wire. I have also ordered a 1 male - 2 female OBD extension in case I can read SDL wire data, I can try hooking up an expensive scanner and seeing what data is being sent back and forth.
I have yet to confirm that this even works. But opening this thread in case I go on a tangent idea e.g. making a breakout harness and reading ECU wire voltages and converting that to useful data.