2024-01-22 04:50 AM
Hi,
I'm developing firmware for embedded with NFC chip ST25DV04KC.During the debugging process, the chip stopped responding to the default address 0xA6/0xAE. How can I reset the chip to factory settings?
Thanks!
Solved! Go to Solution.
2024-01-23 01:14 AM
Hello,
What do you mean exactly by stopped responding? Is it permanent?
There is no reset to factory function.
But, the I2C address of the ST25DV04KC is configurable. The default address 0xA6/0xAE but this can be changed by writing the I2C_CFG configuration Byte at system address 0x000E.
You may have accidentally overwritten this default value with something else. If this is the case, your ST25DV04KC now has a different I2C address. You can check in your code if you make any write to address 0x000E, and check the value you wrote to recover your new I2C address. If you can't find this in your code, then you will have to "scan" for the 128 possible codes to find at what address the St25DV04KC is answering.
Best regards.
2024-01-22 05:34 AM
i just checked the datasheet and found that ST25DV04KC has no reset pin. If you are using any programming tools or software for the chip, check if there are options to perform a reset or restore default settings.
2024-01-23 01:14 AM
Hello,
What do you mean exactly by stopped responding? Is it permanent?
There is no reset to factory function.
But, the I2C address of the ST25DV04KC is configurable. The default address 0xA6/0xAE but this can be changed by writing the I2C_CFG configuration Byte at system address 0x000E.
You may have accidentally overwritten this default value with something else. If this is the case, your ST25DV04KC now has a different I2C address. You can check in your code if you make any write to address 0x000E, and check the value you wrote to recover your new I2C address. If you can't find this in your code, then you will have to "scan" for the 128 possible codes to find at what address the St25DV04KC is answering.
Best regards.
2024-01-23 05:14 AM
Hi, JL
Good idea. We reached it in parallel. During the debugging process, I accidentally corrupted the I2C address. I scanned 32 possible addresses and found the current one. I was lucky that there was only one device on the I2C bus.
Thanks