We're making a hardware device with a reset button that needs to be activated when the device is unpowered.

As such, the button can not be a momentary press but needs to change position before being powered up again. The firmware then knows we have a reset event if the button has changed position (previous position is stored in non-volatile memory).

The challenge is, how do we visually indicate that there is no absolute on/off position and that the user simply has to change the switch from it's current position, whatever that may be.

If I look at something like the silence switch on the side of an iPad it seems implied that north position is on, south position is silenced and it always works the same. What's different about our switch is that sometimes north is on, and sometimes south is on.

  • 1
    Anecdote, with a purpose: I used to live in a house with a stairway from the first to second floor (convenient). There was one light for the stairwell - but two switches. If you flipped the switch in the opposite direction either at the top or the bottom of the stairs - the light would flip to the opposing state. But I knew what would happen based on external feedback. How do I, as a user, know what will happen when I flip that switch? Or, is this not a switch I, as a user, flip (internal electronics)?
    – Josh Bruce
    Mar 23, 2013 at 11:45
  • Consider it similar to a reset button on a router: seldom used but assumed to be there by many. I think it will be hard for us to explain to users: slide the switch once, it doesn't matter which direction. No immediate feedback until they next connect to a power source (not always immediately available with this particular device).
    – user217562
    Mar 23, 2013 at 12:26
  • 1
    Some button components hide the physical state of the button by the exposed button cap being lightly sprung so that it always returns to it's original appearance. Under the cap, the contact is physically open or closed, but all the user knows (and needs to know) is that you press the button to get it into the opposite state that it is currently in. Is that the sort of thing you need? Mar 23, 2013 at 12:32
  • @RogerAttrill - good example. What are the various functions this button will serve? And, how are you determining state when the device has no power (levers, pulleys, etc.)?
    – Josh Bruce
    Mar 23, 2013 at 12:58
  • Given the answers so far and the various responses, I think we need more information about "the device".
    – Josh Bruce
    Mar 24, 2013 at 14:37

3 Answers 3


I think what you're looking for is not a "switch" (or button) with a constant up/down (side-to-side) state. This sounds, from the phrasing of the question more like a single position button, which will tell the device how to behave based on other factors.

On the iPad, iPod Touch, and iPhone, for example. If the screen is off - when I hit the button at the top - the screen comes on (the device wakes up). If the screen is on - when I hit the button - the screen turns off. If I press and hold the button the device asks me to verify whether I want to actually power down. (And, if it's powered down, then it turns back on.)

The a/c unit in my apartment has an intensity "switch" with four settings. Each setting is labeled and accompanied by an LED. The "switch" is actually a button, when I press it cycles through the various intensities.

  • Ah I guess the distinction here is that we don't have the luxury of power running to the device, unlike all of your examples. We're essentially forced to use a toggle switch
    – user217562
    Mar 23, 2013 at 12:23
  • If the device doesn't have power (even a CMOS battery on a motherboard) - how can the firmware do anything? Genuinely curious.
    – Josh Bruce
    Mar 23, 2013 at 12:25
  • next time you power it up it notices the switch has changed position. Previous value stored in non-volatile memory.
    – user217562
    Mar 24, 2013 at 0:11

You are asking the wrong question given your situation. It should not be focused on an interchangeable "on/off" position, but rather on the problem you are trying to solve. An interchangeable "on/off" position is a (poor) solution to the problem UX wise. I would suggest one of two options, that from what I can tell should be workable for you.

  1. Have a simple button that has to be held in while starting the device. Usually for something like 20 or 30 seconds, but that depends on how much time you need to get power to the switch and latch an electronic or software flag. If possible, the action of latching should be accompanied by a beep or a signal led coming on.

  2. Have a two-way switch with a "reset" and a "normal" position (marked as such). If the switch is in the reset position, once you have finished the reset part of the process after turning on, prompt the user to move the switch back to the "normal" position, and refuse to move ahead until that has been done. You can now do any setup that you need to do. This way "reset" is always reset, and "normal" is always "normal".

Both of these methods are used for larger electronic systems, so I take no credit for coming up with it. They are tried and tested, so just pick the one that works best for your situation.

  • The limitation we have is that it's a relatively tricky procedure to get access to the physical device. 1. Won't work due to lack of physical access to powered device. 2. Isn't optimal as it's tricky to remove the device to gain physical access.
    – user217562
    Mar 24, 2013 at 0:13

The Nintendo 3DS has a Wifi switch on the side that slides up to activate/deactivate. As soon as it is released, it springs back to the original position. (In the 3DS's case, it's rather confusing, because WiFi on/off are clear states, and that state is preserved even after powering off)

Having a switch that mechanically resets itself to the original position after being released is ideal.

Another option is to use a physical button that can be pressed inward, but then un-presses itself afterward... like any videogame controller button, elevator call buttons, computer power-on buttons, and even keyboard keys.

These are mechanically very simple to implement - when the button is pressed down, a circuit is made. When the button is released, a small spring forced the button back up, and the circuit contact is broken.

The letter 'N' on your keyboard doesn't have a persistent on/off state. It has a temporary active-only-while-user-continues-to-press it state that resets itself.

If you must have two active states, consider getting inspiration from pens. Click once to extend the pen's tip, click the same button again to retract the tip.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.