Looks amazing! I will give it a go and let you know how it goes, thanks!
thanks for your work here, this is awesome and has fixed a lot of the problems I’ve had with this to date!
i’ve read through documentation, one of the scenarios I was hoping would work is the ability to maintain a large set of artworks locally (200-300) and have the screen rotate through them either randomly or otherwise (or sets of subsfolders that you can select based on theme etc…) - perhaps I missed this but how do i achieve this with local artworks?
Thanks, really glad it’s working better for you!
Then add an input_select.frame_theme whose options match the sensor names (landscapes, abstract, …), and this automation:
alias: Frame – rotate the current theme
triggers:
- trigger: time_pattern
minutes: "/15"
conditions:
- condition: state
entity_id: media_player.your_frame
attribute: art_mode_status
state: "on"
actions:
- action: samsungtv_smart.art_select_image
target:
entity_id: media_player.your_frame
data:
content_id: >-
{{ state_attr('sensor.frame_theme_' ~ states('input_select.frame_theme'), 'ids') | random }}
Two things to watch:
- Keep the condition.
art_select_imageswitches the TV to Art Mode, and wakes it if needed. Without the condition, the automation would turn your TV on every 15 minutes. - Turn the TV’s own slideshow off while you rotate a theme this way (
duration: "0"inart_set_slideshow), otherwise both will be changing the picture.
A built-in way to pick a theme folder and rotate it would make sense. Feel free to open a feature request for it.
Thanks - I’m still kind of unclear - how do I take a gallery folder, push the whole folder to the TV and then have it automatically rotate through the folder?
examples/frame_art/.
Good question — the confusing bit is that the TV doesn’t keep your folder structure. When you upload images they all land in My Photos and the TV gives each one its own id (MY_F0123). So “push a folder and rotate it” really splits in two:
1. You just want everything you uploaded to rotate (the usual case)
Push the whole folder in one call:
action: samsungtv_smart.art_upload_batch
target:
entity_id: media_player.your_frame
data:
folder: /config/www/frame_upload # any folder of jpg/png
Re-run it whenever you add images — it only uploads new/changed files (it keeps a hidden per-folder record), so you can just drop more in and call it again.
Then let the TV rotate them itself, no automation needed:
action: samsungtv_smart.art_set_slideshow
target:
entity_id: media_player.your_frame
data:
duration: 15min
shuffle: true
category_id: 2 # 2 = My Photos, 4 = Favourites, 8 = Art Store
That’s the whole thing for 200–300 photos: one upload, one slideshow call, and the TV cycles through all of them on its own.
2. You want selectable theme sets (landscapes / abstract / …)
The TV has no sub-folders, so the grouping has to live in Home Assistant. Upload each theme folder separately — art_upload_batch returns the ids it uploaded, so each theme’s ids can be captured:
action: samsungtv_smart.art_upload_batch
target:
entity_id: media_player.your_frame
data:
folder: /config/www/frame_themes/landscapes
response_variable: result # result.content_ids = this theme's ids
Then turn the TV’s own slideshow off so the two don’t fight, and rotate the selected theme yourself with the input_select.frame_theme + every-15-minutes art_select_image automation I posted above.
There’s a ready-made version of all of this under examples/frame_art/ — configuration.yaml (the theme sensors), scripts.yaml, automations.yaml and lovelace-folder-gallery.yaml wire up exactly the “folder → theme → rotate” flow, with a dashboard to pick a theme.