we purchased TLE493DW2B6A0 samples from digikey and built our system prototype.
everything works with multiple of TLE493DW2B6A0 sensors.
the I2C address we used for TLE493DW2B6A0 is 0x6A / 0x6B.
now, we purchased TLE493DW2B6A1HTSA1 and used address 0x44 / 0x45 and it does not seems to work.
it seems to ignore the read/write command as if the address is not intended for it.
Can you please advise if there is anything else that we are missing besides setting the address to 0x44/0x45?
BTW, when driving to 0v on CLK and Data line, what is the minimum acceptable voltages? is it 0.4v max?
our Output low Voltage is about 0.48v. is it acceptable?
please see the attachment.
Thanks and Best Regards,
Just a few suggestions.
Does the device marking show ED ?
Is it possible the device is installed 180 degree's backwards?
As for the logic low level, the datasheet says 30% of Vdd. Assuming Vdd is 3.3V, then logic 0 can be as high as 0.99V. So, your observed 0.48V for logic 0 should be okay. Since the h/w worked with TLE493DW2B6A0, the logic levels should be okay for TLE493DW2B6A1.
BTW, why is your logic 0 so high? Are you using a very small pull-up resistor on SCL/SDA signals? Of concern is, can TLE493DW2B6A1 pull that resistor to logic 0? Again, if it worked with TLE493DW2B6A0 it should work with TLE493DW2B6A1 (unless you've made changes to the circuit and haven't told us).
One more thought...
Did you try communicating with the previous address of 0x6A / 0x6B?
How about trying the other addresses shown in datasheet.
Hope this helps.
thank you so much for the response.
I had 2 x A1 and decided to replace 1 of the A1 with A0 on exactly the same foot print.
the A0 dropped in worked perfectly fine with 0.4v for logic 0. I have 1.2K pull up resistor.
i tried 0x6A/0x6B, 0x44/0x45, 0xF0/0xF1, 0x,88/0x89 and none of them worked.
looks like during the write to update MOD1 register field IICadr , the ACK is logic 0 from TLE493D, so it looked like it took it, but when reading, the TLE responded logic 1 during the address phase and ignored the read.
to configure for A1, i write like
start, 0x44, (TLE Ack = 0), address 0x11 (ack = 0), 0x3C (ack = 0), stop. (IICadr=01, 1 byte read)
then, i read first register
start, 0x45, ack = 1, all data output = 1 except ACK = 0 for subsequence register.
the read does not work.
what am i missing in term of programming A1?
what else do i need to do to update A1?
do you have any example codes that work for A1?
Unfortunately, I don't have this device to test. Only the datasheet to read.
Something to try:
From datasheet, it suggests to first send I2C Software Reset command.
Address 0x00, Data 0x06 (from Philips I2C specification).
I would add a 0.5ms delay both before and after sending this command to the chip. The first delay is to account for a slow rising Vdd. The second delay is to allow the chip to internally reset itself.
Your scope capture of timing looks reasonable to me for time stamp image 4:27:50 (address 0x45). Aside from lack of ACK.
I'm not sure what is being shown in the other image time stamp 5:34:41 (starts with address 0xE0, gets no ACK).
After you initialize the register, do you wait for the INT signal on SCL/INT wire before attempting to read chip? It could be that you need to wait for INT signal.
edit: I just found the Infineon app notes for this chip. An I2C reset is described on page 26.
Product Name (infineon.com)
It's interesting that this deviates from the Philips I2C standard.
I followed TLE493D spec and sent the reset sequence 0xFF 0xFF 0x00 0x00 before configuring the part. I think I already waited for INT because it took a long time before i start my acquisition. by then, the INT must have happened a lot of time and still the ACK = 1 for the address phase.
The (starts with address 0xE0, gets no ACK) is for I2C mux from TI https://www.ti.com/product/TCA9548A-Q1.
We used this I2C mux and it works with multiple A0 device on our bread board prototype.
So what is the correct setup sequence for A1 device?
You might want to look at scope trace at TLE493D when sending I2C reset sequence thru mux. That sequence may not make it thru the mux to the TLE493D .
Are you testing A1 device on prototype breadboard, or on other pcb? Should try on same pcb as A0 device.
I'm at a loss for more suggestions.
Looks like questions will need to be answered by Infineon.