Forum: Mikrocontroller und Digitale Elektronik X-Bee Übertragung via Hyperterminal nur 1,2kB/s?


von Andreas F. (andilein)


Angehängte Dateien:

Lesenswert?

hallo zusammen,
ich habe das problem, dass ich mit hilfe von zwei pcs und jeweils einem 
X-Bee-USB-Modul lediglich in der lage bin, daten mit 1,2kB/s zu senden 
bzw. zu empfangen. jeder versuch die "bits pro sekunde" nach oben zu 
schrauben blieb erfolgslos. dabei verwende ich das ganz normale 
hyperterminal von windows.
im anhang hab ich einen kleinen screenshot von den einstellungen mit 
beigefügt. kann mir jemand viel. einen rat geben was ich falsch mache?
soweit ich informiert bin sollten die module die 125kB/s (einstellbare 
max. grenze des terminals) ja ohne probleme schaffen.

vielen dank schonmal im voraus und grüßle
andi

von Roman (Gast)


Lesenswert?

Das ist wohl die Standardeinstellung der seriellen Schnittstelle 
zwischen PC und XBee. 9600 Baud. Du müsstest die XBee module zuerst 
umkonfigurieren. Oder hast Du das schon gemacht?

von Roman (Gast)


Lesenswert?

Anleitung für Terminal oder X-CTU:
http://www.ladyada.net/make/xbee/configure.html

von Christian R. (supachris)


Lesenswert?

1,2 kiByte/s ist für ZigBee relativ normal. Vor allem im 
Serial-Transparent Modus. Hatt ich bei den Telegesis Modulen auch nicht 
besser. Leider hat ZigBee einen derart großen Wasserkopf über den 
Nutzdaten, da wird man nicht viel mehr erreichen.

von Jörg S. (joerg-s)


Lesenswert?

Wenn er überhaupt STÄNDIG soviel senden will. Ist ja eher unüblich.

Wenn mich nicht alles täuscht konnte man bei den XBee auch die 
Buffer-Größe einstellen. Darüber sollte man auch noch etwas optimieren 
können.

von Andreas F. (andilein)


Lesenswert?

naja, es geht mir im vordergrund darum, zigbee auf eventuelle 
übertragungsfehler zu untersuchen.

@roma: soweit soweit so gut..allerdings kann ich die einstellung was die 
übertragungsrate anbelangt auch bereits davor einstellen. dürfte ja kein 
unterschied sein, oder?
was allerdings momentan nicht klappt, dass ich nach der eingabe von 
"+++" ein ok erhalte. muß die kommunikation dazu zu  meinem anderen 
modul vorhanden sein oder wird lediglich die verbindung zur com 
schnittstelle geprüft?

grüßle
andi

von Roman (Gast)


Lesenswert?

Was meinst Du genau mit "davor"? Du musst es prinzipiell an 2 Orten 
einstellen, auf dem Xbee Modul, und danach natürlich auch im Terminal 
Programm Deiner Wahl. Auch das X-CTU hat eine Einstellung für die 
baudrate. Wenn Du kein OK bekommst, dann vermute ich mal ist etwas 
falsch eingestellt.

Wenn ich mich recht erinnere, gibts auch eine "Rate", mit welcher auf 
der Funkstrecke übertragen wird, aber das weiss ich nicht gerade 
auswendig / oder aus Erfahrung.

Wie bist Du überhaupt auf Deine Vermutung mit den 1.2 kbit gekommen? 
Einfach wegen der 9600 baud Einstellung? Der Durchsatz auf der 
Funkstrecke ist nicht konstant (je nach Distanz, Sendestärke, Antenne, 
etc etc). Du brauchst ein Programm um den tatsächlichen Durchsatz zu 
messen.

Und wenn ich mich nicht sehr irre, dann sollten bei Abstand 10 cm der 
beiden Module sehr wohl mehr Durchsatz drin liegen.

Sorry für die ungenauen Angaben, bin selber auch noch kein XBee 
Experte..

Gruss
Roman

von Roman (Gast)


Lesenswert?

Ach und Deine Frage habe ich gar nicht beantwortet... Das OK auf +++ 
kriegst Du auch ohne anderes Modul oder Verbindung. Das ist nur die 
Kommunikation auf der seriellen Strecke (zwischen PC und XBee Modul).

von Christian R. (supachris)


Lesenswert?

Roman schrieb:

> Wie bist Du überhaupt auf Deine Vermutung mit den 1.2 kbit gekommen?
> Einfach wegen der 9600 baud Einstellung? Der Durchsatz auf der
> Funkstrecke ist nicht konstant (je nach Distanz, Sendestärke, Antenne,
> etc etc). Du brauchst ein Programm um den tatsächlichen Durchsatz zu
> messen.
>
> Und wenn ich mich nicht sehr irre, dann sollten bei Abstand 10 cm der
> beiden Module sehr wohl mehr Durchsatz drin liegen.

Naja, er schrieb kB/s, was kByte sind. Das wäre dann durchaus im 
normalen ZigBee SnailMail Rahmen....

von Roman (Gast)


Lesenswert?

Das trifft aber glaube ich auf die XBee nicht zu, da lese ich im 
Internet Sachen wie:
"Note that the max throughput of the XBee on an open channel is approx 
80kbps."

Aber da ich das noch nicht selber getestet habe, kann ich das natürlich 
nicht mit Sicherheit Sagen.

von Andreas F. (andilein)


Lesenswert?

genau..also da ich maximal eine baudrate von 9600 einstellen konnte bin 
ich eben von 1,2kB/s aus gegangen.
wenn ich eine neue verbindung anlege kann ich ja nach eingabe des 
verbindungsnamnes im nächsten fenster die bautrate einstellen.
ich versteh eben nicht warum das nur mit 9600 funktioniert und nicht mit 
einer höheren. zumal ja zigbee einiges mehr vertragen sollte.
zur entfernung ist noch zu sagen dass die beiden module gerade mal ca. 
60cm auseinader liegen.
später möchte ich einiges über die übertragungsentfernung heraus 
bekommen. und dazu würde ich aber noch eine größere übertragungsrate 
ereichen.

von Roman (Gast)


Lesenswert?

Andi, wie oben schon angetönt. Der Ablauf müsste ungefähr so sein:
- Verbindung über 9600 auf das Xbee modul
- Dort die Baudrate des Xbee ändern (siehe geposteten Link, oder X-CTU 
verwenden)
- Dann neu Verbinden mit der neuen Baudrate.

Du kannst keine höhere Baudrate im Terminal Prog einstellen, weil Dein 
Xbee fest auf den Standard wert 9600 eingestellt ist.

Das alles hat nichts mit der Datenrate auf der Funkstrecke zu tun. Und 
für Dein eigentliches Vorhaben, Übertragungsfehler zu messen, müsstest 
Du Dich wohl noch weiter einlesen.

von Andreas F. (andilein)


Lesenswert?

ja, nur leider bekomme ich momentan nach eingabe de drei plus kein 
feedback..wieso auch immer.
der gedanke wegen der höhren übertagungsrate war nur der, dass wenn ich 
später über größere distanzen übertragen möchte meine sendeleistung ja 
deutlich geringer ist. somit wohl auch die übertragungsrate in die knie 
geht!

von Jörg S. (joerg-s)


Lesenswert?

>der gedanke wegen der höhren übertagungsrate war nur der, dass wenn ich
>später über größere distanzen übertragen möchte meine sendeleistung ja
>deutlich geringer ist. somit wohl auch die übertragungsrate in die knie
>geht!
Die Baudrate zwischen PC und XBee hat überhaupt nichts mit der 
Sendeleistung o.ä. zu tun. Mit der Baudrate kannst du nur bestimmen wie 
schnell die Daten vom PC ins Modul gelangen. Was das Modul mit den Daten 
macht ist unabhängig von der Baudrate.

von Andreas F. (andilein)


Lesenswert?

das nicht! aber ich kann doch auch einstelln wie schnell datenpakete vom 
einen zum anderen modul geschickt werden sollen. und je größer die 
distanz zwischen den beiden modulen desto langsamer wird vermutlich auch 
die übertragung, oder nicht?
..und um dem eben entgegen zu wirken..

von Andreas F. (andilein)


Lesenswert?

Roman schrieb:
> Anleitung für Terminal oder X-CTU:
> http://www.ladyada.net/make/xbee/configure.html

..also seit ich eine 4 eingeschrieben habe kann ich mit meinem modul 
absolut nichts mehr anstellen :(
hat mir jemand rat??

von M. B. (m_beffa)


Lesenswert?

Laut meinen Informationen ist die RF Data Rate 250 kbps.

s.h.
http://ftp1.digi.com/support/documentation/90000991_a.pdf

(Ist das DB der DigiMesh versionen. Sollte aber ähnlich sein)


Das hat jedoch wie gesagt nichts mit der Baudrate der seriellen 
Schnittstelle zutun, da ja alles gepuffert wird.

D.h. wenn du Daten an das Modul sendest, werden die erst in einem Puffer 
zwischengespeichert und erst dann gesendet. Je nachdem ob du im 
transparent Mode oder API Mode bist kann das Senden auf unterschiedliche 
Arten ausgelöst werden.

Welche Version XBEE Module hast du? Genau?

Siehst du am Besten wenn du mit X-CTU verbindest und die Parameter 
auslesen lässt.

PS: Kennt sich jemand wirklich mit all diesen Versionen aus bzw. kennt 
eine vollständige Übersichtstabelle?!

von Andreas F. (andilein)


Lesenswert?

> Welche Version XBEE Module hast du? Genau?
>
> Siehst du am Besten wenn du mit X-CTU verbindest und die Parameter
> auslesen lässt.

zunächst mal vielen dank für deine antwort!!
aber wie genau, bzw. wo finde ich die version heraus??
..ich dachte ich könnte einfach per befehl im hyperterminal das ganze 
rückgängig machen.
und vor allem, wo bzw. wie kann ich denn dann die eigentlich 
übertragungsrate der module untereinander erhöhen?

von M. B. (m_beffa)


Lesenswert?

Ist dir die Software X-CTU ein Begriff?

Die wird von Digi umsonst angeboten. Mit dieser Software kannst du sehr 
komfortabel die XBEE konfigurieren und die Parameter anschauen.

Ich würde dir empfehlen damit zu arbeiten. Ist 1000 mal einfach als 
HyperTerm. Wenn du die Software installiert hast, gehst du auf den 
letzten Reiter "Modem Configuration" und drückst auf Read. Dann wird die 
Firmware version und die Parameter gelesen. Dort kannst du dann alles 
bequem einstellen.

Wenn sich dein Modul gar nicht mehr meldet, hast du eventuell die 
Baudrate auf einen falschen Wert gesetzt. Versuchte mit verschiedenen 
Baudraten einstellungen wieder zu verbinden.

von Andreas F. (andilein)


Angehängte Dateien:

Lesenswert?

Marco Beffa schrieb:
> Ist dir die Software X-CTU ein Begriff?
>
> Die wird von Digi umsonst angeboten. Mit dieser Software kannst du sehr
> komfortabel die XBEE konfigurieren und die Parameter anschauen.
>
> Ich würde dir empfehlen damit zu arbeiten. Ist 1000 mal einfach als
> HyperTerm. Wenn du die Software installiert hast, gehst du auf den
> letzten Reiter "Modem Configuration" und drückst auf Read. Dann wird die
> Firmware version und die Parameter gelesen. Dort kannst du dann alles
> bequem einstellen.

ja doch, hab mich mit X-CTU scon etwas beschäftigt. unter pc settings 
ist der test auch negativ. setze ich jedoch den API mit enable, so ist 
zumindest die modemverbindung i.o.

> Wenn sich dein Modul gar nicht mehr meldet, hast du eventuell die
> Baudrate auf einen falschen Wert gesetzt. Versuchte mit verschiedenen
> Baudraten einstellungen wieder zu verbinden.

wo bzw. wie kann ich die denn einstellen? meinst du direkt unter pc 
settings??

..ich habe mal ein screenshot mit bei gefügt..wegen der version!

danke schonmal für alles!

von Andreas F. (andilein)


Angehängte Dateien:

Lesenswert?

oh oh..und wenn ich den API auf enable setze dann bekomme ich dies 
hier...s. screenshot.

von M. B. (m_beffa)


Lesenswert?

Jep, direkt unter PC Settings. Versuche mal die verschiedenen Baudraten 
aus. Ich nehme an das da jetzt irgendwas verstellt ist.

Wenn das nicht geht, versuche mal den Restore Knopf. Bin aber nicht 
sicher ob der automatisch mit verschiedenen Baudraten versucht zu 
verbinden und zurückzusetzen.

btw: Die Version deines XBEE's sieht du da wo jetz Unknow steht. In 
dieser Zeile steht was für ein Typ du hast. (natürlich erst, wenn ads 
auslesen gelungen ist)

von Andreas F. (andilein)


Lesenswert?

also mein com port läßt sich nicht öffnen!
hier nochmal ganz kurz meine beschreibung:

     +++ (get into AT mode)
    <- OK
    -> AT (check if xbee modem is responding)
    <- OK
    -> ATBD (get current baud rate as above)
    <- 3 (9600)
    -> ATBD 4 (set baud rate to 19200)
    <- OK
    -> ATBD (check again)
    <- 4

..ao weit bin ich gekommen..und weiter nicht!


    -> ATWR (write the baud rate change to flash)
    <- OK

das ATWR konnte ich nicht mehr ausführen!

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.