Hi,
I’m using your Arduino ISO9141-2 / K-Line library and I’m having trouble completing the INIT sequence when connecting to my K-LINE ECU simulator sketch. I’ve tried both an OBDLink SX and an ELM327 v1.5, and I consistently get an initialization error.
On the diagnostic adapter side I’m sending:
ATZ
ATSP3
0111 (or any PID)
The adapter replies:
INIT….ERROR>
At the same time, the Arduino serial output shows:
00 00 00
ERROR WHILE RECEIVING STUFF
Hardware detail: I’m using a UART-LIN TTLv3 module from AliExpress with an SIT1021T chip (it seems like a clone of the TJA1021). The module works perfectly on LIN. I’m using these AliExpress modules mainly because I already had them at home for another part of a project I’m building, and since LIN and K-Line are physically quite similar and the TJA1021 datasheet explicitly states “K-Line compatible”, I decided to try them for K-Line as well.
For K-Line, communication works only if I bypass the INIT. If I do this on the OBDLink SX / ELM327:
ATZ
ATSP3
ATBI (bypass INIT)
0111
…then it works and I can read from the simulator. But I’d really like to make the proper ISO9141-2 INIT work both for the K-Line “reader” side and for the K-Line “simulator” side.
Do you think this is likely a timing issue in my setup, or could it be that the SIT1021T / TJA1021-style transceiver doesn’t handle ISO9141-2 init timings reliably (despite being advertised as K-Line compatible)? If you have any recommendations (specific init method, timing parameters, pull-up values, wiring checks, etc.) I’d really appreciate it.
This is the module:
https://a.aliexpress.com/_EvP6LJ6
Thank you very much for your time and for the huge contribution your library makes to the Arduino community. It simplifies K-Line development a lot ;)
Kind regards,
Julio.
Hi,
I’m using your Arduino ISO9141-2 / K-Line library and I’m having trouble completing the INIT sequence when connecting to my K-LINE ECU simulator sketch. I’ve tried both an OBDLink SX and an ELM327 v1.5, and I consistently get an initialization error.
On the diagnostic adapter side I’m sending:
ATZ
ATSP3
0111 (or any PID)
The adapter replies:
INIT….ERROR>
At the same time, the Arduino serial output shows:
00 00 00
ERROR WHILE RECEIVING STUFF
Hardware detail: I’m using a UART-LIN TTLv3 module from AliExpress with an SIT1021T chip (it seems like a clone of the TJA1021). The module works perfectly on LIN. I’m using these AliExpress modules mainly because I already had them at home for another part of a project I’m building, and since LIN and K-Line are physically quite similar and the TJA1021 datasheet explicitly states “K-Line compatible”, I decided to try them for K-Line as well.
For K-Line, communication works only if I bypass the INIT. If I do this on the OBDLink SX / ELM327:
ATZ
ATSP3
ATBI (bypass INIT)
0111
…then it works and I can read from the simulator. But I’d really like to make the proper ISO9141-2 INIT work both for the K-Line “reader” side and for the K-Line “simulator” side.
Do you think this is likely a timing issue in my setup, or could it be that the SIT1021T / TJA1021-style transceiver doesn’t handle ISO9141-2 init timings reliably (despite being advertised as K-Line compatible)? If you have any recommendations (specific init method, timing parameters, pull-up values, wiring checks, etc.) I’d really appreciate it.
This is the module:
https://a.aliexpress.com/_EvP6LJ6
Thank you very much for your time and for the huge contribution your library makes to the Arduino community. It simplifies K-Line development a lot ;)
Kind regards,
Julio.