Guten Tag, vielleicht hat jemand ein paar Infos für mich, was die Steuerung der GPIOs des Wiport angeht ... wäre Klasse. Folgende Situation: Ich habe einen Wiport Version 6.1.0.1 mit 11 GPIOs, die individuell zu schalten sind. 1. Frage: Wie kann ich das in einer möglichst einfachen Syntax tun? Laut User Guide muss zum Verbindungsaufbau ein String im Format C192.168.178.2/30704 übermittelt werden. Aber wo kommt der "Nutz" - Befehl? Ich will ja z.B. die Richtung der Pins ändern, also 19,01,00,00,00,01,00,00,00 --> Wie ist da die richtige Syntax? Telnet + o.g.String? Oder erst Telnet + IP-Adresse und dann zusätzlich o.g.String? Ich möchte die I/Os steuern, ohne die Java-Scripts des C't - Projekts nutzen zu müssen, da man dafür eine funktionierende Java Runtime Environment braucht - und dafür ist auf dem Wiport einfach zu wenig Speicher. Letzten Endes möchte ich schlicht und einfach die GPIOs ein - oder ausschalten. In welche Umgebung ich diese Steuerung einbaue, weiss ich noch nicht; es soll aber auf jeden Fall unabhängig von einem laufenden Rechner sein. (alle java - und php-Ansätze setzen meines Wissens einen Server voraus) Wenn das Schalten gelingt, möchte ich zusätzlich auch überwachungsfunktionen realisieren, z.B. Status der Heizung oder so. 2. Frage: Gibt es eine Entwicklungsumgebung, mit der man das grundsätzliche Verhalten des Wiport ändern kann? Z.B. sind nach einem Reboot alle 11 GPIOs als Eingänge geschaltet. Ich möchte aber 6 als Eingang und 5 als Ausgang per default haben. Auch wieder: Per Port 30718 kann man das statisch schalten --> ABER WIE GENAU?? Die Antwort dazu bleibt das User Guide schuldig. Jedenfalls habe ich keine entdeckt. Hat jemand noch mit diesem Wiport zu tun und kann mir helfen? Ich messe und tippe hier schon seit vielen Stunden, aber die GPIOs bleiben eisern auf + 2,2 Volt - also als Eingang. Vielen Dank!!! Heinrich
> Folgende Situation: > > Ich habe einen Wiport Version 6.1.0.1 mit 11 GPIOs, die individuell zu > schalten sind. > > 1. Frage: Wie kann ich das in einer möglichst einfachen Syntax tun? > > Laut User Guide muss zum Verbindungsaufbau ein String im Format > C192.168.178.2/30704 übermittelt werden. > > Aber wo kommt der "Nutz" - Befehl? Ich will ja z.B. die Richtung der > Pins ändern, also 19,01,00,00,00,01,00,00,00 --> Wie ist da die > richtige Syntax? Telnet + o.g.String? Oder erst Telnet + IP-Adresse und > dann zusätzlich o.g.String? Du musst auf dem PC ein UDP- oder TCP-Client Programm programmieren das sich mit dem Port 77F0 bzw. 77FE des WiPort verbindet und dann die entstprechenden Strings schicken. Programmiersprache und Betriebsystem egal (Linux, Windows, C, C++, Java, C#..) Über Telnet wirds wohl schwierig, da man hier schlecht Strings mit 0-Bytes schicken kann, un die sind nötig. Die Strings die man schicken muss sind in der Doku mit Beispielen angegeben. Seite 70 und folgende. http://www.lantronix.com/pdf/WiPort_UG.pdf Wichtig ist, dass man zuerst die Richtung der PINs und die Active-LEvels setzt. Dann kann man den Status der Ports verändern. > Letzten Endes möchte ich schlicht und einfach die GPIOs ein - oder > ausschalten. In welche Umgebung ich diese Steuerung einbaue, weiss ich > noch nicht; es soll aber auf jeden Fall unabhängig von einem laufenden > Rechner sein. Zum Schalten der GPIOs wird der Rechner wohl laufen müssen, da der WiPort in diesem Betriebsmodus ja quasi "dumm" ist. Das heißt er setzt immer ein zweites System voraus, das ihm über TCP oder UDP die Befehle schickt. > > Wenn das Schalten gelingt, möchte ich zusätzlich auch > überwachungsfunktionen realisieren, z.B. Status der Heizung oder so. > Auch das muss aber ein übergeordnetes System machen, der WiPort ist ein "dummer" End-Knoten > 2. Frage: > Gibt es eine Entwicklungsumgebung, mit der man das grundsätzliche > Verhalten des Wiport ändern kann? Ja, die gibt es, ist aber glaub ich keine frei verfügbare Software sondern muss man bei Lantronix kaufen, oder zumindest speziell anfragen, glaube ich, bin mir aber nicht ganz sicher. Man kann damit in C komplett eigene Software schreiben. Ist aber schwiriger als das Schalten der Pins über UDP/TCP. > Z.B. sind nach einem Reboot alle 11 > GPIOs als Eingänge geschaltet. Ich möchte aber 6 als Eingang und 5 als > Ausgang per default haben. Das kann man aber ohne spezielle eigene Firmware konfigurieren, entweder über das Web-Interface oder eben per UDP/TCP über den Port 77FE > Auch wieder: Per Port 30718 kann man das statisch schalten --> ABER WIE > GENAU?? Die Antwort dazu bleibt das User Guide schuldig. Jedenfalls habe > ich keine entdeckt. Steht im Kapitel 6: Command 19h: SetDirections und Command 1Ah: SetActive Levels Geht genauso wie im Example 2 beschrieben, eben nur mit anderem Kommando > > Hat jemand noch mit diesem Wiport zu tun und kann mir helfen? Ich messe > und tippe hier schon seit vielen Stunden, aber die GPIOs bleiben eisern > auf + 2,2 Volt - also als Eingang. > > Vielen Dank!!! > > Heinrich
Danke für die schnelle Reaktion! Ich habe jetzt ein entspr. Programm installiert(s.Anhang), aber das einzige, was ich als Antwort bekomme, ist Y YYYY ... seltsam, irgendwas versteht der Wiport wohl nicht ... und ich auch :-) Ich habe es auch in der Schreibweise 0x10,0x00 usw. probiert, aber mit gleichem Ergebnis. Hast Du vielleicht noch eine Idee?
YYY ... das klingt so als ob Dein Programm die Antwort des WiPort als ASCII Zeichen interpretiert. Aber es ist doch schon gut wenn er antwortet, dann hat er vermutlich was korrektes empfangen. Besser wäre es wenn Du wirklich mit eigenem Quellcode etwas hin schickst, und die Antwort empfängst und interpretierst. Fertige Programme haben für solche Sachen immer Ihre Tücken. Um ein paar Zeilen Quellcode wirst Du nicht drum rum kommen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.