Diseño de un interruptor de restablecimiento de fábrica

Quiero agregar un restablecimiento de fábrica en un diseño de PCB en el que estoy trabajando. Básicamente, quiero que sea un interruptor (o una combinación de ellos) que nunca se cerrará "accidentalmente" y, por lo tanto, restablecerá accidentalmente el uC de fábrica.

Mi idea inicial fue agregar un interruptor que solo puede presionar con una aguja que se ve a menudo en los productos de consumo, excepto que esta PCB no estará dentro de un gabinete y creo que el requisito de "aguja" proviene del diseño del gabinete para tener una pequeña abertura que solo una aguja puede penetrar.

Mi próxima idea es usar un interruptor 8PDT (o similar) donde solo 1 combinación de los 8 interruptores (1/2*8 = 1/256 = 0.4%) generará un "1" para el restablecimiento de fábrica.

¿Alguien tiene alguna experiencia con esto, o sugerencias para métodos alternativos?

Gracias.

¡Hazlo como ese juego Simon Says!
¿Por "8PDT" se refiere a un interruptor DIP de 8 posiciones? Porque un conmutador 8PDT es solo un dispositivo de dos estados.
Sí, significaba un interruptor DIP donde cada uno podía cambiarse de forma independiente. Buena atrapada.

Respuestas (3)

Use un botón de PCB estándar, pero solicite que el usuario lo presione en una secuencia que no sucedería accidentalmente.

Por ejemplo: 1 pulsación larga, seguida de una liberación larga, seguida de una pulsación corta. La pulsación larga y la liberación pueden ser de 2 segundos cada una, la pulsación corta puede ser de 0,5 s. Obviamente, debe permitir una tolerancia en estos tiempos.

O presione el botón 3 veces dentro de un cierto intervalo de tiempo, etc.

Me gusta mucho, pero nos gustaría mantener la mayor parte del procesamiento en hardware y creo que configurar este circuito de temporización puede ser difícil. Si decidimos incluir algoritmos de software para determinar la "intención" de la pulsación del botón, esta parece una solución muy elegante.

Ideas:

  • Use un botón de PCB estándar y verifique el estado inmediatamente después del reinicio de encendido. Si se presiona el botón, realice el restablecimiento de fábrica. Tenga en cuenta que si el botón está atascado por algún motivo, se producirá un restablecimiento de fábrica.
  • Utilice una retención de 20 s. Netgear utiliza este enfoque en muchos de sus enrutadores SOHO. Con este enfoque, puede verificar que el botón esté abierto en el encendido y luego cerrado durante 20 s. Es poco probable que alguien que simplemente indague alcance el retraso de tiempo prolongado.
¡Gracias! Me gusta mucho la segunda idea, especialmente porque parece bastante simple de implementar en hardware.

He visto a personas usar un botón relativamente inaccesible (clip de papel o caja que se debe abrir para acceder) que se mantiene presionado durante el encendido.

Eso asegura suficiente intención de que no se active accidentalmente, en mi opinión.

También puede usar el interruptor DIP con cubierta para evitar la activación accidental. Algo como esto: grayhill.com/assets/1/7/DIP_Accessories.pdf