Universal Remote Card - Buttons, Touchpads, Sliders, and Keyboards for Multiple Platforms

Hello,

Thanks for this dashboard. I installed it via HACS and after cleanning my setup, all is working. Thanks

I am trying to build a custom button. I have this currently working as a script and then assigning a button to the script.

sequence:
  - alias: Launch HBO MAX on Master Bedroom
    sequence:
      - target:
          entity_id: media_player.master_bedroom
        data:
          source: HBO Max
        action: media_player.select_source
alias: Launch HBO MAX on Master Bedroom
description: ""

but I’m failing to adapt it for Spectrum TV app.

Any ideas? I assume I just don’t know what to list as the source… but I don’t know

When using the slider with Fire TV and selecting the media player (JBL Bar 1000), the volume slider does not retain its position. After changing the value and tapping anywhere on the screen, the slider jumps back instead of staying at the selected level.

Also i have tried to use the jbl number entity directly but got the same behavior


Are you sure that the sound bar reports it’s volume back to Home Assistant? What does the media player volume_level attribute look like? Does it actually change the volume? A lot of media player entities do not actually report their volumes or support the media_player.volume_set service.

Thank you for your reply :pray:t4: Yes it actually changes the volume even through the card it just that the slider doesn’t stays at the set position after changing the volume, it jumps to a different position without effecting the volume level with that behavior

Post your slider config, something may be wrong with that. When you refresh the page is the volume slider in the correct position? It could be that the soundbar takes a while to report it’s updated volume to Home Assistant and the slider’s update after action delay needs to be increased to account for it.

I tried using the number entity provided directly by the soundbar, but the issue still persists. When I change the volume to any value and then tap anywhere on the dashboard, the slider immediately jumps to the maximum. After refreshing the page, it resets to 0, even though the actual sound volume remains correct and continues working properly.

I tested both the media player entity and the number entity, and I also adjusted the delay interval to multiple values, but none of these changes resolved the issue


type: slider
name: slider
range:
  - 0
  - 100
step: 1
value_attribute: volume_level
tap_action:
  action: call-service
  service: number.set_value
  target:
    entity_id: number.jbl_bar_1000_c3d8_volume
  data:
    value: '{{ value | int }}'
entity_id: number.jbl_bar_1000_c3d8_volume
vertical: true
value_from_hass_delay: 10000


You left the media player volume_level value_attribute field in so the feature’s value is undefined. You need to delete that line to use the feature with the number entities. For media player volume level, the range is 0 - 1 with a step size of 0.01.

I tried searching through the post but wasn’t seeing what I was looking for – is there a command to enter for the ā€œInputsā€ or ā€œSelect Sourceā€ button on a remote? e.g. changing from HDMI1 to HDMI2

Which platform? Some have input commands and some don’t. And of those that do like Android TV they don’t work on all devices.

TCL TV running Google TV

If the default hdmi and component keys don’t do anything and there isn’t an input source option for the media player it probably isn’t possible with the Home Assistant integrations. You may have to do so using an IR remote like a Broadlink instead.

Hi

Is it possible to have all the buttons working with android tv but the volume controlling my Samsung tv ?

Thanks in advance

Yup, just create custom buttons for volume_up and volume_down and/or a custom slider and configure it to call the appropriate services for your TV volume instead.

How can I reassign a universal key to a different action? More specifically, i’m trying to use this to create universal remote cards to run a broadlink RF remote to control a bunch of shades in the house. I built the card with the 3 keys i need (up/down/stop) but am not seeing where I can assign them to the actions i create using the learn action.
Sorry if I’m missing something obvious.
Thanks!
Mike

Per the README in the GitHub link in the first post and the comment directly above yours, create custom button elements for the keys you want to overwrite and change their actions. If the thing you are overwriting is a touchpad or circlepad, create a custom one of those instead. When you name a custom remote element the same name as a default one, it inherits the default config for you to modify.

Hello, thank you for this wonderful card.
Is it possible to change the background color of the search function? On my iOS Dark Mode Blue Red theme, the background is almost transparent.

The keyboard dialogs do not have their own CSS style fields like everything else in the card, but you can still modify their styles indirectly using CSS custom attributes. The dialog background is set to var(--md-sys-color-surface-container-high,var(--md-dialog-container-color,var(--ha-card-background,var(--card-background-color,#fff)))). Modifying one of those custom properties (the earlier in the chain the better) just for the remote-dialog element in the general CSS styles section should change the dialog background color. That all being said I should look at what properties Home Assistant uses for dialog colors and update the default styles of the remote dialog to match.

Edit: In the next minor release the keyboard dialog will use --ha-dialog-surface-background for the background color and --ha-dialog-border-radius for the border radius.

Version 4.10.0 adds momentary repeat actions. You can now fire different actions when initially pressing, holding on repeat, and then releasing a button in momentary mode.

1 Like

Thank you for your reply.

But this would require me to modify all the devices that control Home Assistant. PCs, tablets, and smartphones?