Neue Versionen und Support zum Modbus-Modul

Begonnen von StefanStrobel, 20 August 2017, 12:11:08

Vorheriges Thema - Nächstes Thema

pejonp

Hallo stefan,

In der 2. Zeile hinter der $ID.
Ich schreibe die bei mir immer fortlaufend damit ich meine Versionen auseinanderhalten kann ;-).
Das mit dem Modul schaue ich mir an. Mal sehen ob ich es hinbekomme. Das muss ja mit der vorhandenen und neuen Version laufen.

Gruß Jörg
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

pejonp

Hallo Stefan,

wenn ich version auf dem System mache der die Module per update holt, habe ich Version

Zitat
98_Modbus.pm           20182 2019-09-17 12:53:40Z StefanStrobel
98_ModbusAttr.pm       19133 2019-04-06 18:40:30Z StefanStrobel

Wenn ich die Module aus dem Post nehme, habe ich Version

Zitat
98_Modbus.pm      14234 2017-05-09 19:11:34Z StefanStrobel
98_ModbusAttr.pm  13878 2017-04-02 09:12:12Z StefanStrobel

Kannst du mir sagen wie ich die Module einbinden muss ?

Ich habe es so versucht. Habe noch nicht so die Ahnung wie es gehen könnte :-(.


package Modbus;
#package FHEM::SolarEdge;


kommt folgender Fehler.

Zitat
2020.10.23 19:10:05 1: PERL WARNING: Prototype mismatch: sub main::Initialize () vs none at ./FHEM/98_Modbus.pm line 483, <$fh> line 102.
2020.10.23 19:10:05 1: PERL WARNING: Subroutine Initialize redefined at ./FHEM/98_Modbus.pm line 467, <$fh> line 102.
2020.10.23 19:10:05 0: Undefined subroutine &main::SolarEdge_Initialize called at fhem.pl line 2661, <$fh> line 102.

2020.10.23 19:10:05 1: Including ./log/fhem.save
2020.10.23 19:10:05 1: Messages collected while initializing FHEM:configfile: Cannot load module SolarEdge
Please define SEdge 5e9c7d2d-f33f-416a-a25c-8a42e71ede7a0bb6 first
./log/fhem.save: Please define SEdge first

Mit den vom update ausgelieferten Modulen läuft es ja, nur nochnicht mit den neuen. Es eilt hoffentlich noch nicht. Nur weil du gefragt hast, ob es mal jemand testen könnte.

Grüße Jörg
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

StefanStrobel

Hallo Jörg,

die Versionsinformation kommt aus dem $Id in der ersten Zeile des Moduls. Die wird beim Einchecken ins SVN automatisch gesetzt. Eine neue Version, die ich hier poste, ist noch nicht eingecheckt und entsprechend steht etwas altes in der Versionsangabe im Quellcode. Aussagekräftiger ist

$hash->{MODULEVERSION}   = "Modbus $Module_Version";

bzw.

my $Module_Version = '4.3 - 27.9.2020';

das wird als Internal auch angezeigt.

Ich war so frei mal in Deinem Modul herumzueditieren ;-)

diff -u 98_SolarEdge.pm 98_SolarEdge2.pm
--- 98_SolarEdge.pm     2020-10-24 15:05:05.382521481 +0200
+++ 98_SolarEdge2.pm    2020-10-24 15:04:40.139651939 +0200
@@ -36,6 +36,8 @@
# 2020-24-10  unpack angepasst


+#package Modbus;
+package FHEM::SolarEdge;

use strict;
use warnings;
@@ -51,10 +53,6 @@
}


-#package Modbus;
-package FHEM::SolarEdge;
-
-
no if $] >= 5.017011, warnings => 'experimental::smartmatch';
#no warnings 'portable';    # Support for 64-bit ints required
use Time::Local;
@@ -68,8 +66,7 @@

use FHEM::Meta;
main::LoadModule( 'Modbus');
-main::LoadModule( 'ModbusAttr');
-
+#main::LoadModule( 'ModbusAttr');


## Import der FHEM Funktionen
@@ -625,11 +622,11 @@
     #require "$attr{global}{modpath}/FHEM/DevIo.pm";


-    $hash->{DefFn} = \&Define;
-    $hash->{AttrFn}     = \&Attr;
+    #$hash->{DefFn} = \&Define;
+    #$hash->{AttrFn}     = \&Attr;
     $hash->{parseInfo}  = \%SolarEdgeparseInfoAll;    # defines registers for this Modbus Defive
     $hash->{deviceInfo} = \%SolarEdgedeviceInfo;      # defines properties of the device like
-    ModbusLD_Initialize($hash);        # Generic function of the Modbus module does the rest
+    Modbus::InitializeLD($hash);                      # Generic function of the Modbus module does the rest

     $hash->{AttrList} =
         $hash->{AttrList}



package FHEM::SolarEdge ist ok. Du hast ja auch die Initialize-Funktion entsprechend benannt.
Die Zuweisungen zu DefFn und AttrFn sind überflüssig. Darum kümmert sich Modbus::InitializeLD($hash).
Ein Aufrug von ModbusLD_Initialize($hash) sollte zwar noch funktionieren, aber das ist nur eine Alias. Der tatsächliche Name im Modul ist Modbus::InitializeLD.
Das Laden von ModbusAttr ist auch überflüssig.

Gruss
   Stefan

pejonp

Hallo Stefan,

ich habe die Änderungen mal eingebaut und getestet. Leider findet er Modbus::InitializeLD nicht. Ich habe die neuen Module auch ins Verzeichnis opt/fhem/FHEM gelegt und die vorhandenen überschrieben und die Rechte angepasst. Leider klapt das aber noch nicht. Vielleicht habe ich auch etwas übersehen.


-    ModbusLD_Initialize($hash);        # Generic function of the Modbus module does the rest
+    Modbus::InitializeLD($hash);                      # Generic function of the Modbus module does the rest


Wenn das funktioniert, sollte das Modul (Version) ja eigentlich egal sein ?!

Ich habe aber noch eine andere Frage. Bei meinem Modul werden 3 verschiedene Geräte abgefragt.
Ich habe nur eine SolarEdge WR (ohne Meter, ohne Batterie). Leider habe ich es noch nicht hinbekommen bzw. es ist jetzt ein Fehler drin das nur die Modbus-Register für den WR angezeigt werde. Ich bekomme jetzt wieder alle Register angezeigt, nur in den anderen steht Schrott.

Jetzt möchte ich 2 Attribute einbauen:

Device_Meter:0,1
Device_Battery:0,1

und darüber das auslesen der Modbus-Register steuern.


  $hash->{AttrList} =
        $hash->{AttrList}
        . "$readingFnAttributes"
        . "Device_Meter:0,1"
        . "Device_Battery:0,1"
        .                                             # Standard Attributes like IODEv etc
      $hash->{ObjAttrList} . " " .     


Die anderen beiden können bei Bedarf zugeschaltet werden. Jetzt ist die Frage wie bekomme ich das hin.
Bis jetzt funktioniert es noch nicht. Die AttrList wird nicht um die beiden Parameter erweitert.



sub Initialize()
{
    my $hash = shift;

    my $modusM = AttrVal($hash->{NAME},'Device_Meter',0);
    my $modusB = AttrVal($hash->{NAME},'Device_Battery',0);
   
    my %SolarEdgeparseInfoAll = ( %SolarEdgeparseInfo);
     
    if ($modusM == 1 && $modusB == 1 ){
        %SolarEdgeparseInfoAll = ( %SolarEdgeparseInfo, %SolarEdgeMeter1parseInfo, %SolarEdgeBat1parseInfo );
    } elsif ( $modusM == 1) {
        %SolarEdgeparseInfoAll = (%SolarEdgeparseInfo, %SolarEdgeMeter1parseInfo);   
    } else {
        %SolarEdgeparseInfoAll = ( %SolarEdgeparseInfo);
    }
   
    # my %SolarEdgeparseInfoAll = ( %SolarEdgeparseInfo, %SolarEdgeMeter1parseInfo, %SolarEdgeBat1parseInfo );
....



Oder gibt es einen anderen Weg. Vielen Dank.

Jörg
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

StefanStrobel

#544
Hallo Jörg,

zunächst zu Deiner Frage mit dem Aufruf von InitializeLD:
Es gibt zwei Möglichkeiten:

    main::ModbusLD_Initialize($hash);                 # call alias of Modbus::InitializeLD() to be compatible with old Modbus module
    #Modbus::InitializeLD($hash);                     # this is the long term version: call original name of Initialize function

Ich habe beides nochmal getestet und sofern das neue Modul vorher geladen wird, bekomme ich keine Fehler diesbezüglich.

Allerdings gibt es Fehler mit

sub ExprMppt {
    my ( $hash, $DevName, $ReadingName, $vval_0 , $vval_1 , $vval_2 , $vval_3 , $vval_4 ) = @_;
    return SolarEdge_ExprMppt( $hash, $DevName, $ReadingName, $vval_0 , $vval_1 , $vval_2 , $vval_3 , $vval_4 );
}

sub ExprMeter {
    my ( $hash, $DevName, $ReadingName, $vval_0 , $vval_1 , $vval_2 , $vval_3 , $vval_4 , $vval_5 , $vval_6 , $vval_7 , $vval_8 ) = @_;
    return SolarEdge_ExprMeter( $hash, $DevName, $ReadingName, $vval_0 , $vval_1 , $vval_2 , $vval_3 , $vval_4, $vval_5 , $vval_6 , $vval_7 , $vval_8 );
}

das solltest Du einfach löschen. Die tatsächliche Funktion im Code sollte ohne SolarEdge_ benannt werden.

Durch

GP_Export(
    qw(
      Initialize
      ExprMppt
      ExprMeter
      )
);

werden die eigentlichen Funktionen ExprMppt und ExprMeter (im einem Modul, das ein eigenes Package hat, lässt man die Mudulname_ Präfixes weg) schon als main::SolarEdge_ExprMppt und main:SolarEdge_ExprMeter exportiert. Du müsstest dann aber in den Expressions auch die lange Form SolarEdge_Expr... verwenden, da die Expressions im Kontext des Packages main:: evaluiert werden.

anbei nochmal eine Version Deines Moduls, die bei mir ohne Fehler geladen werden kann. In Betrieb kann ich sie mangels eines SolarEdge-Geräts leider noch nicht testen.
Ich plane noch eine "generateTestdata"-Funktion, mit der man Daten für die Simulation von Geräten für Modul-Tests bereitstellen kann.

Gruss
    Stefan

EDIT: Erklärung mit dem Export war falsch herum. habe es direkt korrigiert um weitere Verwirrung zu vermeiden


StefanStrobel

Zur zweiten Frage: parseInfo abhängig von Attributen.

Die Initialize-Funktion wird beim Laden des Moduls aufgerufen. Attribute sind zu diesem Zeitpunkt noch nicht bekannt. Deshalb kann Dein Code auch parseInfo an dieser Stelle nicht erweitern.
Statt dessen müsstest Du das in einer _Attr-Funktion machen und dort aktiv werden, wenn das Attribut gesetzt wird.
In der Initialize-Funktion müsstest Du so etwas wie

$hash->{AttrFn}     = \&SolarEdge_Attr;

einbauen und in SolarEdge_Attr dann auf das neue Attribut prüfen und am Ende Modbus::AttrFn aufrufen, damit die anderen Attribute noch funktionieren.

Gruss
   Stefan

pejonp

Hallo Stefan,

vielen Dank für deine Hilfe. Ich habe dein Modul mal auf einem anderen Server getestet. Vorher deine geänderten Dateien eingespielt.
Leider kommen Fehler. Ich hänge mal den Log an. Wenn du Zeit hast könntest du ja mal drüber schauen.

es kommt sehr häufig dieser Hinweis:

2020.10.26 20:39:59 4: SEdge: ParseFrameStart (RTU) extracted id 3, fCode 131 and data 02
2020.10.26 20:39:59 4: SEdge: HandleResponse got response with error code 83 / 02, illegal data address


Vielen Dank.
Jörg
LaCrossGW 868MHz:WT470+TFA+TX37-IT+EMT7110+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080)+Velux KLF200+MAX!+HM-MOD-UART:Smoke HM-SEC-SD+VITOSOLIC 200 RESOL VBUS-LAN+SolarEdge SE5K(Modbus)+Sonnen!eco8(10kWh)+TD3511+DRT710M(Modbus)+ZigBee+Z-Wave+MQTT+vitoconnect

abc2006

Zitat von: StefanStrobel am 20 Oktober 2020, 19:41:42
Falls ein paar Leute Zeit haben, es zu testen, wäre das sehr hilfreich.


Hallo Stefan,
ich habe die neue Version bei mir laufen.
Nachdem ich heute Modbus deaktivieren musste (mit disable 1), lief es nach dem aktivieren (disable 0) nicht wieder richtig an.
Möglicherweise sendet der WR erstmal Mist, wenn er aus dem Standby aufwacht, und Modbus findet den Anfang nicht richtig.

Ich poste dir mal die Logmeldung:

[code]
2020.10.27 11:48:22.143 5: infini_modbus: ParseFrameStart called from Modbus::ReadFn
2020.10.27 11:48:22.147 4: infini_modbus: ParseFrameStart (RTU) extracted id 5, fCode 0 and data 0104003400023005050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000230050104003400023005010400340002300501040034000
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

abc2006

#548
Zitat von: ch.eick am 22 Oktober 2020, 17:26:58
Bei mir mache ich das auch so, es war ja nur eine Vermutung, was er versuchen möchte.

Hallo ihr zwei,

Der Grund, warum ich das machen will, ist ziemlich trivial:

Ich habe folgenden Aufbau
Stromzaehler --> FHEM ---> Wechselrichter

Der Stromzaehler misst den gerade verbrauchten Strom und meldet diesen Wert an FHEM.
FHEM prüft die aktuelle PV-Leistung, den aktuellen Verbrauch und den Ladezustand der Batterien und berechnet daraus eine gewünschte einspeisemenge für den Wechselrichter.
Die Differenz zwischen der gewünschten und der tatsächlichen Einspeisemenge fragt der Wechselrichter per Modbus ab. Eigentlich beim Stromzähler selbst, ich fake diesen mit Hilfe von FHEM. Der Wechselrichter passt daraufhin seine Leistung an.

Wenn die Batterien leer sind (nur um diesen Fall geht es), der Wechselrichter aber weiter einspeist, schalten diese ab, und der WR ist offline.
Selbst wenn die Sonne wieder scheint, erwacht das ganze Ding erst wieder zum Leben, wenn ich die Batterien manuell einschalte (ganz abgesehen davon, dass diese tiefentladung nicht besonders gut ist). Wenn ich negative Werte sende, fängt der WR an, aus dem Stromnetz zu laden (was bei leeren Batterien nachts keine wirtschaftlich sinnvolle Entscheidung ist.
Nun habe ich herausgefunden, dass wenn ich die Verbindung zwischen Wechselrichter und Zähler kappe (was in diesem Fall bedeutet, dass die Anfragen des Wechselrichters einfach "nicht beantwortet" werden, geht der Wechselrichter in einen "Fail Safe-Mode" und schaltet in Standby. Dadurch habe ich keine Einspeisung und keinen Batterieverbrauch mehr, und die Batterien bleiben online, bis die Sonne wieder scheint. Dann lädt der WR die Batterien, und sobald ein akzeptabler Ladezustand erreicht ist, beantworte ich die Anfragen wieder, und der WR speist wieder ein.

Dies schaffe ich mit dem attribut "disable", was allerdings das rote fragezeichen triggert und (siehe mein vorheriger Beitrag) auch noch andere Probleme hervorzurufen scheint.

Hoffe das war nicht zu lang :)

Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

abc2006

#549
Ich habe gerade versucht, mein Modbusattr als Modul zu speichern.
Nachdem ich FHEM neu gestartet habe, kommt der Fehler
Cannot load module ModbusGensdmfake

Das Logfile sagt:
2020.10.27 12:16:58.954 5: infini_modbus: DropFrame - drop 0104003400023005
2020.10.27 12:16:59.749 1: reload: Error:Modul 98_ModbusGensdmfake deactivated:
Unmatched right curly bracket at ./FHEM/98_ModbusGensdmfake.pm line 20, at end of line
syntax error at ./FHEM/98_ModbusGensdmfake.pm line 20, near "(
                      }"
Global symbol "%ModbusGensdmfakedeviceInfo" requires explicit package name (did you forget to declare "my %ModbusGensdmfakedeviceInfo"?) at ./FHEM/98_ModbusGensdmfake.pm line 30.

2020.10.27 12:16:59.754 0: Unmatched right curly bracket at ./FHEM/98_ModbusGensdmfake.pm line 20, at end of line
syntax error at ./FHEM/98_ModbusGensdmfake.pm line 20, near "(
                      }"
Global symbol "%ModbusGensdmfakedeviceInfo" requires explicit package name (did you forget to declare "my %ModbusGensdmfakedeviceInfo"?) at ./FHEM/98_ModbusGensdmfake.pm line 30.

2020.10.27 12:17:00.000 5: infini_modbus: read buffer: 0104003400023005


das generierte Modul hab ich unten angehängt.
Ein List des ModbusAttr:
Internals:
   DEF        1 slave
   FUUID      5f9065ae-f33f-c595-0470-6439b4611fc27d0a
   IODev      infini_modbus
   MODBUSID   1
   MODE       slave
   MODULEVERSION Modbus 4.3 - 27.9.2020
   NAME       modbus
   NOTIFYDEV  global
   NR         29
   NTFY_ORDER 50-modbus
   PROTOCOL   RTU
   STATE      opened
   TYPE       ModbusAttr
   READINGS:
     2020-10-27 12:14:30   state           opened
   REMEMBER:
     lsend      1603797551.33764
Attributes:
   disable    0
   obj-i52-len 2
   obj-i52-reading Stromzaehler:4_modbus
   obj-i52-unpack f>1
   userattr   obj-i52-len obj-i52-reading obj-i52-unpack



Wenn du noch Infos brauchst, meld dich.
Grüße,
Stephan

edit:
Die commandref ist für mich an dieser Stelle etwas unklar... Ich vermute zwar, dass ich es richtig gemacht habe, aber wenn du vielleicht ein Beispiel einstellen könntest, wäre das enorm hilfreich.
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

Wzut

Zitat von: abc2006 am 27 Oktober 2020, 12:03:57
Dies schaffe ich mit dem attribut "disable", was allerdings das rote fragezeichen triggert
Daher haben heute viele Module ausser dem Attribut disable noch ein set aktiv/inaktiv um temporär das Device lahm zu legen,
entweder bis zum nächsten FHEM Start oder der User setzt es wieder aktiv. ( Bsp notify )
Modul intern kann mann dann in beiden Fällen mit IsDisabled(<name>) schön weiternachen, wäre vllt mal eine Überlegung wert :)
Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

ch.eick

Zitat von: abc2006 am 27 Oktober 2020, 12:03:57
Der Grund, warum ich das machen will, ist ziemlich trivial:
Ich habe folgenden Aufbau
Stromzaehler --> FHEM ---> Wechselrichter
Okay, da bin ich raus, das macht mein WR mit einer Messeinheit alleine. Die Batterie ist bei mir direkt am WR und somit sind die Hersteller auch für das richtige Laden/Entladen verantwortlich.
Bei einer Ladung unter MinSoc, was im Winter passieren kann wird auch eine Notladung  vom WR gesteuert.

Gruß
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

abc2006

Zitat von: StefanStrobel am 22 Oktober 2020, 16:58:27
Man könnte mal ausprobieren einfach den State auf inactive zu setzen. Ich hab das noch nicht getestet.

Das funktioniert leider nicht.

Zitat von: Wzut am 27 Oktober 2020, 12:27:09
entweder bis zum nächsten FHEM Start oder der User setzt es wieder aktiv.
Da muss ich sagen, ich finde es besser, wenn auch das aktivieren dem User überlassen bleibt..

Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

StefanStrobel

Hallo,

vielen Dank für Euer Testen und Feedback. Ich versuche das der Reihe nach abzuarbeiten :-)

@Jörg: Die Fehlermeldungen und das Log sehen wirklich seltsam aus. Zuerst schickt der Slave immer einen Fehlermeldung und dann kommt die Antwort doch noch, wird dann aber ignoriert. Kann es sein, dass da am Setup etwas nicht stimmt?
Ich tue mich auch mit dem Log schwer. Das ist leider nur mit verbose 4 erstellt und so muss ich an vielen Stellen raten.
kannst Du das nochmal mit verbose 5 machen?

Gruss / Thanx
    Stefan

StefanStrobel

Hallo,

anbei eine neue Version zum Testen.
Da gibt es auch ein set inactive / set active (nach einem attr enableSetInactive 1).
Der Fehler mit saveAsModule sollte auch behoben sein.

Utils.pm gehört ins Verzeichnis lib/FHEM/HTTPMOD und das File modTemplate nach lib/FHEM/Modbus.

Gruss
   Stefan