In this article I'm going to show you how to use CBUS Lighting services in Savant, to integrate secondary services like HVAC and door control such that they will appear as separate services in the Savant UI. It's important to note that while we will use HVAC as an example here, this will NOT create a temperature control UI like the Savant HVAC service UI. This example is intended as a demonstration of how one might use CBUS to control under floor heating that may, or may not be thermostatically regulated. You will NOT be able to control the thermostat itself using this technique.
1> The first step is to create your CBUS project in Clipsal Toolkit as you normally would. Representing all of the group addresses and triggers that you want to use is the most important step. You can't control a CBUS element from Savant if it doesn't appear in the Clipsal project file.
2> Setup the Emersive CBUS CGate server by following these instructions here: CBUS Beta Testing
CHOOSE THE CORRECT VERSION OF CGATE FOR THE VERSION OF TOOLKIT YOU ARE USING!!!
3> Ensure that you have the latest Emersive Device Profiles package installed on your Savant Development Environment. You can get these from here: Emersive Component Profiles
4> Compile a list of the group addresses and trigger addresses you created in Toolkit and divide these addresses into sub-categories. You'll likely want to start with the addresses that relate directly to lighting control, then find the addresses that relate to HVAC control, door/entry control ectetera. You'll use this list to determine what addresses to enable/disable in each of the data tables that will create next.
5> Convert your CBUS project into a lighting plist file, using the Lighting2Plist-beta.app provided in the links above. This app is a work in progress, but it will convert the vast majority of CBUS project data for you. Please note that it does not currently handle some elements correctly. These CBUS elements will need to entered into the lighting table by hand. This step is NOT mandatory. You can create your data table entries entirely by hand if you feel like it.
6> Count the number of control groups that you want to create and add to your project one instance of the Emersive CBUS CGate device for each group. For example, if you want separate groups for Lighting, HVAC and Entry control, then you'll need to add 3 instances of the device profile to your RacePoint project. Make sure you name each CGATE instance appropriate to its function, for example "Lighting", "HVAC" or "Doors/Entry", and configure each with the 127.0.0.1 IP address specified earlier in the CGATE server setup guide.
7> Select each CGATE device in turn, inspect it, click "Data Table" and import the lighting plist file you created in step 5 into the primary data table for each of the CGATE devices you added to your RacePoint project. Alternately, you can simply edit each data table and make manual entries.
IMPORTANT: Identical entries MUST NOT be enabled in multiple tables simultaneously. Enable ONLY the entries that relate to this specific CGATE device. Multiple identical entries ARE permissible in the SAME table, but they should be assigned to different Controller Zones. Contoller zone names should correspond to Savant Zone names.
8> Using the list you compiled in step 4, go through each data table in turn and disable the entries that are not required for that specific group. You can also click/drag the entries into the order that you want them rendered in the UI. The entries at the top of the list will be rendered first. You can also introduce "Page Break" entities to push elements onto the next page of the service screen. When you're finished, save your lighting table and exit. By default "Dimmer" entities will create slider UI elements and "Switch" and "Trigger" elements will create push button UI entries. The UI elements generated can be changed and we'll show you how shortly. In the upcoming CGATE device profile version 2.5, "Trigger" entities will by default create toggle buttons.
IMPORTANT: Identical entries MUST NOT be enabled in multiple tables simultaneously. Enable ONLY the entries that relate to this specific CGATE device. Multiple identical entries ARE permissible in the SAME table, but they should be assigned to different Controller Zones. Contoller zone names should correspond to Savant Zones names. DON'T try to substitute a "Trigger" entity (CBUS Application 202) for a "Switch" entity (CBUS Application 54) the default command assigned to a "Trigger" has the application number 202 hard coded and will only work with CBUS triggers.
9> Generate Services. In the Service List locate the "Lighting" service entry that relates to the first CGATE device you added to your project and double click on it, it does not matter what zone you have currently selected. This will open the secondary data table. Click "Regenerate Data" in the bottom left corner, this will make Savant analyze the primary data table and the device profile. It will then generate a list of UI elements based on that information that you will now be able to manipulate. You can select the type of UI element you want Savant to create for each entry in the table. Each entry in the table will have different options available, depending on the lighting entity chosen in the first lighting table. You will be able to select from "Push" and "Toggle" buttons and "Slider" elements for each entry in the table, choose the command action to be fired by that element and whether you want that command to be triggered on the "Push" action, "Release" action or "Toggle" actions. The specific options you choose depend entirely upon how you want that particular UI element to behave and what you want it to do.Repeat for each CGATE service that appears in your services list.
10> Inspect the iOS device in your layout and open the "Non-Services" screen for editing. Here you can locate the service buttons for each CBUS service group you created. You'll now be able to change the icon graphics associated with each group. In our example, 9 service buttons were created, representing 3 service groups across 3 zones. You will need to repeat this step for each Service Selector screen in each Savant Zone.
11> Drag appropriate icons from the button library onto each of the service CBUS groups, remembering to hold the "CMD" key while you do so.
12> Change the "Button Group" properties on each of the buttons so that they will be grouped together more appropriately. Pay particular attention to the button names that appear at the top of the inspector window. Close the Screen editor window when you're finished.
As you can see in the screen shots above, we have successfully emulated three separate services from a single CBUS system and presented them in a clean, coherent manner to the end user. Aside from the nomenclature used in the example, the end user would not even be aware that all these services have been derived from the lighting system!
Further reading that might be of interest:
Savant Documents... please log into Savant Dealer portal first....