# Emotiva Binding
This binding integrates Emotiva AV processors by using the Emotiva Network Remote Control protocol.
# Supported Things
This binding supports Emotiva processors with Emotiva Network Remote Control protocol support.
The thing type for all of them is processor
.
Tested models: Emotiva XMC-2
# Discovery
The binding automatically discovers devices on your network.
# Thing Configuration
The Emotiva Processor thing requires the ipAddress
it can connect to.
There are more parameters which all have defaults set.
Parameter | Values | Default |
---|---|---|
ipAddress | IP address of the processor | - |
controlPort | port number, e.g. 7002 | 7002 |
notifyPort | port number, e.g. 7003 | 7003 |
infoPort | port number, e.g. 7004 | 7004 |
setupPortTCP | port number, e.g. 7100 | 7100 |
menuNotifyPort | port number, e.g. 7005 | 7005 |
protocolVersion | Emotiva Network Protocol version, e.g. 3.0 | 2.0 |
keepAlive | Time between notification update from device, in milliseconds | 7500 |
retryConnectInMinutes | Time between connection retry, in minutes | 2 |
# Channels
The Emotiva Processor supports the following channels (some channels are model specific):
Channel Type ID | Item Type | Description |
---|---|---|
Main zone | ||
main-zone#power | Switch (RW) | Main zone power on/off |
main-zone#volume | Dimmer (RW) | Main zone volume in percentage (0 to 100) |
main-zone#volume-db | Number (RW) | Main zone volume in dB (-96 to 15) |
main-zone#mute | Switch (RW) | Main zone mute |
main-zone#source | String (RW) | Main zone input (HDMI1, TUNER, ARC, ...) |
Zone 2 | ||
zone2#power | Switch (RW) | Zone 2 power on/off |
zone2#volume | Dimmer (RW) | Zone 2 volume in percentage (0 to 100) |
zone2#volume-db | Number (RW) | Zone 2 volume in dB (-80 offset) |
zone2#mute | Switch (RW) | Zone 2 mute |
zone2#input | String (RW) | Zone 2 input |
General | ||
general#power | Switch (RW) | Power on/off |
general#standby | String (W) | Set in standby mode |
general#menu | String (RW) | Enter or exit menu |
general#menu-control | String (W) | Control menu via string commands |
general#up | String (W) | Menu up |
general#down | String (W) | Menu down |
general#left | String (W) | Menu left |
general#right | String (W) | Menu right |
general#enter | String (W) | Menu enter |
general#dim | Switch (RW) | Cycle through FP dimness settings |
general#mode | String (RW) | Select audio mode (auto, dts, ...) |
general#info | String (W) | Show info screen |
general#speaker-preset | String (RW) | Select speaker presets (preset1, preset2) |
general#center | Number (RW) | Center Volume increment up/down (0.5 step) |
general#subwoofer | Number (RW) | Subwoofer Volume increment up/down (0.5 step) |
general#surround | Number (RW) | Surround Volume increment up/down (0.5 step) |
general#back | Number (RW) | Back Volume increment up/down (0.5 step) |
general#loudness | Switch (RW) | Loudness on/off |
general#treble | Number (RW) | Treble Volume increment up/down (0.5 step) |
general#bass | Number (RW) | Bass Volume increment up/down (0.5 step) |
general#frequenncy | Rollershutter (W) | Frequency up/down, (100 kHz step) |
general#seek | Rollershutter (W) | Seek signal up/down |
general#channel | Rollershutter (W) | Channel up/down |
general#tuner-band | String (R) | Tuner band, (AM, FM) |
general#tuner-channel | String (RW) | User–assigned station name |
general#tuner-signal | String (R) | Tuner signal quality |
general#tuner-program | String (R) | Tuner program: "Country", "Rock", ... |
general#tuner-RDS | String (R) | Tuner RDS string |
general#audio-input | String (R) | Audio input source |
general#audio-bitstream | String (R) | Audio input bitstream type: "PCM 2.0", "ATMOS", etc. |
general#audio-bits | String (R) | Audio input bits: "32kHZ 24bits", etc. |
general#video-input | String (R) | Video input source |
general#video-format | String (R) | Video input format: "1920x1080i/60", "3840x2160p/60", etc. |
general#video-space | String (R) | Video input space: "YcbCr 8bits", etc. |
general#input-[1-8] | String (R) | User assigned input names |
general#selected-mode | String (R) | User selected mode for the main zone |
general#selected-movie-music | String (R) | User selected movie or music mode for main zone |
general#mode-ref-stereo | String (R) | Label for mode: Reference Stereo |
general#mode-stereo | String (R) | Label for mode: Stereo |
general#mode-music | String (R) | Label for mode: Music |
general#mode-movie | String (R) | Label for mode: Movie |
general#mode-direct | String (R) | Label for mode: Direct |
general#mode-dolby | String (R) | Label for mode: Dolby |
general#mode-dts | String (R) | Label for mode: DTS |
general#mode-all-stereo | String (R) | Label for mode: All Stereo |
general#mode-auto | String (R) | Label for mode: Auto |
general#mode-surround | String (RW) | Select audio mode (Auto, Stereo, Dolby, ...) |
general#width | Number (RW) | Width Volume increment up/down (0.5 step) |
general#height | Number (RW) | Height Volume increment up/down (0.5 step) |
general#bar | String (R) | Text displayed on front panel bar of device |
general#menu-display-highlight | String (R) | Menu Panel Display: Value in focus |
general#menu-display-top-start | String (R) | Menu Panel Display: Top bar, start cell |
general#menu-display-top-center | String (R) | Menu Panel Display: Top bar, center cell |
general#menu-display-top-end | String (R) | Menu Panel Display: Top bar, end cell |
general#menu-display-middle-start | String (R) | Menu Panel Display: Middle bar, start cell |
general#menu-display-middle-center | String (R) | Menu Panel Display: Middle bar, center cell |
general#menu-display-middle-end | String (R) | Menu Panel Display: Middle bar, end cell |
general#menu-display-bottom-start | String (R) | Menu Panel Display: Bottom bar, start cell |
general#menu-display-bottom-center | String (R) | Menu Panel Display: Bottom bar, center cell |
general#menu-display-bottom-end | String (R) | Menu Panel Display: Bottom bar, end cell |
(R) = read-only (no updates possible) (W) = write-only (RW) = read-write
# Full Example
# .things
file:
Thing emotiva:processor:1 "XMC-2" @ "Living room" [ipAddress="10.0.0.100", protocolVersion="3.0"]
# .items
file:
Switch emotiva-power "Processor" {channel="emotiva:processor:1:general#power"}
Dimmer emotiva-volume "Volume [%d %%]" {channel="emotiva:processor:1:main-zone#volume"}
Number:Dimensionless emotiva-volume-db "Volume [%d dB]" {channel="emotiva:processor:1:main-zone#volume-db"}
Switch emotiva-mute "Mute" {channel="emotiva:processor:1:main-zone#mute"}
String emotiva-source "Source [%s]" {channel="emotiva:processor:1:main-zone#input"}
String emotiva-mode-surround "Surround Mode: [%s]" {channel="emotiva:processor:1:general#mode-surround"}
Number:Dimensionless emotiva-speakers-center "Center Trim [%.1f dB]" {channel="emotiva:processor:1:general#center"}
Switch emotiva-zone2power "Zone 2" {channel="emotiva:processor:1:zone2#power"}
String emotiva-front-panel-bar "Bar Text" {channel="emotiva:processor:1:general#bar"}
String emotiva-menu-control "Menu Control" {channel="emotiva:processor:1:general#menu-control"}
String emotiva-menu-hightlight "Menu field focus" {channel="emotiva:processor:1:general#menu-display-highlight"}
String emotiva-menu-top-start "" <none> {channel="emotiva:processor:1:general#menu-display-top-start"}
String emotiva-menu-top-center "" <none> {channel="emotiva:processor:1:general#menu-display-top-center"}
String emotiva-menu-top-end "" <none> {channel="emotiva:processor:1:general#menu-display-top-end"}
String emotiva-menu-middle-start "" <none> {channel="emotiva:processor:1:general#menu-display-middle-start"}
String emotiva-menu-middle-center "" <none> {channel="emotiva:processor:1:general#menu-display-middle-center"}
String emotiva-menu-middle-end "" <none> {channel="emotiva:processor:1:general#menu-display-middle-end"}
String emotiva-menu-tottom-start "" <none> {channel="emotiva:processor:1:general#menu-display-bottom-start"}
String emotiva-menu-tottom-center "" <none> {channel="emotiva:processor:1:general#menu-display-bottom-center"}
String emotiva-menu-tottom-end "" <none> {channel="emotiva:processor:1:general#menu-display-bottom-end"}
# .sitemap
file:
Group item=emotiva-input label="Processor" icon="receiver" {
Default item=emotiva-power
Default item=emotiva-mute
Setpoint item=emotiva-volume
Default item=emotiva-volume-db step=2 minValue=-96.0 maxValue=15.0
Selection item=emotiva-source
Text item=emotiva-mode-surround
Setpoint item=emotiva-speakers-center step=0.5 minValue=-12.0 maxValue=12.0
Default item=emotiva-zone2power
}
Frame label="Front Panel" {
Text item=emotiva-front-panel-bar
Text item=emotiva-menu-highlight
Frame label="" {
Text item=emotiva-menu-top-start
Text item=emotiva-menu-top-center
Text item=emotiva-menu-top-end
}
Frame label="" {
Text item=emotiva-menu-middle-start
Text item=emotiva-menu-middle-center
Text item=emotiva-menu-middle-end
}
Frame label="" {
Text item=emotiva-menu-bottom-start
Text item=emotiva-menu-bottom-center
Text item=emotiva-menu-bottom-end
}
Buttongrid label="Menu Control" staticIcon=material:control-camera item=emotiva-menu_control buttons=[1:1:POWER="Power"=switch-off , 1:2:MENU="Menu", 1:3:INFO="Info" , 2:2:UP="Up"=f7:arrowtriangle_up , 4:2:DOWN="Down"=f7:arrowtriangle_down , 3:1:LEFT="Left"=f7:arrowtriangle_left , 3:3:RIGHT="Right"=f7:arrowtriangle_right , 3:2:ENTER="Select" ]
}
# Network Remote Control Protocol Reference
These resources can be useful to learn what to send using the command
channel:
Caught a mistake or want to contribute to the documentation? Edit this page on GitHub (opens new window)