2025-01-20 11:24 PM
Hello,
We are using the STEVAL-L99615C board and encountered an issue while testing the Demo1, Demo2, and Demo3 examples. After running the demos, the board became unresponsive. We suspect the issue might be related to the FUSE mechanism described in the L9961 datasheet.
According to the datasheet:
The FUSE pre-driver can activate under certain permanent failure conditions, such as severe undervoltage (UV), overvoltage (OV), overcurrent, or persistent short circuits.
Once triggered, the FUSE pre-driver disconnects the battery pack for safety. Recovery involves issuing commands like GO2SHIP or GO2SLP through I2C.
Before performing any tests, we want to confirm the proper steps and conditions to safely diagnose and recover the board.
Here are our questions:
Reading the FUSE Status Registers:
Which specific registers or flags should we read via I2C to confirm if the FUSE mechanism has been triggered?
Are there additional diagnostic registers to check for potential causes like UV, OV, or overcurrent?
Where can we access these registers—in the provided code examples, through a GUI tool (e.g., STSW-L9961 GUI), or via a direct I2C read?
Issuing Reset Commands:
What is the correct procedure for issuing GO2SHIP or GO2SLP commands?
Are there any specific conditions or precautions to consider before sending these commands?
Checking FUSE States:
If the FUSE has been triggered (FUSE_TRIG_FIRE = 10), how can we confirm whether it is a permanent condition or recoverable?
Is it necessary to ensure FUSE_TRIG_FIRE = 01 before rearming the FUSE, and how can this be done?
Recovering the Board:
If the FUSE has permanently disabled the battery pack connection, are there recommended steps to reinitialize the board?
Are there any physical components (e.g., NMOS or fuse circuitry) that might require inspection or replacement?
Accessing the Status Registers:
If using the GUI tool (e.g., STSW-L9961), what steps should be followed to read the FUSE status and diagnostic information?
In the example code (Demo1, Demo2, Demo3), are there predefined functions to read status registers? If not, can you suggest how to implement direct register reads via I2C?
We haven’t started testing yet, as we want to ensure our approach is correct and avoid causing further issues. Any guidance or detailed steps to safely diagnose and recover the board would be greatly appreciated.
Thank you in advance!
BR,
Vinith Ramarapu