Noch eine Kleinigkeit. Hin und wieder bekomme ich beim Wechseln des Input diese Fehlermeldung
2022.07.29 20:15:43 1: PERL WARNING: Argument "M" isn't numeric in division (/) at ./FHEM/70_DENON_AVR.pm line 1805.
Hier meine ich, die Ursache entdeckt zu haben. Es gibt wohl im Denon den Parameter Raumgröße (PSRSZ), und der kann medium (M) sein. Das wird aktuell im Sourcecode nicht gesondert behandelt, wodurch das M fälschlich als $volume verarbeitet wird, was zu der Fehlermeldung führt. Als Lösung böte sich an, das RSZ im PS-Array zu ergänzen:
'PS' => {#Sound-Parameter
'TONE CTRL' => 'toneControl',
'RSZ' => {
'RSZ' => 'roomSize',
'S' => 'small',
'MS' => 'mediumSmall',
'M' => 'medium',
'ML' => 'mediumLarge',
'L' => 'large'
},
...
und ab Zeile 1768 etwa
elsif($1 eq "RSZ")
{
my $status = DENON_GetValue('PS', $1, $1);
my $value = DENON_GetValue('PS', $1, $2);
readingsBulkUpdate($hash, $status, $value) if($status ne "unknown" || $value ne "unknown");
$return = $status." ".$value;
}
einzufügen (nur ein Vorschlag, nicht selber getestet).
Bei der Gelegenheit wäre es schön, wenn der Tippfehler Sourround in Surround im Array 'CV' korrigiert würde. Sollte m.M.n. nur den Namen des Readings fixen.
Danke, Michael