Path: ...!news.mixmin.net!weretis.net!feeder8.news.weretis.net!newsfeed.xs3.de!nntp-feed.chiark.greenend.org.uk!ewrotcd!.POSTED.chiark.greenend.org.uk!not-for-mail From: Theo Newsgroups: sci.electronics.design Subject: Re: "RESET" Date: 25 May 2025 10:07:11 +0100 (BST) Organization: University of Cambridge, England Message-ID: <-JE*VDldA@news.chiark.greenend.org.uk> References: <100thgs$v8cm$1@dont-email.me> Injection-Info: chiark.greenend.org.uk; posting-host="chiark.greenend.org.uk:93.93.131.173"; logging-data="5635"; mail-complaints-to="abuse@chiark.greenend.org.uk" User-Agent: tin/1.8.3-20070201 ("Scotasay") (UNIX) (Linux/5.10.0-28-amd64 (x86_64)) Originator: theom@chiark.greenend.org.uk ([93.93.131.173]) Bytes: 2335 Lines: 32 Don Y wrote: > I don't quite understand the need for "reset" buttons on products. > > That function is always available by cycling power -- even for devices > where that is difficult for the user (e.g., PoE, BBU, etc.) > > Shouldn't a device be able to get itself out of a "pickle" without > requiring the user to intervene? Particularly devices that are > intended to "run forever"? > > I.e., it seems like the presence of a reset button is a tacit admission > that the engineering is "lacking"... Nowadays 'reset' often means 'reset to factory settings' rather than 'reboot'. The factory settings reset is needed because maybe you forgot the password and have no other way to reconfigure the thing. Or you need to make it go back into the initial pairing mode so you can attach it to another network/etc. Having a physical factory reset button means that somebody with physical access can always regain access to it. You can also use it to verify destructive actions (eg 'to wipe all the data, now hold the button') so that they can't be done remotely. In practical terms such a button might just be a GPIO rather than wired to a reset line, and the software pays attention to it at certain times such as during boot. For more developer-focused devices, a true reset button is also better than yanking the power cord which can cause wear on the connectors. So when version 497 of your code crashes you can hit the button and upload v498. Theo