Problemas enviando datos Xbee

Hola Amigos, hace poco hice que un Xbee + Arduino me enviaran al PC la temperatura con un LM35 y funciono espectacular. Ahora lo que quiero es enviar datos del PC al otro Xbee por lo cual no he podido hacer funcionar un sencillo ejercicio, aqui se los subo para que me ayuden a ver donde esta el problema. Tengo uno como end Device y otro como Coordinador

Xbee con el Arduino que Envia el Valor que le paso atravez de Visual Basic 2008

int val;

void setup()
{
    Serial.begin(9600);
    Serial.flush();
}

void loop()
{
        val = Serial.read();
        Serial.println(val);
        delay(50);
}

Xbee con el Arduino que recibe el dato enviado desde VB .NET

int outPin = 13; 
int dato = LOW; 
int val; 

void setup()
{
    pinMode(outPin, OUTPUT); 
    Serial.begin(9600);
    Serial.flush();
}

void loop()
{
    if (Serial.available())
    {
        val = Serial.read();
        Serial.println(val);
        if (val == 'A') dato = HIGH;
        else if (val == 'B') dato = LOW;
    }

    digitalWrite(outPin, dato);
}

enciendo y apago un led con dos botones desde VB .NET

Nadie ha hecho algo con xbee y comunicacion Bidireccional?

Buenas dhanny, Yo lo estoy intentando con el bluetooth bee puesto en el arduino con una base de xbee pro y el bluetooth del pc, la idea es enviar es la misma que la tuya enviar cosas desde el pc al arduino y que este actue, pero no lo he conseguido. El bluetooth del pc lo tengo uno un puerto serie y envio los datos por hay pero nada.

Si consigues algo comentalo. :D

Un saludo

hola Dhanny mira prueba esto: Serial.print ('T'); lcd.setCursor(0,0); lcd.print("Humedad relativa"); if (Serial.available()) { lcd.setCursor(5,1); while (Serial.available() > 0) { // lee los caracteres disponibles lcd.write(Serial.read()); } } como puedes imaginar en el otro lado tienes que hacer la funcion que "escucha" y si oye una T te envía el dato que quieres. Otro asunto es el delay que usas , me parece muy poco , vas a saturar el buffer del xbee. Tambien puedes usar la Librería Easy transfer que yo creo que es mejor solución que la funcion que envio arriba. Adaptala a tus necesidades y veras como encuentras una solución facilmente Un saludo.

amigo yo tengo un problema similar pero necesito ambos codigos para entenderlo bn estoy haciendo un sistema meteorologico con xbee con sensores dht11 he conseguido recibir los datos pero quiero poder mandar una señal por el monitor serie en el coordinador para q me los envie cuando yo le mande por ejem una t desde el monitor serie ayúdame porfavor

Cual es el problema? XBee tiene que ser un enlace serie transparente. Cualquier código donde dos arduinos se comuniquen por puerto serie te tienes que guiar/servir.

dhanny:
Hola , Soy nuevo manejando Xbee y estoy intentado leer un sensor de temperatura con el arduino enviarlo al PC usando XBee, tengo la shield para el arduino y el programador con otro Xbee pero tengo problemas en la comunicación, el revisar XCTU que le llega al puerto del pc no me muestra la temperatura, muestra uno caracteres errones

#include <XBee.h>

#include “DHT.h”
#define DHTPIN 11 
#define DHTTYPE DHT22 
XBee xbee = XBee();
uint8_t payload={0,0,0,0,0,0,0,0};
XBeeAddress64 addr64= XBeeAddress64(0x13a200,0x415c9211);
ZBTxRequest tx = ZBTxRequest(addr64,payload,sizeof(payload));
DHT dht(DHTPIN, DHTTYPE);
void setup() {
  Serial.begin(9600);
  xbee.setSerial(Serial);

}

void loop() {
  delay(500);
payload[0]=‘t’;
payload[1]=‘e’;
payload[2]=‘m’;
payload[3]=‘p’;
payload[4]=’:’;
   
   
  int t = dht.readTemperature();
  int h = dht.readHumidity();
   
    payload[5]=t;
  payload[6]=t%10+48;
    payload[7]=h/10+48;
    payload[8]=h%10+48;
    Serial.println(t);
    xbee.send(tx);
    delay(1000);

}





no entiendo que estoy haciendo mal, si me pueden ayudar se los agradecería mucho