FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Si(MO)n am 08 Dezember 2015, 21:45:40

Titel: (gelöst) Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Si(MO)n am 08 Dezember 2015, 21:45:40
Guten Abend zusammen,

ich bräuchte mal eure Ideen und Vorschläge.

Der aktuelle ist Zustand:
- Arduino und Raspberry Pi sind per USB to Serial Kabel verbunden
- Senden von Commands von der Terminalkonsole des Ras. Pi sind möglich

Meine Fragen:
- Gibt es eine Möglichkeit innerhalb von FHEM direkt auf die Serial Konsole zuzugreifen?
- Der Befehl der abgesetzt werden soll ist 2=1:100<cr><lf>
- Ein auslesen des Rückgabewerts wäre auch schön aber nicht zwingend.

Vielleicht hat einer von euch schon mal ähnliches gemacht?!
Danke für eure Hilfe.

Gruß
Si(MO)n
Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: viegener am 08 Dezember 2015, 22:16:09
Zitat von: Si(MO)n am 08 Dezember 2015, 21:45:40
Guten Abend zusammen,

ich bräuchte mal eure Ideen und Vorschläge.

Der aktuelle ist Zustand:
- Arduino und Raspberry Pi sind per USB to Serial Kabel verbunden
- Senden von Commands von der Terminalkonsole des Ras. Pi sind möglich

Meine Fragen:
- Gibt es eine Möglichkeit innerhalb von FHEM direkt auf die Serial Konsole zuzugreifen?
- Der Befehl der abgesetzt werden soll ist 2=1:100<cr><lf>
- Ein auslesen des Rückgabewerts wäre auch schön aber nicht zwingend.

Vielleicht hat einer von euch schon mal ähnliches gemacht?!
Danke für eure Hilfe.

Gruß
Si(MO)n

Ich nehme an mir USB-Serial-Kabel ist gemeint, dass etweder ein ProMini mit Adapter oder ein anderen Arduino direkt mit dem PI verbunden ist?

Daten zum Arduino zu senden ist dann eigentlich relativ einfach, es gibt zum Beispiel eine gute Beschreibung hier.
http://playground.arduino.cc/Interfacing/LinuxTTY (http://playground.arduino.cc/Interfacing/LinuxTTY)

Zur Einbindung in FHEM wäre es dann aber eigentlich sinnvoll ein Modul in FHEM zu benutzen (oder zu bauen), dass die Kommunikation mit dem Arduino abwickelt, dann kann man auch auf die Rückgabe entsprechend reagieren.

Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Si(MO)n am 08 Dezember 2015, 22:24:52
USB direkt am Arduino
Im Raspberry wird es dann als /dev/ttyUSB0 erkannt und mit Linux Boardmitteln geht es. also echo etc..

Die Sache mit dem Modul ist das was ich meine, ich habe kein Modul gefunden, dass die Aufgabe erfüllen kann.
Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: viegener am 09 Dezember 2015, 00:00:08
Zitat von: Si(MO)n am 08 Dezember 2015, 22:24:52
Die Sache mit dem Modul ist das was ich meine, ich habe kein Modul gefunden, dass die Aufgabe erfüllen kann.

OK, ich hatte nicht verstanden, was die Serial Konsole sein sollte.

Ich kenne kein generisches Modul zur seriellen Kommunikation, aber für wenige Kommands ist vielleicht der direkte Aufruf von shell-Kommands ausreichend. Diese können auch in notifys etc verwendet werden.

Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Si(MO)n am 09 Dezember 2015, 00:20:29
Ich habe folgendes gefunden:
http://forum.fhem.de/index.php?topic=16058.0
http://forum.fhem.de/index.php/topic,28198.0.html

Nicht ganz was ich brauche, aber es geht schon mal in die Richtung..
Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Icinger am 09 Dezember 2015, 04:50:54
Zitatgenerisches Modul zur seriellen Kommunikation

Schau dir in der commandref das ECMD an......Das ist ein absolut generisches Modul für zB serielle Kommunikation.

lg, Stefan
Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: viegener am 09 Dezember 2015, 10:16:32
Interessant, wieder was gelernt, das hatte ich überlesen, dass hier explizit auch tty möglich ist.
Titel: Antw:Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Si(MO)n am 09 Dezember 2015, 16:05:19
Ok, vielen Dank für den Hinweis auf ECMD!!
Hiermit habe ich es geschafft, Daten zu senden.
Nun gibt es nur noch ein Phänomen, ab und zu wird der Befehl nach dem senden nicht vom Arduino interpretiert.
Deswegen würde ich es gerne auf galante Weise mehrfach senden.
Am liebsten in der Form: Senden, warten, Senden...

Was ich bis jetzt eingerichtet habe:
fhem.cfg:
define Arduino_Serial ECMD serial /dev/ttyUSB0@9600
attr Arduino_Serial classdefs LEDs=/opt/fhem/FHEM/ECMD_Classes/LEDs.classdef
attr Arduino_Serial requestSeparator

define LED1 ECMDDevice LEDs
attr LED1 IODev Arduino_Serial
attr LED1 verbose 5
attr LED1 webCmd 1on:1off:2on:2off:3on:3off:auto


LEDs.classdef:
set 1on cmd {"3\n\r"}
set 1off cmd {"6\n\r"}
set 2on cmd {"4\n\r"}
set 2off cmd {"7\n\r"}
set 3on cmd {"5\n\r"}
set 3off cmd {"8\n\r"}
set auto cmd {"9\n\r"}


Ich weiß man kann es sicher schöner machen, aber ich wollte erst mal die Funktionen testen und dann schön machen ;)
Titel: Antw:(gelöst) Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Nepumuk4321 am 09 Dezember 2015, 23:26:47
Hallo,

schau dir mal den Thread an : http://forum.fhem.de/index.php/topic,29113.msg361352.html#msg361352 (http://forum.fhem.de/index.php/topic,29113.msg361352.html#msg361352)

Damit hat es bei mir wunderbar funktioniert. ohne jegliche Aussetzer. Allerdings habe ich es bisher nicht geschafft, Readings zu erzeugen oder auch eingelesene Eingänge  vom Arduino an Fhem zu senden.
Wenn du das schaffen würdest, wär ich auch sehr happy.


Gruß
Frank
Titel: Antw:(gelöst) Serial Port Kommunikation FHEM, Raspberry Pi, Arduino
Beitrag von: Si(MO)n am 10 Dezember 2015, 13:20:09
Hi,

danke für den Tip.
Zum Reading habe ich das hier gefunden:
http://forum.fhem.de/index.php/topic,30684.0.html (http://forum.fhem.de/index.php/topic,30684.0.html)