Philips Hue HDMI Sync Box


Philips Hue HDMI Sync Box

This binding integrates the Play HDMI Sync Box into openHAB. The integration happens directly through the Hue HDMI Sync Box API.

Discovery

The binding is using mDNS to discover HDMI Sync devices in the local network. The LED on the Sync Box must be white or red. This indicates that the device is connected to the Network. If the LED is blinking blue, you need to setup the device using the official Hue Sync App.

If the device is not discovered you can check if it is properly configured and discoverable in the network:

Linux (Ubuntu based distributions)
$ avahi-browse --resolve _huesync._tcp 
+ wlp0s20f3 IPv4 HueSyncBox-XXXXXXXXXXX                       _huesync._tcp        local
= wlp0s20f3 IPv4 HueSyncBox-XXXXXXXXXXX                       _huesync._tcp        local
   hostname = [XXXXXXXXXXX.local]
   address = [192.168.0.12]
   port = [443]
   txt = ["name=Sync Box" "devicetype=HSB1" "uniqueid=XXXXXXXXXXX" "path=/api"]

Thing Configuration

To enable the binding to communicate with the device, a registration is required. Once the registration process is completed, the acquired token will authorize the binding to communicate with the device. After initial discovery and thing creation the device will stay offline. To complete the authentication you need to pressed the registration button on the sync box for 3 seconds.

Thing Configuration “huesyncthing”

Name Type Description Default Required Advanced
host text IP address of the device N/A yes no
port integer Port of the HDMI Sync Box. 443 yes yes
registrationId text Application Registration Id N/A no yes
apiAccessToken text API Access Token N/A no yes
statusUpdateInterval integer Status Update Interval in seconds 10 yes yes

Channels

Groups

device-firmware

Information about the installed device firmware and available updates.

Channel Type Read/Write Description
firmware String R Installed firmware version
available-firmware String R Latest available firmware version

device-hdmi-connection-[in|out]

Information about a HDMI input connection.

Channel Type Read/Write Description
type String R
Friendly Type
  • generic
  • video
  • game
  • music
  • xbox
  • playstation
  • nintendoswitch
  • phone
  • desktop
  • laptop
  • appletv
  • roku
  • shield
  • chromecast
  • firetv
  • diskplayer
  • settopbox
  • satellite
  • avreceiver
  • soundbar
  • hdmiswitch
status String R
Device connection status
  • unplugged
  • plugged
  • linked
  • unknown
mode String R
Mode
  • video
  • game
  • music
  • powersave
  • passthrough

device-commands

Channel Type Read/Write Description
mode String R/W
Hue Sync operation mode
  • video
  • game
  • music
  • powersave
  • passthrough
syncActive Switch R/W
Synchronization

OFF in case of powersave or passthrough mode, and ON in case of video, game or music mode.

When changed from OFF to ON, it will start syncing in last used mode for current source. When changed from ON to OFF, will set passthrough mode.

modes
  • video
    Analyzes the on-screen visuals, translating colors and brightness into corresponding light effects for an immersive movie-watching experience.
  • music
    Analyzes the rhythm and beat of your music, creating dynamic light along to your tunes.
  • game
    Reacts to the action on your screen, intensifying the in-game atmosphere with bursts of light that correspond to explosions, gunfire, and other gameplay events.\n
  • passthrough
  • powersave

Item Configuration

image


Groups
Group HueSyncBox “HueSyncBox” <iconify:mdi:tv> [“NetworkAppliance”]
Group HueSyncBox_Execution “Remote Control” <iconify:mdi:remote> (HueSyncBox) [“RemoteControl”]
Group HueSyncBox_Firmware “Firmware” <iconify:mdi:information> (HueSyncBox) [“Point”]
Group HueSyncBox_Inputs “Inputs” (HueSyncBox) [“Receiver”]
Group HueSyncBox_Input_1 “Input 1” <iconify:mdi:hdmi-port> (HueSyncBox_Inputs) [“Equipment”]
Group HueSyncBox_Input_2 “Input 2” <iconify:mdi:hdmi-port> (HueSyncBox_Inputs) [“Equipment”]
Group HueSyncBox_Input_3 “Input 3” <iconify:mdi:hdmi-port> (HueSyncBox_Inputs) [“Equipment”]
Group HueSyncBox_Input_4 “Input 4” <iconify:mdi:hdmi-port> (HueSyncBox_Inputs) [“Equipment”]
Group HueSyncBox_Output “Output” <iconify:mdi:tv> (HueSyncBox) [“Screen”]

Remote Control - Channels
String HueSyncBox_Device_Mode “Mode” <iconify:mdi:multimedia> (HueSyncBox_Execution) { channel=“huesync:huesyncthing:HueSyncBox:device-commands#mode” }
Switch HueSyncBox_Device_Sync “Sync” <iconify:mdi:sync> (HueSyncBox_Execution) { channel=“huesync:huesyncthing:HueSyncBox:device-commands#syncActive” }

Firmware - Channels
String HueSyncBox_Firmware_Version “Firmware Version” <iconify:mdi:text> (HueSyncBox_Firmware) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-firmware#firmware" }
String HueSyncBox_Latest_Firmware_Version “Latest Firmware Version” <iconify:mdi:text> (HueSyncBox_Firmware) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-firmware#available-firmware" }

Input 1 - Channels
String HueSyncBox_Device_hdmi_in1_Name “Name - Input 1” <iconify:mdi:text> (HueSyncBox_Input_1) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-1#name" }
String HueSyncBox_Device_hdmi_in1_Type “Type - Input 1” <iconify:mdi:devices> (HueSyncBox_Input_1) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-1#type" }
String HueSyncBox_Device_hdmi_in1_Status “Status - Input 1” <iconify:mdi:connection> (HueSyncBox_Input_1) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-1#status" }
String HueSyncBox_Device_hdmi_in1_Mode “Mode - Input 1” <iconify:mdi:multimedia> (HueSyncBox_Input_1) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-1#mode" }
Input 2 - Channels
String HueSyncBox_Device_hdmi_in2_Name “Name - Input 2” <iconify:mdi:text> (HueSyncBox_Input_2) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-2#name" }
String HueSyncBox_Device_hdmi_in2_Type “Type - Input 2” <iconify:mdi:devices> (HueSyncBox_Input_2) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-2#type" }
String HueSyncBox_Device_hdmi_in2_Status “Status - Input 2” <iconify:mdi:connection> (HueSyncBox_Input_2) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-2#status" }
String HueSyncBox_Device_hdmi_in2_Mode “Mode - Input 2” <iconify:mdi:multimedia> (HueSyncBox_Input_2) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-2#mode" }
Input 3 - Channels
String HueSyncBox_Device_hdmi_in3_Name “Name - Input 3” <iconify:mdi:text> (HueSyncBox_Input_3) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-3#name" }
String HueSyncBox_Device_hdmi_in3_Type “Type - Input 3” <iconify:mdi:devices> (HueSyncBox_Input_3) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-3#type" }
String HueSyncBox_Device_hdmi_in3_Status “Status - Input 3” <iconify:mdi:connection> (HueSyncBox_Input_3) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-3#status" }
String HueSyncBox_Device_hdmi_in3_Mode “Mode - Input 3” <iconify:mdi:multimedia> (HueSyncBox_Input_3) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-3#mode" }
Input 4 - Channels
String HueSyncBox_Device_hdmi_in4_Name “Name - Input 4” <iconify:mdi:text> (HueSyncBox_Input_4) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-4#name" }
String HueSyncBox_Device_hdmi_in4_Type “Type - Input 4” <iconify:mdi:devices> (HueSyncBox_Input_4) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-4#type" }
String HueSyncBox_Device_hdmi_in4_Status “Status - Input 4” <iconify:mdi:connection> (HueSyncBox_Input_4) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-4#status" }
String HueSyncBox_Device_hdmi_in4_Mode “Mode - Input 4” <iconify:mdi:multimedia> (HueSyncBox_Input_4) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-in-4#mode" }

Output - Channels
String HueSyncBox_Device_hdmi_out_Name “Name - Output” <iconify:mdi:text> (HueSyncBox_Output) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-out#name" }
String HueSyncBox_Device_hdmi_out_Type “Type - Output” <iconify:mdi:tv> (HueSyncBox_Output) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-out#type" }
String HueSyncBox_Device_hdmi_out_Status “Status - Output” <iconify:mdi:connection> (HueSyncBox_Output) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-out#status" }
String HueSyncBox_Device_hdmi_out_Mode “Mode - Output” <iconify:mdi:multimedia> (HueSyncBox_Output) [“Property”] { channel="huesync:huesyncthing:HueSyncBox:device-hdmi-out#mode" }

Changelog

Version 4.2.0 - Build 21397

  • feat(channel): :heavy_plus_sign: “syncActive” ON/OFF switch added to thing
    image

This version works with 4.1.3 and 4.2.0 snapshot version. Some item description text will not be formatted in 4.1.3 ( :arrow_right: see Issue #2613 )

image

Version 4.2.0 - Build 21187

  • initial alpha release

Resources

:package: Bundle
:receipt: Source Code

5 Likes