FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: Netior am 04 Januar 2013, 21:27:27

Titel: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 04 Januar 2013, 21:27:27
Hallo

Ich kann über ein NetIO mit RFM12 ask verschiedene Funksteckdosen ansteuern.
Nur wechselt jedesmal die Seite auf dem Webfrontend, wenn ich dort on oder off klicke.

Ähnliches wurde schon mal besprochen. In meinem Fall gibts aber kein notify.
https://groups.google.com/forum/#!msg/fhem-users/Kj-vKajCLCE/Dzi43lOhKFUJ (http://groups.google.com/forum/#!msg/fhem-users/Kj-vKajCLCE/Dzi43lOhKFUJ)

Mit einer structure funktioniert das einwandfrei.
Muss ich für jede dose ein ECMD device und eine structure erstellen damit die seite nicht wechselt?

dank und gruss

Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: rudolfkoenig am 05 Januar 2013, 13:16:22
>  Nur wechselt jedesmal die Seite auf dem Webfrontend, wenn ich dort on oder off klicke.

Liegt vermutlich daran, dass "set DEV on" irgendetwas zurueckliefert. FHEMWEB interpretiert das als darzustellenden Fehler.
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 05 Januar 2013, 15:05:26

Richtig, es kommt ein "OK" zurück vom NetIO.

Gibt's ne Möglichkeit dass dies nicht als darzustellender Fehler interpretiert wird?
Mit postproc hab ich gerade (net-io Relais Bsp.) versucht mit undef und als leerer postproc, aber es gibt immer etwas zurück.

Gruss und Dank
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 12 Januar 2013, 17:44:02

Hallo nochmals.

Wollte nur nochmals nachfragen ob es allenfalls eine Lösung für das Problem gibt.
z.b. Rückgabewert zu unterdrücken oder irgendwie zu definieren dass der rückgabewert nicht als fehler behandelt wird.

Gruss und dank!
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Dr. Boris Neubert am 13 Januar 2013, 13:08:52
Zitat von: Netior schrieb am Sa, 12 Januar 2013 17:44

Wollte nur nochmals nachfragen ob es allenfalls eine Lösung für das Problem gibt.
z.b. Rückgabewert zu unterdrücken oder irgendwie zu definieren dass der rückgabewert nicht als fehler behandelt wird.


Probier bitte mal aus, ob Du mit einem postprocess { return undef; } in der classdef zum Ziel kommst.

Viele Grüße
Boris
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 13 Januar 2013, 15:18:14
Hallo Boris

Danke für dein Feedback.

Ich habe versucht mit

postprocess { return undef; } =>Seite wird gewechselt mit Antwort "on OK"

und mit

set on postproc { return undef; } => Seite wird noch gewechselt aber String vom Netio kommt nicht mehr durch. Es steht nur noch "on".

Sonst noch eine Idee.

Vielen Dank und Gruss
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: yoho am 01 Februar 2013, 15:39:16
Hallo Forum,

da dies mein erster Beitrag ist, möchte ich mich zunächst für diese sehr schöne Software bedanken.

Da ich selber gerne diverse Schaltaufgaben am AVR-NET-IO mit FHEM ausführen möchte, würde ich mich gerne erkundigen, ob es für das, in diesem Threat beschriebene, "Problem" bereits eine Lösung gibt. Bei mir tritt das "Problem" mit dem Schalten von 2272-Funksteckdosen und Relais (über "named_pins") auf.

Danke


Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 07 Februar 2013, 20:53:30
Hallo

Hab leider noch nichts gefunden das helfen würde.
Hat noch jemand eine Idee?

Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Dr. Boris Neubert am 08 Februar 2013, 02:52:25
Zitat von: Netior schrieb am Do, 07 Februar 2013 20:53
Hallo

Hab leider noch nichts gefunden das helfen würde.
Hat noch jemand eine Idee?



Ich habe am 26.01. eine Änderung eingecheckt, die ein set keinen Wert mehr zurückliefern läßt und außerdem state regelkonform setzt. Damit solltest Du es einmal versuchen. Bei mir klappt es.

Grüße
Boris
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 08 Februar 2013, 11:21:00

Wow, super.
Herzlichen Dank.
D.h. für mich ein update shutdown restart, ist das korrekt?

Werde das voraussichtlich morgen testen und feedbacken.

Gruss

Netior
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: yoho am 08 Februar 2013, 11:27:24
Hallo Boris,

auch wenn ich mich nur mit angehängt habe, möchte ich trotzdem Feedback geben:

Funktioniert nun einwandfrei!

Vielen Dank!
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 09 Februar 2013, 14:32:11
Hallo

Freude herrscht!
Funktioniert einwandfrei nach update und shutdown restart.
Endlich kein Seitenwechsel mehr.

Vielen Dank und Gruss
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: ulli am 01 März 2013, 22:49:28

Dank der ECMD Erweiterung habe ich auch die Steuerung meiner Funktsteckdosen im Griff.
Super Boris!

Ich würde nur gerne auch die Befehle der Funkfernbedinung nutzen.
Leider habe ich keine Ahnung von Perl und habe auch in stundenlager Suche nicht heraus gefunden wie ich auf einen seriellen Befehl in FHEM reagieren kann.
Ist es auch mit ECMD möglich solche Befehle wie folgender zu verarbeiten:
"rfm 1 10010 B 0"
"rfm <protokol> <housecode> <device> <state>"

Wäre sehr dankbar über Unterstützung.
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Dr. Boris Neubert am 02 März 2013, 08:22:28
Zitat von: ulli schrieb am Fr, 01 März 2013 22:49



Ich würde nur gerne auch die Befehle der Funkfernbedinung nutzen.
Leider habe ich keine Ahnung von Perl und habe auch in stundenlager Suche nicht heraus gefunden wie ich auf einen seriellen Befehl in FHEM reagieren kann.
Ist es auch mit ECMD möglich solche Befehle wie folgender zu verarbeiten:
"rfm 1 10010 B 0"
"rfm <protokol> <housecode> <device> <state>"


Diese Texte kommen spontan vom Gerät, also nicht als Antwort auf ein von Dir gesendetes Kommando? Dafür ist das ECMD-Modul nicht ausgelegt - es geht nur das Frage-Antwort-Spiel. Grundsätzlich ist es aber möglich, das Modul mit einer ParseFn-Funktion auszustatten, damit spontan gesendete Texte vom Gerät geparst und an Geräte weitergeleitet werden (Beispiel: 00_FHZ.pm). Für erfahrene Fhemler...

Viele Grüße
Boris
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: ulli am 03 März 2013, 21:10:33
ich versuche gerade mit meinen geringen Kenntnissen das ECMD Modul zu erweitern.
Wie schon beschrieben möchte ich es dazu bringen Nachrichten die einfach auf die USB Schnittstelle geschrieben werden zu verarbeiten. (kein Frage-Antwort-Spiel)
d.h.
Kommando auf der seriellen Schnittstelle ist folgendes:
IR[6]: <10 707 F807 1>

66_ECMD.pm habe ich um folgendes ergänzt
sub
ECMD_Initialize($)
{
....
  $hash->{Match}     = "^IR[6]: <.............>";
  $hash->{ParseFn}   = "ECMD_Parse";
....
}
sub
ECMD_Parse($$)
{
  my ($hash, $msg) = @_;

  Log 3, "Testnachricht";
}

Kann mir wer helfen warum ich im fhem logfile keine Nachricht bekomme?
Was habe ich vergessen?

Erweiterung:
Ich habe noch eine ECM_Read Funktion eingebaut mit folgendem Inhalt:
  $buf = ECMD_SimpleRead($hash);
  Log 3, "ECMD (ReadAnswer): $buf";

Damit erhalte ich im Log folgendes:
2013.03.03 21:57:49 3: ECMD (ReadAnswer): I
2013.03.03 21:57:49 3: ECMD (ReadAnswer): R[6]:
2013.03.03 21:57:49 3: ECMD (ReadAnswer):  <10 7
2013.03.03 21:57:49 3: ECMD (ReadAnswer): 07 F80
2013.03.03 21:57:49 3: ECMD (ReadAnswer): 7 0>
2013.03.03 21:57:49 3: ECMD (ReadAnswer): IR[6]
2013.03.03 21:57:49 3: ECMD (ReadAnswer): : <10
2013.03.03 21:57:49 3: ECMD (ReadAnswer): 707 F
2013.03.03 21:57:49 3: ECMD (ReadAnswer): 807 1>

Warum wird der Befehl nicht vollständig auf einmal eingelesen?

Kann mir kurz jemand einen Roten Faden geben wie ich meine Funktion korrekt in das Modul einbauen kann.....Read, Match, Parse???

Wäre sehr hilfreich...
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: Netior am 07 April 2013, 09:44:26
Hallo Ulli

Hast du noch weiter versucht Daten direkt an fhem zu senden?
Wäre auch sehr interessiert daran, da ich elektroniktaster über netio->ethersex->fhem benutzen möchte.

Wie ist der Stand? Kann ich etwas beitragen?

mfg
Titel: Aw: ECMD Seitenwechsel bei Rückgabewert
Beitrag von: onkelchrischi am 24 April 2013, 08:11:31
Hi,
die Ausgabe ins Log hab ich auch hinbekommen.
Das mit den mehrfachen Ausgaben scheint ein Timingproblem zu sein. Wenn die Baudrate deutlich höher gewählt ist sind es weiniger Zeilen. Wie man das ganze beheben kann und ob evtl. der ganze input mit einmal gelesen wird hab ich auch noch nicht getestet. Wenn es wirklich gestückelt eingelesen werden sollte, kann man ja auf Sendeseite "End of Stream"-Zeichen setzen und auf FHEM-Seite abfragen.

Freue mich über eventuelle Umsetzung, da ich selber gerade keine Zeit habe.
MfG...