-
-
Notifications
You must be signed in to change notification settings - Fork 30.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Vizio Smartcast Integration cannot use media_player select source for anything not a TV "app" #83689
Comments
Hey there @raman325, mind taking a look at this issue as it has been labeled with an integration ( Code owner commandsCode owners of
(message by CodeOwnersMention) vizio documentation |
Additional information that could be the issue. By setting logging on and using media_player.select_source, I see the following log (I added the logs for before and after the command is sent): 2022-12-13 11:49:29.051 ERROR (MainThread) [homeassistant.components.system_log.external] Change to CAST2022-12-13 11:49:34.703 DEBUG (MainThread) [pyvizio.api._protocol] Using Command: GetCurrentPowerStateCommand({'_url': '/state/device/power_mode', 'item_name': 'POWER_MODE', 'default_return': 0}) 2022-12-13 11:50:30.078 ERROR (MainThread) [homeassistant.components.system_log.external] End Change to CAST |
More info using curl to API directly trying to switch from HDMI-1 to CAST:
{"STATUS":{"RESULT":"SUCCESS","DETAIL":"Success"},"URI":"/menu_native/dynamic/tv_settings/devices/name_input","PARAMETERS":{"HASHONLY":"FALSE","FLAT":"TRUE","HELPTEXT":"FALSE"},"ITEMS":[{"CNAME":"cast","TYPE":"T_DEVICE_V1","NAME":"CAST","VALUE":{"METADATA":"","NAME":"SMARTCAST"},"READONLY":"TRUE","ENABLED":"FALSE","HASHVAL":1541296275},{"CNAME":"hdmi1","TYPE":"T_DEVICE_V1","NAME":"HDMI-1","VALUE":{"METADATA":"","NAME":"DirecTV"},"ENABLED":"FALSE","HASHVAL":1288275350},{"CNAME":"hdmi2","TYPE":"T_DEVICE_V1","NAME":"HDMI-2","VALUE":{"METADATA":"","NAME":"HDMI-2"},"ENABLED":"FALSE","HASHVAL":478241065},{"CNAME":"hdmi3","TYPE":"T_DEVICE_V1","NAME":"HDMI-3","VALUE":{"METADATA":"","NAME":"HDMI-3"},"ENABLED":"FALSE","HASHVAL":3561985501},{"CNAME":"comp","TYPE":"T_DEVICE_V1","NAME":"COMP","VALUE":{"METADATA":"","NAME":"COMP"},"ENABLED":"FALSE","HASHVAL":3372802964},{"CNAME":"tuner","TYPE":"T_DEVICE_V1","NAME":"TV","VALUE":{"METADATA":"","NAME":"TV"},"READONLY":"TRUE","ENABLED":"FALSE","HASHVAL":3845225872}],"NAME":"Name Input","TYPE":"T_MENU_V1","CNAME":"name_input","GROUP":"G_DEVICES","HASHLIST":[2290841388,4012391352,3366813733]}
{"STATUS":{"RESULT":"SUCCESS","DETAIL":"Success"},"URI":"/menu_native/dynamic/tv_settings/devices/current_input","PARAMETERS":{"HASHONLY":"FALSE","FLAT":"TRUE","HELPTEXT":"FALSE"},"ITEMS":[{"CNAME":"current_input","TYPE":"T_STRING_V1","NAME":"Current Input","VALUE":"HDMI-1","ENABLED":"FALSE","HIDDEN":"TRUE","HASHVAL":2129379411}],"HASHLIST":[4012391352,3366813733]}
{"STATUS":{"RESULT":"FAILURE","DETAIL":"Failure"},"URI":"/menu_native/dynamic/tv_settings/devices/current_input","PARAMETERS":{"REQUEST":"MODIFY","VALUE":"CAST","HASHVAL":2129379411}} There are no other details, just that it fails. |
One additional note/workaround ... you can implement a button to call the key command:
This will pop open the list of inputs and calling again (and again ...) before it auto selects will cycle through the inputs. This is the old way I did this but that seems so kludgy. |
Another note from additional testing. If I send the command to select_source as "HDMI-1" on my TVs (that corresponds to DirecTV as my box is plugged into that port) and then immediately send a DirecTV command to display the guide, the TV will then switch and use HDMI-1. It is like the TV thinks the input is HDMI-1 but it does not display it until another command (like "guide") is sent to the DirecTV box and then that signal triggers the TV to change. |
I have successfully found the issue, I will leave it to someone to fix. See exiva/Vizio_SmartCast_API#36 Inputs like HDMI-1, HDMI-2, ... CAST are now hdmi1, hdmi2, ... cast. |
Just posting to see it is not closed. At least others on github that created the API recognize this issue. No comments from anyone else like here |
Definitely hoping for a fix for this soon!! |
For me, I have to get the hashval of the current input, and pass that to the command to change it, or else I get a hashval error. So I have to make two API calls like so, but at least I can switch inputs now.
|
How would you go into integrating this for a Hass newbie like I am? Do I need to setup any other external script or do I just use this code into a specific Hass module? Only need hdmi1 to work with any type of trigger. Thx! |
First put this (replace xxxxxxx with your auth token and the ip address with your TV's IP) in your configuration.yaml
Then you'll be able to call service |
Thx a lot! I went and created an auth token in the profile page, then pasted the provided code in the configurations.yaml via the studio code editor. Then I added the previously created auth token in replacement of the XXXXXX and changed IP for my TV's local wifi ip. Seems to be all good but tv won't change. Just to make sure. Shouldn't the auth token be for tv access? I might not have the correct one set. The one I got from hass has many random chars and is much longer than the number of XXXXXX. Thx again and sorry for my newbyness. Been learning a lot in the last week. 20 years Homeseer user so I got the logics but never coded in YAML.. |
The auth will be for Vizio. I got mine using pyvizio.
…On Fri, Jan 6, 2023 at 12:12 PM loowee2k5 ***@***.***> wrote:
Thx a lot! I went and created an auth token in the profile page, then
pasted the provided code in the configurations.yaml via the studio code
editor. Then I added the previously created auth token in replacement of
the XXXXXX and changed IP for my TV's local wifi ip.
Seems to be all good but tv won't change. Just to make sure. Shouldn't the
auth token be for tv access? I might not have the correct one set. The one
I got from hass has many random chars and is much longer than the number of
XXXXXX.
Thx again and sorry for my newbyness. Been learning a lot in the last
week. 20 years Homeseer user so I got the logics but never coded in YAML..
—
Reply to this email directly, view it on GitHub
<#83689 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABDZDFWZG6AQ4IDHSMUQW6TWRBHAHANCNFSM6AAAAAASZ2IPDA>
.
You are receiving this because you commented.Message ID:
***@***.***>
|
This site has instructions on getting the auth code. |
There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. |
No prob. Workarounds do exist and I guess I will look at taking this over in the future as no one seems to think this is something of value. |
It's not about not thinking it's something of value @kbrown01 - the reality is:
I'm happy to make updates where possible, but I don't have the bandwidth to troubleshoot this particular issue, and if you have a handle on this then please, feel free to PR the required changes into either or both the integration and the lib. |
The problem
Some sources (specifically HDMI-1,2,3,4) as well as CAST no longer work with media_player.select_source
service: media_player.select_source
data:
source: HDMI-1
target:
entity_id: media_player.office_vizio
Worked up until the last Vizio update on newer TVs.
It is like select source works to select an app, but can't be used to change input.
Note that I have two V505-J09 which worked until Vizio update got installed. I have another Vizio (older) which had no update and it works perfectly. I can set source to HDMI-1, CAST, Netflix, etc and it will switch between those. After the update for the other TVs, you can no longer use Home Assistant to switch between these sources.
In a quick test I can confirm that using select_source does not select any "inputs" now. From the HA state viewer, anything that is an "app" (Netflix, YouTube, etc.) works fine, anything that is a physical input no longer works after the lasted Vizio Smartcast firmware update. The following do not work for three of my four Vizio TVs.
HDMI-1
HDMI-2
HDMI-3
COMP
TV
This also applies to CAST, you cannot get back to it after switching to something like Netflix. The code I use is all posted here which I cannot use anymore for these TVs:
https://github.com/kbrown01/Vizio_DirecTV
Note that this seems to be an issue with the Vizio integration and a firmware update to the TV as I still have one TV which was not updated and it works fine. The other three worked up until the firmware updated on the TVs.
What version of Home Assistant Core has the issue?
Home Assistant 2022.12.0
What was the last working version of Home Assistant Core?
No response
What type of installation are you running?
Home Assistant Core
Integration causing the issue
Vizio Smartcast
Link to integration documentation on our website
https://www.home-assistant.io/integrations/vizio/
Diagnostics information
No response
Example YAML snippet
No response
Anything in the logs that might be useful for us?
No response
Additional information
No response
The text was updated successfully, but these errors were encountered: