¿Qué es Zigbee? Guía básica para iniciarse
Bajo este nombre nos referimos a un protocolo que es empleado para vincular dispositivos inteligentes a una red doméstica: enchufes, luces, cerraduras… tiene cabida cualquier dispositivo que lleve el adjetivo “smart” en su nombre.
Sin embargo, no es open source. Para certificar tus productos debes adherirte a la familia de la CSA, la Connectivity Standards Alliance, que vela por el estándar de este protocolo.
¿Qué es Zigbee?
Se trata de una tecnología wireless, semejante a la que cualquiera puede tener en su propia casa, que trabaja a una frecuencia de 2.4 GHz, al igual que las redes Wi-Fi domésticas o el Bluetooth.
Su protocolo está bastante estandarizado y permite a diferentes dispositivos comunicarse entre ellos. Sin embargo, debemos tener mucho cuidado con lo que compramos, ya que pueden existir problemas de compatibilidad si alguno de los dispositivos cuenta con un código propio implementado.
Otras características importantes son que trabaja en una topología de red en malla y que utiliza encriptación AES de 128 bits. Es realmente económico, y por menos de 20 euros hay disponibles en el mercado miles de dispositivos a la venta. Además, consume muy poco, haciendo que la vida útil de las pilas pueda durar entre seis y doce meses.
Trabaja tanto en interiores como en exteriores, con un rango de entre 10 y 20 metros en espacios cerrados y de hasta 300 metros en superficies abiertas.
La escasez de rango de trabajo que presenta en interiores ha sido clave para fomentar el reducido consumo que presenta, que es una de sus señas de identidad y que ha sido vital para que este protocolo terminase despegando en los últimos años.
¿Cómo funciona Zigbee?
Cada uno de los dispositivos tiene un transmisor que hace uso de una frecuencia de 2.4 GHz para comunicarse con los demás. Y es que los dispositivos de este protocolo trabajan conjuntamente con el resto. Pueden repetir una comunicación, enrutarla a otro dispositivo… de ahí lo de que trabaja en una red de malla.
Las redes en malla son redes en las que un dispositivo o más actúan como enrutadores. Al repetir la señal, se pueden alcanzar rangos de trabajo más amplios.
Existen dispositivos que trabajan con este protocolo que son capaces de enrutar el tráfico de la propia red, actualizando su tabla de rutas y siendo más eficientes. Pero ten en cuenta que es la propia red la que se encarga de conectarse con el resto de dispositivos, no tú. Tú no tienes que hacer nada en todo este proceso.
¿Qué hay en una red Zigbee?
En Programar Fácil hemos hablado de todos estos detalles de las redes y protocolos Zigbee en más profundidad, pero vamos a comentarte varios aspectos que tienes que conocer sobre las redes Zigbee para que entiendas cómo trabajan.
En una red Zigbee hay tres roles diferentes para cada dispositivo: el coordinador, el enrutador y los dispositivos finales, dispositivos de destino o end devices.
Los coordinadores hacen la función de administrador, creando la red, enrutando paquetes y haciendo las conexiones necesarias. Y hablamos de ellos en plural, pero en cada red Zigbee solo puede haber uno.
El coordinador es el punto central de la red. Y piensa que, si está conectado a algún dispositivo (pongamos de ejemplo una Raspberry 3), se podrá comunicar con el resto de dispositivos de tu red doméstica.
En cuanto al router, es como un coordinador pero que no admite conexiones. Por tanto, le es imposible emparejar nuevos dispositivos. Los dispositivos que se tengan que conectar a tu red tendrán que hacerlo a través de un adaptador de corriente o directamente permanecer conectados a la red eléctrica.
Lo que hacen los enrutadores es comunicarse con todos los dispositivos que se encuentran entro de su rango de alcance, repitiendo las comunicaciones. Por ejemplo, un enchufe smart que puedas tener conectado en la red eléctrica de tu casa.
Por último, los end devices. Funcionan, por norma general, con una batería y están preparados para entrar en modo de bajo consumo, conectándose solamente cuando lo necesiten. Como ves, la optimización de los recursos y la eficiencia energética es algo que Zigbee se toma muy en serio.
Primeros pasos con Zigbee
Si te interesa trabajar con Zigbee, pero es tu primera vez, es posible que no sepas por dónde empezar. En ese caso, lo mejor es que sigas los siguientes pasos, que hemos desarrollado con más detalle en la sección de Zigbee de Programar Fácil, en la que hemos empleado como ejemplo la interacción con el protocolo Zigbee con zibee2mqtt, para poder añadir dispositivos y poder controlarlos.
- Reúne el hardware necesario. Nosotros hemos trabajado con una Raspberry PI 3+, pero puedes usar la 4 o el dispositivo que creas conveniente. También necesitaremos una tarjeta de memoria SSD, un adaptador Combee II, y nos hemos hecho con un SONOFF SNZB-03 y BASICZBR 3.
- Descarga e instala el sistema operativo. Es algo vital. Tendrás que descargarlo de páginas de referencia e instalarlo. En nuestra guía paso a paso te indicamos cómo debes hacer la instalación para instalar los comandos que necesites.
- Instala el Docker. No tiene ningún misterio, en apenas unas pocas capturas te enseñamos cómo hacerlo.
- Instala el Docker-compose. Nosotros lo hemos hecho con el propio gestor de paquetes pip de Python.
- Instala MQTT. Tendrás que crear la estructura de las carpetas y los ficheros necesaria. En la guía te explicamos cómo puedes hacerlo.
- Instala zigbee2mqtt. Aquí, debes conectar el adaptador Conbee II al puerto USB de tu Raspberry PI. Lo mejor es que no conectes directamente el adaptador a la placa, sino que uses un alargador. ¿Por qué? Porque pueden surgir interferencias que hagan que durante el proceso aparezcan algunos errores.
- Instala el entorno FrontEnd. No es más que la vista de todo el entorno Zigbee a través de un navegador, pero te permite interactuar con ellos para encenderlos y apagarlos, renombrarlos, ubicarlos en un mapa de la red de malla de Zigbee e incluso ajustar algunos parámetros de configuración, así como gestionar su compatibilidad con otros dispositivos y redes adicionales, incluyendo Home Assistant.
Lanza el comando para visualizar los LOGs. Tras este paso, podrás añadir dispositivos a tu red Zigbee con total libertad, y podrás configurarlos y ejecutar sus comandos de lectura, escritura y estado.