FHEM unter Windows, Luxtronix1, Netzwerk->seriell Konverter

Begonnen von ChristianK., 09 September 2015, 19:04:17

Vorheriges Thema - Nächstes Thema

ChristianK.

Ich habe im Thread WP-Steuerung Luxtronik 1 auslesen (http://forum.fhem.de/index.php/topic,29740.0.html)
schon einmal geschrieben, aber leider keine Antwort mehr erhalten, daher mal ein neuer Thread...

Ich habe für diese Anwendung FHEM unter Windows laufen, und versuche auf die Luxtronic 1 per Netzwerk2Seriell-Konverter zuzugreifen.
Dies scheint auch zu funktionieren, aber die "Auswertung" wie in o.g. Thread beschrieben greift wohl erstmal ins leere.

Nachfolgend mal der LOG-Auszug...

2015.07.28 09:02:14 5: ECMDDevice: Analyze command >{"1100\r"}<
2015.07.28 09:02:14 5: MyWP: sending command "1100\r"
2015.07.28 09:02:14 5: MyWP: write "1100\r", expect 1100\r\n1100.*\r\n
2015.07.28 09:02:14 5: SW: 313130300d
2015.07.28 09:02:14 2: MyWP: first attempt to read timed out, trying to close and open the device.
2015.07.28 09:02:14 3: Opening MyWP device COM2
2015.07.28 09:02:14 3: Setting MyWP serial parameters to 9600,8,N,1
2015.07.28 09:02:14 3: MyWP device opened
2015.07.28 09:02:14 5: SW: 313130300d
2015.07.28 09:02:15 2: MyWP: second attempt to read timed out, this is an unrecoverable error.
2015.07.28 09:02:20 1: MyWP: no answer received (wrote "1100\r", expected 1100\r\n1100.*\r\n)
2015.07.28 09:02:20 5: MyWP: received answer ""
2015.07.28 09:02:20 5: Postprocessing "" with perl command {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}.
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[2] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[3] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[4] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[5] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[6] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[7] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[8] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[9] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[10] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[11] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 1: PERL WARNING: Use of uninitialized value $temperature[12] in division (/) at (eval 27) line 1.
2015.07.28 09:02:20 3: eval: {my $a = substr($_, 0);my $hash = $defs{MyWPdev};my @temperature = split "[ \;]+", $a;readingsSingleUpdate($hash, "PCount", $temperature[1], 1);readingsSingleUpdate($hash, "TVorl", $temperature[2] / 10, 1);readingsSingleUpdate($hash, "TRueI", $temperature[3] / 10, 1);readingsSingleUpdate($hash, "TRueS", $temperature[4] / 10, 1);readingsSingleUpdate($hash, "THeGa", $temperature[5] / 10, 1);readingsSingleUpdate($hash, "TAuss", $temperature[6] / 10, 1);readingsSingleUpdate($hash, "TBWIs", $temperature[7] / 10, 1);readingsSingleUpdate($hash, "TBWSo", $temperature[8] / 10, 1);readingsSingleUpdate($hash, "TWQEi", $temperature[9] / 10, 1);readingsSingleUpdate($hash, "TWQAu", $temperature[10] / 10, 1);readingsSingleUpdate($hash, "TM1Vo", $temperature[11] / 10, 1);readingsSingleUpdate($hash, "TM1So", $temperature[12] / 10, 1);readingsSingleUpdate($hash, "Ready", "OK", 1);}
2015.07.28 09:02:20 5: Postprocessed value is "Ready: OK".
2015.07.28 09:02:20 5: MyWP: read "5\r\n1100\r\n1100;12;260;322;205;318;194;454;480;178;188;297;232;5\r\n"
2015.07.28 09:02:20 5: MyWP: Spontaneously received "5\r\n1100\r\n1100;12;260;322;205;318;194;454;480;178;188;297;232;5\r\n"
2015.07.28 09:02:20 5: MyWP dispatch 5

1100

1100;12;260;322;205;318;194;454;480;178;188;297;232;5


Hat hier vielleicht jemand einen Ansatz für mich?

Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Prof. Dr. Peter Henning

Klar doch: Erstens gibt es keine Antwort. Zweitens kommt die auswertende Routine nicht mit dem empfangenen Leerstring klar.

Erst einmal manuell per telnet dieselben Kommandos absetzen, schauen ob das klappt. Ggf. Interface ändern/reparieren.
Rückgabe analysieren.
Dann die ECMD classdef anpassen, ebenso die Auswerteroutine.

LG

pah

ChristianK.

Per einfachem Telnet, funktioniert es... und... die Antwort (nach 2015.07.28 09:02:20 5: Postprocessed value is "Ready: OK".) kommt:

2015.07.28 09:02:20 5: Postprocessed value is "Ready: OK".
2015.07.28 09:02:20 5: MyWP: read "5\r\n1100\r\n1100;12;260;322;205;318;194;454;480;178;188;297;232;5\r\n"
2015.07.28 09:02:20 5: MyWP: Spontaneously received "5\r\n1100\r\n1100;12;260;322;205;318;194;454;480;178;188;297;232;5\r\n"
2015.07.28 09:02:20 5: MyWP dispatch 5

1100

1100;12;260;322;205;318;194;454;480;178;188;297;232;5


FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Prof. Dr. Peter Henning

Ja, und ? Das sind die Datenwerte, und da "greift nichts ins Leere", sondern die werden ordentlich weitergeleitet.

LG

pah

ChristianK.

Genau da liegt ja mein Problem... die Datenwerte sollten eigentlich oben drüber durch das
Postprocessing durch... aber da gibt es vorher ja ein Problem, welches ich nicht diagnostizieren/beseitigen kann...
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

#5
Hallo Christian,
ich habe mir mitlerweile aus den existierenden Modulen ein eigenes zusammengstrickt um meine WP abzufragen. Dieses greift auch über Telnet auf die WP zu. Du kannst es ja mal ausprobieren. Allerdings ist noch nicht alles rihtig. Gerade was die Afrage der Systemeinstellungen betrifft. Aber mit den Temperaturen klappt es gut.

define MyWP LUXTRONIK1 wp:1002
attr   MyWP verbose 1
attr   MyWP event-min-interval WP_AUS.*:1800,WP_EIN.*:1800,T.*:900,WP_DATA.*:3600,WP_DATA:900
attr   MyWP event-on-change-reading T.*,WP_AUS_.*,WP_EIN_.*,WP_INFO_Zustand.*,WP_T_AS1,WP_DATA,WP_DATA_COP
attr   MyWP heatPumpElectricalPowerWatt 2200
attr   MyWP heatPumpElectricalPowerFactor 0.02
attr   MyWP heatRodElectricalPowerWatt 6000
attr   MyWP heatPumpHeatingFlowRate 1200
attr   MyWP reduceIntervalOnDuty 1
#attr   MyWP disable 1

Eine Doku habe ich allerdings noch nicht. Definition des Devices siehe Code oben. Statt 'wp' geht sicher auch die IP direkt. Hinter den Doppelpunkten steht der Port.


Gruß


Bernd

[/code]
FHEM auf BananaPi

ChristianK.

Hallo Bernd,

ich greife Seriell, per COM2 darauf zu... Wenn Ich deine Definition nutze,
hagelt es fehlerchen... :-/
Error messages while initializing FHEM:
configfile: ECMDDevice MyWPdev error: no I/O device.statefile: Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first


Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Zitat von: ChristianK. am 13 September 2015, 11:08:00
Hallo Bernd,

ich greife Seriell, per COM2 darauf zu... Wenn Ich deine Definition nutze,
hagelt es fehlerchen... :-/
Error messages while initializing FHEM:
configfile: ECMDDevice MyWPdev error: no I/O device.statefile: Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first
Please define MyWPdev first


Grüße

Christian
Ist der Port denn auch frei und wird nicht noch von ECMD blockiert?
Ich habe neben der Device Definition keine weitere Definitionen bzgl. einer Kommunikation mit der WP. Ich verwende auch einen COM-LAN Adapter.

Gruß

Bernd

▶ Zitierte

FHEM auf BananaPi

ChristianK.

#8
Hi Bernd,

so... nu ist das Modul drin, bekomme aber Fehler wenn ich Daten abfragen möchte...
Fehler bei aktuallisierung (Aktuelle_Betriebsdaten) - bitte wiederholen.
2015.09.13 11:59:49 5: LUXTRONIK1 MyWP: UpdateTimer.614 Start data harvesting
2015.09.13 11:59:53 5: LUXTRONIK1 MyWP: Get.509 Abfrage_WP_Daten
2015.09.13 11:59:53 5: LUXTRONIK1 MyWP: TransmitData2.771 Code: 1800
2015.09.13 11:59:53 5: SW: 313830300d
2015.09.13 11:59:54 5: LUXTRONIK1 MyWP: TransmitData2.811 Result:
2015.09.13 11:59:54 5: LUXTRONIK1 MyWP: CheckData.831 1800 -
2015.09.13 11:59:54 2: LUXTRONIK1 MyWP: CheckData.834 WP data NOK (empty)


Ich glaube, das es hier ein Problem mit der Seriellen Verbindung zu FHEM zu tun hat... :-(
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Zitat von: ChristianK. am 13 September 2015, 11:54:22
Hi Bernd,

so... nu ist das Modul drin, bekomme aber Fehler wenn ich Daten abfragen möchte...
Fehler bei aktuallisierung (Aktuelle_Betriebsdaten) - bitte wiederholen.
2015.09.13 11:59:49 5: LUXTRONIK1 MyWP: UpdateTimer.614 Start data harvesting
2015.09.13 11:59:53 5: LUXTRONIK1 MyWP: Get.509 Abfrage_WP_Daten
2015.09.13 11:59:53 5: LUXTRONIK1 MyWP: TransmitData2.771 Code: 1800
2015.09.13 11:59:53 5: SW: 313830300d
2015.09.13 11:59:54 5: LUXTRONIK1 MyWP: TransmitData2.811 Result:
2015.09.13 11:59:54 5: LUXTRONIK1 MyWP: CheckData.831 1800 -
2015.09.13 11:59:54 2: LUXTRONIK1 MyWP: CheckData.834 WP data NOK (empty)


Ich glaube, das es hier ein Problem mit der Seriellen Verbindung zu FHEM zu tun hat... :-(
Was passiert denn, wenn du via telnet eine Verbindung aufbaust? Z.B. mit Putty. Wenn ich mich mit der WP verbinde (mit dem entsprechenden Port, bei mir als WP:1002), dann bekomme ich bei Eingabe von 1800 eine ganze Reihe von Zählen als Rückgabe. Das gleiche macht das Modul dann auch und wertet die Rückgabe dann aus.

Gruß

Bernd
FHEM auf BananaPi

ChristianK.

Wenn ich mich per Putty verbinde, funktioniert das ganze tadellos...
Abfragen hin schicken, Antwort kommt promt zurück...
Vermute das es irgendwie mit der Perl-Seriellen-Verbindung zu tun hat,
unter Windows...
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Bei mir läuft das ganze auf einem Banana Pi - unter Windows habe ich das nie getestet.
FHEM auf BananaPi

ChristianK.

Hi Bernd,

ich habe meine FHEM-Umgebung in Windows unter CYGWIN gepackt, nun funktioniert der Zugriff
mit dem Modul... Aber ich kann nur Systemtemperaturen abfragen, bei allen anderen Funktionen
stürzt FHEM komplett ab, und die Temperaturen sind nicht die, die ich möchte... (Code 2100),
ich hätte gerne die mit dem Code 1100 :-)
Der Firmwarestand der Luxtronik ist 2.40

Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

#13
Hallo Christian,
ich lasse das Modul eigentlich von alleine laufen. Alle 60 sec. werden mit Code 1800 einige WP-Daten abgerufen: Temperaturen, Zeiten, Abschaltungen, Störungen, etc. Code 1100 ist eine Teilmenge von Code 1800 und wird jeweils mitgelesen.
Vielleich einfach nochmal Device neu definieren und verbose auf 5 setzen und dann mal schauen, was im Log steht.
Ich habe ein paar FileLogs definiert, die die WP-Daten aufzeichnen. Damit lässt sich das Verhalten der WP dann gut visualisieren.
Dass das Modul manchmal keine Daten liefert hatte ich auch. Dann war meistens der Port der WP-Schnittstelle noch durch ein anderes Programm belegt. Dass FHEM aber dadruch abgestürzt ist, das hatte ich noch nicht.

Alle Funktionen mit SET und GET, ausser "Abfrage_freier_Wert", würde ich z.Z. nicht verwenden. Dass ist alles noch nicht störungsfrei :-)

Gruß
Bernd
FHEM auf BananaPi

ChristianK.

Guten Morgen,

folgendes passiert:
2015.09.18 06:12:08 5: LUXTRONIK1 MyWP: Get.509 Abfrage_WP_Daten
2015.09.18 06:12:08 5: LUXTRONIK1 MyWP: TransmitData2.771 Code: 1800
2015.09.18 06:12:08 5: SW: 313830300d
2015.09.18 06:12:09 5: LUXTRONIK1 MyWP: TransmitData2.811 Result: 1800xxx1800;8xxx1100;12;321;285;263;253;125;417;480;146;135;272;281;5xxx1200;6;0;1;0;1;1;0xxx1300;13;0;0;1;1;0;0;0;0;0;0;0;0;0xxx1400;29;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;25;23;0;0;0;0;25;23;0;0;0;0;0;0xxx1450;9;47174964;42457;1111;0;0;0;5193476;0;47174964xxx1500;5xxx1500;1500;6;718;3;7;15;14;34xxx1500;1501;6;718;4;7;15;9;32xxx1500;1502;6;718;5;7;15;9;44xxx1500;1503;6;718;22;7;15;9;56xxx1500;1504;6;718;7;8;15;14;57xxx1500;5xxx1600;5xxx1600;1600;6;010;17;9;15;12;15xxx1600;1601;6;010;17;9;15;14;59xxx1600;1602;6;010;17;9;15;17;34xxx1600;1603;6;010;17;9;15;21;54xxx1600;1604;6;010;18;9;15;5;46xxx1600;5xxx1700;12;7; V2.40;1;5;27;6;15;7;31;23,0,1xxx1800;8xxx
2015.09.18 06:12:09 5: LUXTRONIK1 MyWP: CheckData.831 1800 - 1800xxx1800;8xxx1100;12;321;285;263;253;125;417;480;146;135;272;281;5xxx1200;6;0;1;0;1;1;0xxx1300;13;0;0;1;1;0;0;0;0;0;0;0;0;0xxx1400;29;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;25;23;0;0;0;0;25;23;0;0;0;0;0;0xxx1450;9;47174964;42457;1111;0;0;0;5193476;0;47174964xxx1500;5xxx1500;1500;6;718;3;7;15;14;34xxx1500;1501;6;718;4;7;15;9;32xxx1500;1502;6;718;5;7;15;9;44xxx1500;1503;6;718;22;7;15;9;56xxx1500;1504;6;718;7;8;15;14;57xxx1500;5xxx1600;5xxx1600;1600;6;010;17;9;15;12;15xxx1600;1601;6;010;17;9;15;14;59xxx1600;1602;6;010;17;9;15;17;34xxx1600;1603;6;010;17;9;15;21;54xxx1600;1604;6;010;18;9;15;5;46xxx1600;5xxx1700;12;7; V2.40;1;5;27;6;15;7;31;23,0,1xxx1800;8xxx
2015.09.18 06:12:09 5: LUXTRONIK1 MyWP: CheckData.930 checkstring: 18001800811001212006130013140029145091500515001500615001501615001502615001503615001504615005160051600160061600160161600160261600160361600160461600517001218008 / reference: 18001800811001212006130013140029145091500515001500615001501615001502615001503615001504615005160051600160061600160161600160261600160361600160461600517001218008
2015.09.18 06:12:09 5: LUXTRONIK1 MyWP: CheckData.951 Data OK: 1800
2015.09.18 06:12:09 5: LUXTRONIK1 MyWP: UpdateReadings.981 1800 - Temperaturen und Stati - 1800xxx1800;8xxx1100;12;321;285;263;253;125;417;480;146;135;272;281;5xxx1200;6;0;1;0;1;1;0xxx1300;13;0;0;1;1;0;0;0;0;0;0;0;0;0xxx1400;29;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;25;23;0;0;0;0;25;23;0;0;0;0;0;0xxx1450;9;47174964;42457;1111;0;0;0;5193476;0;47174964xxx1500;5xxx1500;1500;6;718;3;7;15;14;34xxx1500;1501;6;718;4;7;15;9;32xxx1500;1502;6;718;5;7;15;9;44xxx1500;1503;6;718;22;7;15;9;56xxx1500;1504;6;718;7;8;15;14;57xxx1500;5xxx1600;5xxx1600;1600;6;010;17;9;15;12;15xxx1600;1601;6;010;17;9;15;14;59xxx1600;1602;6;010;17;9;15;17;34xxx1600;1603;6;010;17;9;15;21;54xxx1600;1604;6;010;18;9;15;5;46xxx1600;5xxx1700;12;7; V2.40;1;5;27;6;15;7;31;23,0,1xxx1800;8xxx
Undefined subroutine &main::date2Form called at ./FHEM/23_LUXTRONIK1.pm line 1022.

Wie und wo ist diese Subroutine zu definieren?

Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Hallo Christian,
da hatte ich ja nun gar nicht mehr dran gedacht, dass ich Funktionen in 99_myUtils.pm ausgelagert hatte. Ich habe das Modul in Post #5 korrigiert. Versuch es damit mal.
Gruß
Bernd
FHEM auf BananaPi

ChristianK.

FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

ChristianK.

Hi Bernd,

weisst Du, wie ich die Daten aus dem Comfort-Modul auslesen kann?

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

FHEM auf BananaPi

ChristianK.

#19
Hallo Bernd,

dank Luxtronik-Software und Diagnose-Software habe ich den Code rausgefunden... 6100

dann kommt z.B. zurück:

6100;4;227;647;458;50

Zuordnung:

4 -> Keine Erklärung...
227 -> 2. Fußbodenkreis 22,7°C
647 -> Solarkollektor 64,7°C
458 -> Solarspeicher 45,8°C
50 -> ext. Energiequelle 5,0

Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Hallo Christian
ich habe die Abfrage von 6100 in das Modul eingebaut. Wenn ein Comfort-Modul vorhanden ist, werden die Werte für 6100 abgefragt und als Reading gespeichert. Allerdings kann ich es nicht testen, da ich kein Comfort-Modul habe. Es gibt noch weitere 6xxx Codes, deren Inhalt ich aber nicht kenne.
6100 Status, 6300 Ausgänge, 6200 Temperaturen
Vielleicht kannst du dafür ja auch noch Beispiele nennen. Was ich noch suche ist ein Code, um die Warmwasser-Schnell-Ladung zu starten und um den Kühlmodus zu erfassen.
Die 4 in der Zeichenkette bedeutet im übrigen, dass der Code 6100 vier Werte zurückgibt.
Das aktuallisierte Modul ist im ersten Post von mir.
Gruß
Bernd
FHEM auf BananaPi

ChristianK.

#21
Hallo Bernd,

hier mal Bilder über die Funktionen, an die ich ran komme...
Beim Comfort-Modul habe ich rechts im Bild Diag-Software mit laufen...
Siehst dann die Codes :-)
Im Bild Comfort2.png gibt es folgende Einstellungen im Drop-Down-Menu...

Art des ZWE3 - Nein/Heizstab/Kessel
Funktion des ZWE3 - Nein/Hz + BW/Brauchwasser
Einstellung HZ mit/ohne SUP - ohne SUP/mit SUP
Typ des Mischkreis 2 - Nein/Entlade/Lade/Kühl/Hz und Kühl
Kühlregelung fest/AT-abhängig - Festtemperatur / AT-abhängig
Schwimmbad mit/ohne ZUP - mit SUP / ohne SUP
Mindestlaufzeit SWAN - 0/0,5/1,0/1,5/2,0/2,5/3,0/3,5/4,0/4,5/5,0
Periode 2 - 0,25/0,5/0,75/1,0/1,25/1,5/1,75/2,0
Laufzeit 2 - 0,25/0,5/0,75/1,0/1,25/1,5/1,75/2,0

Grüße

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Bernd

Danke für die Infos. Bis auf die Comfort-Daten hatte ich die anderen auch schon. Ich habe die Abfragen für 6200 und 6300 moch mit eingebaut (siehe Modul in #5). Hat das mit der Abfrage von 6100 funktioniert?
Bisher beschränke ich mich im wesentlichen auf das Abfragen. Für das setzen von Paramatern fehlt mir noch ein passender Ansatz die Daten in FHEM darzustellen.
Wozu braucht man das Comfort-Modul?
Gruß
Bernd
FHEM auf BananaPi

ChristianK.

Das Comfort-Modul ist hier wegen der thermischen Solar-Anlage verbaut
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Prof. Dr. Peter Henning

Kann man bitte das "Comfort"-Modul so benennen, dass es irgendeinen Hinweis auf das betreffende Gerät enthält ? Der Begriff "Comfort" ist viel zu generisch.

LG

pah

ChristianK.

Das Modul heisst seitens der Luxtronik so...
Es gibt noch ein 2. welches verbaut sein kann, mit dem Namen "Compact"

LG

Christian
FHEM: 5.5 auf NUC unter Ubuntu
1x RFXTRX433, 1x CUL868_V3.4 (fw1.58)
CUL-MAX: MAX! Funk-Heizkörperthermostat, Fensterschalter
IT: 2 AB440 kompatible :-)

Prof. Dr. Peter Henning

Ah, ok, mein Fehler.

Hatte angenommen, es seien FHEM-Module gemeint. Ob ein Hersteller seine Komponenten nun "Nonplusutra" oder "Schrott" nennt, ist mir eher egal.

LG

pah