Ciao a tutti, sto provando ad usare un modulo XBee (serie1 digimesh) per trasmettere il valore di alcuni sensori ad un Arduino che monta una XBee Shield .
Il modulo che rileva e trasmette il valore dei sensori non è collegato ad un Arduino ma semplicemente alimentato con una Simple Board (http://www.droids.it/cmsvb4/content.php?143-990.001-XBee-Simple-Board).
Se uso un sensore analogico (es. luminosità) mi basta abilitare un ingresso dell'XBee come input analogico, campionare il dato e trasmetterlo all'XBee di destinazione (ovviamente tutto questo lo fa in automatico il modulo XBee); il problema è quando devo campionare un sensore digitale come il DHT11 (Arduino Playground - DHT11Lib).
Usando le librerie di questo sensore riesco a leggere correttamente il valore, ma collegandolo direttamente ad un arduino; se invece lo volessi leggere tramite il modulo XBee nella Simple Board pensate che si possa fare? Il fatto è che questo sensore ha bisogno di un impulso basso-alto per trasmettere il valore di temperatura/umidità.
Estraggo un pezzo di codice dal metodo ::read del dht11
// REQUEST SAMPLE
pinMode(pin, OUTPUT);
digitalWrite(pin, LOW);
delay(18);
digitalWrite(pin, HIGH);
delayMicroseconds(40);
pinMode(pin, INPUT);
Qualcuno si è mai imbattuto in questo problema?
Credo che dovrei mandare da remoto un impulso alto e poi basso all'XBee con il sensore, ma se devo rispettare i tempi è impossibile, o no?
Immaginando comunque di poterlo fare un'altra domanda importante è: i moduli XBee possono trasmettere più di due byte acquisiti da un digital Input? Poiché nella frame API mi risulta vi siano solo 2 byte di dati per ogni input, quindi se il mio sensore ne produce di più come faccio?