Zitat von: Shadow3561 am 18 Januar 2026, 18:50:54Moin,
probiere mal die Version im Anhang. Bei mir klappt das mit dem DeviceInfo.
Mit freundlichen Grüßen
um Zeile 2911:
< my $newPowerState = DENON_GetValue('SWITCH', ReadingsVal( $name, "state", "on"));
< return DENON_AVR_Command_SetPower($hash, $newPowerState);
---
> my $reading = defined($a[2]) ? $a[2] : "stateAV";
> my $newPowerState = DENON_GetValue('SWITCH', ReadingsVal( $name, $reading, "on"));
> Log3 $name, 4, "jG982A DENON_AVR_SET - toggle reading: $reading / new-value: $newPowerState";
> if ($reading eq "stateAV") {
> return DENON_AVR_Command_SetPower($hash, $newPowerState);
> }
> else {
> return DENON_AVR_Command_SetPowerZone($hash, $newPowerState,$reading);
> }
neue Sub:
sub DENON_AVR_Command_SetPowerZone($$$) {
my ($hash, $power, $zone) = @_;
my $name = $hash->{NAME};
my %map = ( "zoneMain" => "ZM", "zone2" => "Z2", "zone3" => "Z3", "zone4" => "Z4" );
my $readingName = ($zone ne "") ? $zone : "undefined";
my $internalName = $map{$readingName} if exists $map{$readingName};
# Zone poweron/of
if ( ($internalName !~ /^Z([M2-4])/) ) {
Log3 $name, 1, "DENON_AVR_Command_SetPower - SetPower unbekannte zone: $zone";
return undef;
}
my $msg=$internalName.uc($power); # ON|OFF
my $event=$zone;
my $value=lc($power);
Log3 $name, 5, "DENON_AVR_Command_SetPower, msg: $msg, event: $event, value: $value";
DENON_AVR_Write($hash, $msg, $event);
readingsBulkUpdate($hash, $readingName, $value);
readingsBulkUpdate($hash, "stateAV", DENON_AVR_GetStateAV($hash));
readingsEndUpdate($hash, 1);
return undef;
}
[Unit]
Description=Gunicorn Daemon for Soundcork
After=network.target
[Service]
User=soundcork
WorkingDirectory=/home/soundcork/soundcork/soundcork
ExecStart=/home/soundcork/soundcork/.venv/bin/gunicorn -c gunicorn_conf.py main:app
[Install]
WantedBy=multi-user.target
Zitat von: 300P am 19 Januar 2026, 08:36:53Dadurch werden von der internen Steuerungslogik der WP bereits gedämpfte Temperaturen (bei mir je nach Heizkreis möglich) zur Eigensteuerung berechnet.Genau, ist bei mir auch so.
Zitat von: TheTrumpeter am 19 Januar 2026, 07:08:03Meine Wärmepumpe, vmtl. auch viele weitere Modelle, "arbeiten" für die Heizbedarfsberechnung nicht mit der Außentemperatur, sondern mit dem Durchschnitt der letzten x Stunden. x sollte dabei auf die Charakteristik des Hauses abgestimmt sein: wenig Speichermasse => geringe Dämpfung, große Speichermasse => große Dämpfung.
Zitat von: DS_Starter am 18 Januar 2026, 18:17:55Mit der kommenden Version wird beim Consumertyp "heatpump" der Schlüssel swstate Pflicht. Dadurch kann ich der KI explizit die Laufzeit der WP mitteilen was ich für die weiteren Semantiken benötige.Genau so habe ich das auch von Anfang an umgesetzt, damit die Solarprognose die WW-Bereitung steuern kann.
Wenn man, wie du es getan hast, nur in dem heatpump-Consumer die Schaltzeiten für Wärmeerzeugung erfasst und die anderen Zweige für WW und Heizstab nicht als Consumertyp "heatpump" definiert, dann fallen diese Zeiten in der expliziten Betrachtung des Heizverhaltens (oder Kühlverhaltens) in den vorgesehenen Semantiken heraus.
Also ich denke das wird die KI verstehen.
Zitat von: cs-online am 16 Januar 2026, 17:23:37ich bekomme seit kurzem immer viele dieser Logeinträge:Das ist bei mir auch so. Ich habe zwei Installationen . Bei einer sehe ich die Einträge verhältnismäßig oft - bei der anderen nur gelegentlich.HttpUtils_Connect2NonblockingSSL: connection handle in Echos was replaced, terminating connection