User Tools

Site Tools


dictionary:unitcontrol:setdata

Set Data

The SetData verb can be used to send configuration or parameter data to zwave units. It requires at least XTension 9.4.6 and the new VeraUI7 driver. The verb is different than most others as it needs to be sent directly to the unit and not executed with the unit name as with most others.

tell xUnit “zwaveUnitName” to setData( parameterNumber, byteLength, theData)

This is a low level command and does no validation of the data that you’re sending. You have to already know the command you wish to send in order for this to do anything. The proper settings and data can usually be found in the user manual of your ZWave device. The proper settings will be different for each model or maker of device! Just because you know what you want to set on a GE or JASCO dimmer does not mean those same settings will work for a lutron of Home Seer dimmer! Look up the numbers before you issue this command! If you send the wrong data to a device, or data meant for a different model of device it is entirely possible to brick a ZWave dimmer or to otherwise render it useless or potentially even create other dangerous situations.

Parameter Format

Parameters have 3 values you need to know. The parameter number, the number of bytes the value takes up in the switch, and the actual value you wish to insert. Most simple commands are a single byte and so will have a number 1 in the second parameter to the verb but there may be some that contain several bytes.

Each “feature” that you can set in a device will have a different parameterNumber parameter. You’ll find that and the rest of this info in the User Manual for the device.

If you are sending a single byte as a number you can just include it as a number in the command with no quotes or other formatting something like:

tell xUnit “name of ZWave unit” to setData( 14, 1, 7)

If you need to send a value as hex you can include it as a string inside quotes and place an “x” at the beginning of the value like:

tell xUnit “name of ZWave unit” to setData( 14, 1, “xA4”)

Of course, you don’t actually have to send a value as hex, you could convert to decimal and send that without the quotes and the x, but the Vera does support automatically converting such things so depending on how the data is shown in the user manual it may just be easier to send the data as hex.

if you need to send the value as a letter character or if there are multiple bytes in the command then place the data into quotes and place a space between each byte if there are multiple bytes.

tell xUnit “name of ZWave unit” to setData( 14, 1, “g”)
tell xUnit “name of ZWave unit” to setData( 14, 5, “h e l l o”)
tell xUnit “name of ZWave unit” to setData( 14, 5, “17 28 19 xFF G”)

Common Settable Parameters

Ramp Rate

ZWave does not support sending the ramp rate for individual commands as many other protocols do. However you can generally set the default ramp rate for the individual dimmers. Many models even support setting separate ramp rates for local control vs automatic control. With this command you could potentially change the ramp rate during the day or before specific commands while still maintaining a faster response for changes at the switch itself. You might wish to have a very slow fade in the morning to bring up your lights but to turn them on quickly later in response to motion which you could do via this command if the device supports that.

An example of setting the ramp rate for a Home Seer HS-WD200+ dimmer to take 90 seconds to complete the dim might be something like:

tell xUnit “name of WD200+ unit” to setData( 11, 1, 90)

Some dimmers, such as some models of GE/Jasco dimmers don’t just take a value of seconds, but instead give you 2 parameters to set for the time between steps, and the number of steps to break it into. This is harder to figure out in your head so some experimentation might be necessary to get what you want.

For a GE/Jasco dimmer model 45612 you would set parameter 7 (1 byte) to a value between 1 and 99 which is the number of steps to take between the old and new value. And then set parameter 8 (1 byte) to a value between 1 and 255 which is the time it spends at each step level. The manual doesn’t say what the timing value is but the defaults are 1 step for parameter7 and a 3 for parameter 8 which seems to indicate to me that it breaks it up into 1 step and it takes 3 seconds to make that change. Why you’d need more steps if you could make the dim value that different in seconds I don’t know. Read the user manual for your specific switch model to be sure how it works.

tell xUnit “name of GE Fimmer” to setData( 7, 1, 1)

Switch Orientation

Many switches have an orientation parameter so in case the switch got installed upside down or sideways and it makes more sense to you that the on and off paddles are reversed check the user manual as it may have the ability to reverse the on and off paddle functions.

An example of setting the orientation to upside down for a Home Seer HS-WD100+ dimmer might be something like:

tell xUnit “name of WD100+” to setData( 4, 1, 1)

to turn it back to normal send theData as a 0

LED Mode

The default mode for LED’s in most switches is to be on when the load is on and off when the load is off. If you wish the LED to be on when the light is off making it easier to find the led in a dark room you can usually find a parameter to reverse that. Or alternatively you might have a switch where the LED is on when the light is off and it might be so bright that it keeps you awake if the switch is in your bedroom so you would wish to reverse that so the LED is off when the load is off.

An example of setting the LED to be on when the load is on for a GE/JASCO model 45612 dimmer would be:

tell xUnit “name of GE Dimmer” to setData( 3, 1, 1)

and set theData to 0 to turn it back to the default of being on when the load is off.

Custom Parameters

Some devices such as the Home Seer WD-200+ dimmers support many custom settings that can all be accessed via this command. That dimmer can control the individual color of each status LED. All of which can be controlled via this command.

More Info

Some information for specific devices is written up in the Supported Modules section. That data may not be up to date and may not reflect the specific model or revision of your dimmers! You should always download the manual for the proper device, or save the paperwork that came with your dimmers and verify the parameter number, byte length and valid values. The device themselves may not validate your data and XTension will definitely not validate your data. Sending bad data could brick your dimmer or cause other potentially dangerous conditions.

Since this is not a verb in the traditional sense it won’t show up in the dictionary as ready by the script editor.

History

  • The setData command was added in XTension version 9.4.6 and requires the Vera UI7 driver
dictionary/unitcontrol/setdata.txt · Last modified: 2023/02/13 14:52 by 127.0.0.1