Because I love the room linking feature by URC and I love custom programming I am kind of in a pickle. Room linking via URC doesn't always work, and when it does, it is only for audio. So...I have programmed my own version of Room Linking using Device Events, Dash Access, and Dash React.

Now in order to use this, you must be using Dash React to control your room sources.

I will attempt to show you how I accomplished this below.

First, as mentioned above, you need to have your system programmed so it is using Dash React for source selection. We will be using the variables and values from them to sync.

Now, you need to set up Dash Access for the initial room. I am going to start out simple and show you the Living Room syncing with the other rooms in the home. To expand on this, you will just repeat for each room. I installed Dash Access in the Video page for Living Room and for the Music page in the Living Room.

Here is the module in the tree.

Here is the interface. You will see Room Linking on page 2 of video and page 1 of Music.

I have also disabled Source Tracking so that Linking Rooms does not interrupt the other Ui's. I am still working on a way for the interface to automatically jump back to the source currently playing.

Next you will need to set up Dash Access. This will require the start up module. I am not going to go in depth with this, but I will show the screen shots. I chose to use the check boxes so you can check to link and uncheck to un-link.

Quick overview of what you are looking at. The first part of the macro is setting up the names of the rooms, and the second part is populating them. Basically saying at start up here are the room names and what their default state should be.

Here is the interface on the iOS. It works across the board on all UIs.

After you have built the interface that you will use, you need to set up the Dash React commands for room syncing.

You will need to create commands for each room you are going to sync to. And you will need to create an unsync command. I have decided to put a Room Off command in my unsync event. I like to turn of the room when I unlink it. Now what it is nice is you can create variables to stop this, and/or another user can still change sources in that synced room. (I would suggest adding an unsync command in your source selections so that it if another user changes the source it automatically unsyncs. This can be done with Dash React too.)

So you will start out creating the commands. (This is still part of Dash Access.) When a user press the check box to link it will do this.

Inside the macro you will use the Dash React commands. The first command is to get the value of the living room source. And then save it to your LivingRoomSource variable. (Dash explains all of this in their guides and walk throughs.)

The next command is setting the sync. If Living Room is Off, do nothing. Else sync the rooms. (I know I am using sync and link interchangeably here, sorry, hope you can follow.) The Sync ID's must match with your room variable used in source selection. This is how the system knows what to do and what data to pull. Dash refers to this part as "listening".

The last commands in the macro is setting the check box. It is a standard part of programming Dash Access.

Now that is it. The rooms will sync/link. It does track. And it does change when you change the Living Room. So when you change from DirecTV to Roku, the Back Porch will follow.

The next portion is to program the unsync action. It is nearly the same. Again, the device event is the part of Dash Access.

The first command in the macro is to unsync.

That is it, the rooms are no longer synced/linked.

The last commands in the macro set the state of the check box.

All done. The most cumbersome part is creating and setting up Dash Access. That is what takes the most time. The room sync/link is easy to do.