Anbindung Viessmann Heizung mit VCONTROL300

Begonnen von srxp, 23 Februar 2017, 13:15:51

Vorheriges Thema - Nächstes Thema

crispyduck

Das mit USB disconnected muss ich mir erst genauer ansehen.
Habe jetzt einmal auch nur zwei readings im cfg file.

Ja, das cfg File sollte dann unter Edit Files sichtbar sein.

Welche DB nutzt du? Habe bei mir alles unter mySQL (MariaDB auf Synology NAS).

Lg
Crispyduck



Was sagt "configdb filelist"?

Newbie

Mit "configdb filelist" ist die Datei zu sehen, benutze sqlite.
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

crispyduck

Dann sollte das File ja eigentlich auch unter Edit Files zu sehen sein.

Aber naja, ich bin jetzt auch kein Profi was das angeht.

Verstehe auch nicht wieso es bei dir im Logfile komplett anders aussieht. Es sollte doch eigentlich mit VCONTROL300: Using USB device anfangen.


Wegen der disconnects ist mir jetzt aufgefallen das ich diese wirklich nur mit dem 300er Protokoll habe. Mit KW läuft alles.

Lg
Crispyduck


crispyduck

@Newbie:

Hab mir das nochmal angesehen, bei dir dürfte entweder das cfg File bei start mit "perl fhem.pl fhem.cfg" oder eben das File in der DB bei start mit "perl fhem.pl configDB" nicht geladen haben.

Fehler hast du keinen gesehen weil du nur das Device Attribut auf verbose 5 gestellt hast. Warum auch immer sieht man mit "attr global verbose 5" um einiges mehr. Weiß momentan noch nicht warum.

So wie ich es umgeschrieben hatte ist dann das Modul aber weiter gelaufen mit quasi einem leeren cfg File.

Hab das jetzt nochmal umgeschrieben. Jetzt wird das File schon vor dem Aufruf der Sub mit FileRead eingelesen und bei einem error gibt es ein return $error.

Somit wird das Modul auch beendet wenn das cfg File nicht geladen werden kann.

Anbei die neue Version. Vielleicht kannst du es ja nochmal testen. Bei mir funktioniert es ohne Probleme.

Mit KW habe ich keine Fehler. Mit dem 300er immer wieder mal nach Read '06' ein USB Device disconnected. Dürfte irgendwo beim Aufruf von DevIo_Expect passieren. Hab aber keine Ahnung warum.

Lg,
Crispyduck


Newbie

Hallo Crispyduck,

ZitatHab mir das nochmal angesehen, bei dir dürfte entweder das cfg File bei start mit "perl fhem.pl fhem.cfg" oder eben das File in der DB bei start mit "perl fhem.pl configDB" nicht geladen haben.

fhem.cfg hab ich nicht, alles in der DB. Ich werde mal deine neue Version testen und berichten.

schon mal Danke für deine Bemühungen, Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

Newbie

Hallo,

deine neue Test-Version funtioniert hier nicht - findet die VCONTROL.cfg nicht, egal ob in der DB oder als File im FHEM-Ordner.


vg Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

crispyduck

Ok, dann weis ich leider auch nicht warum es bei dir nicht geht. Bei mir funkt es und ich hab jetzt die VCONTROL.cfg auch in der DB gespeichert.
Am Filesystem wird diese nur gesucht wenn FHEM nicht mit configdb gestartet wurde.

Kannst du das File wenn es in der DB gespeichert ist jetzt mit Edit Files bearbeiten? Eventuell gibt es sonst irgend ein Problem mit dem importierten File.
Hast du schon andere Files oder configs für andere Module in der DB wo es funktioniert?

Lg
Crispyduck

Newbie

Hallo,

sagen wir mal so "alter" Datein gehen (holiday usw.), neu importierte Dateien sehe ich zwar mit filelist, sind aber nicht bei edit file zu sehen.
Sehr komisch alles, momentan kann ich nicht mal global auf verbose 5 setzen, jedenfalls nicht über die attr-Auswahl. Über die Eingabezeile geht es. Ich werde mal auf dem Laptop FHEM installieren und testen ob deine Version da drauf läuft.

Hab jetzt auch auf das kw-Protokoll umgestellt.

dir noch einen schönen Abend
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

crispyduck

Komisch.

Ja, ich bleib jetzt auch mal beim kw Protokoll.

Ich lese mir heute noch den anderen Thread genauer durch, vielleicht verstehe ich dann warum im code vom Modul irgendwann auf DevIo_Expect gewechselt wurde.

Ich kenne mich mit Perl eigentlich auch nicht wirklich aus, aber ich verstehe zwar mittlerweile ungefähr wie das Modul funktioniert, aber aber das Disconnect Problem muss sich wohl Stephan oder ein anderer Dev ansehen.
Mir lässt es zwar keine Ruhe, aber halte mich damit jetzt schon viel zu lange auf, sollte endlich mal wieder meine Modbus Zähler,... integrieren.

Morgen kommt jetzt aber mal der Vissmann Techniker. Energiebilanz stimmt überhaupt nicht und COP von 8,2 hätte ich zwar gerne, stimmt aber wohl auch nicht. ;-)

Schönen Abend noch,
Crispyduck

Newbie

Hallo crispyduck,

wer die Commandref lesen kann ist klar im Vorteil

ZitatFile edit....
Achtung: die Verzeichnis Angabe ist nicht flexibel: alle .js/.css/_defs.svg Dateien sind in www/pgm2 ($FW_cssdir), .gplot Dateien in $FW_gplotdir (www/gplot), alles andere in $MW_dir (FHEM).

grrrr  >:(

vg Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

crispyduck

Wo hast du das File denn abgelegt und wie sieht überhaupt dein define aus?

Also ich habe es unter ./FHEM/89_VCONTROL.cfg, bzw. mit diesem Pfad in der DB abgelegt und da funktioniert das Editieren als auch mein geändertes Modul.

Mein define:
define Heizung VCONTROL300 /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AL00AKYZ-if00-port0 ./FHEM/89_VCONTROL300.cfg 180 kw

Lg
Crispyduck

Newbie

Also mit der ungepatchten Version funktionierte auch das hier

define Vito333 VCONTROL300 /dev/ttyUSB0 VCONTROL.cfg 180 300

mit deiner Version muss es so sein

define Vito333 VCONTROL300 /dev/ttyUSB0 ./FHEM/VCONTROL.cfg 180 300

- sieht mit deiner Version bisher gut aus, keine Abbrüche der Verbindung

vg Jens
fhem-6.1 (configDB+DbLog)  auf ODROID-XU4

crispyduck

Super!

Bezüglich Abbrüche habe ich aber nichts geändert, ich habe nur das laden des Files geändert, so das es auch mit configdb funktioniert.

Ich bekomme mit dem 300er weiterhin die Disconnects. Wenn es bei dir jetzt geht muss es an etwas anderem liegen.

Lg,
Crispyduck


postfux_at

Hallo chrispyduck

Habe nach langem wieder mal mein Fhem aktualisiert, und seit dem hatte ich Proleme wie Newbie,
tausende Fehler im Log
2017.05.07 13:50:20 2: Attempt to write to disconnected device.

Nach langem suchen und herumprobieren habe ich herausgefunden wenn die Devio.pm aus dem restore Verzeichniss
zurückkopiere funktioniert es wieder

Hier mal die diff ausgabe
diff FHEM/DevIo.pm FHEM/DevIo-new-170507.pm
2c2
< # $Id: DevIo.pm 12515 2016-11-06 18:22:36Z rudolfkoenig $
---
> # $Id: DevIo.pm 13865 2017-04-01 09:10:44Z rudolfkoenig $
12c12
< sub DevIo_SimpleWrite($$$);
---
> sub DevIo_SimpleWrite($$$;$);
67c67
<     $buf = DevIo_SimpleReadWithTimeout($hash, 1);
---
>     $buf = DevIo_SimpleReadWithTimeout($hash, 0.01); # Forum #57806
118c118
< DevIo_SimpleWrite($$$)
---
> DevIo_SimpleWrite($$$;$)
120c120
<   my ($hash, $msg, $type) = @_; # Type: 0:binary, 1:hex, 2:ASCII
---
>   my ($hash, $msg, $type, $addnl) = @_; # Type: 0:binary, 1:hex, 2:ASCII
126a127
>   $msg .= "\n" if($addnl);
237a239
>       my $l = $hash->{devioLoglevel}; # Forum #61970
239c241
<         Log3 $name, 1, "$dev reappeared ($name)";
---
>         Log3 $name, ($l ? $l:1), "$dev reappeared ($name)";
241c243
<         Log3 $name, 3, "$name device opened" if(!$hash->{DevioText});
---
>         Log3 $name, ($l ? $l:3), "$name device opened" if(!$hash->{DevioText});
522c524,525
<   Log3 $name, 1, "$dev disconnected, waiting to reappear ($name)";
---
>   my $l = $hash->{devioLoglevel}; # Forum #61970
>   Log3 $name, ($l ? $l:1), "$dev disconnected, waiting to reappear ($name)";


Vielleicht siehst du da ja einen Fehler
LG Markus

postfux_at

Hallo chrispyduck

Nachtrag zu meinem letzten Post:
Ich denke ich habe was gefunden.

In der Funktion VCONTROL300_ReadFromDevice($)
Habe ich einfach
    my $buf = DevIo_SimpleRead($hash);

in ..

    my $buf = DevIo_SimpleReadWithTimeout($hash,10);

geändert und seither funktioniert es auch mit dem neuen "Defio.pm".

Scheinbar war das neue default timeout von DevIo_SimpleRead zu kurz für das schnelle pollen im 300er Protokoll, bzw.: war die
Heizung zu langsam um jedesmal eine Antwort zurückzugeben.

Bitte mal drüberschauen ob das OK sein könnte.
LG Markus