SOLVED: Proper Dashboard Icons for TDBU Top Rail shade

Yesterday I learned about the built in native HE Mirror app. Posting to report how this may be a partial solution for those with TDBU (TopDown/BottomUp) shades.

Specifically, the issue is TDBU shades have two moving rails. To get control of both rails, I added them as separate shades in both Bond and HE. Bond and HE both use ONLY open and closed commands rather than up & down.
a. the bottom rail behaves as per the default settings: when rail is down, shade is closed and vice versa
HOWEVER
b. the top rail behaves exactly opposite: when rail is down, shade is open and vice versa

My household primarily (but not exclusively) uses the bottom rail. Thus not only do I have to make the commands in automations involving the top rail opposite of the actual desired action, but the icons in the dashboards also show up opposite of the actual state. The commands I can deal with (although it is not ideal and is confusing), but for HAF, I needed a way to fix the icons to show actual state of the shade.

First I tried editing the Bond Shade Driver, reversing open and closed and saving it as a separate instance of the driver to be used only for the top rail. This actually works well to "correct" the commands for what they really are with a top rail (open = down, closed = up). However, mysteriously, this does not impact the icons. If I knew more about drivers I may have been able to further edit this to work, but I was unsuccessful in that endeavor.

After learning about the mirror app yesterday, I decided to try it on a top rail that is not using my reversed driver. So far, with VERY limited testing, it seems to be working as expected. Below is what I did and the results:

  1. In Devices, added a virtual Shade device for a shade top rail. [Note: in the dropdown, there is an option for a Virtual Blind device; do not accidentally select that; you need to use the Virtual Shade as your original device is a shade and mirror only recognizes a shade]
  2. In Apps, Mirror, added a custom mirror with
    a. source capability of Window Shade with device as the original (non virtual) top rail
    b. destination capability of Window Shade with device as the new virtual top rail device
    c. Source to destination mapping of "windowShade "open" and "closed" to windowShade "closed" and "open"

In dashboards, instead of the original top rail device, the device is the virtual mirror device.

When I first added the virtual mirror device, the dashboard icon was the exact same as the original device icon. However, after opening and closing the top rail a few times via the app, the virtual mirror icon is showing the exact opposite of the original device, which is the goal.

Hope this helps someone.

ETA:

  1. FWIW, the mirror icons don't actually control the shade in the dashboards; they just show the correct status. I think I'll have to add a rule that directs HE to take action on the original top rail if the virtual top rail mirror gets an action.
  2. The Virtual device has options of "Virtual Shade (no level)" and "Virtual Shade". I initially selected the no level option because I thought that would limit the icon to "open" or "closed" without the slider, but that is not the case. The no level option just removes the yellow backlight in original dash when the shade is open, so that it is gray all the time; the slider is still there in both options.
  3. Combining the edited driver with the mirror and a rule for the virtual mirror device to trigger the original device allows both accurate action commands in automations and accurate icons on dashboards for top rails that work opposite of bottom rails. It would be much easier if HE just inserted an option in the shade driver to make everything opposite for top rails, but until then....