diff --git a/denon/commands.py b/denon/commands.py index 86f2b5b79..010228bb5 100755 --- a/denon/commands.py +++ b/denon/commands.py @@ -11,12 +11,13 @@ models = { 'ALL': ['general.custom_inputnames', 'general.power', 'general.setupmenu', 'general.soundmode', 'general.inputsignal', 'general.inputrate', 'general.inputformat', 'general.inputresolution', 'general.outputresolution', 'general.ecomode', 'zone1.control', - 'zone1.settings.sound.general.audioinput', 'zone1.settings.sound.general.cinema_eq', 'zone1.settings.sound.general.hdmiaudioout', 'zone1.settings.sound.general.dynamicrange', 'zone1.settings.sound.general.subwoofertoggle', 'zone1.settings.sound.general.subwoofer', 'zone1.settings.sound.general.subwooferup', 'zone1.settings.sound.general.subwooferdown', 'zone1.settings.sound.general.lfe', 'zone1.settings.sound.general.lfeup', 'zone1.settings.sound.general.lfedown', 'zone1.settings.sound.tone_control', + 'zone1.settings.sound.general.audioinput', 'zone1.settings.sound.general.cinema_eq', 'zone1.settings.sound.general.hdmiaudioout', 'zone1.settings.sound.general.dynamicrange', 'zone1.settings.sound.general.subwoofertoggle', 'zone1.settings.sound.general.subwoofer', 'zone1.settings.sound.general.subwooferup', 'zone1.settings.sound.general.subwooferdown', 'zone1.settings.sound.tone_control.lfe', 'zone1.settings.sound.tone_control.lfeup', 'zone1.settings.sound.tone_control.lfedown', 'zone1.settings.sound.tone_control', + 'zone1.settings.sound.general.delay', 'zone1.settings.sound.general.delayup', 'zone1.settings.sound.general.delaydown', 'zone1.settings.sound.general.effect', 'zone1.settings.sound.general.effectup', 'zone1.settings.sound.general.effectdown' 'zone1.settings.sound.channel_level.front_left', 'zone1.settings.sound.channel_level.front_right', 'zone1.settings.sound.channel_level.front_height_left', 'zone1.settings.sound.channel_level.front_height_right', 'zone1.settings.sound.channel_level.front_center', 'zone1.settings.sound.channel_level.surround_left', 'zone1.settings.sound.channel_level.surround_right', 'zone1.settings.sound.channel_level.surroundback_left', 'zone1.settings.sound.channel_level.surroundback_right', 'zone1.settings.sound.channel_level.rear_height_left', 'zone1.settings.sound.channel_level.rear_height_right', 'zone1.settings.sound.channel_level.subwoofer', 'zone2.control', 'zone2.settings.sound.general.hdmiout'], 'AVR-X6300H': ['info', 'zone1.settings.sound.channel_level.subwoofer2', 'zone1.settings.sound.general.speakersetup', 'zone1.settings.sound.general.dialogenhance', 'tuner.preset', 'tuner.presetmemory', 'tuner.presetup', 'tuner.presetdown', 'tuner.frequency', 'tuner.stationname', 'tuner.frequencyup', 'tuner.frequencydown', 'tuner.band', 'tuner.tuningmode', - 'zone1.settings.video', + 'zone1.settings.video', 'zone1.settings.sound.general.digitalinput', 'zone2.settings.sound.tone_control', 'zone2.settings.sound.channel_level', 'zone2.settings.sound.general.HPF', 'zone3'], 'AVR-X6300H-NA': ['info', 'tuner.hd', 'zone1.settings.sound.channel_level.subwoofer2', 'zone1.settings.sound.general.speakersetup', 'zone1.settings.sound.general.dialogenhance', @@ -88,23 +89,23 @@ 'artist': {'read': True, 'write': False, 'read_cmd': 'NSE', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^NSE2(.*)', 'item_attrs': {'read_group_levels': 0}}, 'presetmemory': {'read': True, 'write': True, 'item_type': 'num', 'write_cmd': 'TPANMEM{RAW_VALUE:02}', 'dev_datatype': 'convert0', 'reply_pattern': r'^TPANMEM(\d{2})'}, 'preset': {'read': True, 'write': True, 'read_cmd': 'TPAN?', 'item_type': 'num', 'write_cmd': 'TPAN{RAW_VALUE:02}', 'dev_datatype': 'convert0', 'reply_pattern': r'^TPAN(\d{2}|OFF)', 'item_attrs': {'initial': True}}, - 'presetup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPANUP', 'dev_datatype': 'raw'}, - 'presetdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPANDOWN', 'dev_datatype': 'raw'}, + 'presetup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPANUP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'presetdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPANDOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'frequency': {'read': True, 'write': True, 'read_cmd': 'TFAN?', 'item_type': 'num', 'write_cmd': 'TFAN{VALUE}', 'dev_datatype': 'DenonFrequency', 'reply_pattern': r'^TFAN(\d{6})', 'send_retries': 0, 'item_attrs': {'initial': True}}, 'stationname': {'read': True, 'write': False, 'read_cmd': 'TFANNAME?', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^TFANNAME(.*)', 'item_attrs': {'initial': True}}, - 'frequencyup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFANUP', 'dev_datatype': 'raw'}, - 'frequencydown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFANDOWN', 'dev_datatype': 'raw'}, + 'frequencyup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFANUP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'frequencydown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFANDOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'band': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['AM', 'FM']}, 'read_cmd': 'TMAN?', 'item_type': 'str', 'write_cmd': 'TMAN{RAW_VALUE_UPPER}', 'dev_datatype': 'raw', 'reply_pattern': r'^TMAN{VALID_LIST_CI}', 'item_attrs': {'initial': True}}, 'tuningmode': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['AUTO', 'MANUAL']}, 'read_cmd': 'TMAN?', 'item_type': 'str', 'write_cmd': 'TMAN{RAW_VALUE_UPPER}', 'dev_datatype': 'raw', 'reply_pattern': r'^TMAN{VALID_LIST_CI}'}, 'hd': { 'channel': {'read': True, 'write': True, 'read_cmd': 'TFHD?', 'item_type': 'num', 'write_cmd': 'TFHD{RAW_VALUE:06}', 'dev_datatype': 'num', 'reply_pattern': r'^TFHD(\d{6})', 'item_attrs': {'initial': True}}, - 'channelup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFHDUP', 'dev_datatype': 'raw'}, - 'channeldown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFHDDOWN', 'dev_datatype': 'raw'}, + 'channelup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFHDUP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'channeldown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TFHDDOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'multicastchannel': {'read': True, 'write': True, 'read_cmd': 'TFHD?', 'item_type': 'num', 'write_cmd': 'TFHDMC{RAW_VALUE:01}', 'dev_datatype': 'num', 'reply_pattern': r'^TFHDMC(\d{1})', 'item_attrs': {'read_group_levels': 0}}, 'presetmemory': {'read': True, 'write': True, 'item_type': 'num', 'write_cmd': 'TPHDMEM{RAW_VALUE:02}', 'dev_datatype': 'convert0', 'reply_pattern': r'^TPHDMEM(\d{2}|OFF)'}, 'preset': {'read': True, 'write': True, 'read_cmd': 'TPHD?', 'item_type': 'num', 'write_cmd': 'TPHD{RAW_VALUE:02}', 'dev_datatype': 'convert0', 'reply_pattern': r'^TPHD(\d{2}|OFF)'}, - 'presetup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPHDUP', 'dev_datatype': 'raw'}, - 'presetdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPHDDOWN', 'dev_datatype': 'raw'}, + 'presetup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPHDUP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'presetdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'TPHDDOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'band': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['AM', 'FM', 'AUTO', 'MANUAL', 'AUTOHD', 'ANAAUTO', 'ANAMANU']}, 'read_cmd': 'TMHD?', 'item_type': 'str', 'write_cmd': 'TMHD{RAW_VALUE_UPPER}', 'dev_datatype': 'num', 'reply_pattern': r'^TMHD{VALID_LIST_CI}', 'item_attrs': {'initial': True}} } @@ -114,8 +115,8 @@ 'power': {'read': True, 'write': True, 'read_cmd': 'ZM?', 'write_cmd': 'ZM{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^ZM(ON|OFF)', 'item_attrs': {'initial': True}}, 'mute': {'read': True, 'write': True, 'read_cmd': 'MU?', 'write_cmd': 'MU{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^MU(ON|OFF)', 'item_attrs': {'initial': True}}, 'volume': {'read': True, 'write': True, 'read_cmd': 'MV?', 'write_cmd': 'MV{VALUE}', 'item_type': 'num', 'dev_datatype': 'DenonVol', 'reply_pattern': r'^MV(\d{2,3})', 'cmd_settings': {'force_min': 0.0, 'valid_max': 98.0}, 'item_attrs': {'initial': True}}, - 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'MVUP', 'dev_datatype': 'raw'}, - 'volumedown': {'read': False, 'write': True, 'write_cmd': 'MVDOWN', 'item_type': 'bool', 'dev_datatype': 'raw'}, + 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'MVUP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'volumedown': {'read': False, 'write': True, 'write_cmd': 'MVDOWN', 'item_type': 'bool', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'volumemax': {'opcode': '{VALUE}', 'read': True, 'write': False, 'item_type': 'num', 'dev_datatype': 'DenonVol', 'reply_pattern': r'^MVMAX (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, 'input': {'read': True, 'write': True, 'read_cmd': 'SI?', 'write_cmd': 'SI{VALUE}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^SI{LOOKUP}', 'lookup': 'INPUT', 'item_attrs': {'lookup_item': True}}, 'listeningmode': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['MOVIE', 'MUSIC', 'GAME', 'DIRECT', 'PURE DIRECT', 'STEREO', 'AUTO', 'DOLBY DIGITAL', 'DOLBY SURROUND', 'DTS SURROUND', 'NEURAL:X', 'AURO3D', 'AURO2DSURR', 'MCH STEREO', 'ROCK ARENA', 'JAZZ CLUB', 'MONO MOVIE', 'MATRIX', 'VIDEO GAME', 'VIRTUAL', 'LEFT', 'RIGHT']}, 'read_cmd': 'MS?', 'write_cmd': 'MS{RAW_VALUE_UPPER}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^\x00?MS(.*)', 'item_attrs': {'initial': True}}, @@ -126,27 +127,30 @@ 'sound': { 'channel_level': { 'front_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFL (\d{2,3})'}, - 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFR (\d{2,3})'}, - 'front_height_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFHL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFHL (\d{2,3})'}, - 'front_height_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFHR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFHR (\d{2,3})'}, - 'front_center': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVC {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVC (\d{2,3})'}, - 'surround_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSL (\d{2,3})'}, - 'surround_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSR (\d{2,3})'}, - 'surroundback_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSBL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSBL (\d{2,3})'}, - 'surroundback_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSBR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSBR (\d{2,3})'}, - 'rear_height_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVRHL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVRHL (\d{2,3})'}, - 'rear_height_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVRHR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVRHR (\d{2,3})'}, - 'subwoofer': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSW {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSW (\d{2,3})'}, - 'subwoofer2': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSW2 {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSW2 (\d{2,3})'} + 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFR (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'front_height_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFHL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFHL (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'front_height_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVFHR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVFHR (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'front_center': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVC {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVC (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'surround_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSL (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'surround_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSR (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'surroundback_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSBL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSBL (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'surroundback_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSBR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSBR (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'rear_height_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVRHL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVRHL (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'rear_height_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVRHR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVRHR (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'subwoofer': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSW {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSW (\d{2,3})', 'item_attrs': {'read_group_levels': 0}}, + 'subwoofer2': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12.0, 'valid_max': 12.0}, 'read_cmd': 'CV?', 'item_type': 'num', 'write_cmd': 'CVSW2 {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^CVSW2 (\d{2,3})', 'item_attrs': {'read_group_levels': 0}} }, 'tone_control': { 'tone': {'read': True, 'write': True, 'read_cmd': 'PSTONE CTRL ?', 'write_cmd': 'PSTONE CTRL {VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSTONE CTRL (ON|OFF)'}, 'treble': {'read': True, 'write': True, 'read_cmd': 'PSTRE ?', 'item_type': 'num', 'cmd_settings': {'force_min': -6, 'force_max': 6}, 'write_cmd': 'PSTRE {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^PSTRE (\d{2})'}, - 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSTRE UP', 'dev_datatype': 'raw'}, - 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSTRE DOWN', 'dev_datatype': 'raw'}, + 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSTRE UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSTRE DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'bass': {'read': True, 'write': True, 'read_cmd': 'PSBAS ?', 'item_type': 'num', 'cmd_settings': {'force_min': -6, 'force_max': 6}, 'write_cmd': 'PSBAS {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^PSBAS (\d{2})'}, - 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSBAS UP', 'dev_datatype': 'raw'}, - 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSBAS DOWN', 'dev_datatype': 'raw'} + 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSBAS UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSBAS DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'lfe': {'read': True, 'write': True, 'read_cmd': 'PSLFE ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'valid_max': 99}, 'write_cmd': 'PSLFE {RAW_VALUE:02}', 'dev_datatype': 'int', 'reply_pattern': r'^PSLFE (\d{2})'}, + 'lfeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSLFE UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'lfedown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSLFE DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, }, 'general': { 'cinema_eq': {'read': True, 'write': True, 'read_cmd': 'PSCINEMA EQ. ?', 'write_cmd': 'PSCINEMA EQ.{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSCINEMA EQ.(ON|OFF)'}, @@ -156,18 +160,21 @@ 'speakersetup': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['FL', 'HF']}, 'read_cmd': 'PSSP: ?', 'write_cmd': 'PSSP:{RAW_VALUE_UPPER}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^PSSP:{VALID_LIST_CI}'}, 'hdmiaudioout': {'read': True, 'write': True, 'item_type': 'str', 'read_cmd': 'VSAUDIO ?', 'write_cmd': 'VSAUDIO {RAW_VALUE_UPPER}', 'dev_datatype': 'str', 'reply_pattern': r'^VSAUDIO {VALID_LIST_CI}', 'cmd_settings': {'valid_list_ci': ['TV', 'AMP']}}, 'dynamicrange': {'read': True, 'write': True, 'read_cmd': 'PSDRC ?', 'item_type': 'num', 'write_cmd': 'PSDRC {VALUE}', 'dev_datatype': 'str', 'reply_pattern': r'^PSDRC {LOOKUP}', 'lookup': 'DYNAM'}, - 'dialogtoggle': {'read': True, 'write': True, 'read_cmd': 'PSDIL ?', 'write_cmd': 'PSDIL {VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSDIL (ON|OFF)'}, + 'dialogtoggle': {'read': True, 'write': True, 'read_cmd': 'PSDIL ?', 'write_cmd': 'PSDIL {VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSDIL (ON|OFF)', 'item_attrs': {'read_group_levels': 0}}, 'dialog': {'read': True, 'write': True, 'read_cmd': 'PSDIL ?', 'item_type': 'num', 'cmd_settings': {'force_min': -12, 'force_max': 12}, 'write_cmd': 'PSDIL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^PSDIL (\d{2})'}, - 'dialogup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDIL UP', 'dev_datatype': 'raw'}, - 'dialogdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDIL DOWN', 'dev_datatype': 'raw'}, + 'dialogup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDIL UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'dialogdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDIL DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'effect': {'read': True, 'write': True, 'read_cmd': 'PSEFF ?', 'item_type': 'num', 'cmd_settings': {'force_min': 0, 'force_max': 99}, 'write_cmd': 'PSEFF {RAW_VALUE:02}', 'dev_datatype': 'str', 'reply_pattern': r'^PSEFF (\d{2})'}, + 'effectup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSEFF UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'effectdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSEFF DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'delay': {'read': True, 'write': True, 'read_cmd': 'PSDEL ?', 'item_type': 'num', 'cmd_settings': {'force_min': 0, 'force_max': 999}, 'write_cmd': 'PSDEL {RAW_VALUE:03}', 'dev_datatype': 'str', 'reply_pattern': r'^PSDEL (\d{3})'}, + 'delayup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDEL UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'delaydown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSDEL DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'dialogenhance': {'read': True, 'write': True, 'read_cmd': 'PSDEH ?', 'write_cmd': 'PSDEH {VALUE}', 'item_type': 'num', 'dev_datatype': 'str', 'reply_pattern': r'^PSDEH {LOOKUP}', 'lookup': 'DIALOG'}, - 'subwoofertoggle': {'read': True, 'write': True, 'read_cmd': 'PSSWL ?', 'write_cmd': 'PSSWL {VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSSWL (ON|OFF)'}, + 'subwoofertoggle': {'read': True, 'write': True, 'read_cmd': 'PSSWL ?', 'write_cmd': 'PSSWL {VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^PSSWL (ON|OFF)', 'item_attrs': {'read_group_levels': 0}}, 'subwoofer': {'read': True, 'write': True, 'read_cmd': 'PSSWL ?', 'item_type': 'num', 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'write_cmd': 'PSSWL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^PSSWL (\d{2})'}, - 'subwooferup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSSWL UP', 'dev_datatype': 'raw'}, - 'subwooferdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSSWL DOWN', 'dev_datatype': 'raw'}, - 'lfe': {'read': True, 'write': True, 'read_cmd': 'PSLFE ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'valid_max': 3}, 'write_cmd': 'PSLFE {RAW_VALUE:02}', 'dev_datatype': 'int', 'reply_pattern': r'^PSLFE (\d{2})'}, - 'lfeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSLFE UP', 'dev_datatype': 'raw'}, - 'lfedown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSLFE DOWN', 'dev_datatype': 'raw'}, + 'subwooferup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSSWL UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'subwooferdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'PSSWL DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'digitalinput': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['AUTO', 'PCM', 'DTS']}, 'read_cmd': 'DC?', 'write_cmd': 'DC{RAW_VALUE_UPPER}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^DC{VALID_LIST_CI}'}, 'audioinput': {'read': True, 'write': True, 'cmd_settings': {'valid_list_ci': ['AUTO', 'HDMI', 'DIGITAL', 'ANALOG']}, 'read_cmd': 'SD?', 'write_cmd': 'SD{RAW_VALUE_UPPER}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^SD{VALID_LIST_CI}'} } @@ -188,8 +195,8 @@ 'power': {'read': True, 'write': True, 'read_cmd': 'Z2?', 'write_cmd': 'Z2{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^Z2(ON|OFF)'}, 'mute': {'read': True, 'write': True, 'read_cmd': 'Z2MU?', 'write_cmd': 'Z2MU{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^Z2MU(ON|OFF)'}, 'volume': {'read': True, 'write': True, 'read_cmd': 'Z2?', 'write_cmd': 'Z2{VALUE}', 'item_type': 'num', 'dev_datatype': 'DenonVol', 'reply_pattern': r'^Z2(\d{2,3})', 'cmd_settings': {'force_min': 0.0, 'valid_max': 98.0}}, - 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2UP', 'dev_datatype': 'raw'}, - 'volumedown': {'read': False, 'write': True, 'write_cmd': 'Z2DOWN', 'item_type': 'bool', 'dev_datatype': 'raw'}, + 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'volumedown': {'read': False, 'write': True, 'write_cmd': 'Z2DOWN', 'item_type': 'bool', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'input': {'read': True, 'write': True, 'read_cmd': 'Z2?', 'write_cmd': 'Z2{VALUE}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^Z2{LOOKUP}', 'lookup': 'INPUT', 'item_attrs': {'lookup_item': True}}, 'sleep': {'read': True, 'write': True, 'item_type': 'num', 'read_cmd': 'Z2SLP?', 'write_cmd': 'Z2SLP{VALUE}', 'dev_datatype': 'convert0', 'reply_pattern': r'^Z2SLP(\d{3}|OFF)', 'cmd_settings': {'force_min': 0, 'force_max': 120}}, 'standby': {'read': True, 'write': True, 'item_type': 'num', 'read_cmd': 'Z2STBY?', 'write_cmd': 'Z2STBY{VALUE}', 'dev_datatype': 'DenonStandby', 'reply_pattern': r'^Z2STBY(\dH|OFF)', 'cmd_settings': {'valid_list': [0, 2, 4, 8]}}, @@ -198,15 +205,15 @@ 'sound': { 'channel_level': { 'front_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z2CV?', 'item_type': 'num', 'write_cmd': 'Z2CVFL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z2CVFL (\d{2})'}, - 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z2CV?', 'item_type': 'num', 'write_cmd': 'Z2CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z2CVFR (\d{2})'} + 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z2CV?', 'item_type': 'num', 'write_cmd': 'Z2CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z2CVFR (\d{2})', 'item_attrs': {'read_group_levels': 0}} }, 'tone_control': { 'treble': {'read': True, 'write': True, 'read_cmd': 'Z2PSTRE ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'force_max': 10}, 'write_cmd': 'Z2PSTRE {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z2PSTRE (\d{2})'}, - 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSTRE UP', 'dev_datatype': 'raw'}, - 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSTRE DOWN', 'dev_datatype': 'raw'}, + 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSTRE UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSTRE DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'bass': {'read': True, 'write': True, 'read_cmd': 'Z2PSBAS ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'force_max': 10}, 'write_cmd': 'Z2PSBAS {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z2PSBAS (\d{2})'}, - 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSBAS UP', 'dev_datatype': 'raw'}, - 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSBAS DOWN', 'dev_datatype': 'raw'} + 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSBAS UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z2PSBAS DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}} }, 'general': { 'hdmiout': {'read': True, 'write': True, 'item_type': 'str', 'read_cmd': 'Z2HDA?', 'write_cmd': 'Z2HDA {RAW_VALUE_UPPER}', 'dev_datatype': 'str', 'reply_pattern': r'^Z2HDA {VALID_LIST_CI}', 'cmd_settings': {'valid_list_ci': ['THR', 'PCM']}}, @@ -220,8 +227,8 @@ 'power': {'read': True, 'write': True, 'read_cmd': 'Z3?', 'write_cmd': 'Z3{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^Z3(ON|OFF)'}, 'mute': {'read': True, 'write': True, 'read_cmd': 'Z3MU?', 'write_cmd': 'Z3MU{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^Z3MU(ON|OFF)'}, 'volume': {'read': True, 'write': True, 'read_cmd': 'Z3?', 'write_cmd': 'Z3{VALUE}', 'item_type': 'num', 'dev_datatype': 'DenonVol', 'reply_pattern': r'^Z3(\d{2,3})', 'cmd_settings': {'force_min': 0.0, 'valid_max': 98.0}}, - 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3UP', 'dev_datatype': 'raw'}, - 'volumedown': {'read': False, 'write': True, 'write_cmd': 'Z3DOWN', 'item_type': 'bool', 'dev_datatype': 'raw'}, + 'volumeup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'volumedown': {'read': False, 'write': True, 'write_cmd': 'Z3DOWN', 'item_type': 'bool', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'sleep': {'read': True, 'write': True, 'item_type': 'num', 'read_cmd': 'Z3SLP?', 'write_cmd': 'Z3SLP{VALUE}', 'dev_datatype': 'convert0', 'reply_pattern': r'^Z3SLP(\d{3}|OFF)', 'cmd_settings': {'force_min': 0, 'valid_max': 120}}, 'standby': {'read': True, 'write': True, 'item_type': 'num', 'read_cmd': 'Z3STBY?', 'write_cmd': 'Z3STBY{VALUE}', 'dev_datatype': 'DenonStandby', 'reply_pattern': r'^Z3STBY(\dH|OFF)', 'cmd_settings': {'valid_list': [0, 2, 4, 8]}}, 'input': {'read': True, 'write': True, 'read_cmd': 'Z3?', 'write_cmd': 'Z3{RAW_VALUE_UPPER}', 'item_type': 'str', 'dev_datatype': 'str', 'reply_pattern': r'^Z3{LOOKUP}', 'lookup': 'INPUT3', 'item_attrs': {'lookup_item': True}} @@ -230,15 +237,15 @@ 'sound': { 'channel_level': { 'front_left': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z3CV?', 'item_type': 'num', 'write_cmd': 'Z3CVFL {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z3CVFL (\d{2})'}, - 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z3CV?', 'item_type': 'num', 'write_cmd': 'Z3CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z3CVFR (\d{2})'} + 'front_right': {'read': True, 'write': True, 'cmd_settings': {'force_min': -12, 'valid_max': 12}, 'read_cmd': 'Z3CV?', 'item_type': 'num', 'write_cmd': 'Z3CVFR {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z3CVFR (\d{2})', 'item_attrs': {'read_group_levels': 0}} }, 'tone_control': { 'treble': {'read': True, 'write': True, 'read_cmd': 'Z3PSTRE ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'force_max': 10}, 'write_cmd': 'Z3PSTRE {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z3PSTRE (\d{2})'}, - 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSTRE UP', 'dev_datatype': 'raw'}, - 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSTRE DOWN', 'dev_datatype': 'raw'}, + 'trebleup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSTRE UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'trebledown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSTRE DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, 'bass': {'read': True, 'write': True, 'read_cmd': 'Z3PSBAS ?', 'item_type': 'num', 'cmd_settings': {'force_min': -10, 'force_max': 10}, 'write_cmd': 'Z3PSBAS {VALUE}', 'dev_datatype': 'remap50to0', 'reply_pattern': r'^Z3PSBAS (\d{2})'}, - 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSBAS UP', 'dev_datatype': 'raw'}, - 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSBAS DOWN', 'dev_datatype': 'raw'} + 'bassup': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSBAS UP', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}}, + 'bassdown': {'read': False, 'write': True, 'item_type': 'bool', 'write_cmd': 'Z3PSBAS DOWN', 'dev_datatype': 'raw', 'item_attrs': {'read_group_levels': 0}} }, 'general': { 'HPF': {'read': True, 'write': True, 'read_cmd': 'Z3HPF?', 'write_cmd': 'Z3HPF{VALUE}', 'item_type': 'bool', 'dev_datatype': 'onoff', 'reply_pattern': r'^Z3HPF(ON|OFF)'}, diff --git a/denon/plugin.yaml b/denon/plugin.yaml index 3f0327e74..56494a374 100755 --- a/denon/plugin.yaml +++ b/denon/plugin.yaml @@ -968,132 +968,72 @@ item_structs: denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level subwoofer2: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer2 denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.channel_level tone_control: @@ -1159,6 +1099,29 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - zone1 + - zone1.settings + - zone1.settings.sound + - zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -1248,11 +1211,6 @@ item_structs: denon_command@instance: zone1.settings.sound.general.dialogtoggle denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone1 - - zone1.settings - - zone1.settings.sound - - zone1.settings.sound.general dialog: type: num @@ -1277,9 +1235,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - dialogenhance: + effect: type: num - denon_command@instance: zone1.settings.sound.general.dialogenhance + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -1288,9 +1246,21 @@ item_structs: - zone1.settings.sound - zone1.settings.sound.general - subwoofertoggle: + effectup: type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + effectdown: + type: bool + denon_command@instance: zone1.settings.sound.general.effectdown + denon_read@instance: false + denon_write@instance: true + + delay: + type: num + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -1299,9 +1269,21 @@ item_structs: - zone1.settings.sound - zone1.settings.sound.general - subwoofer: + delayup: + type: bool + denon_command@instance: zone1.settings.sound.general.delayup + denon_read@instance: false + denon_write@instance: true + + delaydown: + type: bool + denon_command@instance: zone1.settings.sound.general.delaydown + denon_read@instance: false + denon_write@instance: true + + dialogenhance: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.dialogenhance denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -1310,21 +1292,15 @@ item_structs: - zone1.settings.sound - zone1.settings.sound.general - subwooferup: - type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup - denon_read@instance: false - denon_write@instance: true - - subwooferdown: + subwoofertoggle: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown - denon_read@instance: false + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true denon_write@instance: true - lfe: + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -1333,15 +1309,15 @@ item_structs: - zone1.settings.sound - zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -1581,11 +1557,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone2 - - zone2.settings - - zone2.settings.sound - - zone2.settings.sound.channel_level tone_control: @@ -1790,11 +1761,6 @@ item_structs: denon_command@instance: zone3.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - zone3 - - zone3.settings - - zone3.settings.sound - - zone3.settings.sound.channel_level tone_control: @@ -2142,149 +2108,71 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: ALL.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - ALL - - ALL.zone1 - - ALL.zone1.settings - - ALL.zone1.settings.sound - - ALL.zone1.settings.sound.channel_level tone_control: @@ -2353,6 +2241,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - ALL + - ALL.zone1 + - ALL.zone1.settings + - ALL.zone1.settings.sound + - ALL.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -2396,9 +2308,9 @@ item_structs: - ALL.zone1.settings.sound - ALL.zone1.settings.sound.general - subwoofertoggle: - type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + effect: + type: num + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -2408,9 +2320,15 @@ item_structs: - ALL.zone1.settings.sound - ALL.zone1.settings.sound.general - subwoofer: + effectup: + type: bool + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -2420,21 +2338,27 @@ item_structs: - ALL.zone1.settings.sound - ALL.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -2444,15 +2368,15 @@ item_structs: - ALL.zone1.settings.sound - ALL.zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -3129,161 +3053,77 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X6300H.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level subwoofer2: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer2 denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone1 - - AVR-X6300H.zone1.settings - - AVR-X6300H.zone1.settings.sound - - AVR-X6300H.zone1.settings.sound.channel_level tone_control: @@ -3352,6 +3192,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X6300H + - AVR-X6300H.zone1 + - AVR-X6300H.zone1.settings + - AVR-X6300H.zone1.settings.sound + - AVR-X6300H.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -3407,9 +3271,9 @@ item_structs: - AVR-X6300H.zone1.settings.sound - AVR-X6300H.zone1.settings.sound.general - dialogenhance: + effect: type: num - denon_command@instance: zone1.settings.sound.general.dialogenhance + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -3419,9 +3283,39 @@ item_structs: - AVR-X6300H.zone1.settings.sound - AVR-X6300H.zone1.settings.sound.general - subwoofertoggle: + effectup: type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: + type: num + denon_command@instance: zone1.settings.sound.general.delay + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X6300H + - AVR-X6300H.zone1 + - AVR-X6300H.zone1.settings + - AVR-X6300H.zone1.settings.sound + - AVR-X6300H.zone1.settings.sound.general + + delayup: + type: bool + denon_command@instance: zone1.settings.sound.general.delayup + denon_read@instance: false + denon_write@instance: true + + delaydown: + type: bool + denon_command@instance: zone1.settings.sound.general.delaydown + denon_read@instance: false + denon_write@instance: true + + dialogenhance: + type: num + denon_command@instance: zone1.settings.sound.general.dialogenhance denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -3431,6 +3325,12 @@ item_structs: - AVR-X6300H.zone1.settings.sound - AVR-X6300H.zone1.settings.sound.general + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + subwoofer: type: num denon_command@instance: zone1.settings.sound.general.subwoofer @@ -3455,9 +3355,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - lfe: - type: num - denon_command@instance: zone1.settings.sound.general.lfe + digitalinput: + type: str + denon_command@instance: zone1.settings.sound.general.digitalinput denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -3467,18 +3367,6 @@ item_structs: - AVR-X6300H.zone1.settings.sound - AVR-X6300H.zone1.settings.sound.general - lfeup: - type: bool - denon_command@instance: zone1.settings.sound.general.lfeup - denon_read@instance: false - denon_write@instance: true - - lfedown: - type: bool - denon_command@instance: zone1.settings.sound.general.lfedown - denon_read@instance: false - denon_write@instance: true - audioinput: type: str denon_command@instance: zone1.settings.sound.general.audioinput @@ -3719,12 +3607,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone2 - - AVR-X6300H.zone2.settings - - AVR-X6300H.zone2.settings.sound - - AVR-X6300H.zone2.settings.sound.channel_level tone_control: @@ -3940,12 +3822,6 @@ item_structs: denon_command@instance: zone3.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H - - AVR-X6300H.zone3 - - AVR-X6300H.zone3.settings - - AVR-X6300H.zone3.settings.sound - - AVR-X6300H.zone3.settings.sound.channel_level tone_control: @@ -4555,161 +4431,77 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X6300H-NA.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level subwoofer2: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer2 denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.channel_level tone_control: @@ -4778,6 +4570,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X6300H-NA + - AVR-X6300H-NA.zone1 + - AVR-X6300H-NA.zone1.settings + - AVR-X6300H-NA.zone1.settings.sound + - AVR-X6300H-NA.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -4833,9 +4649,9 @@ item_structs: - AVR-X6300H-NA.zone1.settings.sound - AVR-X6300H-NA.zone1.settings.sound.general - dialogenhance: + effect: type: num - denon_command@instance: zone1.settings.sound.general.dialogenhance + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -4845,21 +4661,15 @@ item_structs: - AVR-X6300H-NA.zone1.settings.sound - AVR-X6300H-NA.zone1.settings.sound.general - subwoofertoggle: + effectup: type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle - denon_read@instance: true + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone1 - - AVR-X6300H-NA.zone1.settings - - AVR-X6300H-NA.zone1.settings.sound - - AVR-X6300H-NA.zone1.settings.sound.general - subwoofer: + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -4869,21 +4679,21 @@ item_structs: - AVR-X6300H-NA.zone1.settings.sound - AVR-X6300H-NA.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + dialogenhance: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.dialogenhance denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -4893,15 +4703,33 @@ item_structs: - AVR-X6300H-NA.zone1.settings.sound - AVR-X6300H-NA.zone1.settings.sound.general - lfeup: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: + type: num + denon_command@instance: zone1.settings.sound.general.subwoofer + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X6300H-NA + - AVR-X6300H-NA.zone1 + - AVR-X6300H-NA.zone1.settings + - AVR-X6300H-NA.zone1.settings.sound + - AVR-X6300H-NA.zone1.settings.sound.general + + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -5145,12 +4973,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone2 - - AVR-X6300H-NA.zone2.settings - - AVR-X6300H-NA.zone2.settings.sound - - AVR-X6300H-NA.zone2.settings.sound.channel_level tone_control: @@ -5366,12 +5188,6 @@ item_structs: denon_command@instance: zone3.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X6300H-NA - - AVR-X6300H-NA.zone3 - - AVR-X6300H-NA.zone3.settings - - AVR-X6300H-NA.zone3.settings.sound - - AVR-X6300H-NA.zone3.settings.sound.channel_level tone_control: @@ -5808,161 +5624,77 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X4300H.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level subwoofer2: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer2 denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.channel_level tone_control: @@ -6031,6 +5763,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X4300H + - AVR-X4300H.zone1 + - AVR-X4300H.zone1.settings + - AVR-X4300H.zone1.settings.sound + - AVR-X4300H.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -6091,12 +5847,6 @@ item_structs: denon_command@instance: zone1.settings.sound.general.dialogtoggle denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone1 - - AVR-X4300H.zone1.settings - - AVR-X4300H.zone1.settings.sound - - AVR-X4300H.zone1.settings.sound.general dialog: type: num @@ -6122,9 +5872,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - subwoofertoggle: - type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + effect: + type: num + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -6134,9 +5884,15 @@ item_structs: - AVR-X4300H.zone1.settings.sound - AVR-X4300H.zone1.settings.sound.general - subwoofer: + effectup: + type: bool + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -6146,21 +5902,27 @@ item_structs: - AVR-X4300H.zone1.settings.sound - AVR-X4300H.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -6170,15 +5932,15 @@ item_structs: - AVR-X4300H.zone1.settings.sound - AVR-X4300H.zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -6422,12 +6184,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone2 - - AVR-X4300H.zone2.settings - - AVR-X4300H.zone2.settings.sound - - AVR-X4300H.zone2.settings.sound.channel_level tone_control: @@ -6643,12 +6399,6 @@ item_structs: denon_command@instance: zone3.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X4300H - - AVR-X4300H.zone3 - - AVR-X4300H.zone3.settings - - AVR-X4300H.zone3.settings.sound - - AVR-X4300H.zone3.settings.sound.channel_level tone_control: @@ -7116,161 +6866,77 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X3300W.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level subwoofer2: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer2 denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.channel_level tone_control: @@ -7339,6 +7005,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X3300W + - AVR-X3300W.zone1 + - AVR-X3300W.zone1.settings + - AVR-X3300W.zone1.settings.sound + - AVR-X3300W.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -7387,12 +7077,6 @@ item_structs: denon_command@instance: zone1.settings.sound.general.dialogtoggle denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone1 - - AVR-X3300W.zone1.settings - - AVR-X3300W.zone1.settings.sound - - AVR-X3300W.zone1.settings.sound.general dialog: type: num @@ -7418,9 +7102,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - subwoofertoggle: - type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + effect: + type: num + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -7430,9 +7114,15 @@ item_structs: - AVR-X3300W.zone1.settings.sound - AVR-X3300W.zone1.settings.sound.general - subwoofer: + effectup: + type: bool + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -7442,21 +7132,27 @@ item_structs: - AVR-X3300W.zone1.settings.sound - AVR-X3300W.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -7466,15 +7162,15 @@ item_structs: - AVR-X3300W.zone1.settings.sound - AVR-X3300W.zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -7707,12 +7403,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X3300W - - AVR-X3300W.zone2 - - AVR-X3300W.zone2.settings - - AVR-X3300W.zone2.settings.sound - - AVR-X3300W.zone2.settings.sound.channel_level tone_control: @@ -8192,149 +7882,71 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X2300W.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.channel_level tone_control: @@ -8403,6 +8015,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X2300W + - AVR-X2300W.zone1 + - AVR-X2300W.zone1.settings + - AVR-X2300W.zone1.settings.sound + - AVR-X2300W.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -8451,12 +8087,6 @@ item_structs: denon_command@instance: zone1.settings.sound.general.dialogtoggle denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone1 - - AVR-X2300W.zone1.settings - - AVR-X2300W.zone1.settings.sound - - AVR-X2300W.zone1.settings.sound.general dialog: type: num @@ -8482,9 +8112,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - subwoofertoggle: - type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + effect: + type: num + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -8494,9 +8124,15 @@ item_structs: - AVR-X2300W.zone1.settings.sound - AVR-X2300W.zone1.settings.sound.general - subwoofer: + effectup: + type: bool + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -8506,21 +8142,27 @@ item_structs: - AVR-X2300W.zone1.settings.sound - AVR-X2300W.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -8530,15 +8172,15 @@ item_structs: - AVR-X2300W.zone1.settings.sound - AVR-X2300W.zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true @@ -8782,12 +8424,6 @@ item_structs: denon_command@instance: zone2.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X2300W - - AVR-X2300W.zone2 - - AVR-X2300W.zone2.settings - - AVR-X2300W.zone2.settings.sound - - AVR-X2300W.zone2.settings.sound.channel_level general: @@ -9200,149 +8836,71 @@ item_structs: enforce_updates: true denon_read_group_trigger@instance: AVR-X1300W.zone1.settings.sound.channel_level - front_left: - type: num - denon_command@instance: zone1.settings.sound.channel_level.front_left - denon_read@instance: true - denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level - front_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level front_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level front_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.front_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level front_center: type: num denon_command@instance: zone1.settings.sound.channel_level.front_center denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level surround_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level surround_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surround_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level surroundback_left: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level surroundback_right: type: num denon_command@instance: zone1.settings.sound.channel_level.surroundback_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level rear_height_left: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_left denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level rear_height_right: type: num denon_command@instance: zone1.settings.sound.channel_level.rear_height_right denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level subwoofer: type: num denon_command@instance: zone1.settings.sound.channel_level.subwoofer denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.channel_level tone_control: @@ -9411,6 +8969,30 @@ item_structs: denon_read@instance: false denon_write@instance: true + lfe: + type: num + denon_command@instance: zone1.settings.sound.tone_control.lfe + denon_read@instance: true + denon_write@instance: true + denon_read_group@instance: + - AVR-X1300W + - AVR-X1300W.zone1 + - AVR-X1300W.zone1.settings + - AVR-X1300W.zone1.settings.sound + - AVR-X1300W.zone1.settings.sound.tone_control + + lfeup: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfeup + denon_read@instance: false + denon_write@instance: true + + lfedown: + type: bool + denon_command@instance: zone1.settings.sound.tone_control.lfedown + denon_read@instance: false + denon_write@instance: true + general: read: @@ -9459,12 +9041,6 @@ item_structs: denon_command@instance: zone1.settings.sound.general.dialogtoggle denon_read@instance: true denon_write@instance: true - denon_read_group@instance: - - AVR-X1300W - - AVR-X1300W.zone1 - - AVR-X1300W.zone1.settings - - AVR-X1300W.zone1.settings.sound - - AVR-X1300W.zone1.settings.sound.general dialog: type: num @@ -9490,9 +9066,9 @@ item_structs: denon_read@instance: false denon_write@instance: true - subwoofertoggle: - type: bool - denon_command@instance: zone1.settings.sound.general.subwoofertoggle + effect: + type: num + denon_command@instance: zone1.settings.sound.general.effect denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -9502,9 +9078,15 @@ item_structs: - AVR-X1300W.zone1.settings.sound - AVR-X1300W.zone1.settings.sound.general - subwoofer: + effectup: + type: bool + denon_command@instance: zone1.settings.sound.general.effectup + denon_read@instance: false + denon_write@instance: true + + delay: type: num - denon_command@instance: zone1.settings.sound.general.subwoofer + denon_command@instance: zone1.settings.sound.general.delay denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -9514,21 +9096,27 @@ item_structs: - AVR-X1300W.zone1.settings.sound - AVR-X1300W.zone1.settings.sound.general - subwooferup: + delayup: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferup + denon_command@instance: zone1.settings.sound.general.delayup denon_read@instance: false denon_write@instance: true - subwooferdown: + delaydown: type: bool - denon_command@instance: zone1.settings.sound.general.subwooferdown + denon_command@instance: zone1.settings.sound.general.delaydown denon_read@instance: false denon_write@instance: true - lfe: + subwoofertoggle: + type: bool + denon_command@instance: zone1.settings.sound.general.subwoofertoggle + denon_read@instance: true + denon_write@instance: true + + subwoofer: type: num - denon_command@instance: zone1.settings.sound.general.lfe + denon_command@instance: zone1.settings.sound.general.subwoofer denon_read@instance: true denon_write@instance: true denon_read_group@instance: @@ -9538,15 +9126,15 @@ item_structs: - AVR-X1300W.zone1.settings.sound - AVR-X1300W.zone1.settings.sound.general - lfeup: + subwooferup: type: bool - denon_command@instance: zone1.settings.sound.general.lfeup + denon_command@instance: zone1.settings.sound.general.subwooferup denon_read@instance: false denon_write@instance: true - lfedown: + subwooferdown: type: bool - denon_command@instance: zone1.settings.sound.general.lfedown + denon_command@instance: zone1.settings.sound.general.subwooferdown denon_read@instance: false denon_write@instance: true