AT schaltet die Funksteckdosen nicht ein - manuell aber kein Problem

Begonnen von Roaster, 18 August 2014, 21:48:51

Vorheriges Thema - Nächstes Thema

Roaster

Hi,

schön langsam laufe ich warm mit fhem, aber dennoch sind einige Fragen ungeklärt, so wie diese hier. Ich habe drei Funksteckdosen im Betrieb, die vom Raspberry Pi mittels 433 MHz Sender, natürlich über fhem, geschaltet werden.

Dies funktioniert auch soweit, wenn ich auf die vorhandenen Schalter bzw. an/aus klicke. Damit die Steckdosen aber zeitgesteuert ein/aus geschaltet werden habe ich mir dazu den AT Befehl angeschaut und versucht in einer Config Datei einzubauen:

# Funksteckdosen
define AB440R_A dummy
attr AB440R_A alias Xmas Wohnzimmer
attr AB440R_A eventMap on:an off:aus
attr AB440R_A group Funksteckdosen
attr AB440R_A room Xmas
attr AB440R_A setList on off
define on_AB440R_A notify AB440R_A:on { system("/usr/local/bin/send433 11000 1 1 &") }
define off_AB440R_A notify AB440R_A:off { system("/usr/local/bin/send433 11000 1 0 &") }

define at.XmasWohnzAbendEin at *{sunset(-1800,"17:00","22:00")} set AB440R_A on
define at.XmasWohnzAbendAus at *23:30 set AB440R_A off
define at.XmasWohnzMorgenEin at *05:45 set AB440R_A on
define at.XmasWohnzMorgenAus at *08:30 set AB440R_A off


In der Übersicht, unter Everything -> AT habe ich nun folgendes gefunden:
Zitat
at.XmasWohnzAbendAus    Next: 23:30:00
at.XmasWohnzAbendEin     Next: 20:22:04
at.XmasWohnzMorgenAus  Next: 08:30:00
at.XmasWohnzMorgenEin   Next: 05:45:00

Im Log findet sich hierzu:
Zitat2014.08.18 20:24:04 3: on_AB440R_A return value: -1

Die State Icons gingen auch auf den Zustand "ein", aber die Steckdosen selbst blieben aus. Wie gesagt, wenn ich dies manuell auslöse, dann gibt es kein Problem. Nur im Zshg. mit dem AT scheitert das Ganze. Liegt es an der Definition von eventMap oder was mache ich falsch?

Grüße,
Michael

Roaster

So, kurzer Zwischenstand, aber ohne Ergebnis  :-[

Mit dem folgenden Coding

define AB440R_B dummy
attr AB440R_B alias Xmas Terasse
attr AB440R_B eventMap on:an off:aus
attr AB440R_B group Funksteckdosen
attr AB440R_B room Xmas
attr AB440R_B setList on off
define not.AB440R_B.on notify AB440R_B:on { Log 2, "$NAME $EVENT.";; system("/usr/local/bin/send433 11000 2 1 &");; }
define not.AB440R_B.off notify AB440R_B:off { Log 2, "$NAME $EVENT.";; system("/usr/local/bin/send433 11000 2 0 &");; }

define AB440R_C dummy
attr AB440R_C alias Xmas Speise
attr AB440R_C eventMap on:an off:aus
attr AB440R_C group Funksteckdosen
attr AB440R_C room Xmas
attr AB440R_C setList on off
define not.AB440R_C.on notify AB440R_C:on { Log 2, "$NAME $EVENT.";; system("/usr/local/bin/send433 11000 3 1 &");; }
define not.AB440R_C.off notify AB440R_C:off { Log 2, "$NAME $EVENT.";; system("/usr/local/bin/send433 11000 3 0 &");; }

define at.XmasSpeiseEin at *18:03:00 { Log 2, "XmasSpeiseEin -> on";; system("/usr/local/bin/send433 11000 3 1 &");; }
define at.XmasSpeiseAus at *18:10:00 { Log 2, "XmasSpeiseEin -> off";; system("/usr/local/bin/send433 11000 3 0 &");; }
define at.XmasTerasseEin at *18:03:10 { Log 2, "XmasTerasseEin -> on";; system("/usr/local/bin/send433 11000 2 1 &");; }
define at.XmasTerasseAus at *18:10:00 { Log 2, "XmasTerasseEin -> off";; system("/usr/local/bin/send433 11000 2 0 &");; }


erscheint im Log:
Zitat2014.08.22 18:03:00 2: XmasSpeiseEin -> on
2014.08.22 18:03:00 3: at.XmasSpeiseEin: -1
2014.08.22 18:03:10 2: XmasTerasseEin -> on
2014.08.22 18:03:10 3: at.XmasTerasseEin: -1
2014.08.22 18:10:00 2: XmasSpeiseEin -> off
2014.08.22 18:10:00 3: at.XmasSpeiseAus: -1
2014.08.22 18:10:00 2: XmasTerasseEin -> off
2014.08.22 18:10:00 3: at.XmasTerasseAus: -1

So wie es aussieht sollten die Steckdosen sowohl ein als auch ausgeschaltet werden - tun sie aber nicht. D.h. die Aussage ist nicht ganz richtig, denn sie werden eingeschaltet aber nichtwieder aus! Und das ist zum Verrückt werden!
Denn die Schalter im Fhem werden korrekt dargestellt: das Lämpchen geht zur richtigen Zeit auf ein und zur richtigen Zeit auch wieder aus. Nur nicht die Steckdosen.

Damit die Fehlersuche aber nicht zu einfach wird: wenn ich die entsprechenden Schalter manuell in der fhem Oberfläche betätige, dann funktioniert alles: sowohl ein als auch aus!

Wenn ich direkt in der Shell des Raspberry bin kann ich ebenfalls mit
/usr/local/bin/send433 11000 2 1
Die Steckdose ein, und mit
/usr/local/bin/send433 11000 2 0
wieder ausschalten. Somit alles perfekt, was Rechte usw. angeht.

Natürlich habe ich auch schon folgendes, aber ebenso ohne Erfolg probiert:


define at.XmasSpeiseMorgenEin at *05:45:00 set AB440R_C on
define at.XmasSpeiseMorgenAus at *08:30:00 set AB440R_C off


Warum will dann fhem nicht von sich aus?

Michael

roli

FHEM auf Debian (RASPI), 2 * CUL868/433 *  FS20 STR, 2 * HMS100 T, 2 * , 1* FS20 SU, 2 *  FS20 SM8, 2 ; 1-wire Temp,i2c Bus; ESP32 WROOM; ESP8266; Arduino
Sonnenbatterie Eco8;Elektro  Nachspeicher-Ofen Ladesteuerung,
Haus Lüftung,
Integration von HardwareAlarmanlag

schucki

Hi,

ich quäle mich auch mit diesem Problem. ich habe jetzt aber einen Ansatz. Probiere mal den Systembefehl als 'sudo' abzusetzen

sudo /opt/rcswitch-pi/./send 11111 1 1

so funzt das jetzt bei mir.
FHEM auf Raspberry Pi Modell B mit Raspbian GNU/Linux 7.6 -> stapelbarer SCC1101 868 Busware
- 4x FHT80b-3 -- 6 FHT8v -- 5x FHT80TF-2
- FS20 AS1  --  FHEMduino auf Arduino NANO