Frage zu XBee in IPS einbinden

Hallo alle zusammen,

sorry aber ich muss doch noch mal zur Einbindung der XBee Module einige Fragen stellen.

In der Beschreibung von RWN wird auf eine XCTU-Software verwiesen. Wenn ich auf den Link klicke komme ich auf eine Seite wo man einen Treiber installieren soll bevor man XCTU nutzen kann.

Funktioniert der auch mit Win 7 ?
Funktioniert XCTU auch mit Win 7 ?

Für eure Hilfe besten Dank

Bis dann

Martin

Hi Martin,

die extra Treiber werden nicht benötigt, wenn Du bereits die FTDI Treiber für den USB Dongle installiert hast.

Soweit ich sehen kann, wird X-CTU im Moment nur bis XP unterstützt. X-CTU wird aber auch nur benötigt, um einmalig die XBees zu konfigurieren (im von mir gelieferten Kit ist das bereits geschehen).

EDIT: Scheint auch mit Win 7 zu funzen: http://forum.sparkfun.com/viewtopic.php?f=13&t=20538&start=0

Hi Stefan,

Danke für die Info.

Ich möchte nur das komplette Prozedere verstehen und mir per XCTU mal die Konfig anschauen. (so für die Zukunft :wink: )

Zur Info:

Ich bin erst gestern mit dem Edip angefangen. Ich bin zur zeit beruflich in Bochum. Des weiteren war ich mit dem Import/Export zur Ferengi Terminverwaltung noch nicht fertig.

Bis dann

Martin

Hallo alle zusammen,

Der Empfang vom Edip funktioniert bei mir noch nicht. Senden klappt.

Hat jemand eine Idee?

Für eure Hilfe besten Dank

Martin

Woran machst Du fest dass der Empfang nicht funktioniert.

Hast Du im Edip was zum senden programmiert.

z.B. nach Tastendruck #SB „lala“

Das „Hallo kleiner Martin“ im Skript find ich klasse :o…

Rainer hat Recht, Du musst zunächst einmal etwas im EDIP definieren, was an die serielle Schnittstelle gesendet wird. Ob was in IPS ankommt, kannst Du dann einfach im DEBUG-Fenster der Registervariablen sehen.

Hallo Rainer, Hallo Stefan,

sorry für die späte Antwort. Ich bin momentan beruflich in Bochum.
Tut mir leid!!!

Wie in dem Screenshot zu sehen ist habe ich eine Touch-Taste angelegt.


RegVar_SendText(31250 /*[.EDip\Register Variable]*/, chr(27)."AT".chr(0).chr(0).chr(100).chr(100).chr(2).chr(3)."CTest".chr(0));

Wenn ich nun den Befehl zerlege steht da:

ESC+ „AT“ (für Touch-Taste)+ 0.0 + 100.100 (Koordinaten der Taste)+ Code für drücken+ Code für loslassen+ Tastenbeschriftung+ Abschlusszeichen.

In der Beschreibung auf Seite 16 oben steht das, das Edip darauf mit dem Code für drücken bzw. loslassen antwortet.

Das sollte eigentlich so aussehen:

ESC+ „AT“ (für Touch- Taste) +Code (drücken oder loslassen).

Könnt Ihr das bestätigen?

Für eure Hilfe besten Dank und bis dann

kleiner Martin :wink:

Hi Martin,

das ist korrekt so.

Versuch mal folgendes: das Abschlusszeichen chr(0) bei Dir durch chr(13) ersetzen. Beim 320er EDIP wird sonst die Null als Unterdrückung der Down/Upcodes verstanden…vielleicht ist das beim 240er EDIP auch so.

Wo kontrollierst Du die Daten, die reinkommen? Ich würde den Debugmodus an der Registervariable empfehlen, möglicherweise liegt bei Dir der Hund bei dem Meldungsfenster begraben, welches Du im Script erzeugst…

EDIT:
Noch was eingefallen…: möglicherweise musst Du die Zahl im Down-/Upcode als Text senden (in „“ setzen und chr() weglassen).

Alternativ kannst Du auch einfach mal ein kleines Testprogramm ins EDIP legen, welches in zeitlichen Abständen etwas an die serielle Schnittstelle sendet:
#X 20
#SB „Online“
#X 20
#SB „Online“
…usw.
–> sendet Dir alle 2 Sekunden „Online“ an IPS. Damit kannst Du auch sehen, ob etwas ankommt.

Hallo Stefan,

ich habe heute nochmals alle deine Vorschläge ausprobiert.

Es kommt einfach nichts aus dem Edip. Ich habe mir nochmals deine Verdrahtung angeschaut. Aber auch da kann ich nichts „böses“ entdecken.

Ich kann aber auch nicht glauben das etwas defekt ist. Bei deinem letzen Beispiel:

#X 20
#SB „Online“

kann ich sehen das die erste grüne LED an der XBee Platine am Edip im 2 Sek Takt kurz aufblinkt.

Ich denke das ich noch irgendwo einen Fehler in der Parametrierung habe.
Ich sehe ihn nur nicht. :confused:

Hast Du noch ne dufte Idee?

Bis dann

Martin

Hast Du mal ins Debug-Fenster der seriellen Schnittstelle in IPS
geschaut? Kommt da nix rein?

Achso: das Programmierkabel fürs EDIP hast Du aber wieder entfernt? Sonst laufen die Daten des EDIP ins „Leere“, da die Kontakte zum XBEE getrennt werden…

Hallo Stefan,

nur noch mal um sicher zu sein. Mit den Debug-Fenstern meinst Du die in den Screenshots?

Da ist bei mir alles leer.

Ja, das Programmierkabel ist nicht angeschlossen.

Bis dann

Martin

Debug Fenster.png

Schau mal ins Debug direkt an der seriellen Schnittstelle und nicht an der Registervariablen, ob da was reinkommt.

Nein, da kommt nichts rein. Ich kann wohl sehen wenn ich was sende.

Edit: Ich habe gerade das X-CTU installiert um die Parameter der XBee’s zu sichten. Wie kommt man den an die Parameter des End Device? Muss ich da noch was einstellen? Rainer sagt einfach nur Read drücken. Wenn ich das mache habe ich nur ein mal die Option „Networking & Security“.

Bis dann

Martin

Komisch…

X-CTU: End Device aufrufen…

  1. Zunächst den Coordinator mit „Read“ aufrufen (vorher COM Port in IPS trennen, da sonst die Schnittstelle blockiert ist)
  2. In X-CTU ganz oben „Remote Configuration“ drücken
  3. ein neues Fenster geht auf, dort zunächst „Open COM Port“ und dann „Discover“ drücken
  4. Nun müsste das End Device mit Namen dort gelistet sein. Mit Mausklick einfach markieren.
  5. Nun im X-CTU Hauptfenster „Read“ drücken, jetzt werden die Daten vom End Device ins Hauptfenster geladen. Nach einer Änderung können die Daten dann wieder mit „Write“ ins End Device geschrieben werden.
  6. Nach Ende der Konfiguration mit „Close COM Port“ im Zusatzfenster wieder Verbindung beenden und Zusatzfenster schließen.

Ich glaube, das da irgendeine Einstellung in der Funkverbindung einen Fehler hat. Das EDIP macht ja was es soll und die Daten kommen ja beim XBEE an, sonst würden die LEDs nicht blinken. Seltsam…

Jo sakrifiz nomol,

ich glaube Du hast einen Fehler in Deiner IPS-„Verschaltung“…ich habe Dir mal ein Bild von meiner Baumansicht angehängt. Bei mir hängen die Registervariablen unter dem jeweiligen Splitter, und dieser jeweils unter dem Gateway. Ich weiß nicht, ob man das alles frei positionieren kann so wie Du es gemacht hast.

Das ist egal wo die stehen.

Dann weiß ich auch nicht mehr weiter.

Ist in Windows evtl. eine Flusssteuerung an der seriellen Schnittstelle (–>Gerätemanager) aktiv? Die muss auf „Aus“ stehen.

Blinkt die LED am USB-XBee mit, wenn du am EDIP was sendest?

Vorschlag Martin,

mach mal Screenshots von XBee Coordinator und Enddevice in der XCTU Software mit allen Einstellungen die Du gemacht hast.
Ansonsten kann ich dir noch Teamviewer anbieten, dann müssten wir aber eine Uhrzeit ausmachen.

Hallo Stefan, Hallo Rainer,

ich habe den Fehler gefunden. Im End Device stand der Parameter:

Destination Address Low auf 0.

Ich habe den Parameter wie in der Beschreibung auf 1 gesetzt.

Besten Dank für eure Engelsgeduld !!!

@Stefan

Du hast recht. Wenn ich eine Touch-Taste erstelle muss der „Code down“ und „Code up“ in „“ stehen. Also So:


RegVar_SendText(31250 /*[.EDip\Register Variable]*/, chr(27)."AT".chr(0).chr(0).chr(100).chr(100)."2"."3"."CTest".chr(0));

Nochmals besten Dank und bis dann

Martin

Hi Martin,

super!!

Sorry, da hatte sich in der Vorkonfiguration wohl ein kleiner Fehler eingeschlichen. :o

Freut mich, dass es jetzt läuft! Viel Spaß noch beim EDIPpen…ich sag Dir, lass Dich bloß nicht vom gemeinen Edipfieber anstecken. Das kriegst Du so schnell nicht mehr weg. Die kleinen Racker sind wirklich klasse…