New Intergration uc-remote-self-control

Hi all :waving_hand:

I’ve published a new custom integration for the Remote 3 (should also work on the Remote Two) called Remote Self-Control. It runs on the remote itself and lets the remote control itself: its own settings, smart if/else buttons, and a “go back” button between activities.

:warning: Beta: so far it’s only been tested on my own Remote 3. It changes settings, activities, pages and button mappings through the remote’s API, so please make and download a backup in the web configurator before installing.

:sparkles: Highlights

:bright_button: Your remote’s settings as entities
Button backlight level and color (12 presets), display brightness, display timeout, sleep timeout, wake sensitivity, Wake on LAN, sound effects and volume, and haptics. Use them in activity on/off sequences, macros, UI buttons and button mappings. Display Brightness and Button Backlight can also go on the touch slider.

:brain: Smart Controls: buttons with if / else logic
The remote’s macros can’t make decisions, so I added buttons that can:

  • If the receiver is on, turn its volume up, otherwise the TV’s
  • Switch the receiver to the Shield input, but turn it on first and wait until it’s ready
  • Play/pause, or turn the player on if it’s off
  • Night Mode: dim backlight to red 10 %, display 30 %, sounds off. Press again to get your exact previous settings back
  • Backlight amber in the evening, cool white during the day

You build them in a builder page served by the integration (http://<remote>.local:10123/, log in with your web-configurator PIN). It lists your own devices, commands, inputs and sound modes, so you pick from menus instead of typing IDs. There are templates for common setups and a Test button to try a control before you use it.

:right_arrow_curving_left: Return to previous activity
Hop from Watch TV to your Home Assistant or Music activity and back with one press, whether or not the first activity was turned off. The integration keeps a ":right_arrow_curving_left: " text button (or a back-arrow icon) up to date on your activities, and can also put it on a physical button.

:clipboard: Last Result tile
Shows what your last Smart Control did (or why it failed), right on an activity page. Very handy while building.

:package: Install

  1. Back up your remote in the web configurator.
  2. Download uc-intg-self-control-0.4.0.tar.gz from the release: Release Remote Self-Control 0.4.0 (beta) · Sat32blk/uc-remote-self-control · GitHub
  3. Web configurator → Integrations → Add new → Install custom → choose the file, then run the setup with your web-configurator PIN.

The README has seven step-by-step walkthroughs (smart volume, input with wait, Night Mode on a long press, the :right_arrow_curving_left: button, the touch slider and more): GitHub - Sat32blk/uc-remote-self-control: Unfolded Circle Remote 3 integration that controls the remote itself: backlight, display, sound, sleep, Smart Controls and a return-to-previous-activity button · GitHub

:folded_hands: Feedback welcome

Since it’s a beta, I’d love to hear how it works on your setup, especially on the Remote Two and other firmware versions. Reply here or open an issue on GitHub. Please include your remote model, firmware version and any log lines starting with [self-control] (web configurator → Settings → Development → Logs).

It’s open source (MIT) and not affiliated with Unfolded Circle. Thanks to UC for the open Integration and Core APIs that make this possible!

1 Like

Great work.

You should post this announcement here;

:green_circle: Update: 0.5.0 (beta): State icons

Buttons on your activity pages can now change their icon with a device’s state, like a power button that turns green while the receiver is on and goes back to gray when it’s off.

State icon demo

How to set it up

In the builder (http://<remote>.local:10123/) there’s a new State Icons tab:

  1. The button: pick an activity and click the button in a drawing of its page. Its current icon or text becomes the default look.
  2. What it shows: pick a device and what to check (power, input, mute, sound mode, …). The builder shows the current value.
  3. Looks: for each state (like ON), drag in an image and/or type a label. Images are resized to 90×90 and uploaded to the remote for you.
  4. Save. The button follows the device within about 2 seconds. What it does when pressed doesn’t change.

Setting up a state icon

:warning: Caveats

  • Single-page activities only. On the remote, changing a page of the activity you’re looking at sends you back to that activity’s first page when it has more than one page. So the builder only lets you pick activities with exactly one page.
  • Adding a second page later pauses that state icon; the builder shows a warning on it.
  • Only icon and text buttons can change (not media player widgets, sensor tiles or lists).
  • About 2 seconds’ delay, and devices are only checked while the remote is awake. The button catches up right after it wakes.
  • The default look is captured when you save. If you change that button later, delete the state icon and add it again. Don’t move the button; it’s found by its position.
  • Uploaded images stay on the remote as custom icons (si_…) after you delete a state icon.

Also in this release

  • Display Brightness entity for the Remote 3 touch slider
  • Smart Control results now show device names (“Marantz volume up”) instead of entity ids
  • The builder is now the Remote Self-Control Builder with Smart Controls and State Icons tabs

Update

:warning: Still a beta: make and download a backup in the web configurator first.

Download uc-intg-self-control-0.5.0.tar.gz from Release Remote Self-Control 0.5.0 (beta): State icons · Sat32blk/uc-remote-self-control · GitHub , then Integrations → Add new → Install custom and tick Update existing driver. Your settings, Smart Controls and :right_arrow_curving_left: setup are kept.

Feedback and issues are very welcome, here or on GitHub. If you enjoy it: :hot_beverage: buy me a coffee