[gelöst] DPT5.001 - Faktor 100/255 fehlt?

Begonnen von EIB-Fan, 09 Juni 2018, 19:48:25

Vorheriges Thema - Nächstes Thema

EIB-Fan

Hallo Andi,

habe heute ein Update durchgeführt und damit die aktuelle 10_KNX.pm geladen. Bisher hatte ich deine Vorab-Testversion im Einsatz.

Seit dem Update fahren meine Rollladen nicht mehr in die bisher üblichen Positionen. Mit dem Wert 100 bleibt die Rolllade etwa in der Mitte stehen.  ???

Hast du hier was geändert?

Gruß Jens

Andi291

Moin!

Ja...bin bis Dienstag unterwegs....schau ich mir an...

Beispiel?

EIB-Fan

Guten Morgen Andi,

habe das Device für eine Rolllade noch einmal neu angelegt nur mit Position und Status. Meine Rademacher-Rolladenmotoren haben einen integrierten KNX-Aktor.

Hier ein list:
Internals:
   DEF        1/1/13:dpt5.001:position 1/4/13:dpt5.001:status
   DEVNAME    R106M
   FIRSTGADNAME position
   GETSTRING  status:noArg position:noArg
   IODev      tul
   LASTInputDev tul
   MSGCNT     4
   NAME       R106M
   NR         80
   NTFY_ORDER 50-R106M
   SETSTRING  status:slider,0,1,100 position:slider,0,1,100
   STATE      38 %
   TYPE       KNX
   tul_MSGCNT 4
   tul_RAWMSG C011d8w0140d61
   tul_TIME   2018-06-10 07:21:20
   GADDETAILS:
     position:
       CODE       0110d
       GROUP      1/1/13
       MODEL      dpt5.001
       NO         1
       OPTION     
       RDNAMEGET  position-get
       RDNAMEPUT  position-put
       RDNAMESET  position-set
       SETLIST    :slider,0,1,100
     status:
       CODE       0140d
       GROUP      1/4/13
       MODEL      dpt5.001
       NO         2
       OPTION     
       RDNAMEGET  status-get
       RDNAMEPUT  status-put
       RDNAMESET  status-set
       SETLIST    :slider,0,1,100
   GADTABLE:
     0110d      position
     0140d      status
   OLDREADINGS:
   READINGS:
     2018-06-10 07:21:20   last-sender     1/1/216
     2018-06-10 07:21:19   position-set    38 %
     2018-06-10 07:21:20   state           38 %
     2018-06-10 07:21:20   status-get      38 %
     2018-06-10 07:21:09   status-set      37 %
Attributes:
   IODev      tul
   event-on-change-reading position.*,status.*
   group      Rollladen
   verbose    3
   widgetOverride position:slider,0,1,100


Gruß Jens

thorte

Hallo Andi,

gleiches Verhalten bei mir (ein DPT5.001 zum Dimmen des Lichts). Meine Beobachtung:

Bei setzen mit set schreibt er den Wert aus 0..255 auf den Bus , im Reading taucht dann der korrekte Wert mit Faktor 100/255 auf. Vom Bus empfangene Werte werden korrekt in die Readings geschrieben.

Gruß Thorsten

knxler

Hallo Andi,

ich habe auch dieses Problem. Die Rollladen werden bei 100% ca. auf Mittelposition gefahren.
Ich habe dann eine ältere Version wieder eingespielt und es läuft wieder wie gewohnt.

Gruß Martin

Andi291

Fixed...war ein dummer Fehler. Ist morgen früh verfügbar.

EIB-Fan

Hallo Andi,

ich habe gerade ein Update durchgeführt. Leider besteht das von mir geschilderte Problem immer noch.

Thorthe beschreibt die Problematik gut.

Ich habe mal in der Version vom 16.04.2018 geschaut. Hier ist der dpt5 anders aufgebaut. Allerdings kann ich hier nichts weiter erläutern, da mir da einfach die Kenntnisse fehlen.


elsif ($code eq "dpt5")
{
$numval = hex ($value);
$state = $numval;

#correct value
$state -= $offset if (defined ($offset));
$state *= $factor if (defined ($factor));

$state = sprintf ("%.0f", $state);
}


Vielleicht hilft das weiter.

Vielen Dank in diesem Zusammenhang für deine bisherige Arbeit!!!

Gruß Jens


Andi291

Komisch, ist beim Chekcin was schief gelaufen...

Morgen wird wieder mal alles gut :-)

Tobster1977

Vielen Dank Andi.
Bewundernswert, was manche können  ;)

funktioniert es jetzt, dann würde ich mir das Update auch einspielen...?
Viele Grüße

EIB-Fan

Hallo Andi,

mit der aktuellen Version ist das Problem behoben.

Vielen Dank!

Gruß Jens

speedschmidt

#10
Hallo zusammen,

bei mir besteht der Fehler immer noch:

Wenn ich "set MarieSollwertLamelle g1 100" oder dies mit dem Slider im Device tue, dann bekomme ich im State eine 39% angezeigt. Oder soll das so richtig sein?. Hier mal mein list vom Device.


Internals:
   DEF        14/3/7:dpt5.001
   DEVNAME    MarieSollwertLamelle
   FIRSTGADNAME g1
   GETSTRING  g1:noArg
   IODev      tul
   NAME       MarieSollwertLamelle
   NR         602
   NTFY_ORDER 50-MarieSollwertLamelle
   SETSTRING  g1:slider,0,1,100
   STATE      39 %
   TYPE       KNX
   GADDETAILS:
     g1:
       CODE       0e307
       GROUP      14/3/7
       MODEL      dpt5.001
       NO         1
       OPTION     
       RDNAMEGET  getG1
       RDNAMEPUT  putG1
       RDNAMESET  setG1
       SETLIST    :slider,0,1,100
   GADTABLE:
     0e307      g1
   READINGS:
     2018-06-10 21:17:26   STATE           100 %
     2018-07-05 20:47:56   setG1           39 %
     2018-07-05 20:47:56   state           39 %
Attributes:
   IODev      tul
   group      SollwerteLamellen
   room       Sonnenschutz


Das ist bei den übrigen Devices die ich da noch habe auch so. Was auch zu 100% sicher ist: DAS HAT SCHONMAL FUNKTIONIERT!!! Hier mein Logfile-Auszug:


2018-06-11_12:00:00 MarieSollwertLamelle setG1: 60 %
2018-06-11_12:00:00 MarieSollwertLamelle 60 %
2018-06-11_13:00:01 MarieSollwertLamelle setG1: 70 %
2018-06-11_13:00:01 MarieSollwertLamelle 70 %
2018-06-11_14:00:00 MarieSollwertLamelle setG1: 80 %
2018-06-11_14:00:00 MarieSollwertLamelle 80 %
2018-06-11_15:00:00 MarieSollwertLamelle setG1: 90 %
2018-06-11_15:00:00 MarieSollwertLamelle 90 %
2018-06-11_16:00:00 MarieSollwertLamelle setG1: 100 %
2018-06-11_16:00:00 MarieSollwertLamelle 100 %
2018-06-12_12:00:00 MarieSollwertLamelle setG1: 24 %
2018-06-12_12:00:00 MarieSollwertLamelle 24 %
2018-06-12_13:00:00 MarieSollwertLamelle setG1: 27 %
2018-06-12_13:00:00 MarieSollwertLamelle 27 %
2018-06-12_14:00:00 MarieSollwertLamelle setG1: 31 %
2018-06-12_14:00:00 MarieSollwertLamelle 31 %
2018-06-12_15:00:00 MarieSollwertLamelle setG1: 35 %
2018-06-12_15:00:00 MarieSollwertLamelle 35 %
2018-06-12_16:00:00 MarieSollwertLamelle setG1: 39 %


Was muss ich ändern, damit das nach dem Update wieder funzt?

Schmitti

Andi291


speedschmidt

Hallo Andi,

habe ich noch nie machen müssen - wie geht das?

EIB-Fan

Hallo speedschmidt,

wenn du das mit einem Befehl für alle Device machen möchtest, dann so:

deletereading .* STATE

Viel Erfolg!

Gruß Jens

speedschmidt

Hallo Jens,

habe ich so ausgeführt und ein return bekommen, dass alles gelöscht wurde. Danach nochmal:


set MarieSollwertLamelle g1 100


Im state steht immer noch 39 drin. Hast du noch Ideen, muss ich fhem nochmal neu starten oder so?

Schmitti

Andi291

Nein, bei mir geht alles.
Mach zur Sicherheit noch ein update.

speedschmidt

habe ich erst gestern gemacht (Update).

speedschmidt

Hallo zusammen,

ein

shutdown restart


war wohl noch nötig. Seit diesem funktioniert es wieder. Besten Dank und schönen Sonntag noch

Schmitt

JoeALLb

Sollte noch jemand davon betroffen sein:
Mit
deletereading TYPE=KNX STATE
beeinflusst ihr keine anderen Module!

sG
Joe
FHEM-Server auf IntelAtom+Debian (8.1 Watt), KNX,
RasPi-2 Sonos-FHEM per FHEM2FHEM,RasPi-3 Versuchs-RasPi für WLAN-Tests
Gateways: DuoFern Stick, CUL866 PCA301, CUL HM, HMLan, JeeLink, LaCrosse,VCO2
Synology. Ardurino UNO für 1-Wire Tests, FB7270