FS65 wdg error counter not incrementing

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

FS65 wdg error counter not incrementing

Jump to solution
2,147 Views
razvan_simtion
Contributor II

Hello,

Thank you in advance for your time on responding to my question.I have the following issue regarding the FS65:

The watchdog error counter does not increment when a wrong refresh is performed (either with a wrong data refresh or wrong timing refresh).

A bad read of the register who shows the status of the watchdog error counter (WD_COUNTER) is excluded since the WD_RFR_2:0 bits who report the  value of the watchdog refresh counter are incrementing when the Wdg is properly refreshed. However the WD_ERR_2:0 bits who report the value of the wdg error counter are not incrementing, even tough in the register WD_ANSWER, the WD_BAD_DATA and/or WD_BAD_TIMING bits are '1' (Wrong WD data refresh/Wrong WD timing refresh) , thing that represents an wdg error and it should increment the watchdog error counter.

Any idea why concerning this behaviour?

Labels (1)
0 Kudos
1 Solution
2,029 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hello Razvan,

I have not heard of such an issue so far.

 

If WD_BAD_DATA or WD_BAD_TIMING bits are set, the watchdog error counter should definitely be incremented by 2, even in debug mode.

 

Could you please double check if you read the WD_ERR_2:0 bits (bit 7 – bit 5 of the WD_COUNTER register) correctly?

Best regards,

Tomas

View solution in original post

0 Kudos
3 Replies
2,030 Views
TomasVaverka
NXP TechSupport
NXP TechSupport

Hello Razvan,

I have not heard of such an issue so far.

 

If WD_BAD_DATA or WD_BAD_TIMING bits are set, the watchdog error counter should definitely be incremented by 2, even in debug mode.

 

Could you please double check if you read the WD_ERR_2:0 bits (bit 7 – bit 5 of the WD_COUNTER register) correctly?

Best regards,

Tomas

0 Kudos
1,843 Views
Gavinzhangwei
Contributor I

Hello Tomas,

For FS84, it seems that WD_BAD_DATA or WD_BAD_TIMING bits set but WD_ERR_2:0 bits not set. Could you help to check this. Thanks!

0 Kudos
2,029 Views
razvan_simtion
Contributor II

Hello Tomas,

You are right, I have found the issue, I tried again today, added an extra if condition to my code: if(val_wd_counter & 0x00F0) then put a flag to TRUE, in order to check if the WD_ERR_2:0 ever got incremented. The flag was immediately set to true when bad timing/data refresh is performed.

The issue was that I was setting the max error counter value to 2 at INIT (change that I made in order to enter faster in Deep Fail-Safe mode) I changed it back to 6.In that previous config I believe the change(error counter incrementing) was too fast to capture it by my task(currently I am using DLT viewer to check the value of the registers, and my task that is showing this value was to slow and was all the time showing 0x0F00, or 0x0F02, 0x0F04 …0x0F0C,0x0F0E for WD_COUNTER even though the error counter was also increasing   ) .

Thanks again for the help.

Best Regards,

Razvan Simtion

0 Kudos