Watchdog Colibri T30

Dear Community;

We have some T30 with linux custom kernel and Nvidia provided rootfs. This T30 are located in a remote place, non easily accessible. Sometimes, aproximatelly every 2 months they get blocked and we have to go there to reboot them. I suspect that they get blocked at Starting kernel proccess. I have read something about watchdog and I think that it can be a solution. Reading about watchdog in the developer center I have read that it is installed in the T30/20 . Even if I have custom Kernel with Nvidia provided rootfs watchdog is installed?

If you know any other solutions to avoid this blocks please tell me.

That you a lot,

Ander.

Have you seen this article - High performance, low power Embedded Computing Systems | Toradex Developer Center ?

Yes, I have read that. In my Colibri T30 I can see watchdog, watchdog1 and watchdog2 in the /dev/ directory. If I have understood something they are set to 60 seconds. So if the system gets blocked it should reboot within 60 seconds?

Or if I haven’t understood well I need to set up the watchdog in the U-Boot environment bootargs.

Sorry for my ignorance and thanks a lot.

hello, the watchdog functionality is enabled but not armed. You should tryout the watchdog-test and arm the watchdog. Once the watchdog is armed, you need to trigger it using a background user application, otherwise it will reset the module after 60 seconds.

Thanks you for sharing that watchdog-test app. I am not very familiar with C, I use much more Python. How can I run watchdog-test.c on my T30 or iMX7?

Thank you.

hello

you have to cross compile the c-file and then run it on the module following these instructions. If you prefer to use Python, you can read this post. You need to call the IOCTL functions.

Thank you @jaski.tx for sharing that Python code. Thanks to that and searching more code on Google I managed to modify some code and make a Watchdog service. If anyone needs Watchdog code for Python 2.7 is here.

Thanks again.

You are welcome. Thanks for the feedback and the python code.