Have an experimental idea or technical proposal?
This is the place for:
- Early concepts
- Developer feedback
- Technical feasibility discussion
Not all ideas will become features.
Have an experimental idea or technical proposal?
This is the place for:
Not all ideas will become features.
Need to be able to pair the Roscard for TV and Media Player together.
Example.
If I open the TV Control Card for my Shield, I should be able to swipe sideways to go to the Media Player Card for my Shield, While the remote keeps the button mappings for my TV Control card active, while on the Media Player Card.
This is a very good suggestion, thanks for sharing the use case.
At the moment:
Each RosCard is independent
Physical button mappings are tied to the currently active card
Cross-card context sharing (TV ↔ Media) is not implemented yet
What you’re describing would require:
Shared device context between cards
Persistent physical button mappings while switching UI views
This is a valid feature request and aligns well with Astrion’s hybrid hardware + touchscreen design.
I will recommend to the RD team for evaluation.
Thank you Charles. It is great that you take on feedback from us users.
I agree with @Chykan_Hunter on this one. A broader design thought might be to realise that actual “devices” are often more complex than a single entity. When I’m watching TV, it’s actually the TV, the media player (a Sky Q satellite stb), and a audio receiver. If I watch amazon prime or netflix, I might use the player built into the TV rather than the one in the media player, if I’m watching sport, I’m using the stb (so changing the TV input). If the source is 4k UHD on the STB, I run a script to change the output. I currently use mini media player which allows me to assemble a set of actions from diverse entities into a single UI element. But in general, I’d say there isn’t a 1:1 mapping always between the “logical” device we want to control and an entity. Maybe building a roscard to Universal Remote might be a way to achieve this?
Below is an example yaml showing what HA entities are used for mapping my keys on my dashboard remote GitHub - PRProd/HA-Firemote: Apple TV, Amazon Fire TV, Chromecast, Homatics, NVIDIA Shield, onn., Roku, Xiaomi Mi, and Android TV remote control card for Home Assistant
- type: custom:firemote-card
entity: media_player.shield_debug_bridge
device_family: nvidia-shield
device_type: shield-tv-pro-2019
compatibility_mode: default
android_tv_remote_entity: ""
defaultRemoteStyle_override: AL2
app_launcher_relative_size: -30
button_overrides:
mute-button:
service: switch.toggle
target:
entity_id: switch.nad_mute_switch
power-button:
service: remote.toggle
target:
entity_id: remote.harmony_hub
left-button:
service: button.press
target:
entity_id: button.harmony_left
right-button:
service: button.press
target:
entity_id: button.harmony_right
up-button:
service: button.press
target:
entity_id: button.harmony_up
down-button:
service: button.press
target:
entity_id: button.harmony_down
center-button:
service: button.press
target:
entity_id: button.harmony_select
volume-down-button:
service: button.press
target:
entity_id: button.harmony_volumedown
volume-up-button:
service: button.press
target:
entity_id: button.harmony_volumeup
reboot-button:
service: button.press
target:
entity_id: button.harmony_surroundmode
scale: "100"
hide_button_group_frame: true
dpad_style: apple-tv-black
useCustomSkin: false
skin: "#7246b4"
So what I need is to be able to have my TV Roscard below have the above entities inserted.
- type: custom:aiks-tv-card
id: f880c45f-643d-4119-9e38-94d93426ca12
tv_type: android_tv
tv_name: Shield
media_play_entity: media_player.shield
entities:
- key: POWER
type: select
entity_id: select.harmony_hub_activities
value: power_off
- key: UP
type: remote
entity_id: remote.shield_debug_bridge_remote
value: UP
- key: DOWN
type: remote
entity_id: remote.shield_debug_bridge_remote
value: DOWN
- key: LEFT
type: remote
entity_id: remote.shield_debug_bridge_remote
value: LEFT
- key: RIGHT
type: remote
entity_id: remote.shield_debug_bridge_remote
value: RIGHT
- key: CENTER
type: remote
entity_id: remote.shield_debug_bridge_remote
value: CENTER
- key: BACK
type: remote
entity_id: remote.shield_debug_bridge_remote
value: BACK
- key: PLAY
type: remote
entity_id: remote.shield_debug_bridge_remote
value: PLAY
- key: PAUSE
type: remote
entity_id: remote.shield_debug_bridge_remote
value: PAUSE
- key: VOLUME_UP
type: remote
entity_id: remote.harmony_hub
value: VOLUME_UP
- key: VOLUME_DOWN
type: remote
entity_id: remote.harmony_hub
value: VOLUME_DOWN
- key: MUTE
type: remote
entity_id: remote.shield_debug_bridge_remote
value: MUTE
- key: UN_MUTE
type: remote
entity_id: remote.shield_debug_bridge_remote
value: UNMUTE
- key: SETTINGS
type: remote
entity_id: remote.shield_debug_bridge_remote
value: SETTINGS
- key: HOME
type: remote
entity_id: remote.shield_debug_bridge_remote
value: HOME
- key: MENU
type: remote
entity_id: remote.shield_debug_bridge_remote
value: MENU
- key: NUM_0
type: ''
entity_id: ''
value: ''
- key: NUM_1
type: ''
entity_id: ''
value: ''
- key: NUM_2
type: ''
entity_id: ''
value: ''
- key: NUM_3
type: ''
entity_id: ''
value: ''
- key: NUM_4
type: ''
entity_id: ''
value: ''
- key: NUM_5
type: ''
entity_id: ''
value: ''
- key: NUM_6
type: ''
entity_id: ''
value: ''
- key: NUM_7
type: ''
entity_id: ''
value: ''
- key: NUM_8
type: ''
entity_id: ''
value: ''
- key: NUM_9
type: ''
entity_id: ''
value: ''
- key: DELETE
type: ''
entity_id: ''
value: ''
Thank you for sharing the FireRemote YAML example — this is a very good reference.
What FireRemote does extremely well is:
Your requirement — “insert the above entities into the TV RosCard” — is valid and highlights a structural limitation of the current TV / Media Play RosCard design.
After internal discussion with the development team, we agree that the Media Play RosCard needs a structural redesign, and your example aligns very well with where we want to go.
Here is the proposed direction, point by point:
The Media Play RosCard will be redesigned to:
This removes the assumption that one media_player entity fits all use cases.
On Astrion hardware:
This keeps interaction hardware-first, not UI-first.
Because Astrion’s physical buttons are fixed, we will expose full per-button customization, using this rule:
This is essentially bringing FireRemote-style button_overrides into RosCard, but adapted for hardware buttons.
The four original customizable function buttons on Astrion will also be:
These buttons will remain device-agnostic, making them ideal for global shortcuts.
Your current YAML example clearly shows the limitation:
entities:
- key: UP
type: remote
entity_id: remote.shield_debug_bridge_remote
The redesign goal is to remove the need to hard-code this per card, and instead:
This will make advanced Harmony + Shield + AVR setups much cleaner.
Thanks again for the detailed YAML, screenshots, and explanations — this is exactly the kind of advanced, real-world usage that helps us evolve Astrion and RosCard in the right direction.
We’ll announce the Media Play RosCard redesign officially once the implementation plan is finalized.
I just got my remote last night and so far I’m very impressed with how responsive it is, and I’m excited to see what your team does with it in the future. I think everything you’ve mentioned that you’re working on hits a few of the things I want to do, so thank you for your detailed breakdown of those things. I had a couple ideas I haven’t seen mentioned yet.
Hi @starkkaman, welcome to the community ![]()
And thank you very much for the kind words — we’re really glad to hear you’re enjoying the responsiveness of the Astrion Remote so far.
Your ideas are very good, and they’re also very much aligned with the direction we’re already discussing internally.
This is a very reasonable suggestion.
Separating short press vs long press behavior (for example, keeping system navigation on long press while allowing user-defined actions on short press) is a clean and flexible approach. We’ve taken note of this and will record it as a potential enhancement when we expand physical button customization logic.
This is also an excellent idea, especially for advanced users.
A custom card that allows:
is something we see as a very powerful extension for Astrion, particularly for complex AV and automation setups. While this is not part of the current stable feature set, we’ve recorded your suggestion as part of our advanced / experimental direction.
Thank you again for taking the time to share thoughtful, constructive feedback.
We actively collect and review ideas like yours, and many of our recent design changes have come directly from community input like this.
Please feel free to keep sharing ideas or use cases as you explore the remote further — discussions like this genuinely help us shape better features going forward.
— The Sanytron Development Team ![]()