Sony Bravia TV
The braviatv
platform allows you to control a Sony Bravia TV.
Almost all Sony Bravia TV 2013 and newer are supported. A more generic method for older TVs connected to a Raspberry Pi with HDMI-CEC is explained further below.
Configuration
Adding Sony Bravia TV to your Home Assistant instance can be done via the user interface, by using this My button:
If the above My button doesn’t work, you can also perform the following steps manually:
-
Browse to your Home Assistant instance.
-
In the sidebar click on Settings.
-
From the configuration menu select: Devices & Services.
-
In the bottom right, click on the Add Integration button.
-
From the list, search and select “Sony Bravia TV”.
-
Follow the instruction on screen to complete the set up.
Common Issues
Previous Configurations
To ensure a clean re-configuration, please perform the following steps:
- Remove the entities you are reconfiguring from Home Assistant.
- Restart Home Assistant.
- Perform the TV does not generate new pin steps.
- Retry configuration.
TV does not generate new pin
If you have previously set up your TV with any Home Assistant instances, you must remove Home Assistant from your TV in order for your TV to generate a new pin. To do this, you must do one of the following:
- On your TV, go to: Settings -> Network -> Remote device settings -> Deregister remote device. Disable and re-enable the Control remotely after. Menu titles may differ slightly between models. If needed, refer to your specific model’s manual for additional guidance.
- Reset your TV to factory condition.
Remote
When the integration is configured, two entities will be created: a media_player
and a remote
. The remote allows you to send key commands to your TV with the remote.send_command
service.
Some of the known valid key values are (may depend on your TV model):
Num1
Num2
Num3
Num4
Num5
Num6
Num7
Num8
Num9
Num0
Num11
Num12
Enter
GGuide
ChannelUp
ChannelDown
VolumeUp
VolumeDown
Mute
TvPower
Audio
MediaAudioTrack
Tv
Input
TvInput
TvAntennaCable
WakeUp
PowerOff
Sleep
Right
Left
SleepTimer
Analog2
TvAnalog
Display
Jump
PicOff
PictureOff
Teletext
Video1
Video2
AnalogRgb1
Home
Exit
PictureMode
Confirm
Up
Down
ClosedCaption
Component1
Component2
Wide
EPG
PAP
TenKey
BSCS
Ddata
Stop
Pause
Play
Rewind
Forward
DOT
Rec
Return
Blue
Red
Green
Yellow
SubTitle
CS
BS
Digital
Options
Media
Prev
Next
DpadCenter
CursorUp
CursorDown
CursorLeft
CursorRight
ShopRemoteControlForcedDynamic
FlashPlus
FlashMinus
DemoMode
Analog
Mode3D
DigitalToggle
DemoSurround
AD
AudioMixUp
AudioMixDown
PhotoFrame
Tv_Radio
SyncMenu
Hdmi1
Hdmi2
Hdmi3
Hdmi4
TopMenu
PopUpMenu
OneTouchTimeRec
OneTouchView
DUX
FootballMode
iManual
Netflix
Assists
FeaturedApp
FeaturedAppVOD
GooglePlay
ActionMenu
Help
TvSatellite
WirelessSubwoofer
AndroidMenu
Extra configuration for the integration
The integration allows you to change ignored TV sources from the front end. Enter which Sony Bravia TV integration you want to change options on and press the cog wheel.
For TVs older than 2013
This is not part of the Bravia TV integration. Extra Configuration does not apply to the steps below.
Users of TVs older than 2013 have another option for controlling their TV via Home Assistant.
Using HDMI-CEC
If you have a Raspberry Pi connected to your TV:
switch:
- platform: command_line
switches:
tv_rpi:
command_on: ssh [email protected][IP] "echo 'on 0' | cec-client -s"
command_off: ssh [email protected][IP] "echo 'standby 0' | cec-client -s"
command_state: ssh [email protected][IP] "echo 'pow 0' | cec-client -s |grep 'power status:'"
value_template: '{{ value == "power status: on" }}'
Using cec-client
is a great method to turn your TV off/on, however the trade off is if you’re using Kodi, it will no longer be able to control your TV using the TV Remote.
This is because only one process can control the CEC functionality within the Raspberry Pi at a time and running the above commands terminates the functionality inside libCEC within Kodi. Kodi must be restarted for TV remove functionality to work again.
Workaround
If your desire is only to turn on your TV, the following “workaround” may be desirable:
Change the ‘on’ command to a restart for Kodi. This doesn’t reboot the Kodi device.
Restarting Kodi will trigger a HDMI-CEC event to bring the TV out of standby. The following can replace your TV ‘on’ command.
command_on: ssh [email protected][IP] "systemctl restart kodi"