Fondo
Tengo una grabadora de vídeo en red (NVR) Ubiquiti conectada a un UPS Eaton 3S 550. El NVR es básicamente una pequeña PC que ejecuta Debian, que graba vídeo desde cámaras de red en la LAN. Mi objetivo es mantener siempre el NVR funcionando o, si hay un corte de energía, apagarlo correctamente.
Resultó posible apagarlo correctamente instalando NUT (Network Up Tools), que emite automáticamente un comando de apagado cuando el UPS alcanza el 60% de la batería. El UPS está conectado por USB al NVR.
Volver a encenderlo también resultó fácil configurando el BIOS del NVR en "Encendido" en "AC conectado". Y dado que el UPS cortará automáticamente la energía a las salidas principales después de que el NVR se haya apagado (lo detecta a través de USB), cuando regrese la energía, el UPS encenderá la salida principal y el NVR se reiniciará.
El problema
Sin embargo, hay un escenario complicado que no sé cómo manejar. Imagine que hay un corte de energía, la batería del UPS alcanza el 60% y el NVR comienza a apagarse (lo que demora entre 20 y 40 segundos). Si la energía regresa mientras el NVR aún se está apagando, por supuesto terminará de apagarse y se apagará solo, pero como el UPS aún no apagó su salida de red eléctrica, el evento "AC conectado" no ocurrirá. y el NVR permanecerá apagado. La única forma de encenderlo nuevamente sería presionar manualmente el botón de encendido o si hay otro corte de energía lo suficientemente largo como para que el UPS apague su salida de red y luego la encienda cuando regrese la energía. ¿Cómo se solucionaría esto?
Lo que he probado hasta ahora
He jugado con Wake On LAN, que está disponible en el BIOS pero no parece funcionar en la vida real (el puerto Ethernet ni siquiera tiene una luz encendida cuando el NVR está apagado). Mi pensamiento era que algún dispositivo, tal vez solo un simple Arduino dedicado conectado a la red eléctrica (no al UPS) podría emitir un WOL al NVR cuando se enciende o periódicamente cada minuto aproximadamente.
La solución de "fuerza bruta" sería construir una plataforma Arduino con un servo que pueda presionar el botón de encendido del NVR, lo que podría funcionar, pero sería bastante torpe y complicado de hacer bien. El NVR es, como se mencionó, una pequeña PC que ejecuta Debian, y realmente quiero evitar perder el tiempo tratando de abrirlo y conectar cualquier cosa (por ejemplo, un Arduino) directamente a los puntos de soldadura del botón de encendido...
La pregunta
¿Qué otros trucos podría intentar para evitar que ocurra este escenario o resolverlo?