Algunos trucos para evitar las incomodidades del polling en eedomus

  • En este artículo explicamos cómo evitar las efectos secundarios que puede producir el polling en ciertos casos en el controlador eedomus.

En domótica Z-Wave, el “polling” es la funcionalidad a través de la cual el controlador domótico consulta periódicamente a los distintos periféricos de una instalación para conocer su estado, lo que es importante no sólo para reportar ese estado en la interfaz, sino también para diseñar escenas domóticas eficientes.

El polling era imprescindible hace unos años, cuando muchos periféricos Z-Wave no reportaban nátivamente su estado al controlador. Hoy en día, teóricamente todos los dispositivos Z-Wave informan al controlador de su estado sin que éste tenga que consultarlos de forma periódica.

Pese a lo anterior, los controladores Z-Wave siguen ofreciendo la funcionalidad de polling porque en la práctica algunos periféricos Z-Wave pueden no reportar correctamente su estado de forma nativa y/o porque el polling puede ser útil en otras circunstancias, como por ejemplo para asegurarse de que un periférico contacta con el controlador cada cierto tiempo al margen de sus eventuales cambios de estado.

El polling en eedomus

El polling en eedomus

En los controladores eedomus y eedomus Plus, el polling es totalmente configurable en la mayoría de los casos: podemos habilitarlo, deshabilitarlo y modificar su frecuencia (dentro de las frecuencias que nos ofrece la plataforma).

Cuando incluimos un periférico Z-Wave nuevo, a veces la plataforma deshabilita el polling por defecto en ese periférico, y otras veces no. Y no es casualidad. Cuando un periférico Z-Wave se incluye con un polling, generalmente es porque lo necesita, y no porque no pueda reportar su estado nátivamente, sino porque es beneficioso para el buen funcionamiento del dispositivo.

Para conocer de un vistazo el estado general de los polling de los distintos periféricos Z-Wave en eedomus, iremos a Configuración/Añadir o eliminar un periférico/Funciones avanzadas Z-Wave/Síntesis de los polling.

Síntesis de poling en eedomus

Cuando desactivamos el polling en algún periférico que lo trae por defecto, observamos que a veces el comportamiento del dispositivo cambia. Yo me he encontrado por ejemplo con periféricos que sólo reportan bien su estado nátivamente, es decir que informan ellos mismos al controlador de su estado de forma instantánea, si tienen un polling establecido, aunque sea con una frecuencia de un vez al día.

Por tanto, a la hora de desactivar el polling en un periférico que lo tiene desde su inclusión, hay que ser prudente y hacerlo observando el efecto que eso tiene en el periférico. Está claro que el polling es una carga para el controlador y para la red Z-Wave, sobre todo si se ejecuta en cada periférico con una frecuencia muy baja (cada 30 segundos), pero tampoco hay que volverse loco por eso. eedomus Plus es perfectamente capaz de gestionar polling en bastantes dispositivos sin despeinarse, si estos polling son razonables.

Las incomodidades del polling en algunos dispositivos

Seguro que habéis observado que algunas veces, ciertos periféricos tienen un comportamiento anómalo o inesperado: encendido de una luz sin motivo aparente, detección de presencia intempestiva…

Acceder al log de un periférico en eedomus

Cuando ocurre este tipo de cosas, si miramos el log del dispositivo afectado (la lupa que aparece en la esquina superior izquierda del widget del periférico en la interfaz web de eedomus), constataremos que casi siempre coincide con la ejecución de un polling.

Y es que algunos dispositivos, no siempre pero sí algunas veces, les da por ejecutar una orden equivalente a “ON” cuando reciben una consulta por polling desde el controlador.

Si es un módulo de relé o un enchufe, eso hace que se encienda la luz. Si es un sensor de movimiento, parecerá que el dispositivo ha detectado presencia en nuestra casa. Y si es una sirena, podría empezar a pitar en el momento menos esperado, con el consiguiente susto.

Qué hacer para evitar las incomodidades que provoca el polling en algunos dispositivos

Tenemos varias soluciones a nuestro alcance para paliar los efectos colaterales del polling, veamos…

  • Desactivar el polling

En primer lugar, podemos hacer lo más obvio y fácil: desactivar el polling, siempre que sea posible, ya que en algunos periféricos no tenemos la posibilidad de desactivar el polling desde la interfaz y en otros la desactivación del polling afecta al normal comportamiento del dispositivo (en multisensores o módulos con varios canales, el polling, cuando está disponible en la interfaz, puede estar sólo en uno de los canales. Si está en todos, cuando se modifica en un canal se suele modificar en todos).

Cómo desactivar el polling en eedomus

Para ello, nos iremos a la ventana de configuración del dispositivo afectado, desplegaremos la sección “Parámetros experto” haciendo clic en el triangulito y estableceremos la “Frecuencia de polling” en “Desactivado”.

De esta manera, eliminaremos de un plumazo los efectos colaterales del polling en los dispositivos sensibles a esta funcionalidad.

  • Usar el campo “Fuente” en las reglas

Obviamente, si el periférico afectado necesita tener algún polling establecido para funcionar correctamente o si no podemos deshabilitar el polling porque la interfaz no nos da esa posibilidad, no podremos hacerlo.

En ese caso, el segundo truco al que podemos recurrir es usar, en nuestras reglas, el último campo disponible en el apartado de “criterio” (denominado campo “Fuente” o “Fuente de disparo”). Ese campo sirve para condicionar la ejecución de una regla al tipo de “disparo” que se produce en un periférico. Poniendo “Físico” en ese campo, evitaremos que la regla se pueda ejecutar si el dispositivo se dispara por polling.

Campo fuente en las reglas de eedomus

Esa solución es muy eficaz para evitar los falsos positivos que dan algunos sensores de movimiento por culpa del polling.

  • Sustituir el polling por una regla “inocua”

Algunas sirenas son sensibles al polling, lo que es muy molesto ya que empiezan a sonar de forma intempestiva incluso cuando no tienes ninguna regla de alarma ejecutándose.

Si os ha ocurrido algo parecido y el log de la sirena indica que el polling es el motivo, lo mejor en este caso es desactivar el polling en la sirena, si lo permite. Las dos que tengo yo, tanto la de Aeon Labs como el detector de humo con sirena de Popp, sí lo permiten.

Una vez nos llevamos un buen susto con el disparo de la sirena de Aeon Labs en plena noche por culpa del polling, cuando durante más de un año ningún polling había producido ese efecto anteriormente y pensaba que no me ocurriría a mi nunca a pesar de conocer esa incidencia sobradamente porque me la habían reportado en más de una ocasión y por haberla analizado con el eedomus Team.

Polling desactovado en sirena Aeon Labs

Después de esa mala experiencia, y a pesar de que el detector de humo con sirena de Popp nunca me ha dado este tipo de falsa alarma, decidí desactivar el polling en ambos dispositivos. Desde entonces, ninguna nueva falsa alarma por polling, obviamente.

El inconveniente es que en ambos dispositivos, el polling sirve para reportar contacto entre eedomus y el periférico, o eso parece porque al desactivar el polling comprobé en la lista de dispositivos que aunque todo estaba normal y la cobertura al 100% en ambos casos, el último contacto entre la sirena y eedomus se remontaba a muchos días atrás, con la inseguridad que eso te puede producir, tratándose de un dispositivo enfocado a la seguridad.

Tengo que decir que a pesar de eso, la sirena seguía respondiendo al instante a mis órdenes “ON” y “OFF” desde la interfaz y desde las reglas. Lo que pasa es que uno no puede estar todos los días probando si funciona la sirena por la incomodidad que supone para la familia.

Regla en eedomus para sustituir al polling

Para evitar esa inseguridad que me producía ver en mi lista de dispositivos que las sirenas habían contactado con el controlador por última vez hacía muchos días, se me ocurrió crear una regla que se ejecuta todos los días a la misma hora (siempre y cuando la sirena no esté sonando en ese momento para no interferir en su funcionamiento normal en caso de disparo de una alarma real), que lo que hace es ejecutar un comando “OFF”. De esta manera consigo que se produzca un contacto entre la sirena y el controlador una vez al día al menos sin que suene la alarma, para no molestar.

Conclusiones

A pesar de los avances de la tecnología Z-Wave y del reporte nativo de los periféricos, el polling sigue siendo una funcionalidad útil a día de hoy.

Desactivar el polling en los dispositivos que no se vean afectados por esa desactivación siempre es interesante ya que le quita trabajo al controlador y evita “colisiones” de datos en la red Z-Wave.

Pero no siempre es posible o conveniente desactivar el polling. En caso de que éste produzca incomodidades, entonces sí que debemos buscar soluciones alternativas que nos permitan eliminar esas incomodidades sin restar funcionalidades o seguridad a nuestros periféricos.

No hay que deducir de este artículo que un periférico Z-Wave frecuentemente se “dispara” solo por culpa del polling. No es así en absoluto, pero puede ocurrir en alguna ocasión y si eso es molesto o vital, hay que evitarlo.

Philippe

Madrileño de adopción. Tecnófilo. Podcaster. Obsesionado por la domótica. Y unas cuantas cosas más, casi todas buenas. Keywords: viajes, libertad, amistad, amor, tecnología, pasión, equilibrio...


2 Respuestas

  1. Ivan dice:

    Hola,prodriais publicar(según los usuarios y vuestro conocimiento),una lista de periféricos ,que pasa lo del Polling.
    Sería de gran ayuda.

  2. franco dice:

    buenas tardes, quería preguntar como funciona el z-wave mediante la frecuencia, por que me llamo la tensión que los dispositivos trabajan en frecuencia, entoncs los sensores y demas cosas se comunican median frecuencias?

    espero su pronta respuesta

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *