Hallo zusammen,
ich habe einen virtuellen Fhem und das ist mein Haupt-Fhem. Für andere Tätigkeiten und da er so ungesichert wäre läuft ein Fhem auf einem Pi V3. Per Fhem2Fhem schreibt der entfernte Fhem seine Daten auch in den virtuellen Fhem. Soweit alles gut und funktioniert prächtig. Jetzt liest aber mein physischer Fhem per AusleseKopf meinen Zähler ab und sendet desssen Daten auf den virtuellen Fhem. Ansicht funktionirt auch wunderbar jedoch geht kein echodevice auf einen solchen Wert.
Beispiel
mein zähler sagt er brauch 200Watt und das steht auch so im physischen Fhem drinnen und wird schön auf den virtuellen Fhem geschrieben und dort angezeigt.
Soweit so gut. Jetzt habe ich aber ein echodevice auf mein Balkonkraftwerk und das läuft auch wunderbar da Madmax. Also dachte ich mir ist doch einfach das selbe nochmal für meinen Zähler machen und er gibt dann die Werte aus. Denkste er gibt immer an mein Echo-Device den Wert 1 :(
Das ist mein Notify auf dem virtuellen Server:
define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa {my $DimValueHeizung = ReadingsNum("HK_Zaehler", "dim", 0);; # optional, falls du verschiedene dim-Werte nutzen wolltest / dann noch if usw.\
\
my $StromValue = ReadingsNum("\
HK_Zaehler", "power", 1);;\
\
fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");;\
\
fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");;\
\
fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");;}
attr NHK_ZaehlerAlexa room Heizungsraum
# CFGFN
# DEF HK_ZaehlerAlexa {my $DimValueHeizung = ReadingsNum("HK_Zaehler", "dim", 0); # optional, falls du verschiedene dim-Werte nutzen wolltest / dann noch if usw.
#
# my $StromValue = ReadingsNum("
#HK_Zaehler", "power", 1);
#
# fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");
#
# fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");
#
# fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");}
# FUUID 66334a12-f33f-3fd4-5cff-4aa059b626e56724
# NAME NHK_ZaehlerAlexa
# NOTIFYDEV HK_ZaehlerAlexa
# NR 188152
# NTFY_ORDER 50-NHK_ZaehlerAlexa
# REGEXP HK_ZaehlerAlexa
# STATE 2024-05-06 08:37:13
# TRIGGERTIME 1714977433.38729
# TYPE notify
# eventCount 7
# READINGS:
# 2024-05-06 08:36:56 state active
# 2024-05-06 08:37:13 triggeredByDev HK_ZaehlerAlexa
# 2024-05-06 08:37:13 triggeredByEvent 0
#
setstate NHK_ZaehlerAlexa 2024-05-06 08:37:13
setstate NHK_ZaehlerAlexa 2024-05-06 08:36:56 state active
setstate NHK_ZaehlerAlexa 2024-05-06 08:37:13 triggeredByDev HK_ZaehlerAlexa
setstate NHK_ZaehlerAlexa 2024-05-06 08:37:13 triggeredByEvent 0
Das ist das ZählerDevice auf dem virtuellen Server
define HK_Zaehler OBIS /dev/ttyUSB1@9600,7,E,1 SML
attr HK_Zaehler event-min-interval power:60
attr HK_Zaehler interval 300
attr HK_Zaehler room Heizungsraum,Solaranlage
attr HK_Zaehler stateFormat power Watt
# DEF /dev/ttyUSB1@9600,7,E,1 SML
# DeviceName /dev/ttyUSB1@9600,7,E,1
# FUUID 650aa7ed-f33f-3fd4-bd71-324f03e4b9d985d7
# MeterType SML
# NAME HK_Zaehler
# NR 313
# PARTIAL
# STATE 387 Watt
# TYPE OBIS
# eventCount 55528
# READINGS:
# 2024-05-06 12:21:22 1.0.0.2.0.0 501002
# 2024-05-06 12:21:22 1.0.14.7.0.255 50
# 2024-05-06 12:21:22 1.0.81.7.1.255 120
# 2024-05-06 12:21:22 1.0.81.7.15.255 316
# 2024-05-06 12:21:22 1.0.81.7.2.255 240
# 2024-05-06 12:21:22 1.0.81.7.26.255 300
# 2024-05-06 12:21:22 1.0.81.7.4.255 323
# 2024-05-06 12:21:22 1.0.96.1.0.255 HLY
# 2024-05-06 12:21:22 1.0.96.90.2.1 6139
# 2024-05-06 12:21:22 ManufID2 HLY
# 2024-05-06 12:21:22 current_L1 0.64
# 2024-05-06 12:21:22 current_L2 1.26
# 2024-05-06 12:21:22 current_L3 0.43
# 2024-05-06 12:21:22 power 387
# 2024-05-06 12:21:22 power_L1 121
# 2024-05-06 12:21:22 power_L2 213
# 2024-05-06 12:21:22 power_L3 51
# 2024-04-27 17:29:21 state disconnected
# 2024-05-06 12:21:22 total_consumption 1966574.4
# 2024-05-06 12:21:22 total_feed 56969.5
# 2024-05-06 12:21:22 voltage_L1 235.8
# 2024-05-06 12:21:22 voltage_L2 235.6
# 2024-05-06 12:21:22 voltage_L3 235.5
# helper:
# EoM -1
# SPEED 5
# SPEED2 5
# TRIGGERTIME 1714231761.42053
# DEVICES:
#
# 0
#
# RULECACHE:
#
setstate HK_Zaehler 387 Watt
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.0.2.0.0 501002
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.14.7.0.255 50
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.81.7.1.255 120
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.81.7.15.255 316
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.81.7.2.255 240
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.81.7.26.255 300
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.81.7.4.255 323
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.96.1.0.255 HLY
setstate HK_Zaehler 2024-05-06 12:21:22 1.0.96.90.2.1 6139
setstate HK_Zaehler 2024-05-06 12:21:22 ManufID2 HLY
setstate HK_Zaehler 2024-05-06 12:21:22 current_L1 0.64
setstate HK_Zaehler 2024-05-06 12:21:22 current_L2 1.26
setstate HK_Zaehler 2024-05-06 12:21:22 current_L3 0.43
setstate HK_Zaehler 2024-05-06 12:21:22 power 387
setstate HK_Zaehler 2024-05-06 12:21:22 power_L1 121
setstate HK_Zaehler 2024-05-06 12:21:22 power_L2 213
setstate HK_Zaehler 2024-05-06 12:21:22 power_L3 51
setstate HK_Zaehler 2024-04-27 17:29:21 state disconnected
setstate HK_Zaehler 2024-05-06 12:21:22 total_consumption 1966574.4
setstate HK_Zaehler 2024-05-06 12:21:22 total_feed 56969.5
setstate HK_Zaehler 2024-05-06 12:21:22 voltage_L1 235.8
setstate HK_Zaehler 2024-05-06 12:21:22 voltage_L2 235.6
setstate HK_Zaehler 2024-05-06 12:21:22 voltage_L3 235.5
Der Zähler auf dem physischen Device
define HK_Zaehler OBIS /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0035-if00-port0@9600 SML
attr HK_Zaehler event-min-interval .*:300
attr HK_Zaehler interval 300
attr HK_Zaehler room Heizungsraum
attr HK_Zaehler stateFormat power Watt
# CRC_Errors 32872
# DEF /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0035-if00-port0@9600 SML
# DeviceName /dev/serial/by-id/usb-Silicon_Labs_CP2102_USB_to_UART_Bridge_Controller_0035-if00-port0@9600
# FD 11
# FUUID 6470cfda-f33f-c5e3-837d-c046f0d3c61d1b41
# MeterType SML
# NAME HK_Zaehler
# NR 52
# PARTIAL
# STATE 379 Watt
# TYPE OBIS
# eventCount 11508
# READINGS:
# 2024-05-06 12:22:43 1.0.0.2.0.0 501002
# 2024-05-06 12:22:43 1.0.14.7.0.255 50
# 2024-05-06 12:22:43 1.0.81.7.1.255 121
# 2024-05-06 12:22:43 1.0.81.7.15.255 315
# 2024-05-06 12:22:43 1.0.81.7.2.255 239
# 2024-05-06 12:22:43 1.0.81.7.26.255 298
# 2024-05-06 12:22:43 1.0.81.7.4.255 320
# 2024-05-06 12:22:43 1.0.96.1.0.255 HLY
# 2024-05-06 12:22:43 1.0.96.90.2.1 6139
# 2024-05-06 12:22:43 ManufID2 HLY
# 2024-05-06 12:22:43 current_L1 0.64
# 2024-05-06 12:22:43 current_L2 1.25
# 2024-05-06 12:22:43 current_L3 0.44
# 2024-05-06 12:22:43 power 379
# 2024-05-06 12:22:43 power_L1 117
# 2024-05-06 12:22:43 power_L2 211
# 2024-05-06 12:22:43 power_L3 50
# 2024-03-27 09:54:07 state opened
# 2024-05-06 12:22:43 total_consumption 1966583.1
# 2024-05-06 12:22:43 total_feed 56969.5
# 2024-05-06 12:22:43 voltage_L1 235.6
# 2024-05-06 12:22:43 voltage_L2 235.8
# 2024-05-06 12:22:43 voltage_L3 236.2
# helper:
# BUFFER
# DIRECTIONSUM >
# EoM 0
# HLYHACK 1
# LastPacketTime 1714990963.12193
# SPEED 5
# SPEED2 5
# TRIGGERTIME 1711529647.77394
# Channels:
# DEVICES:
#
# 0
#
# RULECACHE:
# 1-0:0.2.0*0 unknown
# 1-0:1.8.0*255 Counter
# 1-0:14.7.0*255 Channels
# 1-0:16.7.0*255 Channels
# 1-0:2.8.0*255 Counter
# 1-0:31.7.0*255 Channels
# 1-0:32.7.0*255 Channels
# 1-0:36.7.0*255 Channels
# 1-0:51.7.0*255 Channels
# 1-0:52.7.0*255 Channels
# 1-0:56.7.0*255 Channels
# 1-0:71.7.0*255 Channels
# 1-0:72.7.0*255 Channels
# 1-0:76.7.0*255 Channels
# 1-0:81.7.1*255 Channels
# 1-0:81.7.15*255 Channels
# 1-0:81.7.2*255 Channels
# 1-0:81.7.26*255 Channels
# 1-0:81.7.4*255 Channels
# 1-0:96.1.0*255 unknown
# 1-0:96.50.1*1 ManufID2
# 1-0:96.90.2*1 unknown
# 255-255:255.255.255*255 unknown
# directions:
#
setstate HK_Zaehler 379 Watt
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.0.2.0.0 501002
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.14.7.0.255 50
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.81.7.1.255 121
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.81.7.15.255 315
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.81.7.2.255 239
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.81.7.26.255 298
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.81.7.4.255 320
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.96.1.0.255 HLY
setstate HK_Zaehler 2024-05-06 12:22:43 1.0.96.90.2.1 6139
setstate HK_Zaehler 2024-05-06 12:22:43 ManufID2 HLY
setstate HK_Zaehler 2024-05-06 12:22:43 current_L1 0.64
setstate HK_Zaehler 2024-05-06 12:22:43 current_L2 1.25
setstate HK_Zaehler 2024-05-06 12:22:43 current_L3 0.44
setstate HK_Zaehler 2024-05-06 12:22:43 power 379
setstate HK_Zaehler 2024-05-06 12:22:43 power_L1 117
setstate HK_Zaehler 2024-05-06 12:22:43 power_L2 211
setstate HK_Zaehler 2024-05-06 12:22:43 power_L3 50
setstate HK_Zaehler 2024-03-27 09:54:07 state opened
setstate HK_Zaehler 2024-05-06 12:22:43 total_consumption 1966583.1
setstate HK_Zaehler 2024-05-06 12:22:43 total_feed 56969.5
setstate HK_Zaehler 2024-05-06 12:22:43 voltage_L1 235.6
setstate HK_Zaehler 2024-05-06 12:22:43 voltage_L2 235.8
setstate HK_Zaehler 2024-05-06 12:22:43 voltage_L3 236.2
das fhem2fhem device
define remoteFhem FHEM2FHEM 192.168.168.27:7072 LOG:.*
attr remoteFhem alias remoteFhem
attr remoteFhem room Heizungsraum,remotefhem
# DEF 192.168.168.27:7072 LOG:.*
# FD 32
# FUUID 6364b8dc-f33f-3fd4-b383-9e17bb4665d848ef
# Host 192.168.168.27:7072
# NAME remoteFhem
# NR 275
# PARTIAL
# STATE connected
# TYPE FHEM2FHEM
# informType LOG
# regexp .*
#
setstate remoteFhem connected
Es sollte eigentlich "power" vom Zähler doch ausgelesen werden, oder sehe ich den Wald vor lauter Bäume nicht mehr?
Zitat von: mrb am 06 Mai 2024, 12:26:58ReadingsNum("\
HK_Zaehler", "power", 1)
Was kommt den bei
{ReadingsNum("HK_Zaehler", "power", 1)}
in der Kommandozeile zurück?
Wenn immer der Wert 1 bei Dir zurückkommt, dann vermute ich hier die Ursache.
Zitat von: mrb am 06 Mai 2024, 12:26:58Denkste er gibt immer an mein Echo-Device den Wert 1
Damit passt Deine Überschrift nicht zum Problem.
Zitat von: rabehd am 06 Mai 2024, 12:43:55Zitat von: mrb am 06 Mai 2024, 12:26:58ReadingsNum("\
HK_Zaehler", "power", 1)
Was kommt den bei
{ReadingsNum("HK_Zaehler", "power", 1)}
in der Kommandozeile zurück?
Wenn immer der Wert 1 bei Dir zurückkommt, dann vermute ich hier die Ursache.
der richtige wert siehe hier
2024-05-06_13h13_36.png2024-05-06_13h14_00.png
Zitat von: rabehd am 06 Mai 2024, 12:45:50Damit passt Deine Überschrift nicht zum Problem.
Und hat mMn auch nichts in diesem Unterforum zu suchen...
Zitat von: mrb am 06 Mai 2024, 12:26:58define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa {my $DimValueHeizung = ReadingsNum("HK_Zaehler", "dim", 0);; # optional, falls du verschiedene dim-Werte nutzen wolltest / dann noch if usw.\
Ich würde halt mal versuchen zu verstehen was mein "URSPRUNGS-CODE" macht und diesen dann so ABSPECKEN, dass er zu DEINER Anwendung passt!
Du nutzt ja kein dim sondern (so ich es aus den anderen Threads im Kopf habe) "nur" einen ein/aus dummy (unnötigerweise eben für jede Routine/Abfrage einen eigenen dummy, das könntest du [so wie ich] durch EINEN dimmer-dummy lösen: egal)...
Daurch wird der Code (für dich) übersichtlicher!
Außerdem ist diese Zeile BEI DIR doch vollkommener "Blödsinn"...
Und wenn schon verbesserN.
Zitat von: mrb am 06 Mai 2024, 12:26:58define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa
Die Regex triggert AUF ALLES was bei HK_ZaehlerAlexa "vorbeikommt".
Du hast bei dir halt "Glück", dass der dummy (verm.) nur von deiner Alexa-Routine getriggert wird...
Gruß, Joachim
Zitat von: rabehd am 06 Mai 2024, 12:45:50Zitat von: mrb am 06 Mai 2024, 12:26:58Denkste er gibt immer an mein Echo-Device den Wert 1
Damit passt Deine Überschrift nicht zum Problem.
was passt dir da nicht? Es geht darum von einem entfernten fhem ein echodevice durchzuführen. gut man hätte auch eine extrem lange Benennung machen können wie "echodevice von einem entfernten fhem das über fhem2fhem seine Daten an einem lokalen fhem liefert und das echodevice soll die Daten des lokalen fhem nutzen" schreiben können, aber soll doch so kurz wie möglich gehalten werden oder ;)
Zitat von: MadMax-FHEM am 06 Mai 2024, 13:17:07Zitat von: rabehd am 06 Mai 2024, 12:45:50Damit passt Deine Überschrift nicht zum Problem.
Und hat mMn auch nichts in diesem Unterforum zu suchen...
Zitat von: mrb am 06 Mai 2024, 12:26:58define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa {my $DimValueHeizung = ReadingsNum("HK_Zaehler", "dim", 0);; # optional, falls du verschiedene dim-Werte nutzen wolltest / dann noch if usw.\
Ich würde halt mal versuchen zu verstehen was mein "URSPRUNGS-CODE" macht und diesen dann so ABSPECKEN, dass er zu DEINER Anwendung passt!
Du nutzt ja kein dim sondern (so ich es aus den anderen Threads im Kopf habe) "nur" einen ein/aus dummy (unnötigerweise eben für jede Routine/Abfrage einen eigenen dummy, das könntest du [so wie ich] durch EINEN dimmer-dummy lösen: egal)...
Daurch wird der Code (für dich) übersichtlicher!
Außerdem ist diese Zeile BEI DIR doch vollkommener "Blödsinn"...
Und wenn schon verbesserN.
Zitat von: mrb am 06 Mai 2024, 12:26:58define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa
Die Regex triggert AUF ALLES was bei HK_ZaehlerAlexa "vorbeikommt".
Du hast bei dir halt "Glück", dass der dummy (verm.) nur von deiner Alexa-Routine getriggert wird...
Gruß, Joachim
japp habe ich auch schon gemacht, es war halt ein copy und paste aus copyforforum zu dem Zeitpunkt ;)
das einzige was ich als überflüssig ansehe ist das hier wenn ich es so verstehe :)
my $DimValueHeizung = ReadingsNum("HK_Zaehler", "dim", 0);; \
und ja es entstammt zum teil aus deinem code madmax da ich gerne mit funktionierendem Code arbeite.
btw:
Zitat von: MadMax-FHEM am 06 Mai 2024, 13:17:07Zitat von: rabehd am 06 Mai 2024, 12:45:50Damit passt Deine Überschrift nicht zum Problem.
Und hat mMn auch nichts in diesem Unterforum zu suchen...
In welchem hätte es dann besser was zu suchen?
Wenn GENAU AUF DEM SYSTEM wo auch dein notify läuft das gezeigt Ergebnis kommt, dann sollte das hier gehen:
define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa {my $StromValue = ReadingsNum("HK_Zaehler", "power", 0);; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt")}
attr NHK_ZaehlerAlexa room Heizungsraum
Vermutlich (besser) auch so:
define NHK_ZaehlerAlexa notify HK_ZaehlerAlexa:on {my $StromValue = ReadingsNum("HK_Zaehler", "power", 0);; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt");; fhem("set ECHO_xxx speak Strom verbrauch ist derzeit $StromValue Watt")}
attr NHK_ZaehlerAlexa room Heizungsraum
EDIT: beide Male RawDef (zumindest so die "Idee" 8) )...
Gruß, Joachim
Zitat von: mrb am 06 Mai 2024, 13:26:34und ja es entstammt zum teil aus deinem code madmax da ich gerne mit funktionierendem Code arbeite.
Mein BEISPIEL! war kein funktionierender Code bzw. und GANZ ANDEREN RAHMENBEDINGUNGEN ;)
Ja, die Zeile ist komplett nutzlos (bei dir) und auch noch "falsch" gecopy/pasted bzw. "abgewandelt"... ;)
Gruß, Joachim
Zitat von: mrb am 06 Mai 2024, 12:26:58das fhem2fhem device
define remoteFhem FHEM2FHEM 192.168.168.27:7072 LOG:.*
attr remoteFhem alias remoteFhem
attr remoteFhem room Heizungsraum,remotefhem
# DEF 192.168.168.27:7072 LOG:.*
# FD 32
# FUUID 6364b8dc-f33f-3fd4-b383-9e17bb4665d848ef
# Host 192.168.168.27:7072
# NAME remoteFhem
# NR 275
# PARTIAL
# STATE connected
# TYPE FHEM2FHEM
# informType LOG
# regexp .*
#
setstate remoteFhem connected
könnte es daran liegen da es LOG und nicht RAW ist?
Zitat von: mrb am 06 Mai 2024, 13:31:06könnte es daran liegen da es LOG und nicht RAW ist?
Wenn die Ausführung des Befehls {ReadingsNum("HK_Zaehler", "power", 1)} auf dem System wo auch das echodevice läuft UND auch der dummy ist, der von der Alexa-Routine getriggert wird: NEIN!
Weil dann wird der Wert ja korrekt ausgelesen!
Dann stimmt am restlichen notify Code etwas nicht!
Gruß, Joachim
ich bin verwirrt. jetzt läuft es und ich suche mir nen ast wo der fehler liegt.....
wo ist da der unterschied?
geht nicht:
HK_ZaehlerAlexa {
my $StromValue = ReadingsNum("
HK_Zaehler", "power", 100);
fhem("set ECHO_G0911W0793360SU7 speak Strom verbrauch ist derzeit $StromValue Watt");
fhem("set ECHO_G0918309033201MV speak Strom verbrauch ist derzeit $StromValue Watt");
fhem("set ECHO_G090VC07844535KU speak Strom verbrauch ist derzeit $StromValue Watt");}
geht:
HK_ZaehlerAlexa {my $StromValue = ReadingsNum("HK_Zaehler", "power", 100);
fhem("set ECHO_G0911W0793360SU7 speak Strom verbrauch ist derzeit $StromValue Watt");
fhem("set ECHO_G0918309033201MV speak Strom verbrauch ist derzeit $StromValue Watt");
fhem("set ECHO_G090VC07844535KU speak Strom verbrauch ist derzeit $StromValue Watt");}
ich denke die [Enter]nach my $StromValue = ReadingsNum("
jupp war es. An so ner kleinigkeit.......