Make/Model  Device VersionConnection Type
Lutron/RadioRAN/ASerial

Description:

This driver controls the Lutron RadioRA system, which is a wireless lighting control system. This system is a robust (though a bit pricey) alternative to other retrofit friendly lighting technologies, for those folks who cannot install a wired lighting system. It has greater level of reliability relative to alternatives such as Z-Wave or UPB or Insteon.

A single RadioRA system provides 32 'zones' (each zone is a single switch or dimmer), 15 scenes (phantom buttons), plus All On/Off built in scenes. Two RadioRA systems can be bridged together to form a single system. In this case, the number of zones doubles. The number of scenes stays the same. You will be asked when you install the driver if it is a single system or a bridged system. The driver could figure this out, but doing it this way is more efficient and allows you to force the driver to only deal with the first half of a bridged system if you choose to do so.

Master Controllers on the RadioRA system can have a set of buttons on them. These can be configured to do various things. However CQC also sees them and will send out a User Action event when one is pressed. You can configure CQC to react to these button presses if you like, and use these Master Buttons for initiating actions in the overall automation system, not just in the RadioRA system.

The data sent out in the event is in the form "m,b,[On|Off],[1|2]". So it is the number of the master controller, the number of the button within that master controller, then either On or Off to indicate what type of button operation was done, and then either 1 or 2 to indicate which system it came from (in a bridged system, in a non-bridged system it will always be one.) So if you wanted to react to button 2 of master controller 1 in system 1 being turned on, you'd watch for the value "1,2,On,1" as the user action event value.

This driver's server side component is CML based. The server driver classes for this device are in the MEng.System.CQC.Drivers.Lutron.RadioRA scope.

Quirks and Limitations:

The protocol does not allow for the level of dimmers to be queried, which is strange given how nice it is in other ways. You can only tell if a dimmer or switch is on or off.

This driver will define fields for 32 (or 64 if the system is bridged) zones, whether they are defined in the RadioRA system or not. This makes the driver simpler, and is basically just easier to deal with all around, since removing a zone temporarily won't cause the driver to reconfigure itself.

Lutron (and we) highly recommend that if you want to control the level or on/off state of multiple dimmers or switches, don't set them individually, set up one of the available 'phantom buttons' to control them and do the control via that phantom button.

Connection Details

The RadioRA uses a serial connection at 9600, no parity, 8 data bits, one stop bit, and no flow control. Actually it can use hardware flow control, but the CQC driver doesn't make use of it, so you can use a standard three wire connection. The data rate is not very high, but the amount of data available is not very large, so it's not a problem really. The driver enables asynchronous notifications from the device, so it polls very lazily, just to make sure that it stays in sync and will catch the device being disconnected.

Driver Fields

This section lists the fields that the driver makes available, their types, minimum and maximum values, etc...

NameTypeR/WDescription/Limits
InvokeCmdStringWAn open ended command field which allows you to send formatted strings to invoke more complex control. The syntax is described below.
LEDStatusXXBooleanRRead the status of the 15 phantom LEDs, where XX is 1 through 15.
MasterRevStringRA read-only string that holds the master firmware revision.
SlaveRevStringRA read-only string that holds the slave firmware revision.
ZoneStatusXXBooleanRIndicates the on/off status of each currently defined zone. XX is 01 through 32 (or 64 if in a bridged system.) The RadioRA system does not provide dimming levels back to CQC so you can only tell if it is off of on. To set zones directly, you can use the InvokeCmd field, but generally you should use scenes via phantom buttons rather than individual zone control..

InvokeCmd Format

The InvokeCmd field in the table above allows you to send the driver more complex commands via a formatted string. The format of the string written to this field is:

Cmd : Parm1, Parm2, ..., ParmX

Where Cmd is the command to perform, and Parm1 through Parmx are the command parameters, comma separated. The parameter fields are interpreted differently according to the command. Spaces around the command or parameters are ignored and upper/lower case makes no difference, so you can do "Cmd:p1,p2" or "CMD : P1 , P2", and they will be seen as the same thing.

The possibilities are listed below.

Lower : button

This command will start the lights controlled by the indicated phantom button ramping down. "button" is the number of the button to start ramping down. You can only target one system at a time. So in a bridged system, you must append ", 1" or ", 2" to indicate which system to target. in the absence of this suffix, system 1 is assumed.

An example would be:

Lower : 1

MasterButton : button, ON | OFF | TOGGLE [, ramptime]

This command will turn the indicated phantom button on or off, or toggle it to the opposite of it's current state. "button" is the number of the phantom button. You can optionally indicate a time that you want the lights to ramp up or down, in seconds.

In a bridged system, you can append ", 1" or ", 2" to indicate which system should activate first. In the absence of this suffix, system 1 is assumed. Note that if you append this suffix, you must provide the ramp time value, else the suffix will be taken as the ramp time. If you don't want any ramp time, just pass zero.

Examples would be:

MasterButton:2,toggle
MasterButton: 3, ON, 20

Raise : button

This command will start the lights controlled by the indicated phantom button ramping up. "button" is the number of the phantom button to start ramping down. You can only target one system at a time. So in a bridged system, you must append ", 1" or ", 2" to indicate which system to target. In the absence of this suffix, system 1 is assumed.

An example would be:

Raise : 15

SetGEScene : zone, scene#

This command allows you to set a GraphikEye scene via the RadioRA system. The GraphikEye system plugs into the RadioRA as a zone, so the zone number indicated must be a GraphikEye connected zone.

The scene number indicates which scene on the connected GraphikEye to set. It can be from 0 to 16. If you have a bridged system, then append ", 1" or ", 2" to indicate which system the scene number applies to. In the absence of this suffix, system 1 is assumed.

Examples would be:

SetGEScene : 2, 3

Secure Off : FLASH | SOLID, button
Secure On : FLASH | SOLID, button

These commands enter and exit secure mode. You indicate the security mode and the phantom button to affect. The lights controlled by that button will enter or exit the security mode indicated.

Examples would be:

SecureOff : FLASH, 3
SecureOn:Solid,1

SetDim : dimmer, level [, ramptime]

This command will set the level of a dimmer to a percentage level brightness. So a level of 45 would set it to 45% of it's maximum brightness, and so forth. You can optionally indicate a time that you want the light to ramp up or down, in seconds, from 0 to 240. "dimmer"is the number of the dimmer to set, from 1 to 32.

If controlling more than one light, it is preferable to create a phantom button that controls all of the dimmers and then use the Raise/Lower commands to adjust them all at once.

Examples would be:

SetDim : 9, 50
SetDim : 1, 95, 30

SetSwitch : switch, ON | OFF [, ramptime]

This command will set the indicated switch to on or off state. "switch" is the number of the switch to affect, from 1 to 32. You can optionally indicate a time that you want the light to ramp up or down, in seconds, from 0 to 240. "dimmer"is the number of the dimmer to set, from 1 to 32.

If controlling more than one light, it is preferable to create a phantom button that controls all of the dimmers and then use the MasterButton command to control them all at once.

Examples would be:

SetSwitch : 29,ON
SETSWITCH:OFF, OFF, 12

StopRL

This command will stop a previously initiated Raise or Lower command. When you invoke the Raise or Lower, the device will continue to ramp the light up or down until it hits the minimum or maximum brightness, or until you send it a StopRL command.

This command, unlike all the others, does not have any parameters, so you can just send it by itself. If it has a trailing colon, that is fine also.

An example would be:

StopRL