Forum: HF, Funk und Felder ZigBEE (AVR)


von Sarah L. (Firma: Htl Braunau) (sarah)


Lesenswert?

Wir arbeiten derzei mit einem Kit von Atmel(ATAVRRZ502 IEEE 
802.15.4/ZigBee RF Accessory Kit)
und versuchen erstmals eine einfache Datenübertragung vom Coordinator 
zum EndDevice zu ermöglichen.
Da es im Beacon Mode (Indirect Transmission) nicht funktionioert hat 
versuchen wir nun mit einem poll-request die Daten zu beantragen, und 
nicht über die Beacons zu holen.

Doch beides funktionierte nicht.

Wenn wir den Coordinator auf Beacon Mode umstellten, konnnte sich der 
Device plötzlich nicht mehr anmelden, obwohl wir nur den BeaconOrder und 
den SuperframeOrder änderten und sonst nichts.

Im Non-Beacon Mode verscuhten wir es über ein Poll request, doch nun 
meldet sich das Device unendlich mal an und funktionieren tut auch 
nichts.

Bitte um Hilfe, wir kommen nicht merh weiter..


Mgf Sarah

(Wir programmieren mit AVR STudio4 und WinAVR2007)

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Nun, trial & error ist keine gute Methode, bringt mal ein wenig
Systematik rein.

Was wollt ihr denn genau erreichen, wie ist das Netzwerk organisiert,
welche Firmware läuft auf den Knoten?

Welche Aktionen haben die devices denn genau vorgenommen?  Was hat
funktioniert, was funktioniert nicht mehr, und was passiert, wenn
es nicht mehr funktioniert?

Habt ihr einen Sniffer im Netz, mit dem ihr euch die gesendeten
Datenpakete ansehen könnt?

von Sarah L. (Firma: Htl Braunau) (sarah)


Lesenswert?

Wir verwenden rdkwpan1.5.

Das Netz ist sternförmig aufgebaut und besteht derzeit aus einem 
Coordinator und einem EndGerät.
Wir haben die Software überliefert bekommen, und bisher war es möglich 
die Verbindung aufzubauen und Daten vom EngGerät zum Coordinator zu 
senden.

Doch wie gesagt wenn wir nur irgendwas ändern (ob Beacon oder 
Non-Beacon) funktioniert die Anmeldung nicht mehr.
Den Poll-Request Befehl rufen wir in einer Schleife (nach der Anmeldung) 
dauern auf, um zu kontrollieren ob Daten vorhanden sind.
-> Doch dann meldet sich der Device andauern an und kommt nicht mehr in 
den STATUS RUN und bleibt bei der Associerung hängen.
Hängt das leicht zusammen?

Nein wir haben keinen Sniffer, haben aber überlegt uns noch einen 
zuzulegen.

Mfg

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Sarah Lechner wrote:

> Wir verwenden rdkwpan1.5.

OK.

> Wir haben die Software überliefert bekommen, und bisher war es möglich
> die Verbindung aufzubauen und Daten vom EngGerät zum Coordinator zu
> senden.

Das ist dann eine direkte Datenübertragung, das ist also immer der
einfachste Fall.

> Doch wie gesagt wenn wir nur irgendwas ändern (ob Beacon oder
> Non-Beacon) funktioniert die Anmeldung nicht mehr.

D. h. der association request bekommt keine Antwort mehr?

Was ist "irgendwas ändern" genau?  Kann es sein, dass einfach nur
ein Speicher voll wird (insbesondere der SRAM)?

> Den Poll-Request Befehl rufen wir in einer Schleife (nach der Anmeldung)
> dauern auf, um zu kontrollieren ob Daten vorhanden sind.

Nachdem zuvor auf dem coordinator ein indirekter data request für
das device eingetütet worden ist, vermute ich mal?

> -> Doch dann meldet sich der Device andauern an und kommt nicht mehr in
> den STATUS RUN und bleibt bei der Associerung hängen.

Klingt mir recht konfus.

> Nein wir haben keinen Sniffer, haben aber überlegt uns noch einen
> zuzulegen.

Die Folge der gesendeten Frames anzusehen, würde hier auf jeden Fall
helfen.

von Sarah L. (Firma: Htl Braunau) (sarah)


Lesenswert?

Nach der Associaton meldet sich der Device x-mal beim Coordinator an und
nach keine ahnung wievielen Versuchen schaltet er trotzdem in den Status 
RUN.
D.h.: Wir wissen nicht warum er sich so oft anmeldet, nur weil wir den 
poll-request gesendet haben.

Irgendetwas heißt, solange es wir bei der STandars-Software lassen 
funktioniert die Verbingung,
änder wir nur einen Befehl funktioniert nichts mehr.
Unser Lehrer meint dass es am Speicher nicht liegt.


> Den Poll-Request Befehl rufen wir in einer Schleife (nach der Anmeldung)
> dauern auf, um zu kontrollieren ob Daten vorhanden sind.

>Nachdem zuvor auf dem coordinator ein indirekter data request für
>das device eingetütet worden ist, vermute ich mal?
genau:

> -> Doch dann meldet sich der Device andauern an und kommt nicht mehr in
> den STATUS RUN und bleibt bei der Associerung hängen.

>Klingt mir recht konfus.

Uns ist das alles auch konfus.

Danke für die Antwort, vill wissen sie noch ein paar Tipps an was das 
liegen kann, dass die associtierung nicht merh funktioniert.

Sarah

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Habt ihr irgendwo ein Linux da rumfliegen?  Dafür hat µracoli:

http://uracoli.nongnu.org/

ein Sniffertool und eine Firmware, mit der man dann die Darstellung
per wireshark

http://www.wireshark.org/

vornehmen kann.  (Wireshark unterstützt seit Version 1.0 die
Dekodierung von IEEE 802.15.4 Frames.)

von sarah (Gast)


Lesenswert?

Ich hätte noch eine Frage,
wüssten Sie wo es kostengünstige Sniffer gibt?

wir haben ein bisschen recherchiert und nur ziemlich teure exemplare von 
atmel entdeckt..

lg

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

sarah wrote:
> Ich hätte noch eine Frage,
> wüssten Sie wo es kostengünstige Sniffer gibt?

Hmm, hast du den vorigen Beitrag gelesen?  Da habe ich doch extra
darauf hin gewiesen.  Im Prinzip eignet sich jeder Knoten, der
empfangen kann und eine Schnittstelle zum PC besitzt.  USB ist von
Vorteil, aber zur Not (keine allzu dicht aufeinander folgenden Pakete)
genügt auch RS-232.  Damit sollten also eure eigenen Knoten auf Basis
des RZ502 auch geeignet sein.

Der Haken beim µracoli-Sniffer ist nur, dass die PC-Seite derzeit nur
für Linux realisiert ist, mehr hat Axel noch nicht gemacht, insbesondere
keinen Windows-Port.  Andere Unixe sollten relativ einfach sein.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.