es raro que te ocurra eso, si estas trabajando con micros en cada xbee envia una trama tipo RS485, con un identificador para cada dispositivo de esta forma el dato que no corresponda al identificador lo ignoras, tambien puedes hacerlo con el modo API, la verdad no es tan complicado y de esta forma estarás totalmente seguro de que solo el dispositivo deseado recibirá el dato, y podras ahorrar un micro por dispositivo, claro si la aplicación no es tan compleja. Hace un tiempo yo hice algo con xbee y esta es una subrutina que lee la mac del xbee podrias utilizarla para direccionarte.
//////////////////////////////////////////////////////////////////////////////
//////////////SUBRRUTINA PARA LEER LA MAC DEL XBEE////////////////////////////
//////////////////////////////////////////////////////////////////////////////
void lee_mac(){
id_rx=0;
ok[0]=0;
printf("+");
printf("+");
printf("+");///ENTRA AL MODO AT
espera_ok_1:
output_toggle(led_rx);
delay_ms(50);
if (ok[0]==0){
goto espera_ok_1; /// ESPERO CONFIRMACION XBEE
}
ok[0]=0;///BORRO INDICADORES
id_rx=0;
///COMANDO ATSH DEVUELVE PARTE ALTA DE LA MAC///
printf("a");
printf("t");
printf("s");
printf("h");
putc(13);
delay_ms(100);
espera_ok_2:
output_toggle(led_rx);
delay_ms(50);
if (ok[0]==0){
goto espera_ok_2;
}
ok[0]=0;
id_rx=0;
///GUARDO PARTE ALTA DE LA MAC///
MAC[0]= dato_xbee[0];
MAC[1]= dato_xbee[1];
MAC[2]= dato_xbee[2];
MAC[3]= dato_xbee[3];
MAC[4]= dato_xbee[4];
MAC[5]= dato_xbee[5];
///COMANDO ATSL DEVUELVE PARTE BAJA DE LA MAC///
printf("a");
printf("t");
printf("s");
printf("l");
putc(13);// ENTER
delay_ms(100);
espera_ok_3:
output_toggle(led_rx);
delay_ms(50);
if (ok[0]==0){
goto espera_ok_3;
}
ok[0]=0;
id_rx=0;
///GUARDO PARTE BAJA DE LA MAC///
MAC[6]= dato_xbee[0];
MAC[7]= dato_xbee[1];
MAC[8]= dato_xbee[2];
MAC[9]= dato_xbee[3];
MAC[10]= dato_xbee[4];
MAC[11]= dato_xbee[5];
MAC[12]= dato_xbee[6];
MAC[13]= dato_xbee[7];
///SALGO DEL MODO AT CON EL COMANDO ATCN///
///COMANDO ATDL DIRECCION DEL COORDINADOR ///
printf("a");
printf("t");
printf("d");
printf("l");
printf("a");
printf("f");
printf("a");
putc(13);
delay_ms(100);
espera_ok_4:
output_toggle(led_rx);
delay_ms(50);
if (ok[0]==0){
goto espera_ok_4;
}
ok[0]=0;
id_rx=0;
printf("a");
printf("t");
printf("w"); //guarda
printf("r");
putc(13);
delay_ms(100);
espera_ok_5:
output_toggle(led_rx);
delay_ms(50);
if (ok[0]==0){
goto espera_ok_5;
}
printf("a");
printf("t");
printf("c");
printf("n"); //sale del modo AT
putc(13);
delay_ms(100);
ok[0]=0;
id_rx=0;
}
////con esta enviaba mi mac el estado de un pin y un conversor ad al coordinador del sistema
void envia_trama() {
for (i=0;i<=13;++i)
printf("%c",MAC);
printf("%u",zona);
printf("\%f",bateria);
bit_clear(zona,0);
}