OpenZB demo e daughter board

Forum relativo alle schede FLEX, ERIKA Enterprise, RT-Druid, ScicosLab, ...

Moderator: paolo.gai

Locked
pivio
Newbie
Posts: 2
Joined: Tue Jun 07, 2011 9:26 pm

OpenZB demo e daughter board

Post by pivio » Tue Jun 07, 2011 11:01 pm

Salve,
mi trovo a lavorare in un laboratorio che dispone di 3 schede Erika flex FULL, 2 equipaggiate con la demo board e una con una daughter board costruita per permettere il solo collegamento dell'antenna zigBee e della UART 1.

Ho iniziato il lavoro equipaggiando le 2 schede dotate di demo board con il software "simple openZB demo" disponibile in Eclipse (una scheda NODO e l'altra COORDINATORE), e, visto che la comunicazione funzionava correttamente, ho modificato il software escludendo led, lcd e tutto ciò che riguardava la demo board, dirottando ogni messaggio e comunicazione sulla porta UART 2. A questo punto ho creato un software NODO che quando riceve un carattere dal coordinatore glielo re-invia, e un software COORDINATORE che quando legge un carattere inviato tramite UART 2 lo invia tramite zigBee al NODO, mentre quando riceve un pacchetto da zigBee (dal NODO) invia il carattere via UART 2. Tutto funzionava correttamente, perciò, dovendo utilizzare 3 nodi, ho montato il software COORDINATORE sulla terza scheda, cambiato UART 1 con UART 2, e le seguenti righe di codice nel file conf.oil

BOARD_DATA = EE_FLEX {
TYPE = DEMO {
OPTIONS = LCD;
OPTIONS = LEDS;
OPTIONS = BUTTONS;
};
};

sostituendole con

BOARD_DATA = EE_FLEX {
USELEDS = TRUE;
};

Il nuovo programma compila correttamente, ma, con mia sorpresa, sulla scheda non dotata di demo board non funziona la ricezione di dati tramite ZigBee, ma solo l'invio (il software NODO montato sulla scheda con la demo board riceve i dati dal coordinatore e glieli rimanda, ma il coordinatore non restituisce niente tramite UART). Ho controllato le connessioni e sono ben fissate e uguali a quelle della demo board, inoltre altri colleghi del laboratorio sono riusciti a far funzionare la medesima sia in invio che in ricezione, anche se usando un software diveso. Non è un problema di UART perchè alla ricezione ho abbinato un lampeggio del led.

Per prova ho anche ri-montato lo stesso software sulla scheda dotata di demo board lasciando invariato il file conf.oil (la versione modificata) e cambiando solo UART 1 in UART 2. Il risultato è stato anche in questo caso il funzionamento del solo invio dati, la ricezione rimaneva non funzionante. Risostituendo le righe originali nel file conf.oil anche la ricezione ha ripreso a funzionare.

La mia domanda è: con questo software servono delle particolari risorse della demoboard per far sì che il nodo gestisca la ricezione dei pacchetti arrivati tramite lo stack ZigBee oppure se si sostituisce all'utilizzo della demo board quello di una daughter board generica è necessario solamente cambiare qualche riga di codice? Se eventualmente fosse vera la seconda ipotesi, quali modifiche sarebbe necessario apportare?

Grazie

paolo.gai
Administrator
Posts: 875
Joined: Thu Dec 07, 2006 12:11 pm

Re: OpenZB demo e daughter board

Post by paolo.gai » Wed Jun 08, 2011 7:56 am

Stai parlando di OpenZB o di uWireless?

Credo la cosa migliore sia guardare nel codice presente nelle parti di MCU, Board, e openZB per vedere se ci sono alcuni pin che vengono programmati solo in presenza della demo board. Basta anche solo la direzione di alcuni pin (tipo quelli dedicati a lanciare l'interrupt) per non far funzionare il sistema. Se le connessioni sono -identiche- alla demo board dovrebbe funzionare...

Ciao,

Paolo

pivio
Newbie
Posts: 2
Joined: Tue Jun 07, 2011 9:26 pm

Re: OpenZB demo e daughter board

Post by pivio » Wed Jun 29, 2011 4:13 pm

Ho controllato e non sono riuscito a trovare nulla di diverso, ma ho comunque risolto il problema utilizzando, anziché openZB demo, l'applicazione del prof. Gianluca Franchino presente qui http://erika.tuxfamily.org/applicationn ... sybee.html. In ogni caso grazie per l'aiuto. Ora mi rimane da capire come settare l'indirizzo di un nodo e come effettuare una comunicazione "indirizzata" (mi sembra che di default gli invii siano tutti in broadcast).
Grazie
ciao
Silvio

Locked