ELRO Funksteckdosen logisch in bestehendes FS20 System einbinden

Begonnen von sTaN, 25 Februar 2013, 22:15:01

Vorheriges Thema - Nächstes Thema

sTaN

Hallo Fhem'ler,

auch wenn ich mich schon kaum traue einen erneuten Thread aufzumachen und wieder zu fragen, würde mich grundlegend folgendes interessieren:

Ich möchte meine noch vorhandenen ELRO 440S Funksteckdosen mit einbinden. Das ist ja prima im Wiki-Eintrag beschrieben.
Was ich mich frage, welchen Hauscode man sinnvoller weise wählt, wenn dieser mit FS20 zum Beispiel a3a3 lautet. Dieser kann mit Intertechno ja nicht abgedeckt werden. Das ist doch aber eigentlich egal, oder?
Gibt es Nachteile, die später auffallen könnten? Im Prinzip muss der Hauscode ja nur bei den ELRO's identisch sein.

Gruß
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Zrrronggg!

Das ist Schnuppe. Die beiden System haben nix miteinander zu tun. Da kannst du wählen was du willst, das beinflusst sich nicht.

ZitatIm Prinzip muss der Hauscode ja nur bei den ELRO's identisch sein.
Noch nicht mal das eigentlich. Unter einem System wie FHEM ist der Hauscode im Grunde nichts anderes als eine Bestandteil der Adresse eines Gerätes. Solange du die ELRO Teile ncicht mit einer Intertechno/ELRO Fernbedienung ansteuern willst, sondern immer über FHEM, könntest du z.b. jeder Dose die selbe Adresse aber einen anderen Hauscode geben.

Nur am Rande:
Zitatwenn dieser mit FS20 zum Beispiel a3a3 lautet

Ich empfehle ja immer, den FS20 Hauscode in ELV Notation anzugeben. FHEM kann das und man weiss dann - wenn man mal ein FS20 Gerät programieren will - immer sofort, welche Tasten man da drücken muss.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

sTaN

Zitat von: Zrrronggg! schrieb am Di, 26 Februar 2013 00:22Ich empfehle ja immer, den FS20 Hauscode in ELV Notation anzugeben. FHEM kann das und man weiss dann - wenn man mal ein FS20 Gerät programieren will - immer sofort, welche Tasten man da drücken muss.

Alles klar, super. Auch mal gut zu wissen. Der Wiki-Eintrag beschreibt dies zwar, aber mir war der Zusammenhang noch nicht klar.
Dachte immer genau andersherum ist es besser. Werde das entsprechend in der fhem.cfg mal anpassen. Eine einfach Änderung im define von a3a3 auf 3314 3314 sollte ja ausreichend sein?

EDIT: Ich habe mir nämlich extra eine Excel-Tabelle angelegt, mit dem FS20-Hauscode und ELV Notation. Dann kann ich mir die sparen. ;-)

Vielen Dank für die aussagekräftigen Infos!
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Zrrronggg!

ZitatEine einfach Änderung im define von a3a3 auf 3314 3314 sollte ja ausreichend sein
?

Äh... wenn a3a3 33143314 ist ja.  Aber ohne Leerzeichen zwischen den Zahlen bitte.

Habe Wikiartikel leicht angepasst.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

sTaN

Ja ohne Leerzeichen. Danke!
Hatte nur gefragt, weil er ja über das autocreate nicht die ELV Notation übernimmt, sondern den HEX-Code.
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Zrrronggg!

Hmja.

Ich gehe sogar soweit, das Autocreate bei FS20 eigentlich eher überflüssig ist. Ich tippe die Daten doch schneller in die config per Hand.
Immerhn muss ich die Adresse ja vorher in den Sender und so festlegen, die weiss ich also und kann sie einfach Eintragen.

Bei HM ist das was anderes.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Hallo,

(einmisch)
Ich bin zu faul die ganzen Daten per Hand einzutragen.
Das define des Device ging ja noch aber weblink und logfile sind mir dann doch zu viel ;-)
Von daher finde ich autocreate gar nicht so schlecht - auch bei FS20.
Das schöne ist, das man es einfach deaktivieren kann wenn man es nicht braucht.

Aber wie Zrrronggg! schon geschrieben hat.
Der "Hauscode" bei FS20 ist in fhem eigentlich mehr ein Devicecode.
Und den kannst du bei jedem Device durchaus ändern.
Nur macht das in Hinblick auf Fernbedienungen keinen Sinn.
Eine FS20-Fernbedienung kann, soweit ist weiß, eh nur einen Hauscode verwalten.
Wie es mit dem IR-Programmer aussieht weiß ich nicht.
Evtl. kann man mit diesem jeder Taste auch einen eigenen Hauscode zuweisen.
Muss ich mal schauen - aber wir schweifen ab.
Sorry für OT.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Zrrronggg!

Zitat von: Puschel74 schrieb am Di, 26 Februar 2013 19:50Hallo,

(einmisch)
Ich bin zu faul die ganzen Daten per Hand einzutragen.
Das define des Device ging ja noch aber weblink und logfile sind mir dann doch zu viel ;-)

Grüße

Copy/Paste von einem ähnlichen schon vorhanden Device und dann Adresse und Weblink nummer eintragen?
Ich garantiere dir, das ich da doppelt so schnell bin, hinter weniger Kram in der Config habe den ich nicht brauche (Devicetype und so) und mein configfile auch nicht "deformatiert" wird, wie autocreate es nach safes gerne mal macht. Und Loglevel eintragen etc brauchst du ja nur, wenn es nicht der default sein soll.

Aber wie dem auch sei, das kann ja jeder halten wie er will.




FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Hallo,

Zitat... hinter weniger Kram in der Config habe den ich nicht brauche (Devicetype und so) und mein configfile auch nicht "deformatiert" wird, wie autocreate es nach safes gerne mal macht.

Ok. Das ist natürlich ein Argument.
Das wusste ich noch nicht, danke dir Zrrronggg!

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

sTaN

Ich greife mal meinen alten Thread auf. Der ist schon in Vergessenheit geraten.
Habe im Moment meine ELRO Funksteckdosen mehr oder weniger problematisch (siehe dieser Thread) eingebunden. Nun möchte ich gern die Steckdosen über meine FS20-Fernbedienung steuern.
Wie spreche ich denn die ELROS jetzt mit meiner FS20-FB richtig an?

Beispiel:
define ELRO_10101_A IT 0F0F00FFFF FF F0
attr ELRO_10101_A IODev CUL1
attr ELRO_10101_A alias Nachttisch Lampen
attr ELRO_10101_A model itswitch
attr ELRO_10101_A room Schlafzimmer


Die Nachttisch Lampen sollen nun über die FS20-FB-Taste geschaltet werden:
define Nachttisch FS20 33143314 3343
attr Nachttisch room Schlafzimmer
define FileLog_Nachttisch FileLog ./log/Nachttisch-%Y.log Nachttisch
attr FileLog_Nachttisch logtype text
attr FileLog_Nachttisch room FS20


Funktioniert das überhaupt? Oder muss ich an der Stelle mit Dummy's arbeiten. Mein FS20-S4A Schalter soll ebenfalls zwei ELROS in der Küche togglen. Aber eins nach dem anderen.

Gruß
sTaN
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Zrrronggg!

ZitatDie Nachttisch Lampen sollen nun über die FS20-FB-Taste geschaltet werden:

Bisschen ungenau als Anforderung. Eine FS20 FB hat je Kanal ZWEI Tasten, idR. eine für on eine für off. Es lassen sich aber auch viele andere Kommandos konfigurieren, wie on-for-timer, die zum schalten einer  IT Dose eher nichts bringen. Es ist aber auch möglich die bei doppelter Kanalanzahl mit nur einem Taster je Kanal zu konfigurieren, dann sendet der Taster eine toggle.

Mal angenommen du machst es über die beiden Tasten und diese sind auf ON und OFF programiert, dann ginge z.B. dies:

define Nachttischlampen_schalten notify Nachttisch  { if ("%" ne "off") { fhem("set ELRO_10101_A on ")} else { fhem("set ELRO_10101_A off ")} }


Es gibt noch viele im Detail andere Wege. Der Weg oben ist sogar schon ein bisschen komplexer, weil er dafür sorgt, das auch "on-for-timer", "on-old" und ähnlicher Kram den man vielleicht unwissentlich in der FS20 FB einkonfiguriert hat, die Lampen trotzdem anschalten.  Nur zum Auscshalen MUSS der Auschaltbefehel  der FB "off" sein.

Möglich wäre auch dies:

define Nachttischlampen_ANschalten notify Nachttisch:on.* set ELRO_10101_A on
define Nachttischlampen_AUSschalten notify Nachttisch:off.* set ELRO_10101_A off




 IT Dosen "ELRO_10101_A" zu nennen, finde ich übrigens unpraktisch. Warum nennst du die nicht "IT_Nachttisch" oder so. Ist nach Jahren mal einfacher zu lesen.

ZitatFunktioniert das überhaupt?

Aber klar, das ist einer der Kernmerkmale von FHEM.

ZitatOder muss ich an der Stelle mit Dummy's arbeiten.

Nö.

ZitatMein FS20-S4A Schalter soll ebenfalls zwei ELROS in der Küche togglen.

Kein Problem. Wenns konkret wird nicht vergessen zu erwähnen, die der FS20-S4A konfiguriert ist, siehe oben.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

sTaN

Dank Dir Zrrronggg!
Hatte sogar noch einen alten Thread von dir gefunden (*peinlich*).
Ehrlich gesagt muss ich mir einfach wieder ein wenig mehr Zeit dafür nehmen...So schwer ist es ja dann doch nicht.

Aber die ersten Versuche die Nachttischlampen zu schalten haben super funktioniert:

define Nachtlampen_schalten notify Nachttisch  { if ("%" eq "on") { fhem("set ELRO_10101_A on") }  else { fhem("set ELRO_10101_A off") }}

Auch das togglen eines Küchengerätes. Allerdings funktioniert es nicht, wenn ich beide Funksteckdosen aus der Küche mit reinnehmen möchte. Habe bald so das Gefühl, dass bei zwei ELROS immer Probleme gibt:
Folgendes habe ich versucht:

define ELRO_10001_A IT 0FFF00FFFF 01 10
attr ELRO_10001_A IODev CUL1
attr ELRO_10001_A alias Grill
attr ELRO_10001_A model itswitch
attr ELRO_10001_A room Küche
define ELRO_10001_B IT 0FFF0F0FFF 01 10
attr ELRO_10001_B IODev CUL1
attr ELRO_10001_B alias Kaffee
attr ELRO_10001_B model itswitch
attr ELRO_10001_B room Küche

define Kuechengeraete_S4A FS20 a3a3 01
attr Kuechengeraete_S4A room FS20
#Alle Küchengeräte schalten
define Strom_Kuechengeraete notify Kuechengeraete_S4A  { if (Value("ELRO_10001_A" && "ELRO_10001_B") eq "off") { fhem("set ELRO_10001_A on" && "set ELRO_10001_B on") }  else { fhem("set ELRO_10001_A off" && "set ELRO_10001_B off") }}


Bei dem Code schaltet er mir jetzt nur die Kaffeemaschinen aber nicht den Grill/Toaster. Ohne && "ELRO_10001_B" schaltet er aber den Grill.
Die Namenskonventionen werde ich noch anpassen.

Gruß und danke schon mal
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover

Zrrronggg!

Zitat{ fhem("set ELRO_10001_A on" && "set ELRO_10001_B on") }

LOL  (tschuldigung)

So geht das auch nicht. Das die LERO Dosen da nicht ganz das machen was du willst wunder mich nicht, hat aber nix mit den Dosen zu tun.

Aber so:

{ fhem("set ELRO_10001_A on ;; set ELRO_10001_B on") }

oder sogar so

{ fhem("set ELRO_10001_A,ELRO_10001_B on") }




Und dies hier:

 { if (Value("ELRO_10001_A" && "ELRO_10001_B") eq "off")

geht glaube ich auch nicht. Das müsste eher

{ if (Value("ELRO_10001_A") eq "off" &&  (Value("ELRO_10001_B") eq "off")[/code]
heissen.

Ausserdem habe ich den Verdacht, dass das ganze nicht das machst was du willst.
code] { if (Value("ELRO_10001_A") eq "off" &&  (Value("ELRO_10001_B") eq "off")[/code][/code]
Führt dazu, dass die beiden Steckdosen eingeschaltet werden, wenn vorher beide AUS sind.
Wenn beide AN sind, werden sie beide ausgeschaltet.  Sie werden aber auch beide auscgeschaltet, wenn nur *eine* AN ist.

Ist es dass was du willst?

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Zrrronggg!

Nochmal zur Eräuterung:



define blubber notify bla  { if laber { fhem(" dings ") }  }

ist eine MISCHUNG aus Perl und Fhem Kommandos.

Da wir uns in FHEM befinden sind  ohne weiteres erstmal alles Fhem-Kommandos:

"define blubber notify bla" ist Fhem

Nun willst du aber was machen, was Fehem nicht kann, nämlich "if" verwenden.

Trick ist also: sich an Perl direkt wenden, Perl kann nämlich "if ...else" und noch andere nette Sachen. Allerdings is Perl ne andere Sprache mit anderen Regeln und Kommandos. "&&" für und, || für oder sind Perl-Sachen, Fhem kennt die nicht.

Erstmal  muss man Fhem sagen: Du pass ma auf, was jetzt kommt, geht dich nix an, bitte an Perl weiterreichen.

dasmacht mit der geöffneten geschweiften Klammer:

{

Danach ist man quasi in Perl und kann nun Perl Kommandos weitergeben: if .... && ....

Aber irgendwann will man als Konsequenz aus of else && etc ja mal wieder einen Fhem Aktor schalten. Also muss man nun wiederum Perl sagen: Du pass ma auf, was jetzt kommt ist für Fhem, da hast du nix mit zu tun.

Das macht man so:

 { fhem("  ") }

Alles was innerhalb der Anführungstriche ist, ist Fhem.

Und Fehm kennt keine "&&" oder sowas. Fhem kennt Sachen wie:

set Lamp1 on ; set Lamp5 off ; set PumpA on  -> Lampe 3 und PumpeA einschalten, Lampe5 auschalten

Und auch:

set Lamp1,Lamp2,Lamp3 on  ->  (alle 3 Lampen zugleich einschalten)

Jetzt muss man nur noch eine Sache wissen;  Das Semikolon, dass man in Fhem benutzt um mehrer Befehele abzutrennen muss man VERDOPPELN, wenn man es innerhalb Perl benutzt.

Aus set Lamp1 on ; set Lamp5 off ; set PumpA on wird also


{ fhem(" set Lamp1 on ;; set Lamp5 off ;: set PumpA on") }

Also:

(siehe Anhang / see attachement)

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

sTaN

Ach herje. Da hab ich bei der Syntax aber ordentlich was durcheinander gehauen. Jetzt funktioniert es!

Zitat von: Zrrronggg! schrieb am So, 08 September 2013 19:55Ausserdem habe ich den Verdacht, dass das ganze nicht das machst was du willst.
{ if (Value("ELRO_10001_A") eq "off" &&  (Value("ELRO_10001_B") eq "off")[/code]
Führt dazu, dass die beiden Steckdosen eingeschaltet werden, wenn vorher beide AUS sind.
Wenn beide AN sind, werden sie beide ausgeschaltet.  Sie werden aber auch beide auscgeschaltet, wenn nur *eine* AN ist.

Ist es dass was du willst?


Ja das ist genau was ich wünsche. Auf dem S4A-Schalter soll sozusagen ein Master-Strom an/aus existieren, welcher beides an und aus schaltet. Gleiches auf der FS20 Fernbedienung. Einzeln soll man die Küchengeräte dann über iPhone/iPad/Web-Oberfläche und mit der ELRO Fernbedienung schalten können. Problem bei der Elro Fernbedienung ist allerdings, dass mir dann nicht der aktuelle Status in FHEM angezeigt wird. Glaub da gabs aber auch einen Mod, um die Fernbedienung umzubauen.

Dank Dir für die super Hilfe!
Raspberry Pi 3
2 x CUL CC1101-USB-Lite 868MHz
FS20 Komponenten, Philips HUE, Alexa-Fhem, MAX! Geräte, homebridge, harmony, Unifi, FirtzBox, MQTT, Aurora, Denon, Sonos, TabletUI, CALENDAR, EGPM2LAN, Pushover