* http://www.superhouse.tv/episodes
* http://www.superhouse.tv/15-watchdog-timers-for-arduino-home-automation

A watchdog timer helps keep your embedded devices running, by making sure they are responding properly and automatically hitting reset or cycling the power if they die. I’ve added a simple hardware watchdog timer to an Arduino compatible board running inside my ceiling, where it’s difficult to access if I need to reset it manually.

SuperHouse:
– www.superhouse.tv
– twitter.com/superhousetv
– www.facebook.com/superhousetv/
Jonathan Oxer:
– www.facebook.com/jonoxer/
– twitter.com/jonoxer

Please support me on Patreon: www.patreon.com/superhouse

, https://i.ytimg.com/vi/GC6dGypGctQ/hqdefault.jpg

source

43 Comments

  1. Nice thing about the ESP32 – you can program the ultra low power co-processor to be the watchdog timer for you. No extra parts.

  2. this is the classic case of clicking on his web page and enjoying the article by Jack Ganssle on another level of watchdog timers and their applications

    people are really missing out by not clicking on the superhouse website

  3. Nice introduction and good analogy between Software watchdog and your lovly dog. It actualy shows us what watchdog is made for with real life example.

  4. My esp8266 iot control stops responding from time to time. I think it is when the router is reset. How do I code it to reset when the wifi is missing using the internal wdt?

  5. Very nice presentation style – doing a drawing with your description is very helpful for people like myself who are more visual oriented – thanks!

  6. Sir if uc hang with high state what happen to watch dog? It reset controller or not. I was seen if high signal come in to the mosfet get than its continuously discharged capacitor. So how could it reset the uc?

  7. On another note entirely, do you think that one day we will have smart devices around the house that are just sensor/actuator devices that hold no code except for, say, an i.d. that sends a standard data set (via mqtt) that the sensor gives it or rcvs a standard data set and triggers an actuator. All the code would be on one local PC. When we need to do updates to our "smart-house" all the code is done locally. Wouldn't that be great. No climbing in the loft space or under the floor boards. All we would do is to, say, lay one of these sensor/actuator micro controllers in a particular place, attach a sensor or actuator and set a few dip switches to rcv or send and to set an id. And then attach some power. Or does something like this already exist?

  8. What would be a neat idea is, perhaps, when the device is reset is to send a mqtt msg over to a log somewhere so you can see that the wdt is kicking, sorry patting, in. However, as far as I can see, there is no way on sending a specific wdt mqtt msg as all the wdt is doing is switching the major device on and off so I suppose just sending a "I have started" mqtt msg sent to your log would be good enough. Sorry, did you get what I am trying to say? :¬)

  9. thanks Johnathan for a great description of a wdt – just what i needed – many thanks :¬)

  10. Why don't you give your Arduino endpoint devices static IPs ? Then you wont have an issue with DHCP and you know what device has what IP.

  11. Cool video!! Nice way to explain watchdog!! A big thank you and continue doing this really good work.

  12. Most microcontrollers, including the ones on the Arduino Uno and Mega have built-in hardware watchdogs.
    Why didn't you opt for this solution? Though yes, the external hardware solution can be used on any device that has a reset pin without knowledge of the specifics of that device.

    Also, if your device is being reset often, then it may indicate a software issue. And it may be a problem since it will lose state, connections and variables.

  13. Thank you for your very good videos! The way you bring information forward is the best. I frequently come here for learning.

  14. The external watchdog is a neat solution, but isn't there a watchdog timer on-chip for the 328p? Just wondering why you opted not to do this.

  15. I've opted for having a host watchdog, so the web server checks if it hasn't heard from the device for a while, and sends a control signal to my smart PoE switch to power cycle the PoE, means that you never have to put any additional hardware at the endpoints, and if your host is running, then you don't need to worry about watchdog modules running distributed around your network.

  16. I have an Arduino collecting temperature data which I have currently connected using standard jumper cables but I noticed you have a nice and tidy plugs for your connectors can you recommend the easiest and/or best type?
    ie easiest to solder-up with 3 or more wires?

  17. If you don't mind me asking, who manfucatures your designs? I am totally new to this, and still learning how to use the breadboard to make prototypes and experimenting with sensors, but eventually I will need to have my prototypes miniaturized. Would love to know whom to contact. Oh, I see your using a prototype board to connect your watchdog module! Did you solder that on? I've been staring at my prototype board, and I am more than a little confused on how to use it correctly! You really make it look so easy!

  18. I'm also happy to see that you're back to doing work on your smart house! I finally own my own home so I'm going to start building my own smart house. I've had your old videos bookmarked for quite some time to use as reference. Thanks for all the great information!

  19. hi,
    first off HUGS i am soo happy and excited to see this. its been years ive subscribed to your channel but never really got the chance to look at all the videos and here i just got the notification and i was amazed you helped me with a problem i was facing around… thanks a lot.. and while reading the comments i saw that you even helped me with my other problem.. that is, i am working on home automation more advance with image processing and with the adaptive natural learning speech recognition.. that means the system will learn new things everyday.. but to start from scratch i have to start with mqtt and openhab and its been a huge pain for me to get all that running. can you please please guide me on how you binded all the arduinos with mqtt and openhab? please? i have successfully installed mosquitto and ran the broker and subscribed to the topics but now i want to bind it allwith openhab and i am not able to do that can you please help with or atleast guide me ?

    regards and thanks a lot for all the videos..
    you can contact me @ parthbhat13@gmail.com

  20. Thanks for the video. Very informative. Could you do something with the audio moving on because one can clearly hear you swallowing every 20 seconds or so. Much appreciated.

  21. Awesome stuff as per usual. I love how this series is always applicable and practical. One day, when I get settled and have some good time off and ideas, it will be great to use everything from this series.

    Keep at it, as you can see, everyone loves your content.

    Nice prop with the pup.

  22. Cron Job on froozen system hs no benifits, wake on lan can do better on bios reboot. Greetinx from the Netherlands HI5.

  23. I was excited to see your new uploads. Every time you post a new video you seem to inspire me to learn more. Is there anyway we could get a system update? I am curious to know how things have changed.

  24. I'm sorry, but I had to pause the video when you said it took forever to get DHCP up and running again. A few solutions have come to mind…

    1) Why not have a more frequent DHCP lease time for the devices to renew all the time, if they fail to renew, they just sit in a somewhat infinite loop (with delay of course to prevent overwhelming of the microcontrollers).

    2) Static IPs + sticky DHCP (optional but can come in handy, TLDR DHCP specific IP address assigned to a MAC address all the time). That way it just has to ping or do test connections back to the automation controller. Eliminating DHCP will take out one lest component required to making the system work.

    Anyway, the 555 timer is a neat out of band watch dog, but it provides no immediate notification if something goes wrong unless you ping all the devices every minute or so. Why not have the eeePC (or whatever you're using now) have a direct USB/serial connection to an Arduino switching relays to circuits designated to running the components, so it can completely be aware of having to reset a device. With after doing 3+ resets, it can throw an exception in whatever script is running or make a notification in some form.

  25. I don't know if this is a thing or not, but do you have a server that receives messages from arduinos that are down frequently so you know which ones you need to work on around your home?

  26. Great discussion on watchdogs Jonathan. I have mucked around a little with the WDT on the atmega328 after having trouble with my first few IOT projects on Arduino aand MQTT.
    Question: Can you recommend a hardware watchdog circuit? Can i buy those modules? Have you ever used one with a linux system? I am using wr703n openwrt router as serial to web publishing for IOT( emonTX) and they also hang and require rebooting periodically.

    Thanks for the informative videos!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.