Forum: HF, Funk und Felder XBee Routing


von Marcel L. (superhans)


Lesenswert?

Hallo zusammen,

ich habe ein XBee Netzwerk mit 12 Sleepy End-Devices. Einen Koordinator 
der über ein USB Explorer Board mit einem PC verbunden ist. Da der 
Koordinator nur 10 Children aufnehmen kann, habe ich noch einen Router 
hinzugefügt. Router und Koordinator befinden sich in einer Box. Der 
Router bekommt vom Breakout-board die Spannungsversorgung.
Alle XBee Module sind vom Typ: XBee-PRO ZB (RPSMA-Antenne)(betell Nr. 
XBP24BZ7SIT-004).

Das Netzwerk funktioniert soweit, alle Endgeräte verbinden sich entweder 
mit dem Koordinator oder dem Router. Über X-CTU kann ich eine 
Knotenliste erstellen. Broadcast Mitteilungen kann ich ebenfalls ins 
Netz senden, ich bekomme auch eine Antwort von allen Geräten.
Wenn ich jetzt aber einzelne Endgeräte anspreche, dann bekomme ich von 
manchen eine direkte Antwort, bei manchen schlägt aber auch das 
Transmission Timeout zu. Bevor ich die Endgeräte einzeln anspreche sende 
ich eine Broadcast um alle aufzuwecken, nebenbei Cyclic Sleep ist 
eingestellt (SM=5) und alle 5s wachen die Module zum Pollen auf 
(SP=0x1F4). Eingeschlafen sind die Module ebenfalls nicht wieder, also 
kommt der Transmission Timeout auch nicht davon.

Ich vermute das es was mit dem Routing zu tun hat, denn die Children die 
direkt am Koordinator hängen, Antworten sofort. Die, die am Router 
hängen Antworten wie gesagt nur teilweise sofort. Der 
Many-to-one-Routing Parameter (AR) ist so eingestellt, das der 
Koordinator alle 80s eine Many-to-one-Routing-Broadcast sendet. Wenn ein 
Modul direkt antwortet, welches am Router hängt, wird auch eine 
Route-Record-Indicator empfangen, bevor das Antwortpaket kommt.

- Weiss jemand, wie viele Routing Tabellen Einträge die Xbee Module 
machen können?
- Hat jemand Erfahrung mit dem Routing? Ich habe es bisher so 
verstanden, dass das Many-to-one-Routing weitestgehend selbstständig 
funktioniert und das Source-Routing nur in größeren Netzwerken sinnvoll 
ist.

von Marcel L. (superhans)


Lesenswert?

Wenn ich mich zu kompliziert ausgedrückt habe, sagt das ruhig. Ich bin 
etwas verzweifelt gerade. Überall wird damit geworben, dass man große 
selbst organisierende Netzwerke aufbauen kann (mit theoretisch bis zu 
65.000 Teilnehmern) und ein kleines Netz mit 13/14 Modulen soll nicht 
funktionieren? Das passt nicht so ganz in meinen Kopf

von Michael S. (Gast)


Lesenswert?

Hallo Marcel L.,

folgenden Versuch solltest Du starten:

Auf allen Devices (Coodinator und Routern) muss bekannt sein, wie lang 
die Enddevices schlafen.

In den beiden zuständigen Registern (frage bitte nicht nach den Namen, 
ich glaube, es waren "SP" und "SN") muss auf ALLEN Devices ein höherer 
Wert eingetragen sein.

Bei mir wurden Enddevices "zwangsabgemeldet", wenn auch nur 1 einziger 
Router (versehentlich) mit den default-Werten lief.

mfg

Michael S.

von Marcel L. (superhans)


Lesenswert?

Hallo Michael S.,

danke für deine Antwort. Ich habe schon befürchtet, das keiner mir 
helfen kann^^.

Das Problem scheint aber ehr anderer Natur zu sein. Wie gesagt, wecke 
ich zunächst alle Endgeräte mit einer Broadcast auf, was auch gut 
funktioniert. Ich sehe auch an den entsprechenden Modulen, das diese 
wach sind (-->LED).
Also im Netzwerk sind sämtliche Module. Über X-CTU kann man sich ja 
schön die Node-List erstellen. Darin sehe ich, das der Router einige 
Endgeräte als Children hat und auch der Koordinator. Je nachdem wie bei 
dem Netzaufbau die Verbindung etc. ist, melden die "Kinder" sich ja dort 
an, wo es am günstigsten in Bezug auf Signalstärke ist.


Michael S. schrieb:

> Bei mir wurden Enddevices "zwangsabgemeldet", wenn auch nur 1 einziger
> Router (versehentlich) mit den default-Werten lief.

Wenn du sagst, du hast mit Routern gearbeitet, in wie weit hast du das 
Routing manuell gemacht? Hast du lediglich das Many-to-one-Routing 
eingeschaltet und es lief alles? Oder hast du auch noch weitere 
Maßnahmen ergriffen, diesen Create Source Route Frame gesendet oder so?

Gruß

von Tivi (Gast)


Lesenswert?

Marcel L. schrieb:
> danke für deine Antwort. Ich habe schon befürchtet, das keiner mir
> helfen kann^^.
?? Warum?

Wo entsteht denn der Timeout? Hast du mal mit einem Sniffer geschaut was 
passiert? Danach kann man es vielleicht eingrenzen.

Wenn du mir sagen kannst warum mein Netzwerk am Netbook zeitweise 
aussetzt wäre das super. Ist ein Lenovo und verbindet sich automatisch. 
Scheint soweit alles in Ordnung LEDs leuchten auch wie sie sollen.

Aber ich befürchte schon mal das du mir nicht helfen kannst.

Andere frage noch gehört das Many-to-one Routing zu ZigBee oder ist das 
Firmware spezifisch?

Zu den Werbeversprechen: Ein ZigBee Mesh Netzwerk läuft ja auch mit 
vielen Nodes. Deine zwölf könnten auch an einem Koordinator laufen, der 
braucht dann nur genug RAM. Jenachdem wie deine Anwendung ist könntest 
du auch einfach die Maximale Anzahl der Nodes am Koordinator hochsetzen. 
Dazu musst du halt den RAM verbrauch im Auge behalten.

von Michael S. (Gast)


Lesenswert?

Hallo Marcel L.,

> Wenn du sagst, du hast mit Routern gearbeitet, in wie weit hast du das
> Routing manuell gemacht?
> Hast du lediglich das Many-to-one-Routing eingeschaltet und es lief alles?
> Oder hast du auch noch weitere Maßnahmen ergriffen, diesen Create Source
> Route Frame gesendet oder so?

Alle Fragen kann ich mit "garnicht" bzw. "nein" beantworten.

Das Routing lief automatisch und genauso wie theoretisch erwartet.

Ich würde an Deiner Stelle das Routing zunächst mit "normalen" Routern 
(nicht mit sleeping Enddevices) testen.

Wenn das funktioniert, dann würde ich die Latte höher hängen und die
Devices schlafen lassen.

mfg

Michael S.

von Marcel L. (superhans)


Lesenswert?

Hallo Tivi,

Tivi schrieb:
> Marcel L. schrieb:
>> danke für deine Antwort. Ich habe schon befürchtet, das keiner mir
>> helfen kann^^.
> ?? Warum?

weil ich es gewohnt bin, das man schnell antworten bekommt ;-), aber 
besser spät als nie^^.

Tivi schrieb:
> Wo entsteht denn der Timeout? Hast du mal mit einem Sniffer geschaut was
> passiert? Danach kann man es vielleicht eingrenzen.

Kann ich nicht genau sagen. Ich empfange halt am koordinator einen 
Transmission Timeout. Obwohl das Remote im Netzwerk ist und obwohl es 
wach ist.


Tivi schrieb:
> Wenn du mir sagen kannst warum mein Netzwerk am Netbook zeitweise
> aussetzt wäre das super. Ist ein Lenovo und verbindet sich automatisch.
> Scheint soweit alles in Ordnung LEDs leuchten auch wie sie sollen.

Was heißt denn zeitweise aussetzen? Das Many-to-one-Routing gehört zu 
ZigBee so wie ich es verstanden habe.

Die Children Anzahl kann ich nicht hoch setzen, dass ist in den Devices 
so vorgegeben.

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.