Si has seguido el tutorial para usar los dispositivos Zigbee sin su gateway original, igual has tenido problemas de cobertura, algo que vamos a enseñarte como mejorar usando otro dispositivo similar al que usas como coordinador, ya sea un CC2530 o un CC2531.
Si miramos los tipos de dispositivos de Zigbee, tenemos primero el coordinador, que es el que organiza todo y el que es totalmente necesario, es el que pusiste en la Pi (o en sistema que usaras para montar el bridge) conectado al USB. Además de los dispositivos finales, tenemos algo intermedio que se ha llamado routers, que se encargan de repetir la comunicación entre los dispositivos y, por tanto, podemos mejorar la cobertura.
Para el tutorial, vais a necesitar, al igual que pusimos en el tutorial:
- CC Debugger para poder flashear, podéis comprarlo aquí.
- CC2531 si queréis hacerlo más cómodo, podéis comprarlo aquí.
- CC2530, tiene más alcance, pero necesitaréis alguna fuente a 3.3v para poder usarlo y cables para conectarlo. Podéis comprarlo aquí.
- En caso de elegir el CC2530, estos son los links a los cables (recordad, Female to Female) y el transformador (de 230 a 3.3v)
Ahora, seguimos. En teoría, vendréis de haber podido instalar ya el coordinador, por lo que no voy a explicar todo el tema del software para flashear, en la guía para usar zigbee2mqtt tenéis los pasos.
Flasheamos el CC2531 para usarlo como router
Empezamos por el más sencillo, el CC2531, con él, debéis seguir los pasos del tutorial para instalar y poner en marcha el zigbee2mqtt que publicamos, solo que os tendréis que bajar el firmware para flashear aquí. Os descargáis el zip, lo descomprimís en la carpeta del cc-tool y teniendo ya todo conectado, podéis lanzar el comando:
sudo ./cc-tool -e -w cc2531_1.2.2a.44539_firmware/router-cc2531-std.hex
Es la misma forma de flashear que en el tutorial, por lo que si estáis en Windows, será necesario que lo hagáis como expliqué, con el fichero router-cc2531-std.hex como firmware.
Una vez terminado, ya podéis pasar a la prueba y colocación. En el zip hay 3 versiones del firmware, la std es la standard, sin más información de depuración, por lo que podéis elegir la que os convenga, pero, para un usuario normal, es recomendable la std.
Flasheamos el CC2530 para usarlo como router
En este caso necesitaremos unos cables para la conexión contra el cc debugger, tendremos que conectar como se ve en este esquema:
NOTA: En caso de que no detecte el dispositivo el CC Debugger, se puede probar a conectar el PIN que está a la derecha de la masa (GND) a 3.3v
Una vez que lo tenemos todo conectado, descargamos el firmware aquí, lo descomprimimos en la carpeta del cc-tool y lanzamos el comando:
sudo ./cc-tool -e -w cc2530_1.2.2a.44539_firmware/router-cc2530-std.hex
Es la misma forma de flashear que en el tutorial, por lo que si estáis en Windows, será necesario que lo hagáis como expliqué, con el fichero router-cc2530-std.hex como firmware.
Si todo ha salido bien, podemos seguir. En el zip hay 3 versiones del firmware, la std es la standard, sin más información de depuración, por lo que podéis elegir la que os convenga, pero, para un usuario normal, es recomendable la std.
Prueba y colocación del CC2531 y el CC2530
Una vez que lo tenemos flasheado, tan solo nos faltará probar que es capaz de asociarse y esconderlo o dejarlo en un sitio donde nos amplie la señal. Para probarlo, es tan facil como alimentarlos, en el caso del CC2531 tendremos que conectarlo a un USB y, en algunos casos, si la luz se pone roja, darle al botón que está cerca del led hasta que se encienda el led verde. Una vez hecho eso, miraremos dentro de nuestro bridge zigbee2mqtt para ver si un nuevo dispositivo se conecta de la misma forma que cuando ponemos un sensor en modo emparejamiento, aunque, no tendremos que tocar nada. Esta sería la salida:
zigbee2mqtt:info 2018-10-25 09:54:20 New device with address 0x00124b00123456fb connected! zigbee2mqtt:info 2018-10-25 09:54:20 MQTT publish, topic: 'zigbee2mqtt/bridge/log', payload: '{"type":"device_connected","message":"0x00124b00123456fb"}' zigbee2mqtt:info 2018-10-25 09:54:20 MQTT publish, topic: 'homeassistant/binary_sensor/0x00124b00123456fb/router/config', payload: '{"payload_on":true,"payload_off":false,"value_template":"{{ value_json.state }}","device_class":"connectivity","json_attributes":["description","type","rssi"],"state_topic":"zigbee2mqtt/0x00124b00123456fb","availability_topic":"zigbee2mqtt/bridge/state","name":"0x00124b00181d76fb","unique_id":"0x00124b00123456fb_router_zigbee2mqtt"}'
Una vez visto que se conecta y que está en la red, sería recomendable guardarlo (si lo vais a esconder) en una zona a la misma distancia de donde habéis hecho la prueba. Como ejemplo, yo los he puesto en una caja de registro, en el caso del CC2530, he usado lo que tenía en casa, un transformador de 230v (corriente alterna) a 5v (corriente continua) y, después, he tenido que poner uno regulador de 5v a 3.3v para no quemarlo:
En el caso del CC2531 ha sido más fácil, he usado 2 clemas para poder poner un cargador de los que tenía por casa con los contactos chinos y le he puesto cable en ambos para conectar el cargador a los cables de la luz dentro de la caja de registro (quitad la luz antes) y ya, he conectado directamente al cargador el CC2531.
Podemos ponerle nombre a los dispositivos, al igual que hacemos con los sensores y, en Home Assistant, nos aparecerá como un nuevo dispositivo y veremos si en algún momento, cae alguno de la red:
¡Espero que os sirva!
¿Habéis podido hacerlo?
IMPORTANTE: Con el fin de ayudaros de una forma más directa, he creado un grupo en Telegram de Home Assistant en Español donde podemos ayudarnos todos así como evitar que os quedéis atascados, si tenéis Telegram podéis pulsar aquí para uniros y si no lo tenéis, os recomiendo que os lo instaléis ya que lo usaremos en el tutorial para notificarnos.
¿Cuál es la diferencia entre el 2531 y el 2540? ¿Merece la pena pasarse al 40?