Jump to content

WIFI Extension als AP + NetIO App


doehlma
 Share

Recommended Posts

Hallo,

 

kann mir jemand eine klare Schritt für Schritt Anleitung für folgende Konstellation zur Verfügung stellen:

 

Tinkerforge:

1 Master Brick mit verbundenem Dual Relay Brick und mit aufgesteckter WIFI Extension (diese ist als AP eingerichtet)

 

Über USB kann ich mittels Python Beispiel das Dual Relays erfolgreich ansteuern ;)

 

Wie muss ich exemplarisch vorgehen, um mit der in NetIO App Relays Beispielanwendung das Dual Relay erfolgreich mittels Iphone 5S anzusteuern ??

 

Ich habe bereits mehrere leider nicht erfolgreiche Versuche hinter mir, und bereits viele viele Foren auf Tinkerforge sowie NetIO belesen, bin jedoch nicht weiter...

 

Vielleicht kann mir hier jemand eine eindeutige und zusammenfassende Schritt für Schritt Einstellungsanleitung ( IP, port, .......) seitens NetIO und Tinkerforge zukommen lassen ?

 

Vielen Dank vorab für Euere Bemühungen....

Link to comment
Share on other sites

Brick und Bricklets sprechen auf der untersten Ebene ein binäres packetbasiertes Protokoll, das hier beschrieben ist:

 

http://www.tinkerforge.com/de/doc/Low_Level_Protocols/TCPIP.html

 

Unsere API Bindings nutzen diese Protokoll um mit den Brick und Bricklets zu sprechen.

 

NetIO ist an sich erstmal für Textbefehle ausgelegt. Die Shell Bindings können als Proxy zwischen NetIO und Brick und Bricklets fungieren, so dass du direkt Textbefehle von NetIO aus schicken kannst:

 

http://www.tinkerforge.com/de/doc/Software/NetIO_Setup.html

 

Das setzt allerdings voraus, das die Shell Bindings auf einem Rechner laufen.

 

Wenn du direkt aus NetIO über eine WIFI Extension Brick und Bricklets ansprechen willst ist da kein Raum für die Shell Bindings. In diesem Fall kannst du das Format der NetIO Connection von string auf hex zu stellen und dann direkt die Binärpakete zu schicken.

 

Als kurzes Beispiel müsstet du diese Bytesequenz senden, um beide Relais des Dual Relay Bricklets mit UID a5N einzuschalten:

 

0x5a 0x77 0x00 0x00 0x0a 0x01 0xb0 0x00 0x01 0x01

 

Wie diese für dein Bricklet aussieht hängt von dessen UID ab. Wie du das in NetIO exakt hinschreiben musst musst du in der NetIO Dokumentation nachschlagen.

Link to comment
Share on other sites

Du kannst mit NetIO auch HTTP Requests abschicken.

 

Also NetIO App auf dein iPhone und konfiguriere NetIO so dass es HTTP requests abschickt, also z.B. http://myserver:8080/dualrelais/on

 

Dann brauchst du einen kleinen WebServer der auf myserver installiert wird und auf Port 8080 hört. (mach das mit Python, Java, Node.js.....)

 

Dann kannst du den GET Request parsen (steht da 'on' oder 'off' in der URL?)

 

Dann kannst du mit den TF Bindings im WebServer das Dual Relais schalten.

Link to comment
Share on other sites

raphael_vogel, auch eine gute Idee, hat aber den gleichen Nachteil wie die Shell Bindings als Proxy: es braucht einen weiteren PC für den Webserver.

 

doehlma, beschreibe doch mal bitte genauer was deine Rahmenbedingungen sind: Soll es mit iPhone und Stack alleine gehen, oder darf die Kommunikation über einen zusätzlichen PC gehen?

 

Du sagtest du hast schon Verschiedenes probiert. Beschreibe doch mal was das im einzelnen war und was die Probleme waren, dann können wir hier gezielter weiterhelfen.

Link to comment
Share on other sites

Guten Abend,

 

also erst einmal vielen herzlichen Dank für die Vorschläge.. auch wenn Sie vom technischen Niveau für mich ziemlich hoch liegen  :-[

 

Ich habe es gestern geschafft, über NetIO.. mein Macbook Pro.. und den daran angeschlossenen Tinkerforge Bausteinen ein Dual Relay anzusteuern.. juhhuu

 

Jetzt meine weiterführende Frage:

 

Kann ich z.B. den Aufbau über einen Raspberry Pi ( der als AP kofiguriert werden müsste, wenn überhaupt möglich) anstatt dem MacBook Pro lösen ?

D.h. NetIO steuert den RPI über seine eigene IP als AP an, und dieser gibt die Befehle an die Tikerforge Bausteine mittels USB Anschluss weiter ?

 

Die Hauptfrage für mich ist dabei, ob es möglich ist DIREKT über den RPI zu kommunizieren.. und nicht den RPI sowie Iphone zusätzlich über ein gemeinsam genutzes WLAN zu verbinden (das geht leider nicht, da ich in unserer Firma keinen

Zugang bekommen werde)

 

Dann wäre zwar die erworbene WIFI Extension diesmal nicht für mich nutzbar, aber ich möchte im Anschluß noch weitere private Projekte umsetzen..da kann Ich die Wifi ja gebrauchen...

 

 

Also vieleicht habt Ihr auch diesmal nützliche Anleitungen, Tipps und Lösungen für mein oben beschriebenes Szenario (NetIO, RPI als AP, Tinkerforge)?

Würde mich freuen..

 

Marcus

Link to comment
Share on other sites

Du kannst mit einem WLAN USB Stick der den Access Point Modus unterstützt ein Raspberry Pi in einen Access Point verwandeln und dann dich vom iPhone aus direkt damit verbinden.

 

Du brauchst aber das Raspberry Pi nicht zwingend als Proxy zwischen iPhone und Tinkerforge Bausteinen. Es geht auch ohne, wenn auch nicht so schön und einfach, mit dem Nachteil, dass du aus NetIO heraus dann das unser binäres Protokoll sprechen musst. Wenn du nur Steuerbefehle, wie das schalten eines Dual Relay Bricklets brauchst ist das nicht so schwer.

 

Ich hab hier mal schnell ein einfaches Beispiel zusammen gebaut. Die NetIO Konfiguration ist angehängt plus modifizierte Shell Bindings, die das Binär Paket in hex ausgeben. Dieses muss dann bei den einzelnen Knöpfen unter "sends" eingetragen werden.

 

Um diese hex Strings zu erzeugen muss du die modifizierten Shell Bindings wie folgt aufrufen. Dabei musst du statt fCp die UID deines Dual Relay Bricklets angeben.

 

Relay 1 On:

 

python tinkerforge_netio call dual-relay-bricklet fCp set-selected-state --expect-response 1 true

 

Relay 1 Off:

 

python tinkerforge_netio call dual-relay-bricklet fCp set-selected-state --expect-response 1 false

 

Relay 2 On:

 

python tinkerforge_netio call dual-relay-bricklet fCp set-selected-state --expect-response 2 true

 

Relay 2 Off:

 

python tinkerforge_netio call dual-relay-bricklet fCp set-selected-state --expect-response 2 false

Dual_Relay_Test.json

tinkerforge_netio

Link to comment
Share on other sites

  • 2 weeks later...

Hallo Photron,

 

vielen vielen Dank für deine super Unterstützung...

 

Jetzt kann ich mit NetIO meine Relais einzeln über HEX Befehle ansteuern.

 

Wie muss eigentlich der Befehl lauten.. wenn ich an einem Dual Relais beide Relais gleichzeitig ein- bzw. ausschalten möchte ??

 

Viele Grüße

Marcus

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...