Gast
#1800180
Hallo zusammen, meine XBees ZNet 2.5 (API) wollen nicht zuverlässig miteinander reden. Umgebung: 1x XBee am µC; 2x XBee am PC mit X-CTU alle mit Baudrate 115k2. Elektrisch verbunden habe ich nur RxD und TxD (via Pegelwandler) mit dem µC (d.h. CTS/RTS/DTR hängen in der Luft). Firmwareversionen: 1341 (1x PC-XBee) und 1141 (1xPC-XBee; 1x µC-XBee) Ich sende vom µC aus konstant jede volle Sekunde genau ein Datenpaket als Broadcast raus. Die PC-XBees zeigen diese auch korrekt an, allerdings nur bis einschliesslich dem 8.Datenpaket, ab dann wirds durcheinander. µC-Zigbee sendet per API einen ZigbeeTransmitRequest:
1 | |
2 | |
In X-CTU sehe ich nun folgende Pakete eintreffen (anhand meines Ascii-Zählers): 1, 2, 3, 4, 5, 6, 7, 8, (Pause von 4..8s), 11, 10, 9, 12, 13, 14, (Pause), 15, 16, 17, 18, (hier fehlen ein paar Botschaften; Pause), 22, 23, 24, 25, 29, 30, 31, 32, 33, 34, 35... Hintenraus ist es nicht immer gleich, aber der Anfang ist immer identisch. Das Raustakten der Bytes aus dem µC-XBee habe ich mit dem Oszilloskop kontrolliert - die Daten kommen pünktlich aus der µC-RS232 raus. Beide PC-XBees zeigen zeitgleich und übereinstimmend die eingehenden Daten an. D.h. auch die verlorenen Frames fehlen in beiden PC-XBees. Hängt das evtl. irgendwie mit den Broadcasts zusammen? Verbrauchen die irgendwie mehr XBee-internen Speicher oder sausen da noch viele zusätzliche Frames durch die Luft, die ich (über RS232) nicht mitbekomme und die mir hier alles zerstören? Oder hängt das mit irgendwie falschem Flowcontrol zusammen? (Ich mache hier aktiv nämlich nichts). Übrigens, wenn ich den µC per Breakpoint z.B. für mehrere Sekunden anhalte und dann weiterlaufen lasse, dann funktionierts wieder 8x... Ich habe irgendwie den Eindruck, dass das nicht (nur) mit meiner µC-Software zusammenhängt, sondern irgendwie auch mit der XBee-Firmware zusammenhängt?!? Kann sich jemand das Verhalten erklären? Danke.