Weder ESA1000WZ-LED noch ESA2000WZ-LED funktionieren

Begonnen von UFinFin, 22 Februar 2013, 23:13:20

Vorheriges Thema - Nächstes Thema

UFinFin

Hallo FHEM Erfahrene,

leider bekommen ich weder den ESA1000WZ-LED noch den später mit Hoffnung auf eine funktionierende Lösung bestellten ESA2000 zu laufen.

Mein Log zeigt keine Ähnlichkeiten zu den in diesem Foren besprochen Mustern. Immer wenn ich einen der beiden Sensor aktivieren, entstehen folgende Einträge im LOG File:

2013.02.22 22:27:20 5: CUL/RAW: A1D5E3830DFFB83877317D02E3B79889AD60F223/09A7676F36BC9F7CF835A20
A1D5E3830DFFB83877317D02E3B79889AD60F22309A7676F36BC9F7CF835A20

2013.02.22 22:27:20 5: CUL_0: A1D5E3830DFFB83877317D02E3B79889AD60F22309A7676F36BC9F7CF835A -58
2013.02.22 22:27:20 5: CUL_0 dispatch A1D5E3830DFFB83877317D02E3B79889AD60F22309A7676F36BC9F7CF835A
2013.02.22 22:27:20 5: Triggering CUL_0 (1 changes)
2013.02.22 22:27:20 5: CUL_0 trigger: Checking Logfile for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking WEB for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking WEBphone for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking WEBtablet for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking autocreate for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking initialUsbCheck for notify
2013.02.22 22:27:20 5: CUL_0 trigger: Checking telnetPort for notify
2013.02.22 22:27:20 5: CUL_0: Unknown code A1D5E3830DFFB83877317D02E3B79889AD60F22309A7676F36BC9F7CF835A, help me!

Leider verändert sich der Unknown (HEX) Code auch nicht :-(

Meine CUL Einstellungen:

CMDS                  BCFiAZEGMRTVWXefmltux
CUL_0_MSGCNT  1367
CUL_0_TIME        2013-02-22 23:03:57
Clients                :FS20:FHT:FHT8V:KS300:USF1000:BS:HMS: :CUL_EM:CUL_WS:CUL_FHTTK:CUL_RFR:CUL_HOERMANN: :ESA2000:CUL_IR:CUL_TX
DEF                      /dev/ttyACM0@38400 1034
DeviceName        /dev/ttyACM0@38400
FD                      11
FHTID                 1034
NAME                 CUL_0
NR                      24
PARTIAL
RAWMSG             A1D5E3830DFFB83877317D02E3B79889AD60F22309A7676F36BC9F7CF835A20
RSSI                    -58
STATE                 Initialized
TYPE                   CUL                    
VERSION             V 1.52 CUL868
initString            X21
ccconf                freq:868.300MHz bWidth:101KHz rAmpl:33dB sens:8dB

Auch ein Umschalten auf  /dev/ttyACM0@9600 1034 bringt keinen Erfolg.

Auszug auf meiner fhem.cfg:


attr global autoload_undefined_devices 1
attr global logfile ./log/fhem-%Y-%m-%d-38400.log
attr global modpath .
attr global motd SecurityCheck:\
\
WEB,WEBphone,WEBtablet has no basicAuth attribute.\
telnetPort has no password/globalpassword attribute.\
\
Restart fhem for a new check if the problem is fixed,\
or set the global attribute motd to none to supress this message.\

attr global statefile ./log/fhem.save
attr global userattr icon webCmd
attr global verbose 5

define telnetPort telnet 7072 global

define WEB FHEMWEB 8083 global

define WEBphone FHEMWEB 8084 global
attr WEBphone smallscreen 1

define WEBtablet FHEMWEB 8085 global
attr WEBtablet touchpad 1

# Fake FileLog entry, to access the fhem log from FHEMWEB
define Logfile FileLog ./log/fhem-%Y-%m-%d-38400.log fakelog

define autocreate autocreate
attr autocreate autosave 1
attr autocreate device_room %TYPE
attr autocreate filelog ./log/%NAME-%Y.log
attr autocreate weblink 1
attr autocreate weblink_room Plots

# Disable this to avoid looking for new USB devices on startup
define initialUsbCheck notify global:INITIALIZED usb create


# If the above notify did not helped, then you probably have to enable some of
# the following lines.  Verify first that /dev/xxx ist correct.

#define FHZ FHZ /dev/USB0
define CUL_0 CUL /dev/ttyACM0@38400 1034
#attr CUL_0 rfmode SlowRF
#attr CUL_0 rfmode HomeMatic
attr CUL_0 loglevel 5

Kann ein erfahrener FHEM User mir helfen? Vielleicht ist es nur eine Kleinigkeit. Sensor und CUL sind im gleichem Hausanschlussraum.

Vielen Danke im voraus

UFinFin

UFinFin

Nachdem ich mehrfach den CUL umgestellt habe, habe ich mittlerweile eine Einstellung gefunden, die den ESA2000WZ-LED empfangen kann. Mal sehen, ob auch der ESA1000WZ-LED funktioniert.

Viele Grüße

UFinFin

Puschel74

Hallo,

könntest du bitte in kurzen Worten erklären was du genau "umgestellt" hast?

Evtl. ist diese Info für andere nicht ganz unnütz ;-)

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.

UFinFin

Gerne gebe ich die Antwort(en):

wieso ich erst jetzt den CUL überreden konnte, ist mir schleierhaft.
Da ich nicht soviel Zeit habe, eine kurze prägnante Beschreibung zu liefern, habe ich eine längere produziert.
Hierzu der Hinweis: Wer dem unten beschriebenen Pfad folgt, sollte wissen, was er tut. Ich habe es gewagt
in meiner Verzweifelung gewagt und es hat funktioniert. Wahrscheinlich gibt es noch andere, vielleicht auch
elegantere Wege. Verbesserungen können ja gepostet werden.

Das Vorgehen, welches bei mir nach Mitternacht zum Erfolg führte, ist:

1) Aufspielen des aktuelle Fritzbox Images "fhem-5.3-fb7390.image", wie im Einsteiger-Tutorial "Heimautomatisierung mit fhem V3.1" beschrieben (siehe S. 38f: "FB7390: fhem-Installation").

2) Anpassung der Konfigurationsdatei "fhem.cfg":

>>> Start: fhem.cfg - Diese Zeile nicht in die Konfigurationdatei übernehmen! <<<
attr global autoload_undefined_devices 1
# Nicht notwendige UFinFin Änderung: Tages - Log - Datei für den Modus 9600 Baud
attr global logfile ./log/fhem-%Y-%m-%d-9600.log
attr global modpath .
attr global motd SecurityCheck:\
\
WEB,WEBphone,WEBtablet has no basicAuth attribute.\
telnetPort has no password/globalpassword attribute.\
\
Restart fhem for a new check if the problem is fixed,\
or set the global attribute motd to none to supress this message.\

attr global statefile ./log/fhem.save
attr global userattr icon webCmd
attr global verbose 5

define telnetPort telnet 7072 global

define WEB FHEMWEB 8083 global

define WEBphone FHEMWEB 8084 global
attr WEBphone smallscreen 1

define WEBtablet FHEMWEB 8085 global
attr WEBtablet touchpad 1

# Fake FileLog entry, to access the fhem log from FHEMWEB. Dito nicht notwendige UFinFin Änderung: Tages - Log - Datei für den Modus 9600 Baud
define Logfile FileLog ./log/fhem-%Y-%m-%d-9600.log fakelog

define autocreate autocreate
attr autocreate autosave 1
attr autocreate device_room %TYPE
attr autocreate filelog ./log/%NAME-%Y.log
attr autocreate weblink 1
attr autocreate weblink_room Plots

# Disable this to avoid looking for new USB devices on startup
define initialUsbCheck notify global:INITIALIZED usb create

# If the above notify did not helped, then you probably have to enable some of
# the following lines.  Verify first that /dev/xxx ist correct.

# WICHTIG: Der CUL muss mit 9600 Baud seine Daten austauschen!
define CUL_0 CUL /dev/ttyACM0@9600 1034
attr CUL_0 loglevel 5
# Wahrscheinlich nicht notwendig, weil dieser Modus der DEFAULT Modus des CUL ist, aber sicher ist sicher ...
attr CUL_0 rfmode SlowRF

# Falls der CUL die Daten des ESA2000 empfängt, bekommt er hier gleich den richtigen CODE geliefert.
# Notwendiger Nebeneffekt: Die für ESA wichtige Datei '64_ESA2000.pm' wird mit Start des FHEM gleich mit geladen.
define ESA2000_011e  ESA2000 011e
>>> Stop: fhem.cfg - Diese Zeile nicht in die Konfigurationdatei übernehmen! <<<

3. Nach einem "shutdown restart", welches im Web-Frontend von FHEM (bei mir "http://fritz.box:8083/fhem")
im oben aufzufindenen Eingabefeld einzugeben und mit einem "RETURN" der Tastatur abzuschließen ist, startet der FHEM mit neuer Konfig-Datei.

4. Der CUL hat jetzt den folgenden Status, der über die Web-Seite des FHEM über "Everything"->"CUL"-> <Cul-Name> abgerufen werden kann.

>>> CUL - Start <<<
CMDS                     BCFiAZEGMRTVWXefmltux
CUL_0_MSGCNT     27
CUL_0_TIME           2013-02-24 22:51:12
Clients                   :FS20:FHT:FHT8V:KS300:USF1000:BS:HMS: :CUL_EM:CUL_WS:CUL_FHTTK:CUL_RFR:CUL_HOERMANN: :ESA2000:CUL_IR:CUL_TX
DEF                         /dev/ttyACM0@9600 1034
DeviceName           /dev/ttyACM0@9600
FD                          12
FHTID                     1034
NAME                     CUL_0
NR                          24
PARTIAL                  
RAWMSG                 S0863A1011E00004A2B0086000000038B6F
RSSI                        -18.5
STATE                    Initialized
TYPE                      CUL
VERSION                 V 1.52 CUL868
initString                X21

ccconf                    freq:868.300MHz bWidth:101KHz rAmpl:33dB sens:8dB
>>> CUL - Stop <<<

5. Mit einwenig Glück und einem funktionstüchtigen ESA2000-LED erscheinen ab jetzt im Log-File die ersten ESA2000 Einträge:

>>> START Auszug aus dem LOG-File, welches über FHEM-Webfrontend->Everything->FileLog: 'Jeweilige Log-File' erreicht werden kann <<<

...

2013.02.24 01:07:52 5: CUL/RAW: /S8563A1011E000000B90023000000038B4A

2013.02.24 01:07:52 5: CUL_0: S8563A1011E000000B90023000000038B -37
2013.02.24 01:07:52 5: CUL_0 dispatch S8563A1011E000000B90023000000038B
2013.02.24 01:07:52 5: ESA2000 msg s8563a1011e000000b90023000000038b
2013.02.24 01:07:52 5: ESA2000 seq 85
2013.02.24 01:07:52 5: ESA2000 device 011e
2013.02.24 01:07:52 5: ESA2000 code 63a1      # Achtung: Diesen CODE kennt FHEM noch nicht. Ggf. steht bei Ihnen hier ein anderer CODE!
2013.02.24 01:07:52 3: ESA2000 Device 011e (Unknown type: )

...

>>> STOP Auszug aus dem LOG-File, welches über FHEM-Webfrontend->Everything->FileLog: 'Jeweilige Log-File' erreicht werden kann <<<

6. Jetzt stellt der unbekannte Code ein Problem dar. Dieser wird in der Fehlermeldung als "Unknown type" gemeldet.
Um diese Fehlermeldung zu beheben, ist hier die Datei "64_ESA2000.pm" der Fritzbox-FHEM-Installation zu ändern.
Mein Vorgehen:

6.a) Telnet auf der Fritzbox per DECT Telefon via #96*7* freischalten.
6.b) Terminal-Anwendung auf Windows/Mac starten. Ich arbeite mit einem Mac, also die Terminalanwendung gestartet ...
6.c) Der Telnet auf die Fritzbox einloggen: "telnet fritz.box", dann das Passwort der Fritzbox eingeben ...
6.d)  Per "cd /var/mediapath/fhem/FHEM" ins FHEM wechseln. Dieser Pfad gilt für das Image V5.3 und die FB7390 ...
6.e) Per "vi 64_ESA2000.pm" die Datei editieren (siehe "http://de.wikipedia.org/wiki/Vi"):

Das Konstrukt (in Perl ein assoziatives Feld %codes) ab Zeile 14 ...

my %codes = (                                                
  "19fa" => "ESA2000_LED",                                            
);                                                                    
 
... ist um eine Zeile mit dem neuen Code - in meinem Fall "63a1" zu erweitern:

my %codes = (                                                
  "19fa" => "ESA2000_LED",                                            
  "63a1" => "ESA2000_LED", # HINWEIS: Steht im Logfile hinter 'ESA2000 code' ein anderer Wert, so ist er hier einzutragen.
);                                                                    
 
Jetzt nicht vergessen über ESC, ":wq" die Datei aus dem vi abzuspeichern und selbigen zu verlassen.

7. Nach einem "shutdown restart", welches im Web-Frontend von FHEM (bei mir "http://fritz.box:8083/fhem")
im oben aufzufindenen Eingabefeld einzugeben und mit einem "RETURN" der Tastatur abzuschließen ist, startet der FHEM mit neuer Konfig-Datei und neuer "64_ESA2000.pm".

8. Wenn alles richtig läuft, dürften im Log-File keine Fehler mehr auflaufen und das Log-File des "ESA2000" füllt sich mit Daten.

Damit ist der Sensor eingerichtet. Also viel Spass beim Beobachten des Stromverbrauchs / Einspeisung ...

Viele Grüße

UFinFin

UFinFin

Als kleine sicherlich noch nicht perfekte Ergänzung zur "Visualisierung" der Daten des ESA2000, hier ein Plot-File:

>>> START on 'myStromPower4.gplot' <<<
############################
# Display the power reported by the ESA2000

set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "

set title '<L1>'
set y2label "Aktuell (kW)"
set ylabel "Tag (kWh)"
set grid
set ytics
set y2tics
set format y "%.1f"
set format y2 "%.1f"

#FileLog 4:actual_kwh:0:
#FileLog 4:day_kwh:0:

plot \
  "< awk '/actual_kwh:/{print $1, $5}' <IN>"\
     using 1:2 axes x1y2 smooth csplines title 'Aktuell (kW)' with lines lw 2, \
  "< awk '/day_kwh:{print $1, $5}' <IN>"\
     using 1:2 axes x1y1 smooth csplines title 'Tag (kWh)' with lines

>>> STOP on 'myStromPower4.gplot' <<<

Damit dieser Plot in der WEB-Oberfläche erscheint, ist noch die 'fhem.cfg' anzupassen.
In meinem Fall sieht das so aus:

...
define ESA2000_011e  ESA2000 011e
attr ESA2000_011e room ESA2000
define FileLog_ESA2000_011e FileLog ./log/ESA2000_011e-%Y.log ESA2000_011e

# Diese Zeile ist um 'myStromPower4:Plot,' zu ergänzen:
attr FileLog_ESA2000_011e logtype myStromPower4:Plot,text

attr FileLog_ESA2000_011e room ESA2000
...

Viel Spaß mit diesem Plot wünscht

UFinFin