Raspberry Pi

Comenzando con ZigBee.

 

ZigBee es un protocolo de comunicaciones inalámbricas basado en el estándar 802.15.4, está pensado para comunicaciones a baja velocidad entre dos o varios dispositivos, se pueden formar redes con miles de dispositivos comunicandose entre sí, por lo que es ideal para muchas aplicaciones.

ZigBee es desarrollado por la ZigBee Alliance, formada por cientos de compañias que quieren solventar la necesidad de un estándar para comunicaciones a baja velocidad, con un bajo coste de implementación y donde los dispositivos que forman parte de una red pueden requerir un bajo consumo, llegando a estar funcionando durante años con un par de pilas.

Se basa en el estándar de comunicaciones 802.15.4 que define el hardware y software de las capas physical (Phy) y media access control (MAC). Cada capa es responsable de una serie de funciones necesarias para la comunicación, ZigBee añade capas sobre las dos capas anteriores del 802.15.4, una capa no sabe nada sobre la capa que está por encima de ella y cada capa que añadimos añade una serie de funciones a la base de las inferiores.

Cualquier dispositivo de un fabricante que soporte este estándar de comunicaciones y pase la certificación correspondiente, podrá comunicarse con otro dispositivo de otro fabricante distinto. Un dispositivo ZigBee estaría formado por una radio según el estándar 802.15.4 conectada a un microcontrolador con la pila (stack) de ZigBee, donde se implementan las capas por encima de las del 802.15.4. Esta pila está diseñada para poder ser implementada en microcontroladores de 8 bits.

Características de las redes/dispositivos ZigBee serían las siguientes:

  • Velocidad de transmisión entre 25-250 kbps.
  • Protocolo asíncrono, half duplex y estandarizado, permitiendo a productos de distintos fabricantes trabajar juntos.
  • Se pueden formar redes que contengan desde dos dispositivos hasta cientos de ellos.
  • Los dispositivos de estas redes pueden funcionar en un modo de bajo consumo, lo que supone años de duración de sus baterías.
  • Opera en la frecuencia de 2.4 GHz (16 canales) y también en las frecuencias de 868 MHz y 915 MHz.
  • Es un protocolo fiable, la red se organiza y se repara de forma automática y se rutean los paquetes de manera dinámica.
  • Es un protocolo seguro ya que se puede implementar encriptación y autentificación.

Se puede decir que ZigBee ocupa el vacío que hay por debajo de Bluetooth, para comunicaciones de datos que no requieren altas velocidades.

Una comparativa con Wifi y Bluetooth:

Los campos de aplicación de ZigBee son muchos, todos en los que se requiera transmitir comandos o recoger lectura de sensores, etc.. y no interese o no sea práctico usar cables.

Campos de aplicación pueden ser:

  • Agricultura: redes de sensores de bajo consumo en el campo para medir y recoger distintos parámetros.
  • Domótica, automatización de edificios y hogares, control industrial.
  • Atención sanitaria: recoger información de sensores en los pacientes, un ejemplo puede ser la ropa inteligente.
  • Control remoto de electrónica de consumo, como el mando de la televisión, luces, etc.

Podemos encontrar más sobre los distintos campos de aplicación de esta tecnología y sus estandares aquí.

La Alianza ZigBee también define unos llamados perfiles de aplicación, que especifican como los dispositivos ZigBee deben funcionar/comunicarse dentro de un determinado campo/mercado. Por ejemplo el perfil de domótica describiría como un sensor de temperatura debe mandar sus lecturas a un termostato, y como éste controlaría por ejemplo un radiador. De esta forma se pueden integrar dispositivos de distintos fabricantes para unas tareas determinadas.

En las redes ZigBee encontramos tres tipos de dispositivos:

  • Coordinator: en toda red sea de doscientos o de dos dispositivos, debe haber un coordinador, sólo puede haber uno por red y entre sus tareas están las de formar y gestionar la red.
  • Router: son dispositivos de la red que tienen la capacidad de enviar, recibir y enrutar información. Pueden actuar como mensajeros entre dispositivos que están muy alejados para establecer una comunicación directamente, los dispositivos ZigBee no están pensados para comunicaciones de largas distancias, sino para trabajar en redes de sensores y cubrir esas largas distancias pasando la información entre los distintos nodos.
  • End device: estos serían los dispositivos de bajo consumo. El coordinador y los routers deben estar siempre encendidos ya que pueden actuar como mensajeros entre otros dispositivos, por lo que lo normal puede ser conectarlos a la red eléctrica. Los end devices pueden enviar y recibir información pero no pueden actuar como mensajeros entre otros dos dispositivos de la red, lo normal es que el end device esté en un modo de bajo consumo y se despierte cuando quiere enviar o recibir información, alargando la duración de sus baterías durante mucho tiempo. Como los end device pueden estar dormidos en un modo de bajo consumo, necesitan estar asociados a un coordinador o a un router, que guarden los mensajes que han sido enviados para ellos mientras estaban dormidos y se los hagan llegar cuando despierten.

En una red ZigBee debe haber un coordinador (sólo uno) y todos los routers y end devices que queramos, la red más sencilla sería un coordinador más un router o end device.

Muchos son los fabricantes de dispositivos electrónicos que nos ofrecen radios y módulos ZigBee. La combianción de una radio 802.15.4 y un microcontrolador que implemente el stack ZigBee es lo que se llama un módulo ZigBee. En ese mismo microcontrolador suele quedar memoria suficiente para implementar una pequeña aplicación/programa, pero para ello necesitaremos herramientas sofware y hardware del fabricante que nos permitan hacer y descargar los programas en ese microcontrolador del módulo, herramientas que probablemente no sean nada baratas.

Para comenzar lo más sencillo suele ser comprar un módulo ZigBee, y en lugar de utilizar el microcontrolador del propio módulo para que corra nuestro programa de aplicación, utilizar otro microcontrolador externo donde programar nuestra aplicación y usar el módulo ZigBee sólo para que realice la comunicación, el microcontrolador externo se comunica con el interno para enviar y recibir datos a través del módulo.

Antes de empezar con los módulos y tras la breve introducción de la idea que me he hecho de ZigBee después de leer (espero no haberme equivocado mucho..), enlazo bibliografía sobre el tema:

Espero poder ir desarrollando proyectos de electrónica con ZigBee en este blog, para ir aprendiendo sobre el tema, ya que las aplicaciones son muchas y puede ser algo muy útil y entretenido.

Para empezar con ZigBee me he decidido por comprar unos módulos de Digi: XBee Series 2, no confundir con la Serie 1 que son módulos 802.15.4 pero no implementan ZigBee ni permiten montar redes de varios dispositivos.

En la foto se pueden ver varios módulos ZigBee de Digi International, podemos comprarlos de dos tipos: los módulos normales S2 y los módulos PRO S2B. La diferencia es que los módulos PRO tienen mayor alcance, mayor consumo y cuestan más dinero, también los S2B traen un segundo microcontrolador interno (además del que implementa el stack de ZigBee). Se ve como los módulos pueden llevar varios tipos de antena, para empezar a probar lo mejor es cogerse los módulos S2 con la antena de cable como se ve en la imagen de debajo.

Estos módulos tienen una serie de patillas para ser soldados a un circuito impreso, la separación de estas patillas no es de paso estándar (2.54 mm) de protoboard, por lo que no los podrémos pinchar directamente en una protoboard o soldar en una placa de topos, necesitaremos un adaptador. La separación entre las patas es de 2 mm.

El módulo está  diseñado a partir de un chip de Ember con una radio y un microcontrolador, el microcontrolador interno saca al exterior sus pines a través de las patillas del módulo, en su datasheet se puede encontrar la descripción detallada de cada una de ellas.

El microcontrolador interno del módulo se comunica con el exterior mediante una UART, esta UART la podemos utilizar para cambiar el firmware del módulo a través de un bootloader que lleva ya grabado, o para conectar el microcontrolador interno con la UART de un microcontrolador externo para que éste envie y reciba datos a través del módulo XBee.

Como se puede ver en la imagen una primera forma de utilizar estos módulos es usando un microcontrolador externo que se comunique con el módulo XBee a través de su puerto serie. El módulo XBee funciona a 3.3V, por lo que si nuestro microcontrolador externo funciona a 5V nos tocará hacer una adaptación de niveles entre las líneas de comunicación del microcontrolador externo y del módulo XBee.

Si miramos el datasheet vemos como muchos de los pines del módulos XBee se pueden configurar como entradas o salidas digitales, o como entradas analógicas. Lo que nos permite utilizar el módulo para leer directamente un sensor o activar algún dispositivo sin la necesidad de tener que añadir un microcontrolador externo al proyecto, lo que reduce el consumo y el coste. Por ejemplo podemos usar el módulo para leer un sensor de temperatura y mandar la información, alimentando todo con dos pilas y sin hardware adicional. Según vaya avanzando espero ir poniendo por aquí estas cosas, ya que el tema de ZigBee es amplio, de momento el objetivo de la entrada de este post es establecer una comunicación entre dos módulos XBee para probarlos.

Para poder integrar los módulos en nuestros proyectos sin necesidad de hacer un pcb necesitamos hardware adicional:

XBee Explorer USB.

Esta placa nos va a permitir comunicar el pc con el módulo XBee, es un chip FTDI que hace de puente entre el USB del PC y la UART del microcontrolador. Esta placa hay que comprarla ya que se va a utilizar para actualizar, descargar firmware y configurar los módulos XBee que vayamos a utilizar en nuestros proyectos. También la vamos a utilizar para dotar a nuestro PC de conexión ZigBee y conectarlo a la red de dispositivos para enviar y recibir datos, conectamos un módulo a la placa conectada al puerto USB del PC. Para cambiar el firmware y configurar los módulos utilizamos el X-CTU, un programa de Digi que explico más abajo.

Breakout board.

Si queremos pinchar el módulos XBee en una placa de prototipos para hacer pruebas debemos comprar un placa que adapte el paso de los pines del módulo al paso de los pines de la protoboard. Además de los conectores correspondientes que debemos soldar a la placa adaptadora y un intercambiador de niveles de tensión si el microcontrolador externo va a funcionar a 5V. Enlazo los componentes necesarios:

XBee Explorer Regulated.

Si disponemos de una placa como vinciDuino podemos pinchar directamente el módulo XBee a nuestra placa con el microcontrolador externo, esta placa tiene un regulador de tensión de 3.3V para alimentar el módulo XBee, y un diodo para hacer una adaptación de niveles. Para conectar la placa a vinciDuino necesitaremos comprar el conector que se ve en la parte inferior de la imagen: conector. Los leds que se ven en la placa (la XBee Explorer USB también los tiene, nos indica cuando el módulo recibe o envia datos (DIN y DOUT) y la intensidad de la señal en el último paquete recibido (RSSI).

Los módulos XBee se pueden encontrar también en Sparkfun:

Las características de estos módulos según su datasheet son:

  • Alcance en interiores: 40 m.
  • Alcance en exteriores: 120 m.
  • Potencia de transmisión: 2 mW.
  • Sensibilidad del receptor: -96 dBm
  • Consumo de corriente en transmisión: 40 mA @ 3.3V
  • Consumo de corriente en recepción: 40 mA @ 3.3V
  • Consumo de corriente durmiendo: < 1uA

Una vez que tenemos nuestros módulos y el hardware adicional listo lo siguiente es probarlos:

 

Para poder utilizar los módulos lo primero es configurarlos, para ello tenemos que bajar el X-CTU de la página de Digi, con el podemos cambiar el firmware de los módulos XBee, también lo podemos usar como terminal serie para mandar y recibir datos por el módulo desde el PC.

Bajamos e instalamos el programa, diciendo que si a las actualizaciones si nos preguntan. Conectamos la placa XBee Explorer USB con uno de los módulos XBee al puerto USB y abrimos el programa X-CTU.

Dejamos todos los parámetros de la comunicación serie como vienen por defecto, seleccionamos el puerto donde está conectado el módulo al PC (en mi caso aparece sólo uno) y le damos a Test/Query para probar el módulo. Si todo está bien nos devolverá algo como esto:

Un cuadro de diálogo donde podemos ver el tipo de módulo que hemos pinchado en la XBee Explorer USB, la versión del programa interno del microcontrolador que lleva grabada y su número de serie. Este número de serie de los módulos es único, es decir no hay dos módulos ZigBee con el mismo número de serie igual.

En la parte de debajo podemos ver el número de cada módulo, los primeros 32 bits 0013A200 se corresponde con un número asignado para el fabricante, todos los módulos XBee tendrán el mismo, y los 32 bits siguientes 40813E2A son individuales para cada módulo, no habrá dos módulos con estos números iguales. Ya que este número se puede usar para identificar a un módulo dentro de la red y comunicarse con él.

Vamos a hacer el ejemplo más simple, coger estos dos módulos XBee y configurar uno como Coordinator y otro como Router para establecer una comunicación entre ellos. Los módulos llevan un microcontrolador que corre un programa, dependiendo de que tipo de dispositivo vaya a ser el módulo (coordinator, router o end device) y de su modo de comunicación por su puerto serie con el mundo exterior, hay que grabar un programa u otro en él mediante el X-CTU.

Para ello nos vamos a la pestaña de Module Configuration:

Y le damos al botón Read para leer el firmware (programa del microcontrolador) que lleva grabado el módulo:

Nos aparecen una serie de parámetros de configuración y unas listas desplegables, donde podemos seleccionar distintos programas para grabar en los módulos en función del tipo de dispositivo que queremos que sean en la red. Con las 3 listas desplegables Modem XBee, Function Set y Version seleccionamos el porgrama a descargar en el módulo.

Modem XBee se refiere al tipo de módulo que hemos comprado, en nuestro caso seleccionamos XB24-ZB para los módulos de la serie dos, si tuviesemos pinchado un módulo PRO tendríamos que seleccionar (o nos saldría) XBP24-ZB. En la siguiente lista Function Set tenemos varias opciones:

Podemos ver como podemos decidir si grabar un programa para que el módulo funcione como un coordinator, router o end device, y dentro de cada una de estás 3 opciones podemos elegir otras más , como que lea un sensor, o active una de sus salidas. La decisión más importante es decidir si vamos a configurar los módulos como AT o como API.

Con la opción de AT o API decidimos como nos vamos a comunicar con el puerto serie (la UART) del microcontrolador interno del módulo:

  • Si seleccionamos la opción de AT lo que el módulo reciba por el pin DIN de su UART, lo manda por la comunicación inalámbrica, es decir si le escribimos 10100000 el módulo transmitiría 10100000, así de simple. Y de igual forma lo que el módulo recibe se lo transmite al microcontrolador como le llega por el pin DOUT. Si mandamos a DIN del módulo los caracteres +++, el módulo entra en modo comandos, y nos permite configurar distintas opciones del módulo a través de su puerto serie.
  • Si seleccionamos API la comunicación con el módulo es más compleja, ya no entra y sale lo que mandamos al módulo por el puerto serie, sino que nos comunicamos con el módulo XBee mediante frames, es decir los datos tienen que ir estrucutrados según un orden establecido, con bytes de start, de longitud, de tipo de datos, de checksum, etc… Con esta opción de comunicación con el módulo tenemos muchas más posibilidades de comunicación que de la otra forma, podemos mandar comandos a otros módulos para configurarlos de manera remota, saber quien es el remitente del mensaje, saber si los paquetes han llegado, etc..

Para probar los módulos lo más simple, configurar un módulo XBee como Coordinator AT y el otro como Router AT, lo primero es apuntar la dirección de 64 bits única de los módulos, el módulo con dirección 0013A2004081372A va a ser el coordinator, y el módulo con dirección 0013A200407E6FCF va a ser el router.

Primero configuramos el coordinator, pinchamos el módulo en la placa XBee Explorer USB conectada al pc y nos vamos a la pestaña anterior de Function Set y seleccionamos ZigBee Coordinator AT, en modem XB24-ZB y en versión la última. Con esto decimos a X-CTU que vamos a grabar un programa en el módulo para que éste funcione como coordinator en modo AT, lo siguien es seleccionar los parámetros de la comunicación.

Lo primero es establecer el PAN ID, el número de identificación de nuestra red, todos los módulos que se comuniquen dentro de una red deben de tener el mismo número, establecemos como PAN ID por ejemplo el número 555.

Lo siguiente es establecer la Destination Address High y Low, es decir el número de 64 bits de nuestro router que hemos anotado antes.

Estableciendo estas direcciones le decimos a nuestro coordinator a que módulo de la red le va a mandar la información que reciba por su puerto serie, entrando en comandos AT con +++ podemos cambiar la dirección de destino y enviar información a otro módulo distinto al inicial. Una vez que hemos puesto las direcciones le damos a Write para que se descargue el programa correspondiente en el módulo XBee.

Ahora desconectamos la placa del puerto USB, cerramos el programa y pinchamos el módulos que va a funcionar como router y abrimos el programa para configurarlo, igual que antes nos vamos a la pestaña de modem configuration, seleccionamos el modo de funcionamiento y metemos el PAN ID y la dirección de 64 bits del coordinator, una vez hecho le damos a write.

Ya tenemos los módulos listos para ser usados, quitamos el router de la placa USB, cerramos el programa. Pinchamos el módulo del coordinator en la placa USB y lo conectamos al PC y abrimos en programa y nos vamos a terminal dejando todas las opciones de la configuración serie por defecto como están.

Ahora tenemos un módulo XBee conectado al PC y emitiendo y recibiendo datos, los carácteres que tecleemos aparecen en azul en el terminal, y son los que estamos enviando a la dirección de destino que hemos configurado en el coordinator, si tecleamos +++ podemos ver como entramos en modo de comandos, y si entramos y tecleamos  por ejemplo atid el módulo nos devuelve la ID de la red que hemos configurado. Todos los parámetros que hemos configurado en el X-CTU anteriormente (PAN ID y las direcciones de destino) se pueden configurar a través del terminal serie, del modo comandos se sale de manera automática después de un tiempo (10 s por defecto) sin teclear nada.

En un lado de la comunicación tenemos un coordinador conectado a un terminal serie de un pc, desde donde podemos enviar y recibir datos. Podríamos conectar el router a otro terminal serie del PC y comunicar ambos terminales mediante ZigBee, pero sólo tengo una XBee Explorer USB (abusan bastante del precio por esta placa). Por lo que usando una de las otras placas para los módulos vamos a conectar el router a un microcontrolador, como se ve en la imagen.

 Hay que conectar el pin RX de la UART del microcontrolador con el pin DOUT del módulo XBee, y el pin TX de la UART del microcontrolador con el pin DIN de l módulo XBee, la placa donde pinchamos la XBee ya lleva un regulador para dar 3.3V al módulo y un diodo para adaptar el nivel de tensión de los 5V del microcontrolador a los 3.3V del módulo en la línea DIN.

Los parámetros de la UART del microcontrolador los debemos configurar como los que hemos dejado por defecto en el módulo: 9600, 8, 1…

Una vez que configuramos la UART del microcontrolador, lo que escribamos en el terminal del PC le llega al microcontrolador, y los caracteres que mandemos por la UART del microcontrolador aparecerán en el terminal del PC. Los caracteres que escribimos en el terminal aparecen en azul y los que recibimos en rojo.

Para realizar la prueba grabamos un programita sencillo en el microcontrolador, que encienda el led L de la placa de vinciDuino cuanto pulsemo ‘e’ en el pc y lo apague cuando pulsemos la letra ‘a’, cada vez que lo encienda o lo apague el microcontrolador le mandará al pc “LED1″ o “LED0″. Adjunto el video de del funcionamiento donde se pueden ver también los leds indicadores de las placas  y el código de la prueba al final.

Las aplicaciones de ZigBee son muchas y el tema de las redes de objetos inteligentes conectados bastante interesante, espero poder ir desarrollando proyectos de estos temas en el blog según voy aprendiendo sobre este estándar.

Código de la prueba en vinciDuino.

#include <avr/io.h>
#define F_CPU 16000000UL
#include <util/delay.h>
 
#define BAUD 9600
#define MYUBRR ((F_CPU/(BAUD*16UL))-1)
 
 
#define LEDRX PORTB0
#define LEDTX PORTD5	
#define LEDL PORTC7
 
void inicializar_micro(void);
void USART_Transmit( unsigned char data );
unsigned char USART_Receive( void );
 
int main(void)
{
	unsigned char dato = 0;
 
	inicializar_micro();
 
	PORTD |= (1<<LEDTX);
	PORTB |= (1<<LEDRX);
	PORTC &= ~(1<<LEDL);
 
    while(1)
    {
		dato = USART_Receive();
 
		if(dato == 'e')
		{
			PORTC |= (1<<LEDL);
			USART_Transmit(' ');
			USART_Transmit('L');
			USART_Transmit('1');
			USART_Transmit(13); 		
		}
 
		if(dato == 'a')
		{
			PORTC &= ~(1<<LEDL);
			USART_Transmit(' '); 
			USART_Transmit('L'); 
			USART_Transmit('0');
			USART_Transmit(13);    
		}   
    }
}
 
void inicializar_micro(void)
{
       //Configurar entradas y salidas.	
       DDRB = 0x01; //0000 0001
       PORTB = 0x00;
       DDRD = 0x20; //0010 0000
       PORTD = 0x00;
       DDRC = 0x80; //1000 0000
       PORTC = 0x00;
 
       //Habilitar el regulador interno de 3.3 V.
       UHWCON |= (1<<UVREGE); 
 
       //Inicializar usart.
       UBRR1H = (MYUBRR>>8);
       UBRR1L = MYUBRR;
       // Enable receiver and transmitter 
       UCSR1B = (1<<RXEN1)|(1<<TXEN1);
       // Set frame format: 8data, 1stop bit 
       UCSR1C = (3<<UCSZ10)|(1<<UCSZ11);
 
}
 
void USART_Transmit( unsigned char data )
{
    /* Wait for empty transmit buffer */
    while ( !( UCSR1A & (1<<UDRE1)) );
    /* Put data into buffer, sends the data */
    UDR1 = data;
}
 
unsigned char USART_Receive( void )
{
    /* Wait for data to be received */
    while ( !(UCSR1A & (1<<RXC1)) );
    /* Get and return received data from buffer */
    return UDR1;
}
Visitas :56942
Responses are currently closed, but you can trackback from your own site.

38 Responses to “Comenzando con ZigBee.”

  1. yOPERO says:

    Excelente aporte!

    Gracias por el tutorial.

  2. ionhs says:

    No tengo tiempo para ponerme con el Zigbee pero habeis hecho un gran artículo. Algún día si tengo tiempo empezare :)

  3. Oscar says:

    Genial, ahora entiendo la diferencia entre zigbee y xbee.

  4. JMN says:

    Para dejar esto claro, que no lo he dicho y puede dar lugar a confusión: XBee sólo es la marca, el nombre que le ha dado un fabricante a una línea de sus productos, y en esa línea de productos llamada XBee una parte (no toda) implementa el estándar de ZigBee.

  5. pela says:

    Realmente muy interesante. Ojalá pueda meterle mano pronto al ZigBee tb pq puede ser muy util y divertido. Enorabuena por la iniciativa. Tu siempre un paso por delante macho! :))

  6. Gremio says:

    Muy bueno el articulo, completisimo y muy documentado, enhorabuena por el curro!

  7. JMN says:

    Gracias, me alegro de que os guste.

  8. [...] a bulky tutorial that will round-out your understanding of ZigBee wireless communications (translated). The protocol is great for hobby electronics projects because it uses low-power short [...]

  9. Roberto Leibman says:

    OK… ahora lo que necesito… cual es el minimo circuito que necesito para tener modulos con un sensor de temperatura y un sensor de movimiento (on/off es suficiente)?

    • JMN says:

      Hola Roberto, acabo de comenzar con estos módulos XBee y no puedo responderte con seguridad, ya que aún no he implementado nada de lo que comentas.

      Los módulos se pueden usar para leer sensores y activar salidas (sin necesidad de un microcontrolador externo), pero no se puede procesar y actuar en función de la información que leen en sus entradas (si se puede transmitirla) sin un microcontrolador o pc externo.

      No te puedo dar una respuesta segura ya que aún no he tenido tiempo de usarlos para lo que comentas.

      Un saludo.

  10. Great post.

    FYI, there’s a known bug in the coordinator AT firmware that affects data rates if the coordinator’s destination address is the broadcast address. If you want to develop a point to multi-point network, the AT mode is problematic. Direct replacement of a multi-drop half-duplex RS-485 wired network will not work out of the box.

    If you’re using xbees for point to point operation (ie wire replacement) they work fine.

  11. syvic says:

    Wow!!! Enhorabuena por el pedazo de post y por la enésima portada en HaD!!!! Muy buen trabajo, Jorge!!

  12. curiosillo says:

    Excelente trabajo! os doy mi mas sincera enhorabuena por el trabajo que haceis desde este blog. Sin duda, es la mentalidad y el espiritu que seria necesario tuvieramos todos y que muy pocos teneis.

    Gracias por el aporte!

  13. JMN says:

    syvic, curiosillo: gracias por los comentarios. Craig: thanks for the comment, and thank you for the information provided.

  14. [...] Comenzando con ZigBee. – C.I.r.E – pohled na ZigBee – španělsky, hezké obrázky, XBee moduly [...]

  15. [...] more information Please check this site (the site is in [...]

  16. Forero2012 says:

    Hola a todos,

    Recientemente estoy buscando información sobre Zigbee, y sólo recibo noticias que Zigbee se está muriendo. No sé si habéis recibido esa información, ya que actualmente hay muchos protocolos en la misma línea de Zigbee.

    Alguien sabe con certeza que está pasando con este protocolo?

    Gracias.

  17. JMN says:

    Hola Forero 2012,

    Los módulos xbee/zb es de lo que más se ve y se usa para pequeños proyectos a nivel de aficionado, a otros niveles no sé decirte.

    Lo suyo sería saber que lo está matando, si es que tenemos esas alternativas mejores. Si hay alguna alternativa mejor y a este nivel de aficionado ya veremos la opción de comprar sus módulos.

    S2

  18. jose villegas says:

    Hola, Saludos desde Venezuela, me preguntaba si tienes algun conocimiento en cuanto a comunicar android con zigbee?

    Espero tu respuesta amigo :)

  19. JMN says:

    Hola, desconozco el tema, lo mismo ya tienes alguna solución que se pueda comprar hecha, o algo sencillo sería pasar de zigbee a bluetooth mediante un módulo para comunicarse con el teléfono.

    Saludos.

  20. Proteus says:

    Hola, excelente post, los felicito, he estado buscando esto en muchos post y sólo aquí lo explicaron como se debe!!…

    Apenas termine mi desarrollo con los XBee Pro S2B les envío algo para postear, quizá lo que desarrolle le pueda servir a alguien!!!.

    Salud2.

  21. Anonimuos says:

    Hey, muy buena info, pero no tienes por ahi el codigo para arduino?, me seria muy util

    Gracias

    • JMN says:

      Gracias, no, no tengo el código para Arduino ya que no me resulta práctico usar su entorno y librerías.

      Saludos.

  22. Jose Luis says:

    Enhorabuena por tu trabajo y gracias por compartirlo con todos. A ver si nos ponemos al día con esta tecnología que me parece super interesante.

    Tengo varias consultas, a ver si me puedes ayudar. Soy Ingeniero Electrónico y tengo que hacer un proyecto de automatización de un parking de vehículos utilizando tecnología Zigbee.

    En el parking tengo sensores de presencia de vehículos para saber si las plazas están ocupadas, un sistema de detección de humos, sistema de detección de incendios,paneles informativos para indicación de plazas libres y todo ello poder controlarlo desde un pc y a ser posible envío de datos de plazas disponibles a traves de internet para ser visto por los usuarios. De esta forma, necesitaría:

    -Sensores de presencia Zigbee
    -Sensores de humos Zigbee
    -Sensores de incendio Zigbee
    -Gateway
    -Modulo Zigbee.
    -Paneles informativos con comunicación Zigbee.

    Según esto, ¿sabes de algún fabricante de tecnología Zigbee en concreto que tenga bien desarrollado modulos que pueda aplicar a este proyecto?, ¿me puedes recomendar alguno?.
    ¿Es mejor programar el módulo Zigbee o hacer el programa en un plc y después comunicar con el módulo Zigbee?.
    ¿Conoces alguna aplicación para comunicar Zigbee con un Smartphone?.

    Bueno, espero no haberme extendido mucho y gracias de antemano por la ayuda.
    Un saludo.

    • JMN says:

      Hola José Luis, perdona por tardar en la respuesta pero he estado fuera.

      Me temo que no puedo aconsejarte ya que preguntas por una solución profesional, y mis conocimientos sobre el tema son básicos (usar los módulos en proyectos de aficionado), por lo que siendo ingeniero electrónico no me atrevo a decirte nada =)

      Te paso este enlace de la universidad de Zaragoza: http://openlab.unizar.es/?page_id=21 que creo que están trabajando con zigbee en proyectos abiertos, quizás te sea de ayuda o puedas preguntar.

      Un saludo

      • Jose Luis says:

        OK, gracias de todas formas, echaré un vistazo al enlace que me has pasado.

        Un saludo.

  23. Javier Agama says:

    Que distancia pueden estar separados como máximo ambos módulos para una comunicación efectiva..?

  24. José Luis says:

    Hola de nuevo, quería saber si me podéis decir algunas tiendas online o física donde sea más barato comprar estos módulos Xbee.
    Gracias.

  25. JMN says:

    Hola,

    tienda donde comprar esos módulos en sparkfun es donde mejor suelen salir, otros módulos y soluciones supongo que en mouser.com y digi-key.com, son los distribuidores online donde mejor suele salir comprar componentes electrónicos en cantidades pequeñas, farnell.com y amidata.es son otros, pero para componentes en pequeñas cantidades suelen ser muy caros.

    Saludos.

  26. Gremio says:

    Hola chicos…

    Estoy dándole vueltas a un futuro proyecto y no se si ambos protocolos de comunicación se podrían conectar entre ellos.

    Osease, que un modulo Xbee reciba datos de un modulo ZigBee y viceversa ¿Alguien me lo podría aclarar?

    • JMN says:

      Hola Gremio,

      pues yo no he visto que se pueda por ningún sitio, ya que unos llevan el stack zb y los otros no, y metiendo la duda en google lo primero que sale es esto: http://tutorial.cytron.com.my/2012/03/08/xbee-series-2-point-to-point-communication/

      XBee Series 2 (ZB) does not offer any 802.15.4-only firmware; it is always running ZigBee mesh firmware. It is the new XBee module that we are carrying now. XBee S2 have better performance when you talk about mesh networking where it involve quite a lot of nodes: Coordinators, Routers and End Devices. You can read the datasheet if you want to, but I am going to talk about point to point only :) Bare in mind, XBee S2 CANNOT communicate with XBee S1, it is not compatible in term of wireless communication.

      Saludos

  27. Diego says:

    Que tal buen día, podrías ayudarme con mi trabajo? Estoy tratando de hacer que se comuniquen dos módulos, pero son de diferente fabricante, unos son los zolertia z1 y los xbee serie 2. Mi problema es como configurar los xbee para que acepten a los otros módulos. Si yo me tengo que agregar a la red de los módulos zolertia o los zolertia se agreguen a los xbees. La cuestionan te principal seria si estos dos módulos se podrán comunicar entre sí, siendo que los dos usan zigbee como lenguaje. Agradecería mucho la ayuda.

    • JMN says:

      Hola Diego,

      lo siento pero no he visto/usado nunca un módulo zolertia y desconozco su funcionamiento, por lo que no puedo ayudarte.

      Un saludo.

Subscribe to RSS Feed Follow me on Twitter!