Tengo un ATmega368, actualmente trabajando sobre Arduino Uno, cuyo objetivo final será procesar cierta información del sensor y enviarla a través del XBee (configurado como enrutador) al coordinador.
Entonces, básicamente tengo un arduino, que su pin Tx está conectado al pin 3 en XBee (configurado como ROUTER AT). Toda la información que estoy escribiendo a través del método Serial.println () se recibe perfectamente en el coordinador en las tramas de paquetes de recepción API ZigBee (0x90).
Ahora, considerando que el paquete API 0x90 es capaz de almacenar 6 bytes de datos, esperaba que si limitaba la salida del Arduino también a 6 bytes obtendría solo 1 fotograma con los 6 bytes completos. Pero lo que sucede es que normalmente recibo el mensaje completo enviado desde el arduino, dividido en varios marcos.
Creo que se debe principalmente a la puntualidad de la paquetización (establecida por RO) de los datos mientras se espera en el búfer. Pero teniendo en cuenta que solo envío datos cada 5 segundos aproximadamente, el período de paquetización siempre se agota.
Una opción podría ser configurar el XBee como una API de ROUTER y compilar el marco yo mismo.
¿Alguna idea?