mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-03 16:56:54 +00:00
70_DENON_AVR: added and fixed commands and readings
git-svn-id: https://svn.fhem.de/fhem/trunk@25640 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
3044ab71e7
commit
78926c205d
@ -1,5 +1,6 @@
|
|||||||
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
|
# Add changes at the top of the list. Keep it in ASCII, and 80-char wide.
|
||||||
# Do not insert empty lines here, update check depends on it.
|
# Do not insert empty lines here, update check depends on it.
|
||||||
|
- change: 70_DENON_AVR: added and fixed readings and commands (thx All-Ex)
|
||||||
- bugfix: 72_TA_CMI_JSON: skipping invalid JSON
|
- bugfix: 72_TA_CMI_JSON: skipping invalid JSON
|
||||||
- feature: 50_Signalbot: text formatting and emoticons via unicode
|
- feature: 50_Signalbot: text formatting and emoticons via unicode
|
||||||
- feature: 70_ESCVP21net.pm: toggle, TW7400, new Readings
|
- feature: 70_ESCVP21net.pm: toggle, TW7400, new Readings
|
||||||
|
@ -71,7 +71,7 @@ my $DENON_db = {
|
|||||||
'FDL' => 'Front-Dolby-Left',
|
'FDL' => 'Front-Dolby-Left',
|
||||||
'FDR' => 'Front-Dolby-Right',
|
'FDR' => 'Front-Dolby-Right',
|
||||||
'SDL' => 'Surround-Dolby-Left',
|
'SDL' => 'Surround-Dolby-Left',
|
||||||
'SDR' => 'Surround,Dolby-Right',
|
'SDR' => 'Surround-Dolby-Right',
|
||||||
'BDL' => 'Back-Dolby-Left',
|
'BDL' => 'Back-Dolby-Left',
|
||||||
'BDR' => 'Back-Dolby-Right',
|
'BDR' => 'Back-Dolby-Right',
|
||||||
'SHL' => 'Surround-Height-Left',
|
'SHL' => 'Surround-Height-Left',
|
||||||
@ -184,11 +184,12 @@ my $DENON_db = {
|
|||||||
'Virtual' => 'VIRTUAL',
|
'Virtual' => 'VIRTUAL',
|
||||||
'Left' => 'LEFT',
|
'Left' => 'LEFT',
|
||||||
'Right' => 'RIGHT',
|
'Right' => 'RIGHT',
|
||||||
'Quick1' => 'QUICK1',
|
'Quick0' => '0',
|
||||||
'Quick2' => 'QUICK2',
|
'Quick1' => '1',
|
||||||
'Quick3' => 'QUICK3',
|
'Quick2' => '2',
|
||||||
'Quick4' => 'QUICK4',
|
'Quick3' => '3',
|
||||||
'Quick5' => 'QUICK5',
|
'Quick4' => '4',
|
||||||
|
'Quick5' => '5',
|
||||||
'Smart1' => 'SMART1',
|
'Smart1' => 'SMART1',
|
||||||
'Smart2' => 'SMART2',
|
'Smart2' => 'SMART2',
|
||||||
'Smart3' => 'SMART3',
|
'Smart3' => 'SMART3',
|
||||||
@ -218,6 +219,8 @@ my $DENON_db = {
|
|||||||
'Dolby_Audio_Digital-Neural:X' => 'DOLBY AUDIO-DD+NEURAL:X',
|
'Dolby_Audio_Digital-Neural:X' => 'DOLBY AUDIO-DD+NEURAL:X',
|
||||||
'Neural:X' => 'NEURAL:X',
|
'Neural:X' => 'NEURAL:X',
|
||||||
'Virtual' => 'VIRTUAL',
|
'Virtual' => 'VIRTUAL',
|
||||||
|
'Left' => 'LEFT',
|
||||||
|
'Right' => 'RIGHT',
|
||||||
},
|
},
|
||||||
'MS-set_surroundMode' => { #to set surroundMode
|
'MS-set_surroundMode' => { #to set surroundMode
|
||||||
'Movie' => 'MOVIE',
|
'Movie' => 'MOVIE',
|
||||||
@ -275,6 +278,16 @@ my $DENON_db = {
|
|||||||
'TONE CTRL' => 'toneControl',
|
'TONE CTRL' => 'toneControl',
|
||||||
'DRC' => 'dynamicCompression',
|
'DRC' => 'dynamicCompression',
|
||||||
'LFC' => 'audysseyLFC',
|
'LFC' => 'audysseyLFC',
|
||||||
|
'CNTAMT' => {
|
||||||
|
'CNTAMT' => 'audysseyLFCAmount',
|
||||||
|
'1' => '1',
|
||||||
|
'2' => '2',
|
||||||
|
'3' => '3',
|
||||||
|
'4' => '4',
|
||||||
|
'5' => '5',
|
||||||
|
'6' => '6',
|
||||||
|
'7' => '7',
|
||||||
|
},
|
||||||
'LFE' => 'lowFrequencyEffects',
|
'LFE' => 'lowFrequencyEffects',
|
||||||
'BAS' => 'bass',
|
'BAS' => 'bass',
|
||||||
'TRE' => 'treble',
|
'TRE' => 'treble',
|
||||||
@ -297,6 +310,13 @@ my $DENON_db = {
|
|||||||
'OFF' => 'off',
|
'OFF' => 'off',
|
||||||
},
|
},
|
||||||
'DYNEQ' => 'dynamicEQ',
|
'DYNEQ' => 'dynamicEQ',
|
||||||
|
'REFLEV' => {
|
||||||
|
'REFLEV' => 'dynamicEQRefLevelOffset',
|
||||||
|
'0' => '0',
|
||||||
|
'5' => '5',
|
||||||
|
'10' => '10',
|
||||||
|
'15' => '15',
|
||||||
|
},
|
||||||
'DYNVOL' => {
|
'DYNVOL' => {
|
||||||
'DYNVOL' => 'dynamicVolume',
|
'DYNVOL' => 'dynamicVolume',
|
||||||
'HEV' => 'heavy',
|
'HEV' => 'heavy',
|
||||||
@ -310,7 +330,13 @@ my $DENON_db = {
|
|||||||
'BAL' => 'balance',
|
'BAL' => 'balance',
|
||||||
'SDB' => 'sdb',
|
'SDB' => 'sdb',
|
||||||
'SDI' => 'sourceDirect',
|
'SDI' => 'sourceDirect',
|
||||||
|
'RSTR' => {
|
||||||
|
'RSTR' => 'audioRestorer',
|
||||||
|
'OFF' => 'off',
|
||||||
|
'LOW' => 'low',
|
||||||
|
'MED' => 'medium',
|
||||||
|
'HI' => 'high',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
'PV' => {
|
'PV' => {
|
||||||
'OFF' => 'Off',
|
'OFF' => 'Off',
|
||||||
@ -525,7 +551,13 @@ my $DENON_db = {
|
|||||||
'27' => 'na 27',
|
'27' => 'na 27',
|
||||||
'28' => 'na 28',
|
'28' => 'na 28',
|
||||||
'29' => 'na 29',
|
'29' => 'na 29',
|
||||||
'30' => 'na 30',
|
'30' => 'na 30',
|
||||||
|
'31' => 'na 31',
|
||||||
|
'32' => 'DTS:X MSTR',
|
||||||
|
'33' => 'na 33',
|
||||||
|
'34' => 'na 34',
|
||||||
|
'35' => 'na 35',
|
||||||
|
'36' => 'na 36',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@ -681,7 +713,7 @@ my $DENON_db = {
|
|||||||
'DOLBY AUDIO-DD+' => 'Dolby Audio - Dolby Digital Plus',
|
'DOLBY AUDIO-DD+' => 'Dolby Audio - Dolby Digital Plus',
|
||||||
'DOLBY AUDIO-DD+DSUR' => 'Dolby Audio - Dolby Digital + DSur',
|
'DOLBY AUDIO-DD+DSUR' => 'Dolby Audio - Dolby Digital + DSur',
|
||||||
'DOLBY AUDIO-DD+NEURAL:X' => 'Dolby Audio - Dolby Digital + Neural:X',
|
'DOLBY AUDIO-DD+NEURAL:X' => 'Dolby Audio - Dolby Digital + Neural:X',
|
||||||
'DOLBY AUDIO-DSUR' => 'Dolby Audio - Dolby Surround',
|
'DOLBY AUDIO-DSUR' => 'Dolby Audio + DSur',
|
||||||
'DOLBY AUDIO-TRUEHD' => 'Dolby Audio - Dolby TrueHD',
|
'DOLBY AUDIO-TRUEHD' => 'Dolby Audio - Dolby TrueHD',
|
||||||
'DOLBY AUDIO-TRUEHD+DSUR' => 'Dolby Audio - TrueHD + DSur',
|
'DOLBY AUDIO-TRUEHD+DSUR' => 'Dolby Audio - TrueHD + DSur',
|
||||||
'DOLBY AUDIO-TRUEHD+NEURAL:X' => 'Dolby Audio - TrueHD + Neural:X',
|
'DOLBY AUDIO-TRUEHD+NEURAL:X' => 'Dolby Audio - TrueHD + Neural:X',
|
||||||
@ -737,10 +769,12 @@ my $DENON_db = {
|
|||||||
'DTS HD TR' => 'DTS-HD TR',
|
'DTS HD TR' => 'DTS-HD TR',
|
||||||
'DTS HD' => 'DTS-HD',
|
'DTS HD' => 'DTS-HD',
|
||||||
'DTS HD+DS' => 'DTS-HD+DS',
|
'DTS HD+DS' => 'DTS-HD+DS',
|
||||||
|
'DTS HD+DSUR' => 'DTS-HD + DSur',
|
||||||
'DTS HD+NEO:6' => 'DTS-HD+Neo:6',
|
'DTS HD+NEO:6' => 'DTS-HD+Neo:6',
|
||||||
'DTS HD+NEO:X C' => 'DTS-HD+Neo:X C',
|
'DTS HD+NEO:X C' => 'DTS-HD+Neo:X C',
|
||||||
'DTS HD+NEO:X G' => 'DTS-HD+Neo:X G',
|
'DTS HD+NEO:X G' => 'DTS-HD+Neo:X G',
|
||||||
'DTS HD+NEO:X M' => 'DTS-HD+Neo:X M',
|
'DTS HD+NEO:X M' => 'DTS-HD+Neo:X M',
|
||||||
|
'DTS HD+NEURAL:X' => 'DTS-HD + Neural:X',
|
||||||
'DTS HD+PL2X C' => 'DTS-HD+PL2X C',
|
'DTS HD+PL2X C' => 'DTS-HD+PL2X C',
|
||||||
'DTS HD+PL2X M' => 'DTS-HD+PL2X M',
|
'DTS HD+PL2X M' => 'DTS-HD+PL2X M',
|
||||||
'DTS HD+PL2Z H' => 'DTS-HD+PL2Z H',
|
'DTS HD+PL2Z H' => 'DTS-HD+PL2Z H',
|
||||||
@ -762,11 +796,15 @@ my $DENON_db = {
|
|||||||
'DTS+PL2Z H' => 'DTS+PL2Z H',
|
'DTS+PL2Z H' => 'DTS+PL2Z H',
|
||||||
'DTS96 ES MTRX' => 'DTS 96 ES MTRX',
|
'DTS96 ES MTRX' => 'DTS 96 ES MTRX',
|
||||||
'DTS96/24' => 'DTS 96/24',
|
'DTS96/24' => 'DTS 96/24',
|
||||||
|
'DTS:X MSTR' => 'DTX:X MSTR',
|
||||||
|
'HD+NEURAL:X' => 'DTS-HD + Neural:X',
|
||||||
'M CH IN+DOLBY EX' => 'Multi Ch In',
|
'M CH IN+DOLBY EX' => 'Multi Ch In',
|
||||||
'M CH IN+DS' => 'Multi Ch In+DS',
|
'M CH IN+DS' => 'Multi Ch In+DS',
|
||||||
|
'M CH IN+DSUR' => 'Multi Ch In + DSur',
|
||||||
'M CH IN+NEO:X C' => 'Multi Ch In+Neo:X C',
|
'M CH IN+NEO:X C' => 'Multi Ch In+Neo:X C',
|
||||||
'M CH IN+NEO:X G' => 'Multi Ch In+Neo:X G',
|
'M CH IN+NEO:X G' => 'Multi Ch In+Neo:X G',
|
||||||
'M CH IN+NEO:X M' => 'Multi Ch In+Neo:X M',
|
'M CH IN+NEO:X M' => 'Multi Ch In+Neo:X M',
|
||||||
|
'M CH IN+NEURAL:X' => 'Multi Ch In + Neural:X',
|
||||||
'M CH IN+PL2X C' => 'Multi Ch In+PL2X C',
|
'M CH IN+PL2X C' => 'Multi Ch In+PL2X C',
|
||||||
'M CH IN+PL2X M' => 'Multi Ch In+PL2X M',
|
'M CH IN+PL2X M' => 'Multi Ch In+PL2X M',
|
||||||
'M CH IN+PL2Z H' => 'Multi Ch In+PL2Z H',
|
'M CH IN+PL2Z H' => 'Multi Ch In+PL2Z H',
|
||||||
@ -776,7 +814,7 @@ my $DENON_db = {
|
|||||||
'MULTI CH IN' => 'Multi Ch In',
|
'MULTI CH IN' => 'Multi Ch In',
|
||||||
'NEO:6 C DSX' => 'Neo:6 C DSX',
|
'NEO:6 C DSX' => 'Neo:6 C DSX',
|
||||||
'NEO:6 M DSX' => 'Neo:6 M DSX',
|
'NEO:6 M DSX' => 'Neo:6 M DSX',
|
||||||
'NEURAL:X' => 'DTS Neural:X',
|
'NEURAL:X' => 'DTS + Neural:X',
|
||||||
'PL DSX' => 'PL DSX',
|
'PL DSX' => 'PL DSX',
|
||||||
'PL2 C DSX' => 'PL2 C DSX',
|
'PL2 C DSX' => 'PL2 C DSX',
|
||||||
'PL2 G DSX' => 'PL2 G DSX',
|
'PL2 G DSX' => 'PL2 G DSX',
|
||||||
@ -1602,6 +1640,7 @@ DENON_AVR_Parse(@)
|
|||||||
}
|
}
|
||||||
readingsBulkUpdate($hash, "power", $power);
|
readingsBulkUpdate($hash, "power", $power);
|
||||||
readingsBulkUpdate($hash, "state", $power);
|
readingsBulkUpdate($hash, "state", $power);
|
||||||
|
DENON_AVR_Write($hash, "TR?", "query"); #Query Trigger Control
|
||||||
DENON_AVR_GetStateAV($hash);
|
DENON_AVR_GetStateAV($hash);
|
||||||
|
|
||||||
$return = $power;
|
$return = $power;
|
||||||
@ -1689,6 +1728,24 @@ DENON_AVR_Parse(@)
|
|||||||
$return = "volume/volumeStraight ".($volume / 10)."/".($volume / 10 - 80);
|
$return = "volume/volumeStraight ".($volume / 10)."/".($volume / 10 - 80);
|
||||||
$hash->{helper}{volume} = $volume / 10;
|
$hash->{helper}{volume} = $volume / 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#channel volume
|
||||||
|
elsif ($msg =~ /^CV(.+)\s(\d\d\d?)/)
|
||||||
|
{
|
||||||
|
my $speaker = $1;
|
||||||
|
my $level = $2;
|
||||||
|
if (length($level) == 2)
|
||||||
|
{
|
||||||
|
$level = $level."0";
|
||||||
|
}
|
||||||
|
if (defined($DENON_db->{"CV"}->{$speaker})) {
|
||||||
|
my $reading = "channelVolume" . $DENON_db->{"CV"}{$speaker};
|
||||||
|
my $value = $level / 10 - 50;
|
||||||
|
readingsBulkUpdate($hash, $reading, $value);
|
||||||
|
$return = $reading." ".$value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
#Sound Parameter
|
#Sound Parameter
|
||||||
elsif ($msg =~ /^PS(.+)/)
|
elsif ($msg =~ /^PS(.+)/)
|
||||||
{
|
{
|
||||||
@ -1763,12 +1820,26 @@ DENON_AVR_Parse(@)
|
|||||||
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
||||||
$return = $name." ".$status;
|
$return = $name." ".$status;
|
||||||
}
|
}
|
||||||
|
elsif($parameter =~ /^(CNTAMT) 0(\d)/)
|
||||||
|
{
|
||||||
|
my $name = DENON_GetValue('PS', $1, $1);
|
||||||
|
my $status = DENON_GetValue('PS', $1, $2);
|
||||||
|
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
||||||
|
$return = $name." ".$status;
|
||||||
|
}
|
||||||
elsif($parameter =~ /^(DYNEQ) (.+)/)
|
elsif($parameter =~ /^(DYNEQ) (.+)/)
|
||||||
{
|
{
|
||||||
my $name = DENON_GetValue('PS', $1);
|
my $name = DENON_GetValue('PS', $1);
|
||||||
readingsBulkUpdate($hash, $name, lc($2)) if($name ne "unknown");
|
readingsBulkUpdate($hash, $name, lc($2)) if($name ne "unknown");
|
||||||
$return = $name." ".lc($2);
|
$return = $name." ".lc($2);
|
||||||
}
|
}
|
||||||
|
elsif($parameter =~ /^(REFLEV) (\d\d?)/)
|
||||||
|
{
|
||||||
|
my $name = DENON_GetValue('PS', $1, $1);
|
||||||
|
my $status = DENON_GetValue('PS', $1, $2);
|
||||||
|
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
||||||
|
$return = $name." ".$status;
|
||||||
|
}
|
||||||
elsif($parameter =~ /^(DYNVOL) (.+)/)
|
elsif($parameter =~ /^(DYNVOL) (.+)/)
|
||||||
{
|
{
|
||||||
my $name = DENON_GetValue('PS', $1, $1);
|
my $name = DENON_GetValue('PS', $1, $1);
|
||||||
@ -1776,6 +1847,13 @@ DENON_AVR_Parse(@)
|
|||||||
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
||||||
$return = $name." ".$status;
|
$return = $name." ".$status;
|
||||||
}
|
}
|
||||||
|
elsif($parameter =~ /^(RSTR) (.+)/)
|
||||||
|
{
|
||||||
|
my $name = DENON_GetValue('PS', $1, $1);
|
||||||
|
my $status = DENON_GetValue('PS', $1, $2);
|
||||||
|
readingsBulkUpdate($hash, $name, $status) if($name ne "unknown" || $status ne "unknown");
|
||||||
|
$return = $name." ".$status;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#Input select
|
#Input select
|
||||||
elsif ($msg =~ /^SI(.+)/)
|
elsif ($msg =~ /^SI(.+)/)
|
||||||
@ -1836,8 +1914,8 @@ DENON_AVR_Parse(@)
|
|||||||
#quickselect
|
#quickselect
|
||||||
elsif ($msg =~ /^MSQUICK(.+)/)
|
elsif ($msg =~ /^MSQUICK(.+)/)
|
||||||
{
|
{
|
||||||
my $quick = DENON_GetValue("MS", "QUICK".$1);
|
my $quick = DENON_GetValue("MS", "Quick".$1);
|
||||||
if ($1 =~ /^(1|2|3|4)/) {
|
if ($1 =~ /^(0|1|2|3|4)/) {
|
||||||
readingsBulkUpdate($hash, "quickselect", $quick) if($quick ne "unknown");
|
readingsBulkUpdate($hash, "quickselect", $quick) if($quick ne "unknown");
|
||||||
$return = "quickselect ".$quick;
|
$return = "quickselect ".$quick;
|
||||||
}
|
}
|
||||||
@ -2312,7 +2390,7 @@ DENON_AVR_Parse(@)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
if($msg eq "CV END")
|
if($msg eq "CVEND")
|
||||||
{
|
{
|
||||||
$return = "ignored";
|
$return = "ignored";
|
||||||
}
|
}
|
||||||
@ -2452,8 +2530,11 @@ DENON_AVR_Set($@)
|
|||||||
my @resolution = ();
|
my @resolution = ();
|
||||||
my @resolutionHDMI = ();
|
my @resolutionHDMI = ();
|
||||||
my @tuner = ();
|
my @tuner = ();
|
||||||
|
my @audysseyLFCAmount = ();
|
||||||
my @multiEQ = ();
|
my @multiEQ = ();
|
||||||
|
my @dynamicEQRefLevelOffset = ();
|
||||||
my @dynvol = ();
|
my @dynvol = ();
|
||||||
|
my @audioRestorer = ();
|
||||||
my $select = "quick";
|
my $select = "quick";
|
||||||
my $sliderSraight = "-80,0.5,18,1 ";
|
my $sliderSraight = "-80,0.5,18,1 ";
|
||||||
my $slider = "0,0.5,98,1 ";
|
my $slider = "0,0.5,98,1 ";
|
||||||
@ -2515,16 +2596,31 @@ DENON_AVR_Set($@)
|
|||||||
foreach my $key (sort(keys %{$DENON_db->{'TM'}{'AN'}})) {
|
foreach my $key (sort(keys %{$DENON_db->{'TM'}{'AN'}})) {
|
||||||
push(@tuner, $key);
|
push(@tuner, $key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'CNTAMT'}})) {
|
||||||
|
my $value = $DENON_db->{'PS'}{'CNTAMT'}{$key};
|
||||||
|
push(@audysseyLFCAmount, $value) if ($key ne "CNTAMT");
|
||||||
|
}
|
||||||
|
|
||||||
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'MULTEQ'}})) {
|
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'MULTEQ'}})) {
|
||||||
my $value = $DENON_db->{'PS'}{'MULTEQ'}{$key};
|
my $value = $DENON_db->{'PS'}{'MULTEQ'}{$key};
|
||||||
push(@multiEQ, $value) if ($key ne "MULTEQ");
|
push(@multiEQ, $value) if ($key ne "MULTEQ");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'REFLEV'}})) {
|
||||||
|
my $value = $DENON_db->{'PS'}{'REFLEV'}{$key};
|
||||||
|
push(@dynamicEQRefLevelOffset, $value) if ($key ne "REFLEV");
|
||||||
|
}
|
||||||
|
|
||||||
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'DYNVOL'}})) {
|
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'DYNVOL'}})) {
|
||||||
my $value = $DENON_db->{'PS'}{'DYNVOL'}{$key};
|
my $value = $DENON_db->{'PS'}{'DYNVOL'}{$key};
|
||||||
push(@dynvol, $value) if ($key ne "DYNVOL");
|
push(@dynvol, $value) if ($key ne "DYNVOL");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
foreach my $key (sort(keys %{$DENON_db->{'PS'}{'RSTR'}})) {
|
||||||
|
my $value = $DENON_db->{'PS'}{'RSTR'}{$key};
|
||||||
|
push(@audioRestorer, $value) if ($key ne "RSTR");
|
||||||
|
}
|
||||||
|
|
||||||
if(AttrVal($name, "brand", "Denon") eq "Marantz")
|
if(AttrVal($name, "brand", "Denon") eq "Marantz")
|
||||||
{
|
{
|
||||||
@ -2555,7 +2651,10 @@ DENON_AVR_Set($@)
|
|||||||
"resolution:" . join(",", @resolution) . " " .
|
"resolution:" . join(",", @resolution) . " " .
|
||||||
"resolutionHDMI:" . join(",", @resolutionHDMI) . " " .
|
"resolutionHDMI:" . join(",", @resolutionHDMI) . " " .
|
||||||
"multiEQ:" . join(",", @multiEQ) . " " .
|
"multiEQ:" . join(",", @multiEQ) . " " .
|
||||||
|
"audysseyLFCAmount:" . join(",", @audysseyLFCAmount) . " " .
|
||||||
|
"dynamicEQRefLevelOffset:" . join(",", @dynamicEQRefLevelOffset) . " " .
|
||||||
"dynamicVolume:" . join(",", @dynvol) . " " .
|
"dynamicVolume:" . join(",", @dynvol) . " " .
|
||||||
|
"audioRestorer:" . join(",", @audioRestorer) . " " .
|
||||||
"lowFrequencyEffects:slider,-10,1,0 " .
|
"lowFrequencyEffects:slider,-10,1,0 " .
|
||||||
"bass:slider,-6,1,6 treble:slider,-6,1,6 " .
|
"bass:slider,-6,1,6 treble:slider,-6,1,6 " .
|
||||||
"channelVolume:" . join(",", @channel) . ",FactoryDefaults" . " " .
|
"channelVolume:" . join(",", @channel) . ",FactoryDefaults" . " " .
|
||||||
@ -3025,6 +3124,13 @@ DENON_AVR_Set($@)
|
|||||||
readingsEndUpdate($hash, 1);
|
readingsEndUpdate($hash, 1);
|
||||||
return undef;
|
return undef;
|
||||||
}
|
}
|
||||||
|
elsif($a[1] eq "dynamicEQRefLevelOffset")
|
||||||
|
{
|
||||||
|
DENON_AVR_Write($hash, 'PSREFLEV '.uc($a[2]), "dynamicEQRefLevelOffset");
|
||||||
|
readingsBulkUpdate($hash, "dynamicEQRefLevelOffset", $a[2]);
|
||||||
|
readingsEndUpdate($hash, 1);
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
elsif($a[1] eq "dynamicVolume")
|
elsif($a[1] eq "dynamicVolume")
|
||||||
{
|
{
|
||||||
my $cmd = DENON_GetKey("PS", "DYNVOL", $a[2]);
|
my $cmd = DENON_GetKey("PS", "DYNVOL", $a[2]);
|
||||||
@ -3040,6 +3146,13 @@ DENON_AVR_Set($@)
|
|||||||
readingsEndUpdate($hash, 1);
|
readingsEndUpdate($hash, 1);
|
||||||
return undef;
|
return undef;
|
||||||
}
|
}
|
||||||
|
elsif($a[1] eq "audysseyLFCAmount")
|
||||||
|
{
|
||||||
|
DENON_AVR_Write($hash, 'PSCNTAMT 0'.$a[2], "audysseyLFCAmount");
|
||||||
|
readingsBulkUpdate($hash, "audysseyLFCAmount", $a[2]);
|
||||||
|
readingsEndUpdate($hash, 1);
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
elsif($a[1] eq "lowFrequencyEffects")
|
elsif($a[1] eq "lowFrequencyEffects")
|
||||||
{
|
{
|
||||||
my $volume = sprintf ('%02d', $a[2]);
|
my $volume = sprintf ('%02d', $a[2]);
|
||||||
@ -3048,6 +3161,14 @@ DENON_AVR_Set($@)
|
|||||||
readingsEndUpdate($hash, 1);
|
readingsEndUpdate($hash, 1);
|
||||||
return undef;
|
return undef;
|
||||||
}
|
}
|
||||||
|
elsif($a[1] eq "audioRestorer")
|
||||||
|
{
|
||||||
|
my $cmd = DENON_GetKey("PS", "RSTR", $a[2]);
|
||||||
|
DENON_AVR_Write($hash, "PSRSTR ".$cmd, "audioRestorer");
|
||||||
|
readingsBulkUpdate($hash, "audioRestorer", $cmd);
|
||||||
|
readingsEndUpdate($hash, 1);
|
||||||
|
return undef;
|
||||||
|
}
|
||||||
elsif($a[1] eq "loudness")
|
elsif($a[1] eq "loudness")
|
||||||
{
|
{
|
||||||
DENON_AVR_Write($hash, "PSLOM ".uc($a[2]), "loudness");
|
DENON_AVR_Write($hash, "PSLOM ".uc($a[2]), "loudness");
|
||||||
@ -3491,7 +3612,7 @@ DENON_AVR_Command_StatusRequest($)
|
|||||||
DENON_AVR_Write($hash, "MNMEN?", "query"); #menu
|
DENON_AVR_Write($hash, "MNMEN?", "query"); #menu
|
||||||
DENON_AVR_Write($hash, "MNZST?", "query"); #All Zone Stereo
|
DENON_AVR_Write($hash, "MNZST?", "query"); #All Zone Stereo
|
||||||
DENON_AVR_Write($hash, "NSE", "query"); #Onscreen Display Information List
|
DENON_AVR_Write($hash, "NSE", "query"); #Onscreen Display Information List
|
||||||
DENON_AVR_Write($hash, "CV ?", "query"); #channel volume
|
DENON_AVR_Write($hash, "CV?", "query"); #channel volume
|
||||||
DENON_AVR_Write($hash, "SSINFFRM ?", "query"); #Firmware-Infos
|
DENON_AVR_Write($hash, "SSINFFRM ?", "query"); #Firmware-Infos
|
||||||
# DENON_AVR_Write($hash, "SR?", "query"); #record select - older models
|
# DENON_AVR_Write($hash, "SR?", "query"); #record select - older models
|
||||||
DENON_AVR_Write($hash, "SSVCTZMA ?", "query"); #channel volume new
|
DENON_AVR_Write($hash, "SSVCTZMA ?", "query"); #channel volume new
|
||||||
@ -3509,8 +3630,11 @@ DENON_AVR_Command_StatusRequest($)
|
|||||||
DENON_AVR_Write($hash, "PSLOM ?", "query"); #Loudness Management
|
DENON_AVR_Write($hash, "PSLOM ?", "query"); #Loudness Management
|
||||||
DENON_AVR_Write($hash, "PSMULTEQ: ?", "query"); #MULT EQ
|
DENON_AVR_Write($hash, "PSMULTEQ: ?", "query"); #MULT EQ
|
||||||
DENON_AVR_Write($hash, "PSDYNEQ ?", "query"); #DYNAMIC EQ
|
DENON_AVR_Write($hash, "PSDYNEQ ?", "query"); #DYNAMIC EQ
|
||||||
|
DENON_AVR_Write($hash, "PSREFLEV ?", "query"); #DYNAMIC EQ Reference Level Offset
|
||||||
DENON_AVR_Write($hash, "PSDYNVOL ?", "query"); #Dynamic Volume
|
DENON_AVR_Write($hash, "PSDYNVOL ?", "query"); #Dynamic Volume
|
||||||
DENON_AVR_Write($hash, "PSLFC ?", "query"); #Audyssey LFC Status
|
DENON_AVR_Write($hash, "PSLFC ?", "query"); #Audyssey LFC Status
|
||||||
|
DENON_AVR_Write($hash, "PSCNTAMT ?", "query"); #Audyssey LFC Containment Amount
|
||||||
|
DENON_AVR_Write($hash, "PSRSTR ?", "query"); #Audio Restorer
|
||||||
|
|
||||||
return "StatusRequest finished!";
|
return "StatusRequest finished!";
|
||||||
}
|
}
|
||||||
@ -3872,9 +3996,15 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>allZoneStereo</b> - set allZoneStereo on/off
|
<b>allZoneStereo</b> - set allZoneStereo on/off
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audioRestorer</b> - set audioRestorer off/low/medium/high
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>audysseyLFC</b> - set audysseyLFC on/off
|
<b>audysseyLFC</b> - set audysseyLFC on/off
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audysseyLFCAmount</b> - set audysseyLFCAmount (1 - 7)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>autoStandby</b> - set auto standby (off, 15,30,60 min)
|
<b>autoStandby</b> - set auto standby (off, 15,30,60 min)
|
||||||
</li>
|
</li>
|
||||||
@ -3896,6 +4026,9 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>dynamicEQ</b> - set dynamicEQ on/off
|
<b>dynamicEQ</b> - set dynamicEQ on/off
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>dynamicEQRefLevelOffset</b> - set dynamicEQRefLevelOffset (0, 5, 10, 15)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>dynamicVolume</b> - set dynamicEQ off/light/medium/heavy
|
<b>dynamicVolume</b> - set dynamicEQ off/light/medium/heavy
|
||||||
</li>
|
</li>
|
||||||
@ -4053,6 +4186,9 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>ampAssign</b> - amplifier settings for AV receiver (5.1, 7.1, 9.1,...)
|
<b>ampAssign</b> - amplifier settings for AV receiver (5.1, 7.1, 9.1,...)
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audioRestorer</b> - audioRestorer Level (off, low, medium, high)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>autoStandby</b> - auto standby state
|
<b>autoStandby</b> - auto standby state
|
||||||
</li>
|
</li>
|
||||||
@ -4241,9 +4377,15 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>allZoneStereo</b> - allZoneStereo an/aus
|
<b>allZoneStereo</b> - allZoneStereo an/aus
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audioRestorer</b> - set audioRestorer off/low/medium/high
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>audysseyLFC</b> - audysseyLFC an/aus
|
<b>audysseyLFC</b> - audysseyLFC an/aus
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audysseyLFCAmount</b> - set audysseyLFCAmount (1 - 7)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>autoStandby</b> - Zeit für den Auto-Standby setzen
|
<b>autoStandby</b> - Zeit für den Auto-Standby setzen
|
||||||
</li>
|
</li>
|
||||||
@ -4265,6 +4407,9 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>dynamicEQ</b> - dynamicEQ an/aus
|
<b>dynamicEQ</b> - dynamicEQ an/aus
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>dynamicEQRefLevelOffset</b> - set dynamicEQRefLevelOffset (0, 5, 10, 15)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>dynamicVolume</b> - Wert für dynamicEQ setzen (off/light/medium/heavy)
|
<b>dynamicVolume</b> - Wert für dynamicEQ setzen (off/light/medium/heavy)
|
||||||
</li>
|
</li>
|
||||||
@ -4423,6 +4568,9 @@ sub DENON_AVR_RClayout() {
|
|||||||
<li>
|
<li>
|
||||||
<b>ampAssign</b> - Endstufenzuweisung des AV-Receiver (5.1, 7.1, 9.1,...)
|
<b>ampAssign</b> - Endstufenzuweisung des AV-Receiver (5.1, 7.1, 9.1,...)
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<b>audioRestorer</b> - audioRestorer Level (off, low, medium, high)
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<b>autoStandby</b> - Standbyzustand des AV-Recievers
|
<b>autoStandby</b> - Standbyzustand des AV-Recievers
|
||||||
</li>
|
</li>
|
||||||
|
Loading…
x
Reference in New Issue
Block a user