Skip to content

resets every 5s (watchdog issue) #32

Open

Description

@doh38

I have a device with a nrf51802.
just calling anything under 10ms (even with the simplest form with delay(9) in the main loop) will make a few iteration and crash. funnily calling a delayMicrosecond(100000) will also crash it.
I don't intent to use "delays" actually, but even the freertos example crash or any millis() usage.
Is there anything I can do to debug this?
I don't have serial on this board and use RTT... unfortunately here on an higher level, so I'm not sure to be able to check anything there :)
*I succeeded to root it narrower. seems t be the watchdog triggering (error 2) ... tried to disable it, but it doesn't change anything unfortunately.

Activity

  1. changed the title [-]Crash when loop is under 10ms on NRF51802 (xaa)[/-] [+]resets every 5s (watchdog issue)[/+] on Nov 19, 2023
  2. doh38 commented on Nov 19, 2023

    @doh38
    Author

    by default the watchdog is activated. first time ever used.
    You need to disable it or add `NRF_WDT->RR[0] = WDT_RR_RR_Reload; at any place you want it to be reseted.
    so solved :)

  3. jhmaloney commented on Dec 3, 2023

    @jhmaloney

    I also ran into this issue.

    You can also disable the watchdog timer by adding:
    -DCONFIG_WDT_TIMEOUT_SECONDS=0
    to your compiler flags.

    It would be nicer for newcomers to n-able-Arduino if the CONFIG_WDT_TIMEOUT_SECONDS setting defaulted to 0 to disable the watchdog timer.

    Alternatively, 'NRF_WDT->RR[0] = WDT_RR_RR_Reload' could be added to the top-level loop in main.c.

  4. h2zero commented on Dec 4, 2023

    @h2zero
    Owner

    I find it strange that this is happening, I've not seen it on my end but will definitely make that change.

  5. jhmaloney commented on Dec 4, 2023

    @jhmaloney

    Thanks!

    (You might not have noticed that the resets were happening. I didn't notice at first. What brought it to my attention was that variables were getting reset to their startup values.)

  6. jhmaloney commented on Feb 24, 2024

    @jhmaloney

    I just submitted a tiny PR to make CONFIG_WDT_TIMEOUT_SECONDS default to zero (WDT disabled).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions