Ankündigung

Einklappen
Keine Ankündigung bisher.

Support Thread für DLMS Plugin

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Bear80
    antwortet
    Top! Dank dir bmx !
    Passt aus meiner Sicht auch für den berechtigten Einwand von Morg
    Habs heut früh ausprobiert und macht was es soll bei mir.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Ich habe mal einen Fix in develop gepusht. Schaut mal ob es für Euch passt.

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Ich habe da schon lange nichts mehr dran gemacht weil ich am Überlegen war das umzustellen und ggf. mit smlx zu einem Smartmeter Plugin zusammenzulegen aber da bin ich bisher auch nicht dran gekommen.
    Ich schau mir das an wo es hängt...

    Einen Kommentar schreiben:


  • Bear80
    antwortet
    OK, ich schau mir das später nochmal an. Wenn ich's richtig im Kopf hab, sind mehrere Parameter aus der Liste mandatory. Müsste dann ggfs. in der Doku noch angeglichen werden...

    Einen Kommentar schreiben:


  • Morg
    antwortet
    So einfach isses nicht. Wenn jemand dort keine Liste angibt, sondern - wie von mir oben schon geschrieben -

    dlms_obis_code: "1.8.1*00"

    dann klappt das nicht mehr. Wenn also die Möglichkeit erhalten bleiben soll, muss das anders gelöst werden.

    Sonst hätte ich dir das vorhin schon gleich "so" präsentiert

    Einen Kommentar schreiben:


  • Bear80
    antwortet
    Vielen Dank Morg ! Das war der entscheidene Hinweis!

    In der plugin.yaml für dlms_obis_code den Type auf list gesetzt und schon gehts auch unter 1.8.1.
    Ich schick bei Gelegenheit mal nen commit...

    Einen Kommentar schreiben:


  • Morg
    antwortet
    Mit 1.8 kam die strikte Parameterprüfung; ich vermute, da liegt der Hase im Pfeffer.

    Die plugin.yaml des Plugins gibt dlms_obis_code als "str" an, also wird nicht (wie früher) eine Liste zurückgegeben, sondern eine Liste "in" einem String.

    Da ich nicht mit dem Plugin arbeite, weiß ich nicht, ob immer eine Liste (wie in deinem Beispiel) oder auch z.B.

    dlms_obis_code: "1.8.1*00'

    verwendet wird oder werden kann.

    Wenn ja, muss das Plugin angepasst werden, damit es die Liste aus dem String extrahiert. Wenn nein, müsste die plugin.yaml angepasst werden (item_attr dlms_obis_code typ: str->list)

    Dazu müsste sich entweder bmx oder ein DLMS-User äußern

    Einen Kommentar schreiben:


  • Bear80
    antwortet
    Servus,

    hat schon jemand das DLMS Plugin unter 1.8.1 zum Laufen bekommen?

    Das Item ist nach wie vor wie folgt konfiguriert:

    Code:
    Zaehlerstand1:
        type: num
        dlms_obis_code:
          - '1.8.1*00'
          - 0
          - 'Value'
          - 'num'
    Unter 1.7.1 im Debugmode steht folgender Eintrag im Log und die Zuweisung an das Item funktioniert:

    Code:
    2021-01-26 09:12:24 DEBUG Main Item 'Haus.Strom.Heizung.Zaehlerstand1' has Attribute 'dlms_obis_code' so it is added to the list of items to receive OBIS Code Values
    2021-01-26 09:12:24 DEBUG Main The OBIS Code [B]'1.8.1*00'[/B] is added to the list of codes to inspect
    Unter 1.8.1 wird daraus:

    Code:
    2021-01-26 08:25:12 DEBUG Main Item 'Haus.Strom.Heizung.Zaehlerstand1' has Attribute 'dlms_obis_code' so it is added to the list of items to receive OBIS Code Values
    2021-01-26 08:25:12 DEBUG Main The OBIS Code [B]'['1.8.1*00', 0, 'Value', 'num']'[/B] is added to the list of codes to inspect
    Mir scheint, dass 1.8.1 mit der Liste in der Itemkonfig nicht klar kommt. Oder hat sich was an der Syntax geändert, was ich bis her noch nicht mitbekommen hab?
    Die Pluginversion ist ja scheinbar gleich geblieben...

    Danke für eure Unterstützung!
    Zuletzt geändert von Bear80; 26.01.2021, 09:52.

    Einen Kommentar schreiben:


  • felix86
    antwortet
    Moin Zusammen, danke für den Support. Dann halte ich nochmal die Füße still. Leider übersteigt die Pluginentwicklung meine Fähigkeiten :/

    Gruß Felix

    Einen Kommentar schreiben:


  • Msinn
    antwortet
    Zitat von bmx Beitrag anzeigen
    Du kannst aber das alte Plugin weiternutzen und mußt nicht umstellen.
    Lies so: Du kannst aber das alte Plugin unter SmartHomeNG 1.7.x weiternutzen und mußt noch nicht umstellen

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Ich fürchte das das Easymeter hier etwas vom Pfad abweicht und stumpf Protokoll Mode D nutzt mit 9600 Baud Da muß ich wohl noch was ändern am Plugin.

    Du kannst aber das alte Plugin weiternutzen und mußt nicht umstellen.

    Einen Kommentar schreiben:


  • felix86
    antwortet
    Moin Zusammen,

    ich habe einen Easymeter Q3D 1004 den ich seit langer Zeit mit dem easymeter Plugin auslese. Nun ist dieses ja abgekündigt und ich müsste das Plugin wechseln. Wenn ich richtig informiert bin sollte es mit dem dlms Plugin funktionieren. Ich bekomme es allerdings nicht zum laufen.
    Ich habe es bisher nur soweit gebracht:
    Code:
    /usr/local/smarthome/plugins/dlms$ python3 dlms.py -s 9600 /dev/ttyEHZ
    This is DLMS Plugin running in standalone mode
    ==============================================
    Time to open serial port /dev/ttyEHZ: 1.25 ms
    Writing request message b'/?!\r\n' to serial port '/dev/ttyEHZ'
    Time to send first request to smartmeter: 92.27 µs
    Time to receive an answer: 755.85 ms
    Request Message was not equal to response, treating as identification message
    Time to get first identification message from smartmeter: 87.74 µs
    Identification Message is b'/ESY5Q3DA1004 V3.04\r\n'
    The manufacturer for ESY is unknown (out of 0 given manufacturers)
    Baudrate id is '5' thus Protocol Mode is C and max Baudrate available is 9600 Bd
    Using protocol mode C, send acknowledge b'\x06050\r\n' and tell smartmeter to switch to 9600 Baud
    Reading OBIS data from smartmeter
    Ab hier ist schluss, hat jemand da evtl. einen Tipp für mich?

    Danke und Gruß Felix

    Einen Kommentar schreiben:


  • bmx
    antwortet
    Wenn ich wieder Zeit habe mache ich das, ja.

    Einen Kommentar schreiben:


  • manu241
    antwortet
    Hallo Bernd,

    danke für den entscheidenden Tipp.

    So passt es. Kannst du diese Schreibweise noch mit in die Doku aufnehmen?

    Gruß und besten Dank Manuel

    Einen Kommentar schreiben:


  • manu241
    antwortet
    Hallo Bernd,

    danke für deine Unterstützung.

    Ich habe dein Beispiel eingefügt:

    Code:
                zaehlerstand:
                    dlms_obis_code: 1-0:1.8.0*255|0|Value|num
                    type: num
                    database: 'yes'
                    visu_acl: rw
    Allerdings findet das Plugin dann den Wert nicht.

    Die Ausgabe im Webif sieht so aus:

    0-0:F.F.0*255(0000000)
    1-0:0.0.0*255(68362010)
    1-0:0.0.1*255(1ISK0068362010)
    1-0:0.2.0*255(1.06)
    0-0:C.1.6*255(391B)
    0-0:C.1.0*255(68362010)
    1-0:0.9.1*255(090807)
    1-0:0.9.2*255(1181023)
    1-0:1.7.0*255(0.562*kW)
    1-0:1.8.0*255(0002103.358*kWh)
    1-0:0.1.0*255(7)
    1-0:0.1.2*01(1810010000)
    1-0:0.1.2*02(1809010000)
    1-0:0.1.2*03(1808010000)
    1-0:0.1.2*04(1807010000)
    1-0:0.1.2*05(1806010000)
    1-0:0.1.2*06(1805010000)
    1-0:0.1.2*07(1804041511)
    1-0:0.1.2*08()
    1-0:0.1.2*09()
    1-0:0.1.2*10()
    1-0:0.1.2*11()
    1-0:0.1.2*12()
    1-0:0.1.2*13()
    1-0:0.1.2*14()
    1-0:0.1.2*15()
    1-0:1.8.0*01(0001856.137*kWh)
    1-0:1.8.0*02(0001537.730*kWh)
    1-0:1.8.0*03(0001253.794*kWh)
    1-0:1.8.0*04(0000903.992*kWh)
    1-0:1.8.0*05(0000568.108*kWh)
    1-0:1.8.0*06(0000250.807*kWh)
    1-0:1.8.0*07(0000000.000*kWh)
    1-0:1.8.0*08()
    1-0:1.8.0*09()
    1-0:1.8.0*10()
    1-0:1.8.0*11()
    1-0:1.8.0*12()
    1-0:1.8.0*13()
    1-0:1.8.0*14()
    1-0:1.8.0*15()
    0-0:C.51.1*255(4)
    0-0:C.51.2*255(1180404151135)
    1-0:C.53.1*255(0000000.004*kWh)
    0-0:C.53.5*255(00000)
    !
    Gruß Manuel

    Einen Kommentar schreiben:

Lädt...
X