# Panasonic Blu-ray Player Binding
This binding connects Panasonic Blu-ray players from 2011/2012 and UHD Blu-ray players from 2018 to openHAB.
Supported Blu-ray models: DMP-BDT110, DMP-BDT210, DMP-BDT310, DMP-BDT120, DMP-BDT220, DMP-BDT320, DMP-BBT01 & DMP-BDT500.
Supported UHD models: DP-UB420/424, DP-UB820/824 & DP-UB9000/9004.
Please note: The player must be on the same IP subnet as the openHAB server for this binding to function. If the connection to the player originates from a different subnet, 404 response errors are sent in response to all requests.
To enable network remote control of the Blu-ray model players, configure the following settings:
- Player Settings/Network/Network Settings/Remote Device Settings
Then make sure you have the following values set:
- Remote Device Operation: On
- Registration Type: Automatic
For the UHD models, Voice Control must be enabled for the player's http interface to be active:
- Player Settings/Network/Voice Control: On
To enable the binding to control the player while off (network active while off), Quick Start mode must be On as follows:
- Player Settings/System/Quick Start: On
UHD Model Command Authentication:
The UHD models require authentication to use the control API.
A player key must be specified in the thing configuration in order for the power
, button
and control
channels to work.
UHD model players that are patched do not require a player key. See the AVForums discussions (opens new window) of the DP-UB420/820/9000 players for more information.
# Supported Things
There are two supported thing types, which represent either a BD player or a UHD player.
A supported Blu-ray player uses the bd-player
id and a supported UHD Blu-ray player uses the uhd-player
id.
Multiple Things can be added if more than one player is to be controlled.
# Discovery
Auto-discovery is supported if the player can be located on the local network using UPnP. Otherwise the thing must be manually added.
# Binding Configuration
The binding has no configuration options, all configuration is done at Thing level.
# Thing Configuration
The Thing has a few configuration parameters:
Name | Type | Description | Default | Required |
---|---|---|---|---|
hostName | text | The host name or IP address of the player. | N/A | yes |
refresh | integer | Overrides the refresh interval of the player status. Minimum interval is 5 seconds. | 5 | no |
playerKey | text | For UHD models, to enable authentication of control commands, a key for the player must be specified. | N/A | no |
Some notes:
- The control protocol of these players is undocumented and may not work consistently in all situations
- The UHD models only support playback elapsed time (not title total time or chapter information) reporting
- The time and chapter information is only available when playing a Blu-ray disc (not DVD or CD)
- There are reports in forum postings that not all commands work on all of the older models (i.e.: Power does not work on DMP-BDT110)
- Not all status information is available from all BD models (i.e.: playback elapsed time not reported by some models)
# Channels
The following channels are available:
Channel ID | Item Type | Read/Write | Description |
---|---|---|---|
power | Switch | RW | Turn the power for the player ON or OFF. |
button | String | W | Sends a command to the player. See lists of available commands in Appendix A below. |
control | Player | RW | Control Playback e.g. Play/Pause/Next/Previous/FForward/Rewind. |
player-status | String | R | The player status i.e.: Power Off, Tray Open, Stopped, Playback, Pause Playback, etc. |
time-elapsed | Number:Time | R | The total number of seconds of playback time elapsed. |
time-total | Number:Time | R | The total length of the current playing title in seconds. Not on UHD models. |
chapter-current | Number | R | The current chapter number. Not on UHD models. |
chapter-total | Number | R | The total number of chapters in the current title. Not on UHD models. |
# Full Example
panasonicbdp.things:
panasonicbdp:bd-player:mybdplayer "My Blu-ray player" [ hostName="192.168.10.1", refresh=5 ]
panasonicbdp:uhd-player:myuhdplayer "My UHD Blu-ray player" [ hostName="192.168.10.1", refresh=5, playerKey="ABCDEF1234567890abcdef0123456789" ]
panasonicbdp.items:
// BD Player
Switch Player_Power "Power" { channel="panasonicbdp:bd-player:mybdplayer:power" }
String Player_Button "Send Command" { channel="panasonicbdp:bd-player:mybdplayer:button" }
Player Player_Control "Control" { channel="panasonicbdp:bd-player:mybdplayer:control" }
String Player_PlayerStatus "Status: [%s]" { channel="panasonicbdp:bd-player:mybdplayer:player-status" }
Number:Time Player_TimeElapsed "Elapsed Time: [%d %unit%]" { channel="panasonicbdp:bd-player:mybdplayer:time-elapsed" }
Number:Time Player_TimeTotal "Total Time: [%d %unit%]" { channel="panasonicbdp:bd-player:mybdplayer:time-total" }
Number Player_ChapterCurrent "Current Chapter: [%d]" { channel="panasonicbdp:bd-player:mybdplayer:chapter-current" }
Number Player_ChapterTotal "Total Chapters: [%d]" { channel="panasonicbdp:bd-player:mybdplayer:chapter-total" }
// UHD Player
Switch Player_Power "Power" { channel="panasonicbdp:uhd-player:myuhdplayer:power" }
String Player_Button "Send Command" { channel="panasonicbdp:uhd-player:myuhdplayer:button" }
Player Player_Control "Control" { channel="panasonicbdp:uhd-player:myuhdplayer:control" }
String Player_PlayerStatus "Status: [%s]" { channel="panasonicbdp:uhd-player:myuhdplayer:player-status" }
Number:Time Player_TimeElapsed "Elapsed Time: [%d %unit%]" { channel="panasonicbdp:uhd-player:myuhdplayer:time-elapsed" }
panasonicbdp.sitemap:
sitemap panasonicbdp label="Panasonic Blu-ray" {
Frame label="Blu-ray Player" {
Switch item=Player_Power
// This Selection is deprecated in favor of the Buttongrid element below
Selection item=Player_Button icon="player"
Default item=Player_Control
Text item=Player_PlayerStatus
Text item=Player_TimeElapsed icon="time"
// The following three channels are not available on UHD models
Text item=Player_TimeTotal icon="time"
Text item=Player_ChapterCurrent icon="time"
Text item=Player_ChapterTotal icon="time"
Buttongrid label="Remote Control" staticIcon=material:tv_remote item=Player_Button buttons=[1:1:POWER="Power"=switch-off, 1:3:OP_CL="Open"=f7:eject, 2:1:D1="1", 2:2:D2="2", 2:3:D3="3", 3:1:D4="4", 3:2:D5="5", 3:3:D6="6", 4:1:D7="7", 4:2:D8="8", 4:3:D9="9", 5:1:SHARP="# [_]", 5:2:D0="0", 5:3:CLEAR="* Cancel", 6:1:NETFLIX="Netflix", 6:2:MLTNAVI="Home"=f7:house, 6:3:NETWORK="Internet", 7:1:PUPMENU="Pop-Up Menu", 7:2:UP="UP"=f7:arrowtriangle_up, 7:3:TITLE="Top Menu", 8:1:LEFT="Left"=f7:arrowtriangle_left, 8:2:SELECT="OK", 8:3:RIGHT="Right"=f7:arrowtriangle_right, 9:1:MENU="Option", 9:2:DOWN="Down"=f7:arrowtriangle_down, 9:3:RETURN="Return", 10:1:REV="Rev"=f7:backward, 10:2:PLAYBACK="Play"=f7:play, 10:3:CUE="Fwd"=f7:forward, 11:1:SKIPREV="Prev"=f7:backward_end_alt, 11:2:PAUSE="Pause"=f7:pause, 11:3:SKIPFWD="Next"=f7:forward_end_alt, 12:1:CLOSED_CAPTION="CC", 12:2:STOP="Stop"=f7:stop, 12:3:MIRACAST="Mirroring", 13:1:RED="Red", 13:2:GREEN="Green", 13:3:YELLOW="Yellow", 14:1:BLUE="Blue", 14:2:DSPSEL="Status", 14:3:PLAYBACKINFO="Playback Info", 15:1:TITLEONOFF="Subtitle", 15:2:AUDIOSEL="Audio", 15:3:PICTURESETTINGS="Video Setting", 16:1:HDR_PICTUREMODE="HDR Setting", 16:2:SOUNDEFFECT="Sound Effect", 16:3:HIGHCLARITY="High Clarity", 17:2:SKIP_THE_TRAILER="Skip The Trailer"]
}
}
# Appendix A - 'button' channel command codes
List of available button commands for BD players:
Function | Command |
---|---|
Power On | POWERON |
Power Off | POWEROFF |
Power Toggle | POWER |
Play | PLAYBACK |
Pause | PAUSE |
Stop | STOP |
Fast Forward | CUE |
Reverse | REV |
Skip Forward | SKIPFWD |
Skip Back | SKIPREV |
Open/Close | OP_CL |
Status | DSPSEL |
Top Menu | TITLE |
Pop-Up Menu | PUPMENU |
Up | UP |
Down | DOWN |
Left | LEFT |
Right | RIGHT |
OK | SELECT |
Submenu | MENU |
Return | RETURN |
1 (@.) | D1 |
2 (ABC) | D2 |
3 (DEF) | D3 |
4 (GHI) | D4 |
5 (JKL) | D5 |
6 (MNO) | D6 |
7 (PQRS) | D7 |
8 (TUV) | D8 |
9 (WXYZ) | D9 |
0 (-,) | D0 |
12 | D12 |
* (Cancel) | CLEAR |
# ([_]) | SHARP |
Red | RED |
Green | GREEN |
Blue | BLUE |
Yellow | YELLOW |
Home | MLTNAVI |
Netflix (broken/too old) | NETFLIX |
VIERA Cast | V_CAST |
Network | NETWORK |
Setup | SETUP |
Exit | EXIT |
Audio | AUDIOSEL |
3D | 3D |
Playback View (buttons not in other views) | |
PIP | P_IN_P |
OSD (DISPLAY) | OSDONOFF |
Shuttle(BD) View (buttons not in other views) | |
Swipe in CW circle | SHFWD2 |
Swipe in CCW circle | SHREV2 |
List of available button commands for UHD players:
Function | Command |
---|---|
Power On | POWERON |
Power Off | POWEROFF |
Power Toggle | POWER |
Play | PLAYBACK |
Pause | PAUSE |
Stop | STOP |
Fast Forward | CUE |
Reverse | REV |
Skip Forward | SKIPFWD |
Skip Back | SKIPREV |
Manual Skip +60s | MNSKIP |
Manual Skip -10s | MNBACK |
Open/Close | OP_CL |
Status | DSPSEL |
Top Menu | TITLE |
Pop-up Menu | PUPMENU |
Up | UP |
Down | DOWN |
Left | LEFT |
Right | RIGHT |
OK | SELECT |
Submenu | MENU |
Return | RETURN |
1 (@.) | D1 |
2 (ABC) | D2 |
3 (DEF) | D3 |
4 (GHI) | D4 |
5 (JKL) | D5 |
6 (MNO) | D6 |
7 (PQRS) | D7 |
8 (TUV) | D8 |
9 (WXYZ) | D9 |
0 (-,) | D0 |
12 | D12 |
* (Cancel) | CLEAR |
# ([_]) | SHARP |
Red | RED |
Green | GREEN |
Blue | BLUE |
Yellow | YELLOW |
Home | MLTNAVI |
Netflix | NETFLIX |
VIERA Cast | V_CAST |
Network | NETWORK |
Setup | SETUP |
Exit | EXIT |
Audio | AUDIOSEL |
Subtitle | TITLEONOFF |
Closed Caption | CLOSED_CAPTION |
Playback Info | PLAYBACKINFO |
HDR Picture Mode | HDR_PICTUREMODE |
Mirroring | MIRACAST |
Picture Setting | PICTURESETTINGS |
Sound Effect | SOUNDEFFECT |
High Clarity | HIGHCLARITY |
Skip The Trailer | SKIP_THE_TRAILER |