Because of the Thanksgiving holiday in the U.S., TI E2E™ design support forum responses may be delayed from November 25 through December 2. Thank you for your patience.

TMAG5273: Wake & Sleep do not trigger the interruption

Part Number: TMAG5273

Tool/software:

Hello,

I'm having trouble configuring the TMAG5273 sensor to enter wake and sleep modes and to trigger an interrupt when a threshold is crossed.

When I use continuous conversion mode, the device works well and triggers an interrupt when a magnet is nearby. However, when I try to configure it for wake and sleep mode with a specified time interval, it does not trigger an interrupt at any point.

The configuration sequence is as follows:

  • INT_CONFIG_1 -> 0x64 (Interrupt asserted when a threshold is crossed, INT interrupt pulse for 10 µs, and interrupt routed through INT pin)
  • X_THR_CONFIG -> 0x10
  • Y_THR_CONFIG -> 0x10
  • SENSOR_CONFIG_1 -> 0x33 (X and Y channels enabled, sleep time set to 15 ms)
  • DEVICE_CONFIG_2 -> 0x03 (Sleep and wake mode enabled)

Any insights into why the interrupt isn’t triggering in sleep and wake mode would be greatly appreciated.

Thanks in advance for your help!

  • Hey Rodrigo,

    Thanks for considering to use Texas Instruments.   Is your magnet in a fixed static position throughout the test?  Is Device_Config_2 the last register written (can you confirm with a scope shot)? Once the device threshold is crossed once, the device wakes up and you have to manually put the device back into wake and sleep mode.  As such are you monitoring immediately after writing Device_Config_2?

  • No the magnet is not fixed, i bring it close after the configuration is done. 

    I did a scope shot of the i2c bus during initialization, here`s how it looks like 

    (the device config 2 is the last register written)

    i2c communication

    My understanding is that when I put the device to sleep and wake it up with this configuration, it should interrupt the pin !INT when the threshold is crossed once and then will be in stand by mode.
    I don`t see any interrupt triggering.
    When I change the device mode to continuous mode the interrupt triggers as expected when i bring the magnet close

  • Hey Rodrigo,

    Thanks for providing that, we are looking into your issue to see if we can duplicate it.  In the meantime can provide scope shots on the CONV_STATUS Register (18h) and the DEVICE_STATUS Registers (1Ch).  Also, if you look at another TMAG5273, do you still have the same issue?

  • Hello Patrick,

    To get the scope shots for those register i did a dummy write to ensure the sensor is awake. 
    The Results were the following

    Both register returned 0x10.

    Does this sound like a problem to you?

  • Hello Rodrigo,

    That does not look like behavior we expect from the device and we have not been able to duplicate the issue. Can you comment on the time scale you are using for your scope in waveforms?  I have experienced issues triggering on quick events if my time scale was too long.  Also can you add the INT pin in the digital protocol viewer?  Have you tried using another TMAG5273 as well?  That will help with determining if it is a single device issue or possibly a setup issue.

  • Hello Patrick,
    Sorry for the late response.
    I got this new scope shots for clarifying this issue.
    This is the configuration i used to set the device in sleep and wake. On channel 2 I added the INT pin.


    When I configured the sensor in continuous mode with the following commands I get the interrupt when i approach the magnet

    Here`s the INT pin when i approached the magnet.


    I have a custom board with the tmag sensor. I tried out three different boards and all of them seems to have the same issue.

    Did you use a different command configuration? 

  • Hey Rodrigo,

    Thanks for supplying that.  I will try to get you a screen shot of what we see tomorrow.  In the meantime, can you comment on whether you get a Nack if you try to communicate with the device when it should be in wake and sleep mode prior to bringing the magnet in close proximity to the device?  Also can you adjust the thresholds to a higher values and comment on whether the device trips?

  • Yes after the last command to set in on wake and sleep mode the next command receive a NACK. I tried out threshold values from 0x1 to  0x80 and all of them performed the same issue.

  • Hey Rodrigo,

    When I use the following commands in analog discovery's waveforms ->protocol->I2C->Custom, I was able to get the device to trigger.  Perhaps there was a timing issue for how you were previously doing it or perhaps there is an issue with your devices.  I would try the following script and possibly a stronger magnet.  If it still does not work, provide a picture of the top of the device (so I can see the part marking) and or send me the ESD bag label with the lot and other information.  We might need you to file a return.  Lets start with the part markings first though.

    Write(0x35, 0x08, 0x64)

    Write(0x35, 0x04, 0x10)

    Write(0x35, 0x05, 0x10)

    Write(0x35, 0x02, 0x33)

    Write(0x35, 0x01, 0x03)

  • I tried the script you sent me.

    I`m still unable to see the interrupt in wake and sleep mode.
    Here`s the marking on the sensor:


  • Hello Rodrigo,

    Which version of the analog discovery did you use and what version of the software?  For my version, you would not be able to run protocols and logic simultaneously.  Your waveforms screenshot suggests that you are providing the communication from somewhere else.  The analog discovery has >3ms pauses between each register write with that script as you can see from my figure below.  Please try that script per the second figure below and monitor with saleae's Logic program.  Once we confirm you

    Date code indicates yours was made January 2024 while mine was made December 2023.  I would expect similar behavior between the two devices.  Can you provide the purchase information from the ESD bag label or shipping box label?

  • I wasn´t using the Analog Discovery to writing the i2c command, i have a microcontroller handling the i2c communication. I was using waveforms to spy the i2c bus. 
    I re-checked the commands using a Saleae Logic 8 Pro and the Logic 2 software (version 2.4.14). 
    This is how it looks the sleep and wake configuration.

    Again i approached the magnet and i did not trigger the interrupt ( on channel 2 ).

    After that I did other test: 
    - When i tried to write a register on the sleep mode i got a NACK the first time ( i think this is the expected behavior)

    - Then the only configuration I did was to set the device in continuous mode { Write(35, 1, 2) }

    Finally this is what happen when I approach the same magnet to the device, confirming that the thresholds were set accordingly and the device indeed is capable of driving the int pin assign to it.
     

    I don't know which other test i should do. 
    Do you think it`s a good idea to test this on the tmag5273EVM (https://www.ti.com/tool/TMAG5273EVM) ?
    I don't have one but if it is necessary to resolve this issue i might be able to purchase it.

  • I forgot to mention that I'm not able to provide the ESD bag label or shipping box label, because i don't have them anymore.