TLV493-A1B6 lockup crash bug

Announcements

Measure CO2 When It Matters - Infineon’s XENSIV™ PAS CO2 now comes in SparkFun Red. Check it now!

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
RobNZ
Level 1
Level 1
5 replies posted 5 sign-ins First like given

Hi, I have a product that uses the TLV493-A1B6 magnetic hall effect sensor. Like others, I have experienced issues with the device, in which it appears to lock up, or cause microcontroller software to lock up.

From online reading, the issue seems to be due to software reading the i2c registers while a conversion is taking place (there are no shadow buffers in the old version of the device).

I would like to know if the newer version of this device (TLV493-A2B6; old was TLV493-A1B6) fixes this problem, and whether I can simply replace the old ICs with the newer version. Are other software or hardware changes required?

Thanks in advance.

@user17603 @IFX_Publisher2  

 

Links:

https://community.infineon.com/t5/Knowledge-Base-Articles/Comparison-of-TLV493D-A1B6-and-TLI493D-A2B...

https://community.infineon.com/t5/3D-Hall-Magnetic-sensor/tlv493d-reading-problem/m-p/296087#M36

https://www.infineon.com/cms/en/product/sensor/magnetic-sensors/magnetic-position-sensors/3d-magneti...

https://www.infineon.com/dgdl/Infineon-TLV493D-A1B6_3DMagnetic-UM-v01_03-EN.pdf?fileId=5546d46261d5e...

https://www.infineon.com/dgdl/Infineon-TLE493D-W2B6-UM-v04_00-UM-v04_00-EN.pdf?fileId=5546d46261ff57...

https://arduino.stackexchange.com/questions/53882/communicating-with-magnetic-sensor-tlv493d-a1b6-ov...

https://community.infineon.com/t5/3D-Hall-Magnetic-sensor/TLV493D-3D-mag-sensor-not-robustly-reliabl...

 

0 Likes
1 Solution
Yashraj_P
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 25 likes received

Hi @RobNZ,

The problem with TLV493D-A1B6 is that sometimes ADC conversion itself hangs up in Fast Mode or Master-Control Mode in mid-communication. Following measure can be taken as stated in User Manual TLV493D-A1B6 Section 5.6, to reset the sensor.

The TLV493D-A2BW can be used in place of TLV493D-A1B6, which does not suffer from this hang up.

TLV493D-A2BW has 1-byte and 2-byte read modes, so you have to correctly setup Mod1 and Config register: (0x11 and 0x10) respectively. Please go through the datasheet and User Manual.

Thanks and best regards,
Yashraj

View solution in original post

7 Replies
Yashraj_P
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 25 likes received

Hi @RobNZ,

Could I know about the micro-controller you are using to communicate with the TLV493D-A1B6 sensor?

Are you able to write to the device?

Thanks and regards,
Yashraj

0 Likes
Sure, it’s an Atmel ARM device. Everything works perfectly for an hour or a day, then it appears that comms with the IC is lost. There is a “no shadow buffer” issue with the early version of this IC, and a new version has been released.

Thanks, Rob Ward

This email was sent from [Proton Mail](https://www.protonmail.com) (secure and encrypted).

Mobile: +64 21 0377 936

Instant messaging / video communications...
- Threema: VT2TZFXB (Swiss, best encryption, https://threema.id/VT2TZFXB)
- Telegram: RobWardNZ (secure and encrypted)
- Signal: +64 21 0377 936 (secure and encrypted)
0 Likes
Yashraj_P
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 25 likes received

Hi @RobNZ,

The problem with TLV493D-A1B6 is that sometimes ADC conversion itself hangs up in Fast Mode or Master-Control Mode in mid-communication. Following measure can be taken as stated in User Manual TLV493D-A1B6 Section 5.6, to reset the sensor.

The TLV493D-A2BW can be used in place of TLV493D-A1B6, which does not suffer from this hang up.

TLV493D-A2BW has 1-byte and 2-byte read modes, so you have to correctly setup Mod1 and Config register: (0x11 and 0x10) respectively. Please go through the datasheet and User Manual.

Thanks and best regards,
Yashraj

Thanks for the info. We have decided to move to the TLE493D-A2B6 device. I am curious about why you suggested the TLV493D-A2BW...? Is it because it is a consumer part, unlike the TLE? Infineon documentation (inside the software download) contains the following, thus leading to our choice of the TLE part. Thanks again.

Generic library for TLx493D magnetic sensors.
Infineon Dave Project.

Supported hardware versions:
*TLV493D-A1B6  (our old device)
*TLE493D-A2B6  (our new replacement device)
*TLE493D-W2B6
*TLI493D-W2BW

0 Likes
Yashraj_P
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 25 likes received

Hi @RobNZ ,

TLE493D-A2B6 is an excellent choice. But you can go for TLE493D-P2B6 which has higher precision and Wake-up feature, if it suits your requirement.
And you can also take help from the TLE493D-3DMagnetic-Sensor example code hosted on Github, for your project.

Wishing you all the best.

Best regards
Yashraj

RobNZ
Level 1
Level 1
5 replies posted 5 sign-ins First like given

 Yashraj, thanks for your reply. I don't want to be a grumpy bum, but I have spent a lot of time and effort and cash trying to get the TLE493D-A2B6 working, and I would like to say the following.

1. The datasheet could be improved a lot.

2. Simple example code would help a lot.

3. The reset code on your Github page is not finished !!!

4. But worst of all is the seemingly inconsistent behavior of the device. Let me explain.

On power up I reset the device by sending 0xFF 0xFF 0x00 0x00 with the start and stop conditions. (This is very badly explained in the datasheet imo btw.)

Next I configure the registers CONFIG and MOD1. I leave MOD2 alone as it has just one bit to change, and I can leave it at default.

The device is now working... I can read data from it, get the VERsion data etc.

However, if I add to my setup code a modification to MOD2, any subsequent reading of the device fails, except for one case that I have found.

If I set bit 7 (write 0x80) ---> subsequent reads fail.

If I send 0xFF, 0xE0, 0xC0, 0x00, these all cause read failure.

The only exceptions I can find is if I send 0x01 or nothing to MOD2. In these cases the device seems to work fine.

Now, perhaps I am doing something silly in my code, or perhaps MOD2 is broken, which would not surprise given how the poor design of the A1B6 device whose ADC randomly locked up requiring reset.

Very unhappy customer here.

So what exactly is hidden in MOD2 that would cause writes to it to break reads from the device?

0 Likes
Yashraj_P
Moderator
Moderator
Moderator
10 likes given 250 sign-ins 25 likes received

Hi @RobNZ ,

We are very sorry to hear about the inconvenience caused.
We are working on providing you the best explanation/solution. 

In the mean time I had a request for you, could you please create a new thread posting the question on TLE493D's MOD2 register. This thread already has a solution. 
Thanks for your consideration.

Best Regards,
Yashraj.

0 Likes