El downlink de @Sigfox explicado paso-a-paso

El downlink es la forma en que un sensor puede recibir data de la red. Este proceso es realmente útil si se necesita que el dispositivo ejecute una acción o si se desea cambiar el comportamiento del sensor.

Compartimos con ustedes este artículo + vídeo del blog DISK 91.COM y, debajo, podrán encontrar la traducción al español del original en francés.

El proceso del donwlink es una forma en la que un sensor puede recibir data procedente de la red / desde la aplicación del usuario final. Como el IoT es sensible a la energía, un dispositivo no es capaz de recibir data en cualquier momento de lo contrario la recepción consumiría toda la energía de la batería muy rápidamente. Por esta razón, la aplicación backend tendrá que almacenar su mensaje para el dispositivo hasta que éste inicie una comunicación con un uplink.

El backend sólo podrá transferir el mensaje del downlink cuando el uplink incluya un ack flag (indicador) correspondiente a una petición del downlink.

Cuando el dispositivo agrega este indicador a su comunicación, se cambiará a modo de recepción durante los próximos 30 segundos.

Durante este tiempo, la red sigfox descodificará el mensaje del uplink, devolverá la llamada al backend aplicable. Éste tendrá que devolver el mensaje del downlink al backend de Sigfox. Sigfox le asignará el mensaje a la mejor estación-base para proceder a la transmisión.

La transmisión del mensaje del downlink se ejecuta en la banda de 869Mhz, donde el ciclo de servicio es del 10% y la potencia de transmisión puede alcanzar + 25dBm para que su dispositivo tenga la máxima posibilidad de obtener el mensaje, incluso si su entorno es menos favorable que la antena de red (ara recibir la señal de radio.

La recepción requiere una buena antena y también un entorno con un nivel aceptable de ruido en 869MHz. De hecho, la sensibilidad de recepción de su dispositivo es generalmente menor que la de la red: algo sobre -126dBm en lugar de -146dbM para el uplink. La red elegirá la mejor antena posible, pero dependiendo de su capacidad de ciclo de servicio. Por otro lado su dispositivo puede estar expuesto al ruido local, y cuando este ruido sea más alto que el ruido de la señal, será difícil capturar el mensaje.

El backend de sigfox confirmará entonces la transmisión al dispositivo a través de una devolución de llamada de servicio al backend aplicable. Esta llamada de vuelta no significa que el dispositivo recibió el downlink, sólo significa que se ha transmitido.

El dispositivo, confirmará la recepción del downlink con un mensaje OOB. Este es un ack técnico a la red sigfox que contiene el rssi. Desafortunadamente, este mensaje no es reportado por el backend de sigfox. Sólo consume parte de tu ciclo de trabajo. Parece que no se considera tan confiable mientras la repetición se fija a 0. Por cierto, aunque no sea confiable es agradable conseguirlo cuando se ha encendido.

Este mensaje está incrementando el número de secuencia de Sigfox así que una manera de saber si el downlink ha sido recibido, es identificar una ruptura de la secuencia de Sigfox durante la siguiente transmisión.

Debido a que esta solución no es totalmente confiable, creo que la mejor manera es agregar un ack funcional en su firmware para confirmar la recepción y ejecución del downlink. Este ack aplicable se desarrolla en su firmware y genera una devolución de llamada que puede administrar directamente en su aplicación para dar una retroalimentación al usuario final.