Dashboard: Card Controle Remoto TV Samsung

Olá, nesse tutorial compartilho como criar um card com as principais funções de controle remoto da TV Samsung usando a integração media player (sem usar comandos IR).

O card fica assim:

1) Adicione o repositório personalizado no HACS.

Antes de criar o card é necessário adicionar o custom card TV Card.

2) Adicionando o card na Dashboard:

Agora já é possível criar o card, o código abaixo contém todos os botões disponíveis no custom card:

type: 'custom:tv-card'
entity: media_player.tv_quarto
name: TV Quarto
tv: true
power:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_POWER
    media_content_type: send_key
back:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_RETURN
    media_content_type: send_key
source:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_SOURCE
    media_content_type: send_key
home:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_HOME
    media_content_type: send_key
channelup:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_CHUP
    media_content_type: send_key
info:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_INFO
    media_content_type: send_key
channeldown:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_CHUP
    media_content_type: send_key
up:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_UP
    media_content_type: send_key
left:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_LEFT
    media_content_type: send_key
select:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_ENTER
    media_content_type: send_key
right:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_RIGHT
    media_content_type: send_key
down:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_DOWN
    media_content_type: send_key
reverse:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_REWIND
    media_content_type: send_key
play:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_PLAY
    media_content_type: send_key
forward:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_FF
    media_content_type: send_key
volume_mute:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_MUTE
    media_content_type: send_key
volume_up:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_VOLUP
    media_content_type: send_key
volume_down:
  service: media_player.play_media
  service_data:
    entity_id: media_player.tv_quarto
    media_content_id: KEY_VOLDOWN
    media_content_type: send_key
netflix:
  service: media_player.select_source
  service_data:
    entity_id: media_player.tv_quarto
    source: Netflix
prime_video:
  service: media_player.select_source
  service_data:
    entity_id: media_player.tv_quarto
    source: Prime Video
youtube:
  service: media_player.select_source
  service_data:
    entity_id: media_player.tv_quarto
    source: YouTube

O card pode ser usado para comandos via IR, para isso basta alterar os dados do service usando os dados do comando, segue exemplo usando broadlink:

      power:
        service: broadlink.send
        service_data:
          host: 192.168.1.53
          packet: >- JgBGAJOWEjcSOBI3EhMTEhITEhMSExI4ETgSOBEUERQRFBEUERQRFBI3EhMSFBETEhMSExMSEjgSExE4EzcRORI3ETkROBIADQUAAA==
4 Likes

Olá! Sou novo por aqui e estou com algumas dificuldades… como faço para instalar o card e como faço para utilizar com minha tv samsung? Ela ja aparece para mim como integrada. Obrigado

Olá, Funcionou perfeitamente comigo! eu só precisei ensinar meu broadlink rm4 os comandos e depois foi só usar conforme o exemplo abaixo:

power_on:
service: remote.send_command
service_data:
entity_id: remote.rm4_sala_remote
device: tv_sala
command: power_on

1 Like

Se a TV já está integrada ao HA e responde aos comandos, basta seguir o tutorial. Em casos de dificuldade, fale qual parte não está conseguindo.

Olá Douglas, tudo bem?
Tenho 2 TV’s samsung integradas ao home assistant. No entanto, nenhuma delas eu consigo utilizar o controle.
Criei um cartão normal puxando a entidade e por lá funciona tudo (ligar/desligar e volume), porém o controle não deu certo…

Você alterou o id da entidade no código do controle no lovelace?

Tem que alterar para o id da usa TV.

Sim, alterei todo o código entity_id para o meu… mesmo assim não funcionou…

Pode ser conflito por ter 2 tvs? Alguem conseguiu fazer isso?

Alguem conseguiu integrar a TV Samsung AU8000? Consegui integrar mais n aparece os app youtube, …

Tenho uma TV QN85A e também não consegui integrar. Ela não usa controle IR. O controle remoto é Bluetooth, mas o HA envia os comandos pela rede.

Testando pela aba Serviços das Ferramentas de Desenvolvedor, consegui mudar de canal com o código:

service: media_player.play_media
entity_id: media_player.samsung_qn85aa_65_tv
data:
  media_content_id: '5'
  media_content_type: channel
target:
  device_id: XXXXXXXXXXXXXXXXXXXXXXXXX

Mas não consegui adaptar esse código ao card. Alguma luz?

Cria um script com esse codigo e no card (no botão) vc aciona esse script…

1 Like

Olá pessoal, publiquei hoje um fork do tv-card:

Com ele temos:

  • Feedback tátil
  • Touchpad para navegação com gestos (suporta double-click e long-press)
  • Layout de linhas e botões customizável
  • Ajuste de volume deslizante
  • Configuração simpliicada

Com este YAML:

type: custom:tv-card
entity: media_player.tv
power_row:
  - power
channel_row:
  - channel_up
  - info
  - channel_down
apps_row:
  - netflix
  - youtube
  - spotify
volume_row: slider
navigation_row: touchpad
source_row:
  - return
  - home
  - source
media_control_row:
  - rewind
  - play
  - pause
  - fast_forward

Temos este resultado:

Fiz para a minha Smart TV Samsung sem me preocupar com suporte a outras marcas, então por enquanto provavelmente deve funcionar melhor só com TVs Samsung.
Mas em breve adiciono suporte a outras marcas, assim como o tv-card original faz.

Espero que ajude alguém :slight_smile: