HM-CC-TC - controlMode undef lit:1

Begonnen von hypnorex, 06 Mai 2014, 20:09:17

Vorheriges Thema - Nächstes Thema

hypnorex

Verschiedene Variablen werden vom HM-CC-TC als undef lit:1 oder 0 angezeigt:

Hier eine Auswahl:

controlMode undef lit:1 2014-05-06 20:01:42
day-temp 22 C 2014-05-06 20:01:42
decalcDay undef lit:0 2014-05-06 20:01:42
desired-temp 22.0 2014-05-06 19:58:48
displayMode undef lit:1 2014-05-06 20:01:42
displayTemp undef lit:0 2014-05-06 20:01:42
displayTempUnit undef lit:0 2014-05-06 20:01:42

Was läuft hier falsch? Habe schon fhem und auch das HM-CC-TC neu gestartet - keine Abhilfe.

Vielen Dank für eine Antwort.
Marco

franky08

#1
Such mal im Homatic Bereich, dass wurde schon mal beschrieben. Ist kein Fehler sondern hängt mit irgendeinem literal zusammen.


VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

hypnorex

Ich habe dazu folgendes gefunden:
"immer wenn das Register ein Literal ist und der Wert aber NICHT dekodiert ist kommt "undef lit" und der Wert"

Aber was bedeutet das? Das ist doch in meinem Zusammenhang ein Fehler?

Wie kann ich das Problem lösen?

Leider funktionieren so auch meine Skripte nicht mehr, da der controlMode nicht mehr "auto" etc. zurückliefert.

franky08

Da wird nur Martin was dazu sagen können. Ich habe auch 8 Homematic RTs bei mir im Einsatz und es funktioniert alles fehlerfrei obwohl ich ebenfalls diese undef lit Ausgabe habe.


VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

martinp876

hm - mir nicht klar, was sich beim Modul laden geändert hat.

mache einmal ein (in die Kommandozeile oder ein terminal pasten)
{foreach my $name (devspec2array("DEF=......")){\
foreach ((grep(/^channel_/,(keys %{$defs{$name}}))),$name){\
  my $n = $defs{$name}{$_}?$defs{$name}{$_}:$name;;\
  my @rl = grep /RegL/,keys %{$defs{$n}{READINGS}};;\
  foreach(@rl){my($l,$p)=split(":",$_);;$l =~ s/RegL_0//;;$p = $p?CUL_HM_name2Id($p):"00000000";;\
    CUL_HM_updtRegDisp($defs{$n},$l,$p);;}\
}}\
}

das refresht alle Register.

Ist es dann weg?

Gruss Martin

hypnorex

Hallo Martin,

das Skript ist zwar fehlerfrei gelaufen, hat aber keine Verbesserung gebracht.

Es gibt leider noch immer einige Variablen die auf undef lit: stehen.

Viele Grüße
Marco

Mr. P

Hej hypnorex,

bitte noch um etwas Geduld. Ich arbeite bereits mit Martin an dem Problem.
Sobald es etwas Neues gibt oder weitere Informationen benötigt werden, wird sich Martin bestimmt zu Wort melden! :-)
Greetz,
   Mr. P

martinp876

Hi Marco,

kannst du auch einmal die rohregister schicken von dem Device oder Channel der immernoch undef zeigt? Also die, die man mit attr expert 2 zu sehen bekommt?
Was sagt ein HMInfo configCheck?

Gruss Martin

hypnorex

Hallo Martin,

hier die RAWMSG:

E1DE93E,0000,BFBC7678,FF,FFCA,D5A2581DE93E1DEBB60000


Meinst Du das:

RegL_05:
01:09 02:4C 03:2C 04:22 05:18 06:28 07:00 08:58 09:00 0A:00 0B:2C 0C:22 0D:36 0E:30 0F:66 10:2C 11:87 12:2C 13:90 14:22 15:90 16:28 17:90 18:28 19:90 1A:28 1B:90 1C:28 1D:90 1E:28 1F:90 20:28 21:90 22:28 23:90 24:28 25:90 26:28 27:90 28:28 29:90 2A:28 2B:90 2C:28 2D:90 2E:28 2F:90 30:28 31:90 32:28 33:90 34:28 35:90 36:28 37:90 38:28 39:90 3A:28 3B:30 3C:22 3D:36 3E:30 3F:66 40:2C 41:87 42:2C 43:90 44:22 45:90 46:28 47:90 48:28 49:90 4A:28 4B:90 4C:28 4D:90 4E:28 4F:90 50:28 51:90 52:28 53:90 54:28 55:90 56:28 57:90 58:28 59:90 5A:28 5B:90 5C:28 5D:90 5E:28 5F:90 60:28 61:90 62:28 63:90 64:28 65:90 66:28 67:90 68:28 69:90 6A:28 6B:24 6C:22 6D:2C 6E:30 6F:66 70:22 71:87 72:2C 73:90 74:22 75:90 76:28 77:90 78:28 79:90 7A:28 7B:90 7C:28 7D:90 7E:28 7F:90 80:28 81:90 82:28 83:90 84:28 85:90 86:28 87:90 88:28 89:90 8A:28 8B:90 8C:28 8D:90 8E:28 8F:90 90:28 91:90 92:28 93:90 94:28 95:90 96:28 97:90 98:28 99:90 9A:28 9B:24 9C:22 9D:2C 9E:30 9F:66 A0:22 A1:87 A2:2C A3:90 A4:22 A5:90 A6:28 A7:90 A8:28 A9:90 AA:28 AB:90 AC:28 AD:90 AE:28 AF:90 B0:28 B1:90 B2:28 B3:90 B4:28 B5:90 B6:28 B7:90 B8:28 B9:90 BA:28 BB:90 BC:28 BD:90 BE:28 BF:90 C0:28 C1:90 C2:28 C3:90 C4:28 C5:90 C6:28 C7:90 C8:28 C9:90 CA:28 CB:24 CC:22 CD:2C CE:30 CF:66 D0:22 D1:87 D2:2C D3:90 D4:22 D5:90 D6:28 D7:90 D8:28 D9:90 DA:28 DB:90 DC:28 DD:90 DE:28 DF:90 E0:28 E1:90 E2:28 E3:90 E4:28 E5:90 E6:28 E7:90 E8:28 E9:90 EA:28 EB:90 EC:28 ED:90 EE:28 EF:90 F0:28 F1:90 F2:28 F3:90 F4:28 F5:90 F6:28 F7:90 F8:28 F9:90 FA:28 00:00

RegL_06:
01:24 02:22 03:2C 04:30 05:66 06:22 07:87 08:2C 09:90 0A:22 0B:90 0C:28 0D:90 0E:28 0F:90 10:28 11:90 12:28 13:90 14:28 15:90 16:28 17:90 18:28 19:90 1A:28 1B:90 1C:28 1D:90 1E:28 1F:90 20:28 21:90 22:28 23:90 24:28 25:90 26:28 27:90 28:28 29:90 2A:28 2B:90 2C:28 2D:90 2E:28 2F:90 30:28 31:24 32:22 33:2C 34:30 35:66 36:22 37:87 38:2C 39:90 3A:22 3B:90 3C:28 3D:90 3E:28 3F:90 40:28 41:90 42:28 43:90 44:28 45:90 46:28 47:90 48:28 49:90 4A:28 4B:90 4C:28 4D:90 4E:28 4F:90 50:28 51:90 52:28 53:90 54:28 55:90 56:28 57:90 58:28 59:90 5A:28 5B:90 5C:28 5D:90 5E:28 5F:90 60:28 00:00


Was genau interessiert Dich vom configCheck?

Vielen Dank
Marco


martinp876

Hi,

das Problem scheint zu sein, dass CUL_HM die variablen in HMConfig nicht updaten darf. Meine Perl-version erlaubt dies. ...
Im Anhang 2 dateine - konnt ihr einmal prüfen, ob es funktioniert?

Zitat{join",",keys %{$HMConfig::culHmRegDefine{boostPeriod}{litInv}} }
sollte ein ergebniss liefern

Gruss Martin

hypnorex

Hallo Martin,

leider keine Verbesserung. Funktioniert leider auch nicht mit den beiden geänderten Dateien.


Es wird folgendes geliefert:

6,1,4,3,0,2,5


Vielen Dank
Marco

martinp876

nun, wenn das ergebnis rauskommt sollte es prinzipiell klappen.
hast du noch einmal
Zitat{foreach my $name (devspec2array("DEF=......")){\
foreach ((grep(/^channel_/,(keys %{$defs{$name}}))),$name){\
  my $n = $defs{$name}{$_}?$defs{$name}{$_}:$name;;\
  my @rl = grep /RegL/,keys %{$defs{$n}{READINGS}};;\
  foreach(@rl){my($l,$p)=split(":",$_);;$l =~ s/RegL_0//;;$p = $p?CUL_HM_name2Id($p):"00000000";;\
    CUL_HM_updtRegDisp($defs{$n},$l,$p);;}\
}}\
}
probiert oder ein getConfig?

Gruss Martin


hypnorex

Vorhin hatte ich nur neu gestartet.

Habe nun ein getConfig und das Skript versucht.

Perfekt, es funktioniert wieder. Jetzt werden die korrekten Werte angezeigt.

Vielen Dank
Marco

Mr. P

Jap... Auch von meiner Seite grünes Licht!

@Martin: Thx a lot! :-)
Greetz,
   Mr. P

martinp876