Descripción general
Todos los medidores eGauge utilizan NTP (Protocolo de Tiempo de Red) para obtener la fecha y hora actuales. El proceso exacto depende de la versión del hardware del medidor (eGauge2, EG30xx, EG4xxx). No se requiere acceso a un servidor NTP, pero es muy recomendable para garantizar que el medidor mantenga la fecha y hora correctas. En el 99 % de las instalaciones, NTP funciona correctamente con la configuración predeterminada. Sin embargo, puede ser necesario verificar manualmente el funcionamiento de la sincronización NTP, usar diferentes configuraciones NTP o solucionar problemas con NTP.
Este documento ofrece una visión general de la funcionalidad NTP en lo que respecta a los medidores eGauge. Sin embargo, para mayor brevedad, se simplificarán o se omitirán algunos conceptos avanzados. Para más información sobre los conceptos generales de NTP, consulte este artículo .
¿Por qué necesito NTP?
El medidor eGauge cuenta con un reloj interno que puede mantener la hora (aproximada) durante un breve periodo. Sin embargo, sin una conexión NTP activa, el reloj interno del medidor puede desviarse hasta unos minutos al mes. Esto puede ser aceptable para algunos usuarios, pero muchos escenarios de monitoreo requieren datos con precisión horaria (por ejemplo, para fines de facturación).
Además, si el medidor sufre un corte de energía prolongado, la batería interna o el condensador que mantiene el reloj interno se agotará. Esto hará que el medidor utilice la última fecha y hora conocidas al restablecerse la energía, lo que significa que los datos registrados después de ese momento tendrán marcas de tiempo incorrectas. Si el medidor puede conectarse a un servidor NTP al restablecerse, debería ajustar automáticamente la fecha y la hora antes de comenzar a registrar.
La cantidad de tiempo que un medidor puede mantener la fecha y la hora correctas sin energía depende del modelo del medidor:
Modelo |
Tiempo de carga |
Tiempo de ejecución |
| EG4xxx | 5 minutos | 8 horas |
| EG30xx y eGauge2 | ~1 mes | ~1 día |
En caso de no disponer de un servidor NTP (por ejemplo, en ubicaciones sin conexión a internet), el usuario debe asegurarse de mantener la fecha y la hora del medidor actualizadas manualmente. Es especialmente importante verificar la fecha y la hora inmediatamente después de cualquier corte de electricidad.
En resumen, el NTP es una función práctica que ayuda a garantizar la recopilación de datos precisos. Si bien es posible usar un medidor sin NTP, no se recomienda.
Configuración
En caso de no disponer de un servidor NTP (por ejemplo, en ubicaciones sin conexión a internet), el usuario debe asegurarse de mantener la fecha y la hora del medidor actualizadas manualmente. Es especialmente importante verificar la fecha y la hora inmediatamente después de cualquier corte de electricidad.
En resumen, el NTP es una función práctica que ayuda a garantizar la recopilación de datos precisos. Si bien es posible usar un medidor sin NTP, no se recomienda.
- eGauge Systems LLC no puede ofrecer asistencia ni asesoramiento sobre la creación o el mantenimiento de un servidor NTP local.
El nombre de host del servidor NTP se configura en Configuración → Red → Hora . En el siguiente ejemplo, el medidor está configurado para usar la opción {0..3}.pool.ntp.org mencionada anteriormente:

El estado de sincronización del reloj se muestra en la página Configuración de la hora de red. Los posibles estados y significados son:
- Sincronizado: El reloj está sincronizado con el servidor y muestra una marca de verificación verde, como se muestra en el ejemplo anterior. Las marcas de verificación blancas, como se muestra arriba, indican una fuente horaria válida que no se está utilizando actualmente.
- Sincronizando: Se ha encontrado el servidor NTP configurado, pero aún no se ha sincronizado completamente. Mientras la sincronización está en curso, es posible que vea un icono de flecha giratoria.
- no sincronizado: el servidor NTP no está disponible.
- desconocido: el medidor aún no ha buscado un servidor NTP disponible.
Configuración y estado en la vista clásica
Al usar la vista clásica, el nombre de host del servidor NTP se configura en Configuración → Fecha y hora . En el siguiente ejemplo, el medidor está configurado para usar la opción {0..3}.pool.ntp.org mencionada anteriormente:

Comprobando el estado
Aunque la interfaz clásica del medidor no incluye una página de estado NTP con enlaces fijos, es posible comprobar el estado NTP de un medidor añadiendo /cgi-bin/get?ntp al final de la URL del medidor. Por ejemplo:
DEVNAME.egaug.es/cgi-bin/get?ntp
DEVNAME.egauge.io/cgi-bin/get?ntp
HOSTNAME.local/cgi-bin/get?ntp
LOCAL_IP_ADDR/cgi-bin/get?ntp
Cada versión de hardware del medidor utiliza un método diferente para obtener estos datos y tiene un estilo de salida diferente:
Versión del medidor |
Método utilizado |
| EG4xxx | ntpctl -s todo (OpenNTPD) |
| EG30xx | /usr/bin/ntpq -p (ntpq) |
| Medidor electrónico 2 | N/A (no se devolvieron datos) |
EG4xxx

- En la parte superior de la página, el medidor indicará el número de pares válidos. En este caso, dos de los cuatro pares son válidos. Mientras un par sea válido, la sincronización NTP debería funcionar correctamente.
- También en la parte superior de la página, "clock sincronizado" indica que el reloj interno del eGauge está sincronizado con el servidor NTP. Es normal que aparezca "no sincronizado" durante un tiempo (hasta cinco minutos) después de reiniciar.
- Si el área de resumen está completamente vacía, significa que el demonio NTP no se está ejecutando. Reiniciar el sistema podría solucionar este problema.
EG30xx

- Los pares válidos (técnicamente, los pares marcados para su consideración) van precedidos de un "+". El par utilizado actualmente para la sincronización va precedido de un "*". Siempre que al menos un par tenga un *, la sincronización NTP debería funcionar correctamente. En el ejemplo anterior, tres pares son válidos y el medidor está sincronizado con uno. Esta página de estado puede estar en blanco o no mostrar ningún símbolo + ni * durante un tiempo (hasta cinco minutos) después de reiniciar.
- Si el área de resumen está completamente vacía, significa que el demonio NTP no se está ejecutando. Reiniciar el sistema podría solucionar este problema.
Medidor electrónico 2
- Los medidores eGauge2 utilizan NTP para sincronizar sus relojes internos, pero no proporcionan un resumen de los pares conectados. Este comportamiento es normal y no se modificará debido a las limitaciones del hardware del medidor.
Funcionalidad y comportamiento de NTP
El cronometraje NTP es un tema complejo, y su explicación completa excedería el alcance de este artículo. Sin embargo, existen algunos conceptos básicos que vale la pena abordar. Para una explicación más completa del tema, consulte este artículo.
Funcionalidad
En pocas palabras, un servidor NTP funciona obteniendo la fecha y hora correctas de un reloj de referencia y poniendo dicha información a disposición de un dispositivo. Los relojes de referencia suelen ser extremadamente precisos (y, por lo tanto, extremadamente caros). Los relojes internos de la mayoría de los dispositivos informáticos suelen ser económicos, pero también poco precisos. NTP ofrece una solución basada en software a este problema. Cualquier persona, incluidos los usuarios domésticos, puede ejecutar y alojar servidores NTP.
El software NTP del eGauge utiliza varios criterios para determinar la calidad de un servidor NTP. Estos criterios son demasiado complejos para detallarlos aquí, pero la conclusión es que el medidor seleccionará automáticamente el servidor y utilizará los mejores servidores disponibles (los más precisos y accesibles). Aquí es donde entra en juego la estadística de estratos : los estratos indican la calidad de un servidor, siendo 1 la mejor calidad.
Normalmente, todo esto ocurre en segundo plano (esto también aplica a otros dispositivos informáticos, incluyendo computadoras personales). Sin embargo, en ciertos casos puede ser necesario verificar el estado NTP del medidor (para asegurar que se conecta a un servidor válido) o modificar la configuración (si no se puede acceder a los servidores predeterminados).
Comportamiento general
Al iniciar (por ejemplo, después de reiniciar o al instalarlo por primera vez), el eGauge intentará establecer una conexión con un servidor NTP. En este punto, el medidor puede realizar un salto largo a la fecha y hora correctas. Esto se denomina técnicamente un "paso" mediante la función settimeofday(). Este salto ocurre instantáneamente , pero puede ocurrir solo inmediatamente después de reiniciar. Sin embargo, si tarda demasiado en encontrar un servidor NTP (por ejemplo, porque la red no está lista, porque el servidor NTP no se puede resolver, etc.), el medidor puede perder la oportunidad de hacerlo. A menudo, reiniciar el medidor permite que se sincronice en el segundo intento.
En cualquier momento durante el funcionamiento normal, el eGauge puede intentar ajustar lentamente la fecha y la hora del medidor para que coincidan con las proporcionadas por el servidor NTP. Esto se conoce como "slew" (desfase) y se realiza mediante la función adjtime(). A diferencia de un "paso", un "slew" cambia lentamente la fecha y la hora a una velocidad de aproximadamente 1 ms por segundo. Por ejemplo, una diferencia de reloj de 1 segundo tardaría unos 1000 segundos o 16 minutos en sincronizarse. Obviamente, esto es mucho más lento que un "paso", pero el "slew" solo está diseñado para gestionar pequeños cambios. Esta es también una de las razones por las que un medidor puede tardar varios minutos en mostrar el estado "sincronizado" tras un reinicio: un reinicio introduce un desfase de aproximadamente 120 ms en la fecha y la hora, lo que tardaría unos 2 minutos en sincronizarse de nuevo con el "slew".