Page 1 of 1

Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Tue Sep 23, 2014 6:01 am
by funatic
Hello,
I bought an OBD II adapter MODEL A (UART) 3.3 Volt (I ordered the 5Volt one, but something got wrong :/), and
I connected my Teensy 3.1 to the OBD II adapter using this schema:

Teensy 3.1 RX1 <---> TX Arduino OBD II
Teensy 3.1 TX1 <---> RX Arduino OBD II
Teensy 3.1 GND <==> GND Arduino OBD II
The 3.3Volt output of the Arduno OBD II is floating.

The Teensy 3.1 gets its power supply by USB cable connected to a laptop.

Communication cannot be established, as the loop on the COBD::init() method never returns TRUE. I verified that the command ATZ\r is properly sent on the TX of the serial line of the Teensy by using an oscilloscope, but there is no answer at all from the OBD II.

Any help? Notice that I cannot connect supply the power to the Teensy by using the 3.3V output of the OBD II adapter. Or there is a way to modifiy it to be 5Volt instead?

Thanks a lot!
Regards

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Tue Sep 23, 2014 7:09 pm
by stanley
So you didn't connect adatper's VCC? It should work with universal ground. Can you check what Teensy receive from the adapter? Is it in plain text?

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Wed Sep 24, 2014 6:52 am
by funatic
stanley wrote:So you didn't connect adatper's VCC? It should work with universal ground.


Yes, the VCC of the OBD II adapter is not connected to anything.

Is there away to modify the OBD II adapter in order to output 5 Volt instead of 3.3Volt?

stanley wrote:Can you check what Teensy receive from the adapter? Is it in plain text?


The Teensy receiving nothing. I checked with a cheap protocol analyzer. On the other hand, the Teensy is sending ATZ\r each 2 seconds.

Thanks for you help

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Thu Sep 25, 2014 6:09 am
by funatic
Hello Stanley,

stanley wrote:So you didn't connect adatper's VCC? It should work with universal ground. Can you check what Teensy receive from the adapter? Is it in plain text?


for additional information, the Teensy serial port is using TTL levels, i.e. it it 3.3Volt level. Is this ok for the OBD II adapter? Which voltage level is it using on the uart serial line?

Greetings

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Sat Sep 27, 2014 5:21 am
by funatic
Hello Stanley,
the VCC of the OBD II adapter is disconnected from anything. On the other hand, the GROUND is connected to the Teensy 3.1 ground pin.

One question: i verified that, on the UART, the level of voltage on the TX pin of the Teensy 3.1 is about 3 Volt. Is that ok? Or the OBDII needs an higher voltage level on its RX pin?

Greetings

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Tue Sep 30, 2014 5:51 am
by funatic
stanley wrote:So you didn't connect adatper's VCC? It should work with universal ground. Can you check what Teensy receive from the adapter? Is it in plain text?


yes, the VCC of the OBD II connector is not attached to anything.
The teensy is not receiving anything,i verified it with an oscilloscope.
on the other hand, the signal is properly sent on the TX pin of the Teensy.

Question: does the OBD2 adapter uses the RS232 or TTL levels? Perhaps the reason is that
the Teensy is using TTL (i.e. 3 Volt is 0, and 0 Volt is 1).

Thanks a lot for your answer. I hope you could support me a bit again.
Greetings

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Thu Oct 02, 2014 12:58 pm
by funatic
stanley wrote:So you didn't connect adatper's VCC?

Yes, i did not connect it to VCC

stanley wrote: It should work with universal ground. Can you check what Teensy receive from the adapter? Is it in plain text?


Yes, the OBD2 adapter is not sending anything. It is like the OBD2 adapter did not receive any data, although i verified (with an oscilloscope) that it is instead receiving the "ATZ\r" strings each 2 seconds (with TTL voltage levels, i.e. 0Volt is 1, 3Volt is 0).

Is the OBD2 adapter using TTL level for the communication on the UART?

Regards

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Sat Oct 04, 2014 10:07 am
by stanley
Can you compare with what is happening with Arduino?

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Sat Oct 04, 2014 10:22 pm
by funatic
Hello,
stanley wrote:Can you compare with what is happening with Arduino?


I do not own an Arduino, but i could try with a Teensy 3.0, or with various Freescale or PIC32 boards i have,
but i guess the result would be the same, since I checked that the data is really sent properly from the Teensy 3.1 to the
OBD2.

One question: when the Teensy issues the "ATZ\r" command, the device ArduinoOBD2 would just answer straing away, without the need to communicate with the ECU of the car, right? In this case, we could exclude that the problem is the ECU of the car. Can you confirm this?

Regards,
funatic

Re: Arduino OBD-II Mod.A cannot communicate with Teensy 3.1

Posted: Wed Oct 22, 2014 6:55 am
by funatic
Hello,

i discovered that the OBD2 device does need to be connected to the car ECU or to an emulator of the ECU in order to work.
There is not way it works without being plugging it into an obd2 socket.

And also, i tryied its usage on other cars, and eventually it worked on Seat cars, but not on Kia nor Hyundai ones. I guess the protocols of the latters are not supported.

Greetings,
funatic