<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mios.com/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mios.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Javier</id>
		<title>MiOS - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mios.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Javier"/>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Special:Contributions/Javier"/>
		<updated>2026-05-02T16:02:43Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.19.8</generator>

	<entry>
		<id>http://wiki.mios.com/index.php/Luup_Requests</id>
		<title>Luup Requests</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Luup_Requests"/>
				<updated>2010-06-24T14:08:03Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: added RunSene to the lu_action part&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
In addition to sending requests using standard UPnP, you can also do most things using a simple HTTP requests.  Use the built-in URL &amp;lt;tt&amp;gt;data_request&amp;lt;/tt&amp;gt;, and pass the following on the URL:&lt;br /&gt;
*&amp;lt;tt&amp;gt;id&amp;lt;/tt&amp;gt; the id of the request, &lt;br /&gt;
*&amp;lt;tt&amp;gt;output_format&amp;lt;/tt&amp;gt; the format in which you want a response as &amp;lt;tt&amp;gt;json&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;xml&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;text&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Not all requests support all &amp;lt;tt&amp;gt;output_format&amp;lt;/tt&amp;gt; options.  Here is a list of requests:&lt;br /&gt;
&lt;br /&gt;
==user_data==&lt;br /&gt;
&lt;br /&gt;
Example: http://ipaddress:49451/data_request?id=user_data&amp;amp;output_format=xml&lt;br /&gt;
&lt;br /&gt;
This returns the configuration data for Vera, which is a list of all devices and the UPnP variables which are persisted between resets as well as rooms, names, and other data the user sets as part of the configuration.&lt;br /&gt;
&lt;br /&gt;
==user_data2==&lt;br /&gt;
&lt;br /&gt;
Example: http://ipaddress:49451/data_request?id=user_data2&amp;amp;output_format=xml&lt;br /&gt;
&lt;br /&gt;
Similar to &amp;lt;tt&amp;gt;user_data&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==lu_status==&lt;br /&gt;
&lt;br /&gt;
Example: http://ipaddress:49451/data_request?id=lu_status&amp;amp;output_format=xml&lt;br /&gt;
&lt;br /&gt;
Or for a specific device: http://ipaddress:49451/data_request?id=lu_status&amp;amp;output_format=xml&amp;amp;UDN=uuid:4d494342-5342-5645-0002-000000000002 or http://ipaddress:49451/data_request?id=lu_status&amp;amp;output_format=xml&amp;amp;DeviceNum=6&lt;br /&gt;
&lt;br /&gt;
This returns the current status for all devices including all the current upnp variables and the status of any active jobs.&lt;br /&gt;
&lt;br /&gt;
==lu_actions==&lt;br /&gt;
&lt;br /&gt;
==lu_device==&lt;br /&gt;
&lt;br /&gt;
This returns all the XML with all the UPNP device description documents.  Use: http://ipaddress:49451/data_request?id=lu_device&amp;amp;output_format=xml&amp;amp;DeviceNum=x or &amp;amp;UDN=y to narrow it down.  Then when you see the service URL's, like &amp;lt;SCPDURL&amp;gt;/luvd/S_HVAC_UserOperatingMode1.xml&amp;lt;/SCPDURL&amp;gt;, you can view them with: http://ipaddress:49451/luvd/S_HVAC_UserOperatingMode1.xml&lt;br /&gt;
&lt;br /&gt;
==lu_file==&lt;br /&gt;
&lt;br /&gt;
==lu_lua==&lt;br /&gt;
&lt;br /&gt;
==lu_action==&lt;br /&gt;
&lt;br /&gt;
Example: http://ipaddress:49451/data_request?id=lu_action&amp;amp;output_format=xml&amp;amp;DeviceNum=6&amp;amp;serviceId=urn:upnp-org:serviceId:SwitchPower1&amp;amp;action=SetTarget&amp;amp;newTargetValue=1&lt;br /&gt;
&lt;br /&gt;
Sends a UPnP action.&lt;br /&gt;
&lt;br /&gt;
To run a scene, you send the action 'RunScene' to the internal 'Scene Manager' device (which has ID #2):&lt;br /&gt;
&lt;br /&gt;
http://ipadress:49451/data_request?id=lu_action&amp;amp;output_format=xml&amp;amp;DeviceNum=2&amp;amp;serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&amp;amp;action=RunScene&amp;amp;SceneNum=&amp;lt;SceneNum&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==lu_variableset==&lt;br /&gt;
&lt;br /&gt;
http://ip:49451/data_request?id=lu_variableset&amp;amp;DeviceNum=6&amp;amp;serviceId=urn:micasaverde-com:serviceId:DoorLock1&amp;amp;Variable=Status&amp;amp;Value=1&lt;br /&gt;
&lt;br /&gt;
==lu_variableget==&lt;br /&gt;
&lt;br /&gt;
http://ip:49451/data_request?id=lu_variableget&amp;amp;DeviceNum=6&amp;amp;serviceId=urn:micasaverde-com:serviceId:DoorLock1&amp;amp;Variable=Status&lt;br /&gt;
&lt;br /&gt;
==lu_reload==&lt;br /&gt;
&lt;br /&gt;
Resets the Luup engine with any new configuration settings.&lt;br /&gt;
&lt;br /&gt;
==lu_alive==&lt;br /&gt;
&lt;br /&gt;
Return OK if the engine is running.&lt;br /&gt;
&lt;br /&gt;
==lu_finddevice==&lt;br /&gt;
&lt;br /&gt;
Return the device id, UDN, device type of the first device that matches all the parameters passed on the URL: &amp;lt;tt&amp;gt;devtype&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;ip&amp;lt;/tt&amp;gt;, &amp;lt;tt&amp;gt;id&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==lu_resync==&lt;br /&gt;
&lt;br /&gt;
ReSync's all the devices, rooms, users, sections with event servers and returns OK&lt;br /&gt;
&lt;br /&gt;
==lu_wget==&lt;br /&gt;
&lt;br /&gt;
Returns the contents of the URL you pass in the &amp;quot;url&amp;quot; argument.  Optionally append &amp;quot;user&amp;quot; and &amp;quot;pass&amp;quot; arguments for http authentication, and &amp;quot;timeout&amp;quot; to specify the maximum time to wait in seconds.&lt;br /&gt;
&lt;br /&gt;
==lu_iprequests==&lt;br /&gt;
&lt;br /&gt;
Returns the recent IP requests in order by most recent first, including information about devices in use and if the IP is blacklisted (ignored by the plug and play mechanism).  Optionally append &amp;quot;oldest&amp;quot; to specify the oldest IP request in seconds.&lt;br /&gt;
&lt;br /&gt;
==lu_blacklistip==&lt;br /&gt;
&lt;br /&gt;
Append &amp;quot;ip&amp;quot; to the URL, and optionally &amp;quot;remove=1&amp;quot; to add (or remove) the IP to the blacklist so plug and play IP devices won't be added.&lt;br /&gt;
&lt;br /&gt;
==live_energy_usage==&lt;br /&gt;
&lt;br /&gt;
For backward compatibility it reports current energy usage in a tab delimited format&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Luup_Lua_extensions</id>
		<title>Luup Lua extensions</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Luup_Lua_extensions"/>
				<updated>2010-06-22T22:04:16Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: reformatted the luup.register_handler example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;In addition to the [[http://lua.org Lua]] commands described in the [[http://www.lua.org/manual/5.1/ Lua reference manual]], you can also reference in your Lua code variables and functions from modules which the Luup engine provides as follows: &lt;br /&gt;
&lt;br /&gt;
== Module: luup  ==&lt;br /&gt;
&lt;br /&gt;
These are general purpose functions and variables. Call them by using the luup. module, such as: &lt;br /&gt;
&lt;br /&gt;
 luup.log('Now running version: ' .. luup.version)&lt;br /&gt;
&lt;br /&gt;
=== variable: version, version_branch, version_major, version_minor  ===&lt;br /&gt;
&lt;br /&gt;
''version'' contains the version of the luup engine, such as &amp;quot;1.0.843&amp;quot;, as a string. The version consists of 3 numbers separated by a period: the branch, the major version, and the minor version. To make it easier to compare against a minimum acceptable version, ''version_branch, version_major and version_minor'' return each component as a number. You can put a comparison in the startup function in your Luup plugin and return false if the minimum version isn't met. The user will then see that the Luup device's startup check failed: &lt;br /&gt;
&lt;br /&gt;
 if( version_branch~=1 or version_major~=0 or version_minor&amp;amp;lt;843 ) then&lt;br /&gt;
 luup.log(&amp;quot;I need version 1.0.843 minimum to run&amp;quot;)&lt;br /&gt;
 return false&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
=== variable: longitude  ===&lt;br /&gt;
&lt;br /&gt;
Contains the longitude as a number, as found on the location tab in the setup UI. &lt;br /&gt;
&lt;br /&gt;
=== variable: latitude  ===&lt;br /&gt;
&lt;br /&gt;
Contains the latitude as a number, as found on the location tab in the setup UI. &lt;br /&gt;
&lt;br /&gt;
=== variable: timezone  ===&lt;br /&gt;
&lt;br /&gt;
Contains the timezone as a number, as found on the location tab in the setup UI. &lt;br /&gt;
&lt;br /&gt;
=== variable: city  ===&lt;br /&gt;
&lt;br /&gt;
Contains the city as a string, as found on the location tab in the setup UI. &lt;br /&gt;
&lt;br /&gt;
=== variable: devices  ===&lt;br /&gt;
&lt;br /&gt;
Contains all the devices in the system as a table indexed by the device number. The members are: room_num (number), device_type (string), category_num (number), device_num_parent (number), ip (string), mac (string), id (string), description (string), udn (string). [See also: [[Lua Device Structure]].] Example to log device #5's IP addess and its internal ID: &lt;br /&gt;
&lt;br /&gt;
  luup.log('Device #5 ip: ' .. luup.devices[5].ip .. ' id: ' .. luup.devices[5].id)&lt;br /&gt;
&lt;br /&gt;
room_num: This is the number of the room the device is in. &lt;br /&gt;
&lt;br /&gt;
device_type: This is a number representing the type of device. See: [[Luup Device Types Categories]] for a list. &lt;br /&gt;
&lt;br /&gt;
category_num: This is a category for the device. [See: [[Luup Device Types Categories]]] &lt;br /&gt;
&lt;br /&gt;
device_num_parent: This is the number of the parent device. See: [[Lua Device Structure]] for details. &lt;br /&gt;
&lt;br /&gt;
ip: If this device is IP based, this is the IP address. &lt;br /&gt;
&lt;br /&gt;
mac: If this device is IP based, this is the MAC address. &lt;br /&gt;
&lt;br /&gt;
id: If this device has an internal ID that is specific to the device, it is contained here. For example, for Z-Wave devices this is the Node ID, and for Insteon device it is the Insteon ID. &lt;br /&gt;
&lt;br /&gt;
embedded: (boolean) If this device is embedded, it means that it doesn't have its own room or exist as a separate device. It should be considered part of its parent. Like a 3-in-1 sensor is a device with 3 embedded child devices. &lt;br /&gt;
&lt;br /&gt;
hidden: (boolean) If true the user checked the 'hidden' box and doesn't want to see the device on the dashboard. &lt;br /&gt;
&lt;br /&gt;
invisible: (boolean) If true the device is 'for internal use only' and shouldn't be presented to the user. &lt;br /&gt;
&lt;br /&gt;
description: This is the text description for the device as supplied by the user in the web UI. &lt;br /&gt;
&lt;br /&gt;
udn: This is the UDN for the UPnP device. &lt;br /&gt;
&lt;br /&gt;
This code will log all the attributes from all the devices: &lt;br /&gt;
&lt;br /&gt;
  for k,v in pairs(lug_device) do&lt;br /&gt;
   for k2,v2 in v&lt;br /&gt;
     luup.log(&amp;quot;Device #&amp;quot; .. k .. &amp;quot;:&amp;quot; .. k2 .. &amp;quot;=&amp;quot; .. &amp;quot;v2&amp;quot;)&lt;br /&gt;
   end&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
=== variable: rooms  ===&lt;br /&gt;
&lt;br /&gt;
Contains all the rooms as a table of strings indexed by the room number. Example: &lt;br /&gt;
&lt;br /&gt;
  luup.log('Room #1 is called: ' .. luup.rooms[1])&lt;br /&gt;
&lt;br /&gt;
=== variable: scenes  ===&lt;br /&gt;
&lt;br /&gt;
Contains all the scenes in the system as a table indexed by the device number. The members are: room_num (number), description(string), hidden(boolean) &lt;br /&gt;
&lt;br /&gt;
=== variable: remotes  ===&lt;br /&gt;
&lt;br /&gt;
Contains all the remotes in the system as a table indexed by the remote id. The members are: remote_file (string), room_num (number), description(string) &lt;br /&gt;
&lt;br /&gt;
=== function: log  ===&lt;br /&gt;
&lt;br /&gt;
parameters: what_to_log (string), log_level (optional, number) &lt;br /&gt;
&lt;br /&gt;
return: nothing &lt;br /&gt;
&lt;br /&gt;
Writes what_to_log to the log, /var/log/cmh/LuaUPnP.log, with the given log_level, which is 50 by default. See: [[Luup Loglevels]] &lt;br /&gt;
&lt;br /&gt;
=== function: task  ===&lt;br /&gt;
&lt;br /&gt;
parameters: message (string), status (number), description (string), handle (number) &lt;br /&gt;
&lt;br /&gt;
return: handle (number) &lt;br /&gt;
&lt;br /&gt;
When the Luup engine is starting status messages are displayed for the various modules as they're initialized. Normally each device, including Luup devices, automatically log their status and the user is shown an error if the device doesn't start, such as if the 'startup' function returns an error. &lt;br /&gt;
&lt;br /&gt;
If you have other startup sequences which you want the user to see to know that startup hasn't finished yet, call this function passing in a handle of -1 for the first call. The status should be: 1=Busy, 2=Error, 4=Successful. Message is the current state, such as 'downloading', and description describes the module, like 'Smartphone UI'. After the first call, store the handle and pass it on future calls to update the status rather than add a new one. &lt;br /&gt;
&lt;br /&gt;
=== function: call_delay  ===&lt;br /&gt;
&lt;br /&gt;
parameters: function_name (string), seconds (number), data (string) &lt;br /&gt;
&lt;br /&gt;
returns: result (number) &lt;br /&gt;
&lt;br /&gt;
The function 'function_name', which must be passed as a string, will be called in 'seconds' seconds, and will be passed the string 'data'. The function returns 0 if successful. See: [[Luup Declarations#timed_function_callback]] for the names and syntax of the parameters that will be passed to function_name. function_name will only be called once and you must call call_delay again if you want it called again, or use call_timer instead. &lt;br /&gt;
&lt;br /&gt;
=== function: call_timer  ===&lt;br /&gt;
&lt;br /&gt;
parameters: function_name (string), type (number), time (string), days (string), data (string) &lt;br /&gt;
&lt;br /&gt;
returns: result (number) &lt;br /&gt;
&lt;br /&gt;
The function 'function_name', which must be passed as a string, will be called when the timer is triggered, and will be passed the string 'data'. The function returns 0 if successful. See: [[Luup Declarations#timed_function_callback]] for the names and syntax of the parameters that will be passed to function_name. &lt;br /&gt;
&lt;br /&gt;
Type is 1=Interval timer, 2=Day of week timer, 3=Day of month timer, 4=Absolute timer. For an interval timer, days is not used, and Time should be a number of seconds, minutes, or hours using an optional 'h' or 'm' suffix. Example: 30=call in 30 seconds, 5m=call in 5 minutes, 2h=call in 2 hours. For a day of week timer, Days is a comma separated list with the days of the week where 1=Monday and 7=Sunday. Time is the time of day in hh:mm:ss format. Time can also include an 'r' at the end for Sunrise or a 't' for Sunset and the time is relative to sunrise/sunset. For example: Days=&amp;quot;3,5&amp;quot; Time=&amp;quot;20:30:00&amp;quot; means your function will be called on the next Wed or Fri at 8:30pm. Days=&amp;quot;1,7&amp;quot; Time=&amp;quot;-3:00:00r&amp;quot; means your function will be called on the next Monday or Sunday 3 hours before sunrise. Day of month works the same way except Days is a comma separated list of days of the month, such as &amp;quot;15,20,30&amp;quot;. For an absolute timer, Days is not used, and Time should be in the format: &amp;quot;yyyy-mm-dd hh:mm:ss&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Data can be a string passed back to the function. The function should be declared so it takes a single argument, which is this data. &lt;br /&gt;
&amp;lt;pre&amp;gt;function refreshCache(stuff)&lt;br /&gt;
    ....&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function startup()&lt;br /&gt;
    --&lt;br /&gt;
    -- Setup an interval-based timer to call refreshCache after 30 minutes.&lt;br /&gt;
    -- Note that if you want it to &amp;quot;recur&amp;quot; then you need to call this function again&lt;br /&gt;
    -- at the end of the refreshCache() implementation.&lt;br /&gt;
    --&lt;br /&gt;
    luup.call_timer(&amp;quot;refreshCache&amp;quot;, 1, &amp;quot;30m&amp;quot;, &amp;quot;&amp;quot;,&amp;amp;nbsp;&amp;quot;SomeStuff&amp;quot;)&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
=== function: is_ready  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: ready (boolean) &lt;br /&gt;
&lt;br /&gt;
Checks&amp;amp;nbsp;whether device&amp;amp;nbsp;-&amp;amp;nbsp;which, if it's a string, is interpreted as a udn, and if it's a number, as the device number -&amp;amp;nbsp;is ready and has successfully completed the startup sequence. If so, ready is true. If your device shouldn't process incoming data until the startup sequence is finished, you may want to add a check to the incoming function handler that ignores any data if is_ready(lul_device) isn't true. &lt;br /&gt;
&lt;br /&gt;
=== function: call_action  ===&lt;br /&gt;
&lt;br /&gt;
parameters: service (string), action (string), arguments (table), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: error (number), error_msg (string), job (number), arguments (table) &lt;br /&gt;
&lt;br /&gt;
Invokes the UPnP service + action, passing in the arguments (table of string-&amp;amp;gt;string pairs) to the device, which, if it's a string, is interpreted as a udn, and if it's a number, is the device number. If the invocation could not be made, only error will be returned with a value of -1. Otherwise, all 4 values are returned. error is 0 if the UPnP device reported the action was successful. arguments is a table of string-&amp;amp;gt;string pairs with the return arguments from the action. If the action is handled asynchronously by a Luup job, then the job number will be returned as a positive integer. &lt;br /&gt;
&lt;br /&gt;
Example to dim device #5 to 50%: &lt;br /&gt;
&lt;br /&gt;
  local lul_arguments = {}&lt;br /&gt;
 lul_arguments[&amp;quot;newLoadlevelTarget&amp;quot;]=50&lt;br /&gt;
 lul_resultcode,lul_resultstring,lul_job,lul_returnarguments = luup.call_action(&amp;quot;urn:upnp-org:serviceId:Dimming1&amp;quot;,&amp;quot;SetLoadLevelTarget&amp;quot;,lul_arguments,5)&lt;br /&gt;
&lt;br /&gt;
=== function: variable_set  ===&lt;br /&gt;
&lt;br /&gt;
parameters: service (string), variable (string), value (string), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
The UPnP service+variable will be set to value for device, which if it's a string, is interpreted as a udn, and if it's a number, as a device id. If there are events or notifications tied to the variable they will be fired. &lt;br /&gt;
&lt;br /&gt;
=== function: variable_get  ===&lt;br /&gt;
&lt;br /&gt;
parameters: service (string), variable (string), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: value (string), time (number) &lt;br /&gt;
&lt;br /&gt;
If the service+variable or device does not exist, it returns nothing. Otherwise it returns the value of the UPnP service+variable and the time when the variable was last modified, as a unix time stamp (number of seconds since 1/1/1970). You can assign just the value to a variable, as follows: &lt;br /&gt;
&lt;br /&gt;
  local value = luup.variable_get(&amp;quot;urn:upnp-org:serviceId:Dimming1&amp;quot;,&amp;quot;LoadLevelTarget&amp;quot;,5)&lt;br /&gt;
 luup.log(&amp;quot;Dim level for device #5 is: &amp;quot; .. value)&lt;br /&gt;
&lt;br /&gt;
=== function: register_handler  ===&lt;br /&gt;
&lt;br /&gt;
parameters: function_name (string), request_name (string) &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
When a certain URL is requested from a web browser or other HTTP get, function_name will be called and whatever string it returns will be returned. &lt;br /&gt;
&lt;br /&gt;
See the WAP mobile phone plugin as an example: &lt;br /&gt;
&lt;br /&gt;
  luup.register_handler(&amp;quot;lug_WapRequest&amp;quot;,&amp;quot;wap&amp;quot;)&lt;br /&gt;
 &lt;br /&gt;
 function lug_WapRequest (lul_request, lul_parameters, lul_outputformat)&lt;br /&gt;
   local lul_html = &amp;quot;&amp;amp;lt;head&amp;amp;gt;\n&amp;quot; ..&lt;br /&gt;
     &amp;quot;&amp;amp;lt;title&amp;amp;gt;Main&amp;amp;lt;/title&amp;amp;gt;\n&amp;quot; ..&lt;br /&gt;
     &amp;quot;&amp;amp;lt;/head&amp;amp;gt;\n&amp;quot; ..&lt;br /&gt;
     &amp;quot;&amp;amp;lt;body&amp;amp;gt;\n&amp;quot; ..&lt;br /&gt;
     &amp;quot;Choose a room:&amp;amp;lt;br/&amp;amp;gt;\n&amp;quot;&lt;br /&gt;
   return lul_html&lt;br /&gt;
 end&lt;br /&gt;
&lt;br /&gt;
The request is made with the URL: data_request?id=lr_[the registered name] on port 49451. So: http://192.168.1.1:49451/data_request?id=lr_wap will return the web page defined in the function lug_WapRequest in the example above. &lt;br /&gt;
&lt;br /&gt;
=== function: variable_watch  ===&lt;br /&gt;
&lt;br /&gt;
parameters: function_name (string), service (string), variable (string or nill), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
Whenever the UPnP variable is changed for the specified device, which if a string is interpreted as a udn and if a number as a device id, function_name will be called. See [[Luup Declarations#watch_callback]] for the values that will be passed to function_name. If variable is nill, function_name will be called whenever any variable in the service is changed. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== function: devices_by_service  ===&lt;br /&gt;
&lt;br /&gt;
parameters: &lt;br /&gt;
&lt;br /&gt;
returns: &lt;br /&gt;
&lt;br /&gt;
=== function: device_supports_service  ===&lt;br /&gt;
&lt;br /&gt;
parameters: &lt;br /&gt;
&lt;br /&gt;
returns: &lt;br /&gt;
&lt;br /&gt;
=== function: set_failure  ===&lt;br /&gt;
&lt;br /&gt;
parameters: value (boolean), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: &lt;br /&gt;
&lt;br /&gt;
Luup maintains a 'failure' flag for every device to indicate if it is not functioning. You can set the flag to true if the device is failing. If device is a string it is interpreted as a udn, if it's a number, as a device id. &lt;br /&gt;
&lt;br /&gt;
=== function: is_night  ===&lt;br /&gt;
&lt;br /&gt;
parameters: none &lt;br /&gt;
&lt;br /&gt;
returns: boolean &lt;br /&gt;
&lt;br /&gt;
Returns true if it's past sunset and before sunrise. &lt;br /&gt;
&lt;br /&gt;
== Module: luup.inet  ==&lt;br /&gt;
&lt;br /&gt;
=== function: wget  ===&lt;br /&gt;
&lt;br /&gt;
parameters: URL (String), Timeout (Number), Username (String), Password (String) &lt;br /&gt;
&lt;br /&gt;
returns httpStatusCode (Number), content (String) &lt;br /&gt;
&lt;br /&gt;
This reads the URL and returns 2 variables: The first is a numeric error code which is 0 if successful, and the second is a string containing the contents of the page. If Timeout is specified, the function will timeout after that many seconds. If Username and Password are specified, they will be used for HTTP Basic Authentication. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
== Module: luup.chdev  ==&lt;br /&gt;
&lt;br /&gt;
Contains functions for a parent to synchronize its child devices. Whenever a device has multiple end-points, the devices are represented in a parent/child fashion where the parent device is responsible for reporting what child devices it has and giving each one a unique id. For example in the sample [[Luup Somfy Walkthrough]] there is a parent device, which is the interface module that controls up to 16 blinds, and up to 16 child devices, one for each blind. As shown in that sample, the parent calls start, then enumerates each child device with append, and finally calls sync. You will need to pass the same value for device to append and sync that you passed to start. &lt;br /&gt;
&lt;br /&gt;
=== function: start  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: ptr (binary object) &lt;br /&gt;
&lt;br /&gt;
Tells Luup you will start enumerating the children of device. If device is a string it is interpreted as a udn, if it's a number, as a device id. The return value is a binary object which you cannot do anything with in Lua, but you do pass it to the append and sync functions. &lt;br /&gt;
&lt;br /&gt;
=== function: append  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number), ptr (binary object), id (string), description (string), device_type (string), device_filename (string), implementation_filename (string), parameters (string), embedded (boolean) &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
Enumerates one child of device. If device is a string it is interpreted as a udn, if it's a number, as a device id. Pass in the ptr which you received from the start function. Give each child a unique id so you can keep track of which is which. You can optionally provide a description which the user sees in the user interface. device_type is the UPnP device type, such as urn:schemas-upnp-org:device:BinaryLight:1. If device_filename is specified, that is the name of the&amp;amp;nbsp;XML file with the UPnP device specification. The deviceType from the filename will override any device_type you set manually. If the device_file contains the implementation file for this child device you do not need to specify it in implementation_filename. Otherwise, if there is a Luup implementation for this child device and it's not being handled by the parent device, you can specify it in implementation_filename. If embedded is true, the 'embedded' flag is set for the device which generally means that the parent and all the children will be displayed as one compound device, or group, rather than as separate devices which you can put in their own rooms. &lt;br /&gt;
&lt;br /&gt;
The parameters are&amp;amp;nbsp;UPnP service+variables you want set when the device is created. You can specify multiple variables by separating them with a line feed (\n) and use a , and = to separate service, variable and value, like this: service,variable=value \n service... &lt;br /&gt;
&lt;br /&gt;
=== function: sync  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number), ptr (binary object), &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
If device is a string it is interpreted as a udn, if it's a number, as a device id. Pass in the ptr which you received from the start function. Tells the Luup engine you have finished enumerating the child devices. If the child devices have changed in any way, the new device tree will be written to the configuration file and the Luup engine is reset. &lt;br /&gt;
&lt;br /&gt;
== module: io  ==&lt;br /&gt;
&lt;br /&gt;
=== function: open  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number), ip (string) port (number), &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
If 'device' is a string it is interpreted as a UDN; if it's a number, as a device ID. This opens a socket on 'port' to 'ip' and stores the handle to the socket in 'device'. The opening of a socket can take time depending on the network, and a Luup function should return quickly whenever possible because each top-level device's Lua implementation runs in a single thread. So the actual opening of the socket occurs asynchronously and this function returns nothing. You will know that the socket opening failed if your subsequent call to write fails. &lt;br /&gt;
&lt;br /&gt;
Generally you do not need to call the open function because the socket is usually started automatically when the Luup engine starts. This is because the user typically either (a) associates a device with the destination io device, such as selecting an RS232 port for an alarm panel, where the RS232 is proxied by a socket, or (b) because the configuration settings for the device already include an IP address and port. &lt;br /&gt;
&lt;br /&gt;
=== function: write  ===&lt;br /&gt;
&lt;br /&gt;
parameters: data (string), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: result (boolean) &lt;br /&gt;
&lt;br /&gt;
In Lua a string can contain binary data, so data may be a binary block. If 'device' is a string it is interpreted as a UDN; if it's a number, as a device ID. This sends data on the socket that was opened automatically or with the open function above, and associated to 'device'. If the socket is not already open, write will wait up to 5 seconds for the socket before it returns an error. Result is 'true' if the data was sent successfully, and is 'false' or nill if an error occurred. &lt;br /&gt;
&lt;br /&gt;
=== function: intercept  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: nothing &lt;br /&gt;
&lt;br /&gt;
Normally when data comes in on a socket (I/O Port), the block of data is first passed to any pending jobs that are running for the device and are marked as 'waiting for data'. If there are none, or if none of the jobs' incoming data handlers report that they consumed (i.e. processed) the data, then the block of data is passed to the general 'incoming' function handler for the device. If you want to bypass this normal mechanism and read data directly from the socket, call intercept first to tell Luup you want to read incoming data with the read function. This is generally used during the initialization or startup sequences for devices. For example, you may need to send some data (a), receive some response (b), send some more data (c), receive another response (d), etc. In this case you would call 'intercept' first, then send a, then call read and confirm you got b, then call intercept again, then send c, then read d, and so on. &lt;br /&gt;
&lt;br /&gt;
You can call the read function without calling intercept and any incoming data will be returned by that function after it's called. The reason why you generally must call intercept is because normally you want to send some data and get a response. If you write the code like this ''send(data) data=read()'' then it's possible the response will arrive in the brief moment between the execution of send() and read(), and therefore get sent to the incoming data handler for the device. Intercept tells Luup to buffer any incoming data until the next read, bypassing the normal incoming data handler. So ''intercept() send(data) data=read()'' ensures that read will always get the response. If the device you're communicating with sends unsolicited data then there's the risk that the data you read is not the response you're looking for. If so, you can manually pass the response packet to the incoming data handler. &lt;br /&gt;
&lt;br /&gt;
**TBD: Add a function to do this**&lt;br /&gt;
&lt;br /&gt;
=== function: read  ===&lt;br /&gt;
&lt;br /&gt;
parameters: timeout (number), device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: data (string) &lt;br /&gt;
&lt;br /&gt;
This reads a block of data from the socket. You must have called intercept previously so the data is passed. &lt;br /&gt;
&lt;br /&gt;
=== function: is_connected  ===&lt;br /&gt;
&lt;br /&gt;
parameters: device (string or number) &lt;br /&gt;
&lt;br /&gt;
returns: connected (boolean) &lt;br /&gt;
&lt;br /&gt;
This function returns true if there is a valid IO port connected, otherwise returns false &lt;br /&gt;
&lt;br /&gt;
=== Job Handling  ===&lt;br /&gt;
&lt;br /&gt;
lu_job_set &lt;br /&gt;
&lt;br /&gt;
lu_job_get &lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/DscAlarmPanel</id>
		<title>DscAlarmPanel</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/DscAlarmPanel"/>
				<updated>2010-06-11T04:00:25Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DSC Alarm Panel  =&lt;br /&gt;
&lt;br /&gt;
This Plugin connects a DSC Alarm Panel with MiOS system, via an IT-100 interface board or compatible interface. &lt;br /&gt;
&lt;br /&gt;
== how it works  ==&lt;br /&gt;
&lt;br /&gt;
To make it easy to handle different panel features, the plugin defines three different devices on the MiOS system: &lt;br /&gt;
&lt;br /&gt;
'''main device'''[[Image(main panel1.png, align=right)|[[Image:DSC_Main_panel.png|right]]]]&lt;br /&gt;
&lt;br /&gt;
This represents the panel itself. The main tab contains: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*A display with any message shown by the panel's LCD screen. &lt;br /&gt;
*A text entry box to set the access code used by the plugin to access the panel. &lt;br /&gt;
*A button to synchronize the panel's clock with Vera's.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
There are four 'global' alarms on the panel: &lt;br /&gt;
&lt;br /&gt;
*Fire Key &lt;br /&gt;
*Auxiliary Key &lt;br /&gt;
*Panic Key &lt;br /&gt;
*Auxiliary Input&lt;br /&gt;
&lt;br /&gt;
Each of these can generate an event when triggered or cleared. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''partition subdevices[[Image:DSC_Partition_panel.png|right]]'''&lt;br /&gt;
&lt;br /&gt;
On the main tab the device shows the partition status ('Ready', 'In Alarm', 'Disarmed', etc), and has five buttons to send commands to the partition: 'Away', 'Stay', 'Armed no Entry Delay', 'Arm with Code', 'Disarm'. &lt;br /&gt;
&lt;br /&gt;
Events are generated on status changes. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''zones or sensors''' &lt;br /&gt;
&lt;br /&gt;
Each zone is represented as a sensor device. Currently you can select which appears as 'Smoke sensors' and which as 'Motion sensors'. There's no functional difference between them, but a UI can list them apart, or show different icons. &lt;br /&gt;
&lt;br /&gt;
Events are generated on status changes. &lt;br /&gt;
&lt;br /&gt;
== Setup  ==&lt;br /&gt;
&lt;br /&gt;
If the IT-100 interface is connected to Vera with an USB-Serial adapter, there should appear a serial port device. The MiOS Marketplace should let you create the main alarm panel device; then you have to associate the serial port with the main panel device. &lt;br /&gt;
&lt;br /&gt;
Partitions and zones are configured on the panel itself. Note the number of each one (partitions are numbered 1-8, zones are 1-64) and open the main panel device. Go to the 'Advanced' tab, and set three variables, all with the service ID &amp;quot;urn:micasaverde-com:serviceId:AlarmPanel1&amp;quot;: &lt;br /&gt;
&lt;br /&gt;
''''ActivePartitions' ''': A comma-separated list of the partition numbers configured on the panel. &lt;br /&gt;
&lt;br /&gt;
''''MotionSensors' ''': A comma-separated list of the zone numbers that represent motion sensors. &lt;br /&gt;
&lt;br /&gt;
''''SmokeSensors' ''': A comma-separated list of the zone numbers that represent smoke sensors. &lt;br /&gt;
&lt;br /&gt;
After setting these variables, close the dialog and hit the 'Save' icon. Luup will restart and the plugin will create one subdevice for each parition and zone.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/File:DSC_Partition_panel.png</id>
		<title>File:DSC Partition panel.png</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/File:DSC_Partition_panel.png"/>
				<updated>2010-06-11T03:57:18Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/File:DSC_Main_panel.png</id>
		<title>File:DSC Main panel.png</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/File:DSC_Main_panel.png"/>
				<updated>2010-06-11T03:56:29Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/DscAlarmPanel</id>
		<title>DscAlarmPanel</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/DscAlarmPanel"/>
				<updated>2010-06-11T03:53:59Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: New page: = DSC Alarm Panel  =  This Plugin connects a DSC Alarm Panel with MiOS system, via an IT-100 interface board or compatible interface.   == how it works  ==  To make it easy to handle diffe...&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= DSC Alarm Panel  =&lt;br /&gt;
&lt;br /&gt;
This Plugin connects a DSC Alarm Panel with MiOS system, via an IT-100 interface board or compatible interface. &lt;br /&gt;
&lt;br /&gt;
== how it works  ==&lt;br /&gt;
&lt;br /&gt;
To make it easy to handle different panel features, the plugin defines three different devices on the MiOS system: &lt;br /&gt;
&lt;br /&gt;
'''main device'''[[Image(main panel1.png, align=right)]] This represents the panel itself. The main tab contains:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*A display with any message shown by the panel's LCD screen.&lt;br /&gt;
*A text entry box to set the access code used by the plugin to access the panel.&lt;br /&gt;
*A button to synchronize the panel's clock with Vera's.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There are four 'global' alarms on the panel: &lt;br /&gt;
&lt;br /&gt;
*Fire Key&lt;br /&gt;
*Auxiliary Key&lt;br /&gt;
*Panic Key&lt;br /&gt;
*Auxiliary Input&lt;br /&gt;
&lt;br /&gt;
Each of these can generate an event when triggered or cleared. &lt;br /&gt;
&lt;br /&gt;
'''partition subdevices'''[[Image(partition panel.png, align=right)]] &lt;br /&gt;
&lt;br /&gt;
On the main tab the device shows the partition status ('Ready', 'In Alarm', 'Disarmed', etc), and has five buttons to send commands to the partition: 'Away', 'Stay', 'Armed no Entry Delay', 'Arm with Code', 'Disarm'. &lt;br /&gt;
&lt;br /&gt;
Events are generated on status changes. &lt;br /&gt;
&lt;br /&gt;
'''zones or sensors''' &lt;br /&gt;
&lt;br /&gt;
Each zone is represented as a sensor device. Currently you can select which appears as 'Smoke sensors' and which as 'Motion sensors'. There's no functional difference between them, but a UI can list them apart, or show different icons. &lt;br /&gt;
&lt;br /&gt;
Events are generated on status changes. &lt;br /&gt;
&lt;br /&gt;
== Setup  ==&lt;br /&gt;
&lt;br /&gt;
If the IT-100 interface is connected to Vera with an USB-Serial adapter, there should appear a serial port device. The MiOS Marketplace should let you create the main alarm panel device; then you have to associate the serial port with the main panel device. &lt;br /&gt;
&lt;br /&gt;
Partitions and zones are configured on the panel itself. Note the number of each one (partitions are numbered 1-8, zones are 1-64) and open the main panel device. Go to the 'Advanced' tab, and set three variables, all with the service ID &amp;quot;urn:micasaverde-com:serviceId:AlarmPanel1&amp;quot;: &lt;br /&gt;
&lt;br /&gt;
''''ActivePartitions' ''': A comma-separated list of the partition numbers configured on the panel. &lt;br /&gt;
&lt;br /&gt;
''''MotionSensors' ''': A comma-separated list of the zone numbers that represent motion sensors. &lt;br /&gt;
&lt;br /&gt;
''''SmokeSensors' ''': A comma-separated list of the zone numbers that represent smoke sensors. &lt;br /&gt;
&lt;br /&gt;
After setting these variables, close the dialog and hit the 'Save' icon. Luup will restart and the plugin will create one subdevice for each parition and zone.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Luup_UPNP_Files</id>
		<title>Luup UPNP Files</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Luup_UPNP_Files"/>
				<updated>2010-04-20T21:32:36Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
The following is the contents of the file &amp;quot;Constant.h&amp;quot; which defines the strings used for file device types, services, actions, variables, etc.&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
Copyright (C) 2008 Mi Casa Verde, Inc., a Nevada Corporation&lt;br /&gt;
&lt;br /&gt;
All rights reserved.  This software may not be used or distributed without express consent&lt;br /&gt;
&lt;br /&gt;
*/&lt;br /&gt;
&lt;br /&gt;
 #ifndef Constants_h&lt;br /&gt;
 #define Constants_h&lt;br /&gt;
// Device Types&lt;br /&gt;
  #define DEVICETYPE_BINARY_LIGHT      &amp;quot;urn:schemas-upnp-org:device:BinaryLight:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DIMMABLE_LIGHT    &amp;quot;urn:schemas-upnp-org:device:DimmableLight:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_THERMOSTAT      &amp;quot;urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_HUMIDITY_SENSOR    &amp;quot;urn:schemas-micasaverde-com:device:HumiditySensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MULTI_IO        &amp;quot;urn:schemas-micasaverde-com:device:MultiIO:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DOOR_LOCK      &amp;quot;urn:schemas-micasaverde-com:device:DoorLock:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DOOR_SENSOR      &amp;quot;urn:schemas-micasaverde-com:device:DoorSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_ZWAVE_NETWORK    &amp;quot;urn:schemas-micasaverde-com:device:ZWaveNetwork:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_INSTEON_NETWORK    &amp;quot;urn:schemas-micasaverde-com:device:InsteonNetwork:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_USB_UIRT        &amp;quot;urn:schemas-micasaverde-com:device:USBUIRT:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_TEMPERATURE_SENSOR  &amp;quot;urn:schemas-micasaverde-com:device:TemperatureSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MOTION_SENSOR    &amp;quot;urn:schemas-micasaverde-com:device:MotionSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_LIGHT_SENSOR      &amp;quot;urn:schemas-micasaverde-com:device:LightSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_IR_TRANSMITTER    &amp;quot;urn:schemas-micasaverde-com:device:IrTransmitter:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_WINDOW_COVERING    &amp;quot;urn:schemas-micasaverde-com:device:WindowCovering:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_GENERIC_IO      &amp;quot;urn:schemas-micasaverde-com:device:GenericIO:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_REMOTE_CONTROL    &amp;quot;urn:schemas-micasaverde-com:device:RemoteControl:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_COMBO_DEVICE      &amp;quot;urn:schemas-micasaverde-com:device:ComboDevice:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CAMERA        &amp;quot;urn:schemas-upnp-org:device:DigitalSecurityCamera:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SERIALPORT      &amp;quot;urn:micasaverde-org:device:SerialPort:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SCENE_CONTROLLER    &amp;quot;urn:schemas-micasaverde-com:device:SceneController:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_ENERGY_CALCULATOR  &amp;quot;urn:schemas-micasaverde-com:device:EnergyCalculator:1&amp;quot;&lt;br /&gt;
// IR Device Types&lt;br /&gt;
  #define DEVICETYPE_TV          &amp;quot;urn:schemas-micasaverde-com:device:tv:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CABLE        &amp;quot;urn:schemas-micasaverde-com:device:cable:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SATELLITE      &amp;quot;urn:schemas-micasaverde-com:device:satellite:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VIDEO_ACCESSORY    &amp;quot;urn:schemas-micasaverde-com:device:videoaccessory:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VCR_DVR        &amp;quot;urn:schemas-micasaverde-com:device:vcrdvd:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DVD_BLURAY      &amp;quot;urn:schemas-micasaverde-com:device:dvdbluray:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_RECEIVER        &amp;quot;urn:schemas-micasaverde-com:device:receiver:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_AMP          &amp;quot;urn:schemas-micasaverde-com:device:amp:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CD          &amp;quot;urn:schemas-micasaverde-com:device:cd:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MISC_HOME_CONTROL  &amp;quot;urn:schemas-micasaverde-com:device:mischomecontrol:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_AV_MISC        &amp;quot;urn:schemas-micasaverde-com:device:avmisc:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VIRTUAL_DEVICE    &amp;quot;urn:schemas-micasaverde-com:device:VirtualDevice:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Device Files&lt;br /&gt;
  #define DEVICEFILE_BINARY_LIGHT      &amp;quot;D_BinaryLight1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_DIMMABLE_LIGHT    &amp;quot;D_DimmableLight1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_THERMOSTAT      &amp;quot;D_HVAC_ZoneThermostat1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_HUMIDITY_SENSOR    &amp;quot;D_HumiditySensor1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_MULTI_IO        &amp;quot;D_GC100.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_DOOR_LOCK      &amp;quot;D_DoorLock1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_DOOR_SENSOR      &amp;quot;D_MotionSensor1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_ZWAVE_NETWORK    &amp;quot;D_ZWaveNetwork.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_USB_UIRT        &amp;quot;D_USB_UIRT.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_TEMPERATURE_SENSOR  &amp;quot;D_TemperatureSensor1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_MOTION_SENSOR    &amp;quot;D_MotionSensor1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_LIGHT_SENSOR      &amp;quot;D_LightSensor1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_IR_TRANSMITTER    &amp;quot;D_IrTransmitter1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_WINDOW_COVERING    &amp;quot;D_WindowCovering1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_GENERIC_IO      &amp;quot;D_GenericIO1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_REMOTE_CONTROL    &amp;quot;D_RemoteControl1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_COMBO_DEVICE      &amp;quot;D_ComboDevice1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_CAMERA        &amp;quot;D_DigitalSecurityCamera1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_SCENE_CONTROLLER    &amp;quot;D_SceneController1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_ENERGY_CALCULATOR  &amp;quot;D_EnergyCalculator1.xml&amp;quot;&lt;br /&gt;
  #define DEVICEFILE_AV_MISC        &amp;quot;D_AvMisc1.xml&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Device Categories&lt;br /&gt;
  #define DEVICE_CATEGORY_INTERFACE    1&lt;br /&gt;
  #define DEVICE_CATEGORY_DIMMABLE_LIGHT  2&lt;br /&gt;
  #define DEVICE_CATEGORY_SWITCH      3&lt;br /&gt;
  #define DEVICE_CATEGORY_SECURITY_SENSOR  4&lt;br /&gt;
  #define DEVICE_CATEGORY_HVAC      5&lt;br /&gt;
  #define DEVICE_CATEGORY_CAMERA      6&lt;br /&gt;
  #define DEVICE_CATEGORY_DOOR_LOCK    7&lt;br /&gt;
  #define DEVICE_CATEGORY_WINDOW_COV    8&lt;br /&gt;
  #define DEVICE_CATEGORY_REMOTE_CONTROL  9&lt;br /&gt;
  #define DEVICE_CATEGORY_IR_TX      10  &lt;br /&gt;
  #define DEVICE_CATEGORY_GENERIC_IO    11&lt;br /&gt;
  #define DEVICE_CATEGORY_GENERIC_SENSOR  12&lt;br /&gt;
  #define DEVICE_CATEGORY_SERIAL_PORT    13&lt;br /&gt;
  #define DEVICE_CATEGORY_SCENE_CONTROLLER 14&lt;br /&gt;
  #define  DEVICE_CATEGORY_AV        15&lt;br /&gt;
  #define  DEVICE_CATEGORY_HUMIDITY    16&lt;br /&gt;
  #define  DEVICE_CATEGORY_TEMPERATURE    17&lt;br /&gt;
  #define  DEVICE_CATEGORY_LIGHT      18&lt;br /&gt;
  #define DEVICE_CATEGORY_ZWAVE_INT    19&lt;br /&gt;
  #define DEVICE_CATEGORY_INSTEON_INT    20&lt;br /&gt;
&lt;br /&gt;
// Cast the second one between int and char * so we can use a simple &lt;br /&gt;
// array that's fast to iterate and not use an stl map&lt;br /&gt;
  extern const char *g_DeviceCategories[];&lt;br /&gt;
  extern const char *g_DeviceDescriptions[];  // Default descriptions&lt;br /&gt;
&lt;br /&gt;
  #define MINIMUM_TIME    1230811200  // If the time is &amp;lt; this, we'll assume the clock isn't set&lt;br /&gt;
&lt;br /&gt;
// This is a special argument which, if 1, means this action is 'temporary' and the system must note the current settings with Device_Action::CreateRestorePoint and restore them with GotoRestorePoint&lt;br /&gt;
  #define TEMPORARY_UPNP_ARGUMENT    &amp;quot;TEMPORARY_UPNP_ARGUMENT&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  #define SAFE_DEVICE_ID(pDevice_LuaUPnP)  (pDevice_LuaUPnP ? pDevice_LuaUPnP-&amp;gt;m_pDevice_Basic_get()-&amp;gt;m_iDevice_Num_get() : 0)&lt;br /&gt;
&lt;br /&gt;
// These are stored in the json file for the device itself and not part of the UPNP variables:&lt;br /&gt;
&lt;br /&gt;
  /*&lt;br /&gt;
    Device_Num&lt;br /&gt;
    FK_DevType&lt;br /&gt;
    Device_Num_Parent&lt;br /&gt;
    FK_Device_Category&lt;br /&gt;
    Room_Num&lt;br /&gt;
&lt;br /&gt;
    Description&lt;br /&gt;
    InternalID // DEVICEDATA_PortChannel_Number_CONST&lt;br /&gt;
    Manufacturer// DEVICEDATA_Manufacturer_Desc_CONST&lt;br /&gt;
    Model    // DEVICEDATA_Model_Desc_CONST&lt;br /&gt;
    IPAddress&lt;br /&gt;
    MacAddress&lt;br /&gt;
    UPnPDeviceFile  // DEVICEDATA_UPnP_Dev_File_CONST&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
// ============  HaGateway  ============&lt;br /&gt;
// Basic functionality for the gateway itself&lt;br /&gt;
&lt;br /&gt;
  #define HAGEVICE_FILE      &amp;quot;S_HomeAutomationGateway1.xml&amp;quot;&lt;br /&gt;
  #define HAGEVICE_SID      &amp;quot;urn:micasaverde-com:serviceId:HomeAutomationGateway1&amp;quot;&lt;br /&gt;
  #define HAGEVICE_STYPE      &amp;quot;urn:schemas-micasaverde-org:service:HomeAutomationGateway:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HAG_ACTIVE_SCENES    &amp;quot;ActiveScenes&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  /*&lt;br /&gt;
  #define HAG_ENERGY_DOW      &amp;quot;EnergyDOW&amp;quot;&lt;br /&gt;
  #define HAG_ENERGY_TIME_OF_DAY  &amp;quot;GetUserData&amp;quot;&lt;br /&gt;
  #define HAG_NUM_LIGHTS      &amp;quot;GetUserData&amp;quot;&lt;br /&gt;
  #define HAG_THERMOSTAT_ON    &amp;quot;GetUserData&amp;quot;&lt;br /&gt;
  #define HAG_ENERGY_DOW      &amp;quot;GetUserData&amp;quot;&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define HAG_GET_USER_DATA    &amp;quot;GetUserData&amp;quot;  &lt;br /&gt;
  #define HAG_MODIFY_USER_DATA  &amp;quot;ModifyUserData&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_GET_VARIABLE  &amp;quot;GetVariable&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_SET_VARIABLE  &amp;quot;SetVariable&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_GET_STATUS  &amp;quot;GetStatus&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_GET_ACTIONS  &amp;quot;GetActions&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_CREATE_DEVICE  &amp;quot;CreateDevice&amp;quot; &lt;br /&gt;
  #define HAG_MODIFY_DELETE_DEVICE  &amp;quot;DeleteDevice&amp;quot; &lt;br /&gt;
  #define HAG_PROCESS_CHILD    &amp;quot;ProcessChildDevices&amp;quot; &lt;br /&gt;
  #define HAG_RELOAD        &amp;quot;Reload&amp;quot; &lt;br /&gt;
  #define HAG_RUN_SCENE      &amp;quot;RunScene&amp;quot;&lt;br /&gt;
  #define HAG_RUN_LUA        &amp;quot;RunLua&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// ============  HaDevice  ============&lt;br /&gt;
// Basic functionality for all home automation devices&lt;br /&gt;
&lt;br /&gt;
  #define HADEVICE_FILE      &amp;quot;S_HaDevice1.xml&amp;quot;&lt;br /&gt;
  #define HADEVICE_SID      &amp;quot;urn:micasaverde-com:serviceId:HaDevice1&amp;quot;&lt;br /&gt;
  #define HADEVICE_STYPE      &amp;quot;urn:schemas-micasaverde-com:service:HaDevice:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HAD_ENERGY_LOG      &amp;quot;EnergyLog&amp;quot;  // DEVICEDATA_Energy_Log_CONST&lt;br /&gt;
  #define HAD_WATTS        &amp;quot;Watts&amp;quot;    // DEVICEDATA_Wattage_CONST&lt;br /&gt;
  #define HAD_IOPORT_DEVICE    &amp;quot;IODevice&amp;quot;  // The device number to connect to for IO (this is on the master device)&lt;br /&gt;
  #define HAD_IOPORT_PORT      &amp;quot;IOPort&amp;quot;  // The port to receive connections on from HAD_IOPORT_DEVICE (this is on the serial port)&lt;br /&gt;
  #define HAD_IGNORE_ROOM      &amp;quot;IgnoreRoom&amp;quot;    // DEVICEDATA_Room_Not_Required_CONST&lt;br /&gt;
  #define HAD_COMM_FAILURE    &amp;quot;CommFailure&amp;quot;&lt;br /&gt;
  #define HAD_POLLING_ENABLED    &amp;quot;PollingEnabled&amp;quot;&lt;br /&gt;
  #define HAD_POLL_MIN_DELAY    &amp;quot;PollMinDelay&amp;quot;&lt;br /&gt;
  #define HAD_CONFIGURED      &amp;quot;Configured&amp;quot;&lt;br /&gt;
  #define HAD_JOBID        &amp;quot;JobID&amp;quot;&lt;br /&gt;
  #define HAD_REVERSE        &amp;quot;ReverseOnOff&amp;quot;  // DEVICEDATA_Reverse_CONST&lt;br /&gt;
  #define HAD_LAST_UPDATE      &amp;quot;LastUpdate&amp;quot;  // DEVICEDATA_LastUpdate_CONST&lt;br /&gt;
  #define HAD_AUTO_CONFIGURE    &amp;quot;AutoConfigure&amp;quot;  // DEVICEDATA_Auto_Configure_CONST&lt;br /&gt;
&lt;br /&gt;
  #define HAD_RECONFIGURE      &amp;quot;Reconfigure&amp;quot;&lt;br /&gt;
  #define HAD_REMOVE        &amp;quot;Remove&amp;quot;&lt;br /&gt;
  #define HAD_POLL        &amp;quot;Poll&amp;quot;&lt;br /&gt;
  #define HAD_SET_POLL_FREQUENCY  &amp;quot;SetPollFrequency&amp;quot;&lt;br /&gt;
  #define HAD_STRESS_TEST      &amp;quot;StressTest&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  ZWaveNetwork  ============&lt;br /&gt;
// Basic functionality for all ZWave devices&lt;br /&gt;
&lt;br /&gt;
  #define ZWN_FILE        &amp;quot;S_ZWaveNetwork1.xml&amp;quot;&lt;br /&gt;
  #define ZWN_SID          &amp;quot;urn:micasaverde-com:serviceId:ZWaveNetwork1&amp;quot;&lt;br /&gt;
  #define ZWN_STYPE        &amp;quot;urn:schemas-micasaverde-org:service:ZWaveNetwork:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  #define ZWN_RESET_NETWORK    &amp;quot;ResetNetwork&amp;quot;&lt;br /&gt;
  #define ZWN_REMOVE_NODES    &amp;quot;RemoveNodes&amp;quot;&lt;br /&gt;
  #define ZWN_ADD_NODES      &amp;quot;AddNodes&amp;quot;&lt;br /&gt;
  #define ZWN_DOWNLOAD      &amp;quot;DownloadNetwork&amp;quot;&lt;br /&gt;
  #define ZWN_HEAL_NETWORK    &amp;quot;HealNetwork&amp;quot;&lt;br /&gt;
  #define ZWN_SET_POLLING      &amp;quot;SetPolling&amp;quot;&lt;br /&gt;
  #define ZWN_SEND_DATA      &amp;quot;SendData&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_ALL_NODES    &amp;quot;PollAllNodes&amp;quot;&lt;br /&gt;
  #define ZWN_SOFT_RESET      &amp;quot;SoftReset&amp;quot;&lt;br /&gt;
  #define ZWN_BACKUP_DONGLE    &amp;quot;BackupDongle&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define ZWN_LAST_UPDATE      &amp;quot;LastUpdate&amp;quot;  // DEVICEDATA_LastUpdate_CONST&lt;br /&gt;
  #define ZWN_LAST_DONGLE_BACKUP  &amp;quot;LastDongleBackup&amp;quot;&lt;br /&gt;
  #define ZWN_AUTO_CONFIGURE    &amp;quot;AutoConfigure&amp;quot;  // DEVICEDATA_Auto_Configure_CONST&lt;br /&gt;
  #define ZWN_NET_STATUS_ID    &amp;quot;NetStatusID&amp;quot;  &lt;br /&gt;
  #define ZWN_NET_STATUS_TEXT    &amp;quot;NetStatusText&amp;quot;  &lt;br /&gt;
  #define ZWN_COM_PORT      &amp;quot;ComPort&amp;quot;  // DEVICEDATA_COM_Port_on_PC_CONST&lt;br /&gt;
  #define ZWN_NODE_ID        &amp;quot;NodeID&amp;quot;  // The dongle's id&lt;br /&gt;
  #define ZWN_VERSION_INFO    &amp;quot;VersionInfo&amp;quot;&lt;br /&gt;
  #define ZWN_HOME_ID        &amp;quot;HomeID&amp;quot;&lt;br /&gt;
  #define ZWN_ROLE        &amp;quot;Role&amp;quot;&lt;br /&gt;
  #define ZWN_RESET_MODE      &amp;quot;ResetMode&amp;quot;&lt;br /&gt;
  #define ZWN_INCLUSION_MODE    &amp;quot;InclusionMode&amp;quot;&lt;br /&gt;
  #define ZWN_NODETYPE      &amp;quot;NodeType&amp;quot;&lt;br /&gt;
  #define ZWN_TIMEOUT        &amp;quot;Timeout&amp;quot;&lt;br /&gt;
  #define ZWN_MULTIPLE      &amp;quot;Multiple&amp;quot;&lt;br /&gt;
  #define ZWN_SIMULATE_INCOMING  &amp;quot;SimulateIncomingData&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_ENABLED    &amp;quot;PollingEnabled&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_DELAY_INITIAL  &amp;quot;PollDelayInitial&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_DELAY_DEADTIME  &amp;quot;PollDelayDeadTime&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_MINDELAY    &amp;quot;PollMinDelay&amp;quot;&lt;br /&gt;
  #define ZWN_POLL_FREQUENCY    &amp;quot;PollFrequency&amp;quot;&lt;br /&gt;
  #define ZWN_LAST_ERROR      &amp;quot;LastError&amp;quot;&lt;br /&gt;
  #define ZWN_DELAY_PROCESSING  &amp;quot;DelayProcessing&amp;quot;  implement this&lt;br /&gt;
&lt;br /&gt;
// ============  ZWaveDevice  ============&lt;br /&gt;
// Basic functionality for all ZWave devices&lt;br /&gt;
&lt;br /&gt;
  #define ZWDEVICE_FILE      &amp;quot;S_ZWaveDevice1.xml&amp;quot;&lt;br /&gt;
  #define ZWDEVICE_SID      &amp;quot;urn:micasaverde-com:serviceId:ZWaveDevice1&amp;quot;&lt;br /&gt;
  #define ZWDEVICE_STYPE      &amp;quot;urn:schemas-micasaverde-com:service:ZWaveDevice:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define ZWD_POLL_SETTINGS    &amp;quot;PollSettings&amp;quot;  // DEVICEDATA_Polling_Settings_CONST&lt;br /&gt;
  #define ZWD_MULTCH_ENDPOINT    &amp;quot;MultiChEndpoint&amp;quot;  // DEVICEDATA_Multi_Channel_End_Point_CONST&lt;br /&gt;
  #define ZWD_MULTCH_CAPABIL    &amp;quot;MultiChCapabilities&amp;quot;  // DEVICEDATA_Multi_Channel_Capabilities_CONST&lt;br /&gt;
&lt;br /&gt;
// ZWD_MULTCH_ENDPOINT    string m_sMultiChannelList, // If m_cProtocolVersion&amp;gt;=2 (multi channel), then If this has embedded devices, Format: [number of end points] , [0/1 end points are dynamic], [0/1 end points are identical]&lt;br /&gt;
                  // If m_cProtocolVersion&amp;lt;2 (multi instance), then the total number of instances&lt;br /&gt;
// ZWD_MULTCH_CAPABIL      m_sMultiChannelCapability;  // m_cProtocolVersion&amp;gt;=2, if this has devices, Format: [end point #], Generic device class, Specific device class, command class 1, command class 2.... \n repeat next end point&lt;br /&gt;
                    // If m_cProtocolVersion&amp;lt;2, command class, # of instances \n repeat command class&lt;br /&gt;
&lt;br /&gt;
  #define ZWD_NEIGHBORS      &amp;quot;Neighbors&amp;quot;  // DEVICEDATA_Neighbors_to_Call_CONST&lt;br /&gt;
  #define ZWD_CAPABILITIES    &amp;quot;Capabilities&amp;quot;  // DEVICEDATA_Capabilities_CONST&lt;br /&gt;
  #define ZWD_CONFIG        &amp;quot;Configuration&amp;quot;  // DEVICEDATA_Configuration_CONST&lt;br /&gt;
  #define ZWD_LAST_RESET      &amp;quot;LastReset&amp;quot;  // DEVICEDATA_Last_Reset_CONST&lt;br /&gt;
  #define ZWD_SCENES_AS_EVENTS  &amp;quot;ScenesAsEvents&amp;quot;  // DEVICEDATA_Scenes_As_Events_CONST&lt;br /&gt;
  #define ZWD_SCENES        &amp;quot;Scenes&amp;quot;  // DEVICEDATA_Scenes_CONST&lt;br /&gt;
  #define ZWD_SCENES_TIMESTAMPS  &amp;quot;ScenesTimestamp&amp;quot;  // DEVICEDATA_Scenes_CONST&lt;br /&gt;
  #define ZWD_WAKEUP_INTERVAL    &amp;quot;WakeupInterval&amp;quot;  // DEVICEDATA_Wakeup_Interval_CONST&lt;br /&gt;
  #define ZWD_BATTERY_LEVEL    &amp;quot;BatteryLevel&amp;quot;  // DEVICEDATA_Battery_Level_CONST&lt;br /&gt;
  #define ZWD_BATTERY_ALARM    &amp;quot;BatteryAlarm&amp;quot;  // DEVICEDATA_Battery_Alarm_CONST&lt;br /&gt;
  #define ZWD_LAST_WAKEUP      &amp;quot;LastWakeup&amp;quot;  // DEVICEDATA_Last_Wakeup_CONST&lt;br /&gt;
  #define ZWD_LAST_ROUTE_UPD    &amp;quot;LastRouteUpdate&amp;quot;  // DEVICEDATA_Last_Route_Update_CONST&lt;br /&gt;
  #define ZWD_VARIABLES_GET    &amp;quot;VariablesGet&amp;quot;  // DEVICEDATA_Variables_Get_CONST&lt;br /&gt;
  #define ZWD_VARIABLES_SET    &amp;quot;VariablesSet&amp;quot;  // DEVICEDATA_Variables_Set_CONST&lt;br /&gt;
  #define ZWD_ASSOCIATION_GET    &amp;quot;AssociationGet&amp;quot;  // DEVICEDATA_Association_Get_CONST&lt;br /&gt;
  #define ZWD_ASSOCIATION_SET    &amp;quot;AssociationSet&amp;quot;  // DEVICEDATA_Association_Set_CONST&lt;br /&gt;
  #define ZWD_MANUF_INFO      &amp;quot;ManufacturerInfo&amp;quot;  // DEVICEDATA_Model_CONST&lt;br /&gt;
  #define ZWD_VERSION_INFO    &amp;quot;VersionInfo&amp;quot;  // DEVICEDATA_Configuration_CONST&lt;br /&gt;
  #define ZWD_UPDATED_NAME    &amp;quot;UpdatedName&amp;quot;  // DEVICEDATA_Update_Name_CONST&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// ============  InsteonNetwork  ============&lt;br /&gt;
// Basic functionality for all Insteon devices&lt;br /&gt;
&lt;br /&gt;
  #define INN_FILE        &amp;quot;S_InsteonNetwork1.xml&amp;quot;&lt;br /&gt;
  #define INN_SID          &amp;quot;urn:micasaverde-com:serviceId:InsteonNetwork1&amp;quot;&lt;br /&gt;
  #define INN_STYPE        &amp;quot;urn:schemas-micasaverde-org:service:InsteonNetwork:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  #define INN_RESET_NETWORK    &amp;quot;ResetNetwork&amp;quot;&lt;br /&gt;
  #define INN_REMOVE_NODES    &amp;quot;RemoveNodes&amp;quot;&lt;br /&gt;
  #define INN_ADD_NODES      &amp;quot;AddNodes&amp;quot;&lt;br /&gt;
  #define INN_SEND_DATA      &amp;quot;SendData&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define INN_COM_PORT      &amp;quot;ComPort&amp;quot;  // DEVICEDATA_COM_Port_on_PC_CONST&lt;br /&gt;
  #define INN_LAST_ERROR      &amp;quot;LastError&amp;quot;&lt;br /&gt;
  #define INN_AUTO_CONFIGURE    &amp;quot;AutoConfigure&amp;quot;  // DEVICEDATA_Auto_Configure_CONST&lt;br /&gt;
  #define INN_LAST_UPDATE      &amp;quot;LastUpdate&amp;quot;  // DEVICEDATA_LastUpdate_CONST&lt;br /&gt;
  #define INN_NET_STATUS_ID    &amp;quot;NetStatusID&amp;quot;  &lt;br /&gt;
  #define INN_NET_STATUS_TEXT    &amp;quot;NetStatusText&amp;quot;  &lt;br /&gt;
  #define INN_POLL_ENABLED    &amp;quot;PollingEnabled&amp;quot;&lt;br /&gt;
  #define INN_POLL_DELAY_INITIAL  &amp;quot;PollDelayInitial&amp;quot;&lt;br /&gt;
  #define INN_POLL_DELAY_DEADTIME  &amp;quot;PollDelayDeadTime&amp;quot;&lt;br /&gt;
  #define INN_POLL_MINDELAY    &amp;quot;PollMinDelay&amp;quot;&lt;br /&gt;
  #define INN_POLL_FREQUENCY    &amp;quot;PollFrequency&amp;quot;&lt;br /&gt;
  #define INN_NODE_ID        &amp;quot;NodeID&amp;quot;  // The dongle's id&lt;br /&gt;
&lt;br /&gt;
  /*&lt;br /&gt;
  #define INN_VERSION_INFO    &amp;quot;VersionInfo&amp;quot;&lt;br /&gt;
  #define INN_HOME_ID        &amp;quot;HomeID&amp;quot;&lt;br /&gt;
  #define INN_ROLE        &amp;quot;Role&amp;quot;&lt;br /&gt;
  #define INN_RESET_MODE      &amp;quot;ResetMode&amp;quot;&lt;br /&gt;
  #define INN_INCLUSION_MODE    &amp;quot;InclusionMode&amp;quot;&lt;br /&gt;
  #define INN_NODETYPE      &amp;quot;NodeType&amp;quot;&lt;br /&gt;
  #define INN_TIMEOUT        &amp;quot;Timeout&amp;quot;&lt;br /&gt;
  #define INN_MULTIPLE      &amp;quot;Multiple&amp;quot;&lt;br /&gt;
  #define INN_SIMULATE_INCOMING  &amp;quot;SimulateIncomingData&amp;quot;&lt;br /&gt;
  */&lt;br /&gt;
&lt;br /&gt;
// ============  InsteonDevice  ============&lt;br /&gt;
// Basic functionality for all Insteon devices&lt;br /&gt;
&lt;br /&gt;
  #define INDEVICE_FILE      &amp;quot;S_InsteonDevice1.xml&amp;quot;&lt;br /&gt;
  #define INDEVICE_SID      &amp;quot;urn:micasaverde-com:serviceId:InsteonDevice1&amp;quot;&lt;br /&gt;
  #define INDEVICE_STYPE      &amp;quot;urn:schemas-micasaverde-com:service:InsteonDevice:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define IND_POLL_SETTINGS    &amp;quot;PollSettings&amp;quot;  // DEVICEDATA_Polling_Settings_CONST&lt;br /&gt;
  #define IND_MULTCH_ENDPOINT    &amp;quot;MultiChEndpoint&amp;quot;  // DEVICEDATA_Multi_Channel_End_Point_CONST&lt;br /&gt;
  #define IND_MULTCH_CAPABIL    &amp;quot;MultiChCapabilities&amp;quot;  // DEVICEDATA_Multi_Channel_Capabilities_CONST&lt;br /&gt;
&lt;br /&gt;
// IND_MULTCH_ENDPOINT    string m_sMultiChannelList, // If m_cProtocolVersion&amp;gt;=2 (multi channel), then If this has embedded devices, Format: [number of end points] , [0/1 end points are dynamic], [0/1 end points are identical]&lt;br /&gt;
                  // If m_cProtocolVersion&amp;lt;2 (multi instance), then the total number of instances&lt;br /&gt;
// IND_MULTCH_CAPABIL      m_sMultiChannelCapability;  // m_cProtocolVersion&amp;gt;=2, if this has devices, Format: [end point #], Generic device class, Specific device class, command class 1, command class 2.... \n repeat next end point&lt;br /&gt;
                    // If m_cProtocolVersion&amp;lt;2, command class, # of instances \n repeat command class&lt;br /&gt;
&lt;br /&gt;
  #define IND_NEIGHBORS      &amp;quot;Neighbors&amp;quot;  // DEVICEDATA_Neighbors_to_Call_CONST&lt;br /&gt;
  #define IND_CAPABILITIES    &amp;quot;Capabilities&amp;quot;  // DEVICEDATA_Capabilities_CONST&lt;br /&gt;
  #define IND_CONFIG        &amp;quot;Configuration&amp;quot;  // DEVICEDATA_Configuration_CONST&lt;br /&gt;
  #define IND_LAST_RESET      &amp;quot;LastReset&amp;quot;  // DEVICEDATA_Last_Reset_CONST&lt;br /&gt;
  #define IND_SCENES_AS_EVENTS  &amp;quot;ScenesAsEvents&amp;quot;  // DEVICEDATA_Scenes_As_Events_CONST&lt;br /&gt;
  #define IND_SCENES        &amp;quot;Scenes&amp;quot;  // DEVICEDATA_Scenes_CONST&lt;br /&gt;
  #define IND_WAKEUP_INTERVAL    &amp;quot;WakeupInterval&amp;quot;  // DEVICEDATA_Wakeup_Interval_CONST&lt;br /&gt;
  #define IND_BATTERY_LEVEL    &amp;quot;BatteryLevel&amp;quot;  // DEVICEDATA_Battery_Level_CONST&lt;br /&gt;
  #define IND_BATTERY_ALARM    &amp;quot;BatteryAlarm&amp;quot;  // DEVICEDATA_Battery_Alarm_CONST&lt;br /&gt;
  #define IND_LAST_WAKEUP      &amp;quot;LastWakeup&amp;quot;  // DEVICEDATA_Last_Wakeup_CONST&lt;br /&gt;
  #define IND_LAST_ROUTE_UPD    &amp;quot;LastRouteUpdate&amp;quot;  // DEVICEDATA_Last_Route_Update_CONST&lt;br /&gt;
  #define IND_VARIABLES_GET    &amp;quot;VariablesGet&amp;quot;  // DEVICEDATA_Variables_Get_CONST&lt;br /&gt;
  #define IND_VARIABLES_SET    &amp;quot;VariablesSet&amp;quot;  // DEVICEDATA_Variables_Set_CONST&lt;br /&gt;
  #define IND_ASSOCIATION_GET    &amp;quot;AssociationGet&amp;quot;  // DEVICEDATA_Association_Get_CONST&lt;br /&gt;
  #define IND_ASSOCIATION_SET    &amp;quot;AssociationSet&amp;quot;  // DEVICEDATA_Association_Set_CONST&lt;br /&gt;
  #define IND_MANUF_INFO      &amp;quot;ManufacturerInfo&amp;quot;  // DEVICEDATA_Model_CONST&lt;br /&gt;
  #define IND_VERSION_INFO    &amp;quot;VersionInfo&amp;quot;  // DEVICEDATA_Configuration_CONST&lt;br /&gt;
  #define IND_UPDATED_NAME    &amp;quot;UpdatedName&amp;quot;  // DEVICEDATA_Update_Name_CONST&lt;br /&gt;
&lt;br /&gt;
// ============  USB UIRT  ============&lt;br /&gt;
// Basic functionality for USB UIRT&lt;br /&gt;
&lt;br /&gt;
  #define UIRT_FILE      &amp;quot;S_USBUIRT.xml&amp;quot;&lt;br /&gt;
  #define UIRT_SID      &amp;quot;urn:micasaverde-com:serviceId:USBUIRT1&amp;quot;&lt;br /&gt;
  #define UIRT_TYPE      &amp;quot;urn:schemas-micasaverde-com:service:USBUIRT:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define UIRT_COM_PORT    &amp;quot;ComPort&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  Camera  ============&lt;br /&gt;
// Basic functionality for all Cameras&lt;br /&gt;
&lt;br /&gt;
  #define CAMDEVICE_FILE      &amp;quot;S_Camera1.xml&amp;quot;&lt;br /&gt;
  #define CAMDEVICE_SID      &amp;quot;urn:micasaverde-com:serviceId:Camera1&amp;quot;&lt;br /&gt;
  #define CAMDEVICE_STYPE      &amp;quot;urn:schemas-micasaverde-com:service:Camera:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define CAM_USERNAME      &amp;quot;Username&amp;quot;  // DEVICEDATA_AuthUser_CONST&lt;br /&gt;
  #define CAM_PASSWORD      &amp;quot;Password&amp;quot;  // DEVICEDATA_AuthPassword_CONST&lt;br /&gt;
&lt;br /&gt;
  #define CAM_RELATED_SENSORS    &amp;quot;RelatedSensors&amp;quot;    // Comma separated list: Archive a photo whenever the following sensors are tripped or doors are opened:&lt;br /&gt;
  #define CAM_SENSOR_ARCHIVE_SEC  &amp;quot;SensorArchiveSeconds&amp;quot;   // Integer: And after the sensor(s) are tripped archive the video for  seconds.&lt;br /&gt;
  #define CAM_RELATED_LIGHTS    &amp;quot;RelatedLights&amp;quot;  // Comma separated list: Which lights should be turned on when viewing this camera:&lt;br /&gt;
  #define CAM_LIGHT_OPTIONS    &amp;quot;LightOptions&amp;quot;  // V=When I view the camera from the web or phone.&lt;br /&gt;
                        // S=When the sensor(s) above are tripped and they are armed&lt;br /&gt;
                        // B=When the sensors above are tripped and they are *not* armed&lt;br /&gt;
                        // A=When you take an automatic picture for the archive&lt;br /&gt;
                        // So: VSBA means do them all&lt;br /&gt;
&lt;br /&gt;
  #define CAM_AUTO_ARCH_SEC    &amp;quot;AutoArchiveSeconds&amp;quot;  // For archival purposes, take a picture from the camera every x seconds&lt;br /&gt;
  #define CAM_AUTO_PRES_DAYS    &amp;quot;AutoArchivePreserveDays&amp;quot;  // and keep the pictures x days&lt;br /&gt;
  #define CAM_URL          &amp;quot;URL&amp;quot;  // DEVICEDATA_Path_CONST&lt;br /&gt;
&lt;br /&gt;
// ============  PanTiltZoom  ============&lt;br /&gt;
// For Cameras&lt;br /&gt;
&lt;br /&gt;
  #define PTZ_FILE        &amp;quot;S_PanTiltZoom1.xml&amp;quot;&lt;br /&gt;
  #define PTZ_SID          &amp;quot;urn:micasaverde-com:serviceId:PanTiltZoom1&amp;quot;&lt;br /&gt;
  #define PTZ_STYPE        &amp;quot;urn:schemas-micasaverde-com:service:PanTiltZoom:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define PTZ_LEFT        &amp;quot;MoveLeft&amp;quot;&lt;br /&gt;
  #define PTZ_RIGHT        &amp;quot;MoveRight&amp;quot;&lt;br /&gt;
  #define PTZ_UP          &amp;quot;MoveUp&amp;quot;&lt;br /&gt;
  #define PTZ_DOWN        &amp;quot;MoveDown&amp;quot;&lt;br /&gt;
  #define PTZ_IN          &amp;quot;ZoomIn&amp;quot;&lt;br /&gt;
  #define PTZ_OUT          &amp;quot;ZoomOut&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  SwitchPower1  ============&lt;br /&gt;
  #define SWP_SID        &amp;quot;urn:upnp-org:serviceId:SwitchPower1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define SWP_SET_TARGET    &amp;quot;SetTarget&amp;quot; &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define SWP_STATUS      &amp;quot;Status&amp;quot; &lt;br /&gt;
  #define SWP_TARGET      &amp;quot;Target&amp;quot; &lt;br /&gt;
&lt;br /&gt;
// ============  S_WindowCovering1  ============&lt;br /&gt;
  #define WC_SID        &amp;quot;urn:upnp-org:serviceId:WindowCovering1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define WC_UP        &amp;quot;Up&amp;quot; &lt;br /&gt;
  #define WC_DOWN        &amp;quot;Down&amp;quot; &lt;br /&gt;
  #define WC_STOP        &amp;quot;Stop&amp;quot; &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
&lt;br /&gt;
// ============  Dimming1  ============&lt;br /&gt;
  #define SWD_SID          &amp;quot;urn:upnp-org:serviceId:Dimming1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define SWD_SET_LOAD_LEVEL    &amp;quot;SetLoadLevelTarget&amp;quot; &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define SWD_LOAD_LEVEL_STATUS  &amp;quot;LoadLevelStatus&amp;quot; &lt;br /&gt;
  #define SWD_LOAD_LEVEL_TARGET  &amp;quot;LoadLevelTarget&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  DoorLock1  ============&lt;br /&gt;
  #define DL_SID        &amp;quot;urn:micasaverde-com:serviceId:DoorLock1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define DL_SET_TARGET    &amp;quot;SetTarget&amp;quot;&lt;br /&gt;
  #define DL_SET_PIN      &amp;quot;SetPin&amp;quot;&lt;br /&gt;
  #define DL_CLEAR_PIN    &amp;quot;ClearPin&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define DL_STATUS      &amp;quot;Status&amp;quot; &lt;br /&gt;
  #define DL_TARGET      &amp;quot;Target&amp;quot; &lt;br /&gt;
  #define DL_SL_USER_CODE    &amp;quot;sl_UserCode&amp;quot;&lt;br /&gt;
  #define DL_SL_PIN_FAILED  &amp;quot;sl_PinFailed&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Syntax: CodeID, Pin Code (only if start date is not empty), start date, stop date, Name \t&lt;br /&gt;
  #define DL_PIN_CODES    &amp;quot;PinCodes&amp;quot;  // DEVICEDATA_PIN_Codes_CONST&lt;br /&gt;
&lt;br /&gt;
// ============  HVAC_UserOperatingMode1  ============&lt;br /&gt;
  #define HVACO_SID      &amp;quot;urn:upnp-org:serviceId:HVAC_UserOperatingMode1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define HVACO_SET_MODE    &amp;quot;SetModeTarget&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HVACO_STATUS    &amp;quot;ModeStatus&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
// ============  HVAC_FanOperatingMode1  ============&lt;br /&gt;
  #define HVACF_SID      &amp;quot;urn:upnp-org:serviceId:HVAC_FanOperatingMode1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Actions&lt;br /&gt;
  #define HVACF_SET_MODE    &amp;quot;SetMode&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HVACF_STATUS    &amp;quot;ModeStatus&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// ============  TemperatureSetpoint1_Heat/Cool  ============&lt;br /&gt;
  #define HVACHEAT_SID    &amp;quot;urn:upnp-org:serviceId:TemperatureSetpoint1_Heat&amp;quot;&lt;br /&gt;
  #define HVACCOOL_SID    &amp;quot;urn:upnp-org:serviceId:TemperatureSetpoint1_Cool&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HVACHC_SETPOINT    &amp;quot;SetCurrentSetpoint&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HVACHC_CURRENTSP    &amp;quot;CurrentSetpoint&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
// ============  TemperatureSensor1  ============&lt;br /&gt;
  #define TEMP_SID    &amp;quot;urn:upnp-org:serviceId:TemperatureSensor1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define TEMP_CURRENT  &amp;quot;CurrentTemperature&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  LightSensor1  ============&lt;br /&gt;
  #define LIGHT_SID    &amp;quot;urn:micasaverde-com:serviceId:LightSensor1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define LIGHT_CURRENT  &amp;quot;CurrentLevel&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  HumiditySensor1  ============&lt;br /&gt;
  #define HUM_SID    &amp;quot;urn:micasaverde-com:serviceId:HumiditySensor1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define HUM_CURRENT  &amp;quot;CurrentLevel&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  SecuritySensor1  ============&lt;br /&gt;
  #define SES_SID    &amp;quot;urn:micasaverde-com:serviceId:SecuritySensor1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define SES_ARMED  &amp;quot;Armed&amp;quot;&lt;br /&gt;
  #define SES_TRIPPED  &amp;quot;Tripped&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Action&lt;br /&gt;
  #define SES_SET_ARMED  &amp;quot;SetArmed&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  EnergyMetering1  ============&lt;br /&gt;
  #define ENE_SID    &amp;quot;urn:micasaverde-com:serviceId:EnergyMetering1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define ENE_KWH        &amp;quot;KWH&amp;quot;&lt;br /&gt;
  #define ENE_WATT      &amp;quot;Watt&amp;quot;&lt;br /&gt;
  #define ENE_ACTUAL      &amp;quot;ActualUsage&amp;quot;&lt;br /&gt;
  #define ENE_USER_SUPPLIED  &amp;quot;UserSuppliedWattage&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  IrTransmitter1  ============&lt;br /&gt;
  #define IRT_SID    &amp;quot;urn:micasaverde-com:serviceId:IrTransmitter1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define IRT_SENDPRONTO  &amp;quot;SendProntoCode&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
// ============  SerialPort1  ============&lt;br /&gt;
  #define SPT_SID    &amp;quot;urn:micasaverde-org:serviceId:SerialPort1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define SPT_BAUD  &amp;quot;baud&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  SceneController1  ============&lt;br /&gt;
  #define SCR_SID          &amp;quot;urn:micasaverde-com:serviceId:SceneController1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define SCR_SL_SCENE_ACTIVATED    &amp;quot;sl_SceneActivated&amp;quot;&lt;br /&gt;
  #define SCR_SL_SCENE_DEACTIVATED  &amp;quot;sl_SceneDeactivated&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// ============  GenericIO  ============&lt;br /&gt;
  #define GIO_SID          &amp;quot;urn:micasaverde-com:serviceId:GenericIO&amp;quot;&lt;br /&gt;
&lt;br /&gt;
// Variables&lt;br /&gt;
  #define GIO_IS_INPUT      &amp;quot;IsInput&amp;quot;  // DEVICEDATA_InputOrOutput_CONST, 1 if it's input&lt;br /&gt;
  #define GIO_DEFAULT_STATE    &amp;quot;DefaultState&amp;quot;// DEVICEDATA_Default_State_CONST, 0 is 'normal', 1 if it's reversed&lt;br /&gt;
&lt;br /&gt;
#endif&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Dialer_Plugin</id>
		<title>Dialer Plugin</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Dialer_Plugin"/>
				<updated>2010-04-17T21:46:47Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Plugins]]&lt;br /&gt;
[[Category:3rd Party]]&lt;br /&gt;
Dealer Plugin allows Vera to initiate an automatic phone call between two or more parties.&lt;br /&gt;
&lt;br /&gt;
For example, a motion detector at home could make Vera connect you at mobile phone and the home phone - thus letting you reach someone who just entered home immediately.&lt;br /&gt;
&lt;br /&gt;
Similarly, button on z-wave controller at home could programmed to initiate a call between a speakerphone at home and your mobile or office home - which could make a sort of Quick Dial button for children or elderly ([http://thinkvoip.wordpress.com keep in mind that residential VoIP solutions are '''not designed''' to be mission critical], and thus '''should not''' be trusted for real life and death matters).&lt;br /&gt;
&lt;br /&gt;
Before starting with the setup, user should decide on ''primary'' and ''secondary'' phone numbers. Primary number is where the 'emergency' call goes (ex: user's mobile phone), secondary number is where the event happens. &lt;br /&gt;
To illustrate this we'll take a simplified scenario: user has an auto-answering speakerphone at home, and if something happens he wants the system to reach him on his mobile phone, connecting to the speakerphone at home so he can talk to whoever is there (at home) at the moment. In this case ''primary'' number would be the mobile phone, and the ''secondary'' number would  be the home number. This is important because the system first calls the ''primary'' number, and only when it answered it connects the ''secondary'' one.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Login into your [http://pbxes.com PBXes] account, and create a Classical (or SIP if relevant) extension that would represent the ''primary'' number as defined above. Put any unique value in URL field in Webcall section.&lt;br /&gt;
 &lt;br /&gt;
[[Image:Cl-ext.png‎‎]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Install the plugin on Vera, create a new Dialer device, Save&lt;br /&gt;
&lt;br /&gt;
* Go to device settings, in field Alias put the value you used in URL @pbxes.com&lt;br /&gt;
Fill PhoneNumber field with the ''secondary'' number. Don't forget to save.&lt;br /&gt;
&lt;br /&gt;
[[Image:Dealer.png‎]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Test setup by clicking on 'On' button would trigger the call. The device can now be used in scenes, events, and Luup scripts.&lt;br /&gt;
&lt;br /&gt;
For those who would like to go deeper: both ''primary'' and ''secondary'' destinations can also be calling groups of various dialing strategies, or can even dial into a virtual conference rooms. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Download [http://www.box.net/shared/4vgsl5v2lr Dialer plugin] and enjoy!&lt;br /&gt;
&lt;br /&gt;
Feel free to contact me with questions: dialer@edmidor.com&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Versions</id>
		<title>ZWave Versions</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Versions"/>
				<updated>2010-04-17T21:45:54Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
ZWave 4.27 - Serial API 2.40: 2008-06-02 stable, but no security&lt;br /&gt;
&lt;br /&gt;
ZWave 5.02 - Serial API 2.48: 2008-08-15 first support for security, not stable&lt;br /&gt;
&lt;br /&gt;
ZWave 5.02 sp2 - Serial API 2.64: 2009-01-13 fixed most bugs, but still had problem with tx buffer dying&lt;br /&gt;
&lt;br /&gt;
ZWave 5.02 sp3 - Serial API 2.78: 2009-07-10 stable version that supports security&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Status</id>
		<title>ZWave Status</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Status"/>
				<updated>2010-04-17T21:45:19Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
You can see the status of the Z-Wave network and all devices with the data request '''zwave_status'''. See: [[Data Provider Catalog Plugin]] and [[Data Provider Catalog Plugin Requests]] &lt;br /&gt;
&lt;br /&gt;
http://192.168.81.1:3451/data_request?id=zwave_status returns something like this (note: add &amp;amp;amp;output_format=json to the URL to get the same data in JSON format): &lt;br /&gt;
&lt;br /&gt;
1 2 Waiting for controller&amp;lt;br&amp;gt; 11 0 0 5 1 0 &amp;lt;br&amp;gt; 12 0 0 5 1 0 &amp;lt;br&amp;gt; 13 FAILED 0 1 5 5 0 &amp;lt;br&amp;gt; 14 0 1 5 5 Job ending in error: Failed with TXStatus: 1 0 &amp;lt;br&amp;gt; 15 FAILED 0 1 5 5 Job ending in error: Failed with TXStatus: 1 0 &amp;lt;br&amp;gt; 16 FAILED 0 1 5 5 Job ending in error: Failed with TXStatus: 1 0 &amp;lt;br&amp;gt; 17 0 0 5 1 0 &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The format is like this. The first line has:&amp;lt;br&amp;gt; ZWaveNetworkStatus [tab] JobStatus_TransferJobs [tab] Text description for transfer jobs. &lt;br /&gt;
&lt;br /&gt;
The network status is this:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
enum ZWaveStatus // Make the enumerator public&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
        {&lt;br /&gt;
 &lt;br /&gt;
           zws_NotSet=0,&lt;br /&gt;
 &lt;br /&gt;
           zws_OK=1,&lt;br /&gt;
 &lt;br /&gt;
           zws_Quiting=2,&lt;br /&gt;
 &lt;br /&gt;
            zws_WaitingToQuit=3,&lt;br /&gt;
 &lt;br /&gt;
           zws_NoDongle=4,&lt;br /&gt;
 &lt;br /&gt;
           zws_Configuring=5,  // Still running init/configure scripts&lt;br /&gt;
 &lt;br /&gt;
           zws_Failure=6&lt;br /&gt;
 &lt;br /&gt;
       };&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
The network status is 1 (OK) then you don't need to warn the user to wait. If it is anything other than 1, you can display a 'wait' icon and some text like:&amp;lt;br&amp;gt; ZWaveStatus[0]=&amp;quot;Please wait for the Z-Wave network&amp;quot;; #zws_NotSet&amp;lt;br&amp;gt; ZWaveStatus[2]=&amp;quot;The Z-Wave network is being reset&amp;quot;&amp;lt;br&amp;gt; ZWaveStatus[3]=&amp;quot;Waiting to reset the Z-Wave network&amp;quot;&amp;lt;br&amp;gt; ZWaveStatus[4]=&amp;quot;The Z-Wave dongle has been removed&amp;quot;&amp;lt;br&amp;gt; ZWaveStatus[5]=&amp;quot;Configuring Z-Wave devices&amp;quot;&amp;lt;br&amp;gt; ZWaveStatus[6]=&amp;quot;The Z-Wave network is not functioning&amp;quot;&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
*NOTE: If you do not get a response to the data request (i.e. if the poll fails), then that means the Z-Wave software module is busy resetting itself, which happens periodically when devices change. Just try the request again.&lt;br /&gt;
&lt;br /&gt;
The rest of the lines in the result look like this: &lt;br /&gt;
&lt;br /&gt;
5 FAILED 0 1 5 5 Job ending in error: Failed with TXStatus: 1 0 &lt;br /&gt;
&lt;br /&gt;
and have this format:&amp;lt;br&amp;gt; PK_Device State Status Configured(0/1) LastContactFailed(0/1) ConfigStatus DescriptionOfConfigStatus PollStatus DescriptionOfPollStatus NumOfActiveJobs Job#1 Job#2 Job#3 etc. &lt;br /&gt;
&lt;br /&gt;
All are separated by tabs. The ConfigStatus and PollStatus have this: &lt;br /&gt;
&lt;br /&gt;
enum ZWaveJobStatus&amp;lt;br&amp;gt; {&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
   ejs_NoJob=1,&lt;br /&gt;
 &lt;br /&gt;
   ejs_WaitingToStart=2,&lt;br /&gt;
 &lt;br /&gt;
   ejs_Running=3,&lt;br /&gt;
 &lt;br /&gt;
   ejs_JobSuccessful=4,&lt;br /&gt;
 &lt;br /&gt;
   ejs_JobFailed=5&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
}; &lt;br /&gt;
&lt;br /&gt;
The Job#1/2/3/etc. have this format: &lt;br /&gt;
&lt;br /&gt;
icon_name,JobStatus,DescriptionOfJobStatus &lt;br /&gt;
&lt;br /&gt;
so a job could look like this:&amp;lt;br&amp;gt; ON,3,Waiting for reply &lt;br /&gt;
&lt;br /&gt;
In our UI, ConfigStatus, PollStatus, and each JobStatus will be an icon in the 'device info box'. If the status is ejs_NoJob=1, then that means don't show an icon. If it is &amp;amp;gt;1, then you will show the icon. Here are the icons:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
CONFIG, POLL, ON, OFF, LEVEL, MISC &lt;br /&gt;
&lt;br /&gt;
The first 2 icons correspond to ConfigStatus and PollStatus. The other 4 are possible icon_name's in JobStatus. Each job can have 4 possible states: &lt;br /&gt;
&lt;br /&gt;
{ &lt;br /&gt;
&lt;br /&gt;
   ejs_WaitingToStart=2, (gray)&lt;br /&gt;
 &lt;br /&gt;
   ejs_Running=3, (blue)&lt;br /&gt;
 &lt;br /&gt;
   ejs_JobSuccessful=4, (green)&lt;br /&gt;
 &lt;br /&gt;
   ejs_JobFailed=5, (red)&lt;br /&gt;
&lt;br /&gt;
}; &lt;br /&gt;
&lt;br /&gt;
So, you've got 24 different icons: 6 types (CONFIG, POLL, ON, OFF, LEVEL, MISC) and each one has 4 possible states. Daniel will do the icons. For now, just create 24 solid squares with the gray/blue/green/red. I propose icon names of: &lt;br /&gt;
&lt;br /&gt;
CONFIG_3.gif (config icon, blue)&amp;lt;br&amp;gt; LEVEL_2.gif (level icon, gray)&amp;lt;br&amp;gt; etc.&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Options</id>
		<title>ZWave Options</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Options"/>
				<updated>2010-04-17T21:44:44Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:UI2]]&lt;br /&gt;
[[Image:Z-wave Optionn.jpg|thumb|center|512px|Z-Wave Options]] &lt;br /&gt;
&lt;br /&gt;
Here you have various advanced Z-Wave options. Use these options only if you understand what they mean. Most users will not need these options. &lt;br /&gt;
&lt;br /&gt;
'''Reset Z-Wave network''' purges all data in Vera's black Z-Wave dongle, which also clears out the list of Z-Wave devices paired to Vera. You will then need to [[Reset Node|reset any devices]] you previously paired, and pair them again. If you also want to get rid of your scenes, network settings, users, network devices, etc., you can do a full [[Factory Reset|factory reset]]. &lt;br /&gt;
&lt;br /&gt;
'''WARNING''': This process is '''IRREVERSIBLE''', you cannot restore your devices from a backup, you have to pair each of them again.&lt;br /&gt;
Before proceeding you have to manually unpair all the devices, otherwise you will create duplicate nodes which will compromise your Z-Wave network.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you already have another Z-Wave controller that you want to be the master, and you want Vera to be the secondary controller, bring the master controller and Vera close to each other, tell the current master controller to start sending network data or to add another Z-Wave controller, and then click '''Copy Z-Wave network from a master controller'''. You will see the status of the transfer in blue at the top of the page, and Vera will tell you if it was successful. The &amp;quot;Role&amp;quot; shown on this page will then also change a minute or so later. &lt;br /&gt;
&lt;br /&gt;
Rather than carrying around the dongle and using the dongle's built-in include/exclude, you can manually include/exclude devices by setting your options and clicking '''Go'''. Excluding a device is the same thing as resetting it, as explained [[Reset Node|here]]. Also read how to use this to do [[Full Power Inclusion|full power inclusion]] to add, or pair, Z-Wave devices to Vera without bringing the device in proximity to Vera's ZWave dongle. &lt;br /&gt;
&lt;br /&gt;
'''Controller shift''' tells Vera to transfer the role of primary controller to another Z-Wave controller. After you click 'Controller Shift,' proceed to add the other Z-Wave controller the same way you normally would, as explained [[ZWave Add Controller|here]]. The difference between adding the controller by clicking 'Controller Shift' versus adding the controller the normal way by clicking 'Add ZWave controller', is that if you choose 'Controller Shift', at the end when the other Z-Wave controller gets added, that other ZWave controller will become the 'Master controller', and Vera will be a secondary controller. This means the other Z-Wave controller will then be responsible for healing the networking and being the SIS/SUC (a technical Z-Wave term). Normally, by default, Vera is the master controller and is SIS/SUC.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Dongle</id>
		<title>ZWave Dongle</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Dongle"/>
				<updated>2010-04-17T21:43:36Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
Your Vera purchase includes a Z-Wave dongle, which must remain plugged into the back of Vera for her Z-Wave functions to work. You do not need to do anything for the dongle to work with Vera. &lt;br /&gt;
&lt;br /&gt;
If you want to use the dongle separately from Vera, or purchased an extra dongle on its own, you will need the appropriate CP210x USB-RS232 drivers for your operating system. They are available here: https://www.silabs.com/products/interface/usbtouart/Pages/default.aspx &lt;br /&gt;
&lt;br /&gt;
   1. Download the Windows drivers for the Zwave Stick:&lt;br /&gt;
   2.1. Go to: https://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx&lt;br /&gt;
   2.2. Download [b]VCP Driver Kit [/b] https://www.silabs.com/Support%20Documents/Software/CP210x_VCP_Win2K_XP_S2K3.zip&lt;br /&gt;
   2.3. If you don't have an unzip program (a program to extrac the zip archive) grab 7zip from here: http://www.7-zip.org/&lt;br /&gt;
   2.3.1. Download [b]7-Zip 4.65 [/b] http://downloads.sourceforge.net/sevenzip/7z465.exe&lt;br /&gt;
   2.4. Extract the CP210x_VCP_Win2K_XP_S2K3.zip archive and run CP210x_VCP_Win2K_XP_S2K3.exe&lt;br /&gt;
   2.4.1. Install the Drivers.&lt;br /&gt;
   3. Plug the black Zwave dongle in your PC USB PORT&lt;br /&gt;
&lt;br /&gt;
Once the drivers are installed, the dongle should show up as a COM port or serial device. Then any software designed to work with the Z-Wave serial API, such as ControlThink, HomeSeer, etc., should work fine. Windows users may need to edit the port settings and set them as follows:&amp;lt;br&amp;gt;Bits per second: 115200&amp;lt;br&amp;gt;Data bits: 8 Parity: None&amp;lt;br&amp;gt;Stop bits: 1&amp;lt;br&amp;gt;Flow Control: none &lt;br /&gt;
&lt;br /&gt;
To add devices to the dongle, tap the button so the blue light is blinking slowly. Then activate your nearby Z-Wave devices. To remove devices, press and hold the button until it blinks quickly, then activate your nearby Z-Wave devices. You can also add/remove devices while the dongle is attached to the PC's USB interface using your Z-Wave software's add/remove device function. Use your Z-Wave software to replicate the Z-Wave network. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Z-Wave Dongle Versions:'''&lt;br /&gt;
&lt;br /&gt;
* ''2.40'' = Zensys Firmware ''4.27'';&lt;br /&gt;
* ''2.48'' = Zensys Firmware ''5.02'';&lt;br /&gt;
* ''2.60'' = Zensys Firmware ''5.02 Service Pack 2'';&lt;br /&gt;
* ''2.78'' = Zensys Firmware ''5.02 Service Pack 3''.&lt;br /&gt;
&lt;br /&gt;
You can determine the dongle version looking at the Version: line on the More Z-Wave Options page (Devices -&amp;gt; Z-Wave -&amp;gt; More Z-Wave Options).&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Debugging</id>
		<title>ZWave Debugging</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Debugging"/>
				<updated>2010-04-17T21:43:07Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
== Easy Z-Wave Debugging  ==&lt;br /&gt;
&lt;br /&gt;
== Z-Wave specifics  ==&lt;br /&gt;
&lt;br /&gt;
Vera maps the command class BASIC to COMMAND_CLASS_SENSOR_BINARY, and responds to BASIC_GET or SENSOR_BINARY_GET with a _REPORT that has a value of 1 if Vera is running (ie it's always 1). &lt;br /&gt;
&lt;br /&gt;
== Advanced debugging for developers  ==&lt;br /&gt;
&lt;br /&gt;
Here are some hints for debugging Z-Wave protocol issues. You can access Vera by telnet, or if you already set a password, by ssh. &lt;br /&gt;
&lt;br /&gt;
First, be sure you check the box &amp;quot;verbose logs&amp;quot; under 'Advanced', 'Logging', or, from a console run /usr/bin/VerboseLogging.sh enable. &lt;br /&gt;
&lt;br /&gt;
The logs are in the directory /var/log/cmh. The first 2 digits are the 'log level'. The file: DCERouter.log contains the logging information from the core message router. The file: x-ZWave.log (where x is usually 9) contains all the logs from the Z-Wave module. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;Log levels for data sent to the Z-Wave dongle&amp;lt;/u&amp;gt;:&amp;lt;br&amp;gt; 40 = data sent to the Z-Wave dongle&amp;lt;br&amp;gt;41 = data received from the Z-Wave dongle&amp;lt;br&amp;gt;01 = critical errors&amp;lt;br&amp;gt; 04 = jobs &amp;lt;br&amp;gt;05 = warnings&amp;lt;br&amp;gt; 06 = variables (which indicates state changes)&amp;lt;br&amp;gt;07 = events&amp;lt;br&amp;gt;08 = commands&amp;lt;br&amp;gt;10 = status messages &lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
For commands runed in a scene, the logs won't be getting data from the user, but from a scene, so to see this requests, you should grep for RunScene . &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
So, if you want to watch the router's logs and see what commands are being sent to the various devices, do this: &lt;br /&gt;
&lt;br /&gt;
'''cd /var/log/cmh&amp;lt;br&amp;gt; tail -f DCERouter.log | grep '^08'''' &lt;br /&gt;
&lt;br /&gt;
Now from Vera's dashboard, send commands to the devices and you'll see them in the log. The | grep '^08' means to filter only lines that start with 08, meaning log level 08 (&amp;quot;Commands&amp;quot;). tail -f means &amp;quot;follow the log&amp;quot;. To stop the tail and get back to the console, if you used ssh to login, you just press Ctrl+C. Unfortunately, often times telnet doesn't forward Ctrl+C, so, when using telnet you need to press Ctrl+Z and then type this to kill the tail command: killall tail; fg &lt;br /&gt;
&lt;br /&gt;
To watch the traffic on the Z-Wave serial bus, type: &lt;br /&gt;
&lt;br /&gt;
'''cd /var/log/cmh&amp;lt;br&amp;gt; tail -f 9-ZWave.log | grep '^40\|^41'''' &lt;br /&gt;
&lt;br /&gt;
which means show log level 40 or 41. Normally Vera is polling all the nodes every few seconds, so the logs fill up quickly with Z-Wave traffic from the polling. If you want to turn off automatic polling temporarily for this session so the logs aren't cluttered with polling traffic, type: &lt;br /&gt;
&lt;br /&gt;
'''/usr/bin/MessageSend localhost 0 9 1 966 5 0'''&amp;lt;br&amp;gt;(assuming the Z-Wave device is #9, as default, add 225 1 to make the change permanent) &lt;br /&gt;
&lt;br /&gt;
To force a poll of device 13, type:&amp;lt;br&amp;gt;'''/usr/bin/MessageSend localhost 0 9 1 966 2 13 5 UPDATE''' &lt;br /&gt;
&lt;br /&gt;
Next you can send &amp;quot;COMMAND: #191 - Send Code&amp;quot; to either a Z-Wave Node and the parameter 9 (Text) is a command, or send it to the Z-Wave device and it is a frame. The contents of text are a string of hex or decimal numbers separated with spaces, dashes or underscores, and hex values are preceded with 0x or x. So assuming a dimmable light is device 20 in node 15, either command below will dim it to 50%: &lt;br /&gt;
&lt;br /&gt;
'''/usr/bin/MessageSend localhost 0 9 1 191 9 &amp;quot;0 x13 15 0x3 0x26 0x1 50 4 1&amp;quot;''' #send data (func id x13) to node 15 command class 0x26 command 0x1 (set multi level) to 10% (size=3) with transmit options=4 and funcid=1 &lt;br /&gt;
&lt;br /&gt;
'''/usr/bin/MessageSend localhost 0 20 1 191 9 &amp;quot;x26 x1 50&amp;quot;''' #send the message directly to device 20 (the node, not 9 the Z-Wave dongle), so the node id and 'send data' frame are assumed &lt;br /&gt;
&lt;br /&gt;
--Luup update: wget &amp;quot;http://127.0.0.1:49451/data_request?id=lu_action&amp;amp;amp;DeviceNum=1&amp;amp;amp;serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&amp;amp;amp;action=SendData&amp;amp;amp;Node=7&amp;amp;amp;Data=x26-x1-20&amp;quot; node 7 to 20% &lt;br /&gt;
&lt;br /&gt;
--Luup update: wget &amp;quot;http://127.0.0.1:49451/data_request?id=lu_action&amp;amp;amp;DeviceNum=1&amp;amp;amp;serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&amp;amp;amp;action=SendData&amp;amp;amp;Data=0-x13-7-0x3-0x26-0x1-50-4-1&amp;quot; node 7 to 20% &lt;br /&gt;
&lt;br /&gt;
'''/usr/bin/MessageSend localhost 0 14 1 191 9 &amp;quot;x85 2 1&amp;quot;''' #Tell device 14 to report its association group 1 &lt;br /&gt;
&lt;br /&gt;
Ask node 4 (a thermostat) to report its temperature: &amp;quot;0 0x13 0x4 0x2 0x40 0x2 5 1&amp;quot; &lt;br /&gt;
&lt;br /&gt;
You can also put an R in front of the binary data, and include the full frame, and it simulates a received frame on the serial api, rather than sending a frame. So to simulate receiving a FUNC_ID_ZW_APPLICATION_UPDATE from node 1 run:&amp;lt;br&amp;gt;'''/usr/bin/MessageSend localhost 0 9 1 191 9 &amp;quot;R0x1 0x9 0x0 0x49 0x84 0x1 0x3 0x2 0x2 0x1 0x38&amp;quot;'''&amp;lt;br&amp;gt; or an encrypted message from node 29 with FUNC_ID_APPLICATION_COMMAND_HANDLER, COMMAND_CLASS_SECURITY: '''&amp;quot;R0x01 0x1C 0x00 0x04 0x00 29 0x16 0x98 0x81 0xEC 0xE1 0x10 0x56 0xFC 0x13 0xDF 0x04 0x45 0x60 0x24 0xA8 0x43 0x89 0xE8 0x22 0x36 0x15 0xA9 0xB1 0x1C&amp;quot;''' &lt;br /&gt;
&lt;br /&gt;
--Luup update: wget &amp;quot;http://127.0.0.1:49451/data_request?id=lu_action&amp;amp;amp;DeviceNum=1&amp;amp;amp;serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&amp;amp;amp;action=SendData&amp;amp;amp;Data=R0x1-0x16-0x0-0x4-0x0-0x4-0x10-0x8f-0x1-0x4-0x3-0x80-0x3-0x64-0x2-0x46-0x4-0x2-0x46-0x7-0x2-0x84-0x7-0x15&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Note that the logs will rotate regularly, meaning the DCERouter.log is archived as DCERouter.log.1.gz, and the old DCERouter.log.1.gz becomes DCERouter.log.2.gz. This is handled by the root cron process that runs /usr/bin/Rotate_Logs.sh. &lt;br /&gt;
&lt;br /&gt;
Every time you do something with Vera this results in a &amp;quot;job&amp;quot;. So let's assume you want to see what Vera is doing to configure a device. Type 'date' to see the date/time. Click the 'configure right now' button for the device. Type ''grep AddJob 9-ZWave.log'' to see all the log entries with 'AddJob' in them. Each one is given a number, and an abbreviated description. Say the first job after the 'date' is ''10 01/26/09 16:35:51.640 JobHandler::AddJob job#6&amp;amp;nbsp;:conf_jh#9 (0x00DD7390) P:40 S:0 &amp;amp;lt;00DD7390&amp;amp;gt; conf_jh#9 type ZWJob_ConfigureNode first 0'' This means it's job#6, the name 'conf_jh#9' means it's a configure job from the main job handler for node #9. You may see lots of other jobs right after #6 to do things like set the Version/Manufacturer, set Associations, etc., because the main configure job (#6) may spawn many other jobs. To see all the log entries for job #6, type ''grep &amp;quot;job#6&amp;quot; 9-ZWave.log''. Pay attention to the lines with m_eJobStatus which indicate the status, such as ''m_eJobStatus Job completed ok''. Let's say you want to see what data is being sent/received as part of job#6, you could do this: ''grep 'job#6\|^40\|^41\|^01\|^05' 9-ZWave.log'' so you see all log entries for job #6, all incoming/outgoing data, plus critical errors (1) and warnings (5). Look for the line 'ready to run' in the logs, which will indicate where job #6 is starting. The logs are color coded, and the less that comes with busybox in Vera doesn't support the -R parameter to view the logs in color, which is much easier to read. So, you can set a root password if you haven't already (type ''passwd''), and then use scp to copy the log files from Vera to another Linux/Mac/Windows with cygwin pc, and then run: ''grep 'job#6\|^40\|^41\|^01\|^05' 9-ZWave.log | less -R'' to see just the filtered portion of the logs in color. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; You can also use MessageSend to send Vera's normal DCE commands directly to devices. The ID's are the same as LinuxMCE. You can also '''tail -f DCERouter.log | grep '^08'''' &lt;br /&gt;
&lt;br /&gt;
From the console, if you want to see if a device is configured, enable verbose logging: '''/usr/bin/VerboseLogging.sh enable''', restart the Z-Wave device: '''/usr/bin/MessageSend localhost 0 9 7 1''' then wait for it to finish checking all the devices and '''grep UpdateNode 9-ZWave.log'''. You'll see: '''ZWaveJobHandler::UpdateNodes node 13 PK_DeviceTemplate 37 type ZWaveNonDimmableLight PK_Device 19 cap 0xc9 sec 0xc res 0x0 bas 0x4 gen 0x10 spe 0x3 config 1 LS (on/off)-45W-IPCAM classes 25,27,2b,2c,72,73,77,82,85,86,91,ef,''' config 1 means the device is configured. To reconfigure a device from the command line, send it command 776. For this device it would be: '''/usr/bin/MessageSend localhost 0 19 1 776'''. &lt;br /&gt;
&lt;br /&gt;
Reset the Z-Wave network:&amp;lt;br&amp;gt;'''/usr/bin/MessageSend localhost 0 9 1 776 51 SIS''' &lt;br /&gt;
&lt;br /&gt;
Do a 'soft reset' that doesn't lose any devices, but resets the dongle:&amp;lt;br&amp;gt; '''/usr/bin/MessageSend localhost 0 9 1 776 51 SOFT''' &lt;br /&gt;
&lt;br /&gt;
== Z-Wave Log Messages  ==&lt;br /&gt;
&lt;br /&gt;
=== Z-Wave LastNote  ===&lt;br /&gt;
&lt;br /&gt;
'''Status=&amp;quot;Aborted&amp;quot; LastNote=&amp;quot;Timed out waiting for the node to reply&amp;quot;''' &lt;br /&gt;
&lt;br /&gt;
'''Status=&amp;quot;Aborted&amp;quot; LastNote=&amp;quot;Node is not configured&amp;quot;''' &lt;br /&gt;
&lt;br /&gt;
'''Status=&amp;quot;Aborted&amp;quot; LastNote=&amp;quot;Unable to get any information on node&amp;quot;''' &lt;br /&gt;
&lt;br /&gt;
'''Status=&amp;quot;Aborted&amp;quot; LastNote=&amp;quot;Transmit failed with code: 1&amp;quot;''' &lt;br /&gt;
&lt;br /&gt;
== Remote Upgrade with preserve settings  ==&lt;br /&gt;
&lt;br /&gt;
curl -k -s -S --fail --retry 3 -o /tmp/firmware.img http://download.controlmyhouse.net/betafirmware/ftp/wl500gP-1.0.543.trx &lt;br /&gt;
&lt;br /&gt;
/usr/bin/cmh-upgrade.sh &lt;br /&gt;
&lt;br /&gt;
== Z-Wave routing matrix  ==&lt;br /&gt;
&lt;br /&gt;
See http://forum.micasaverde.com/index.php?topic=2099.msg8292#msg8292 &lt;br /&gt;
&lt;br /&gt;
== Z-Wave stress test  ==&lt;br /&gt;
&lt;br /&gt;
Start a stress test of the Z-Wave network with this command. Stop by doing a /usr/bin/Reload.sh &lt;br /&gt;
&lt;br /&gt;
wget &amp;quot;http://127.0.0.1:49451/data_request?id=lu_action&amp;amp;amp;DeviceNum=1&amp;amp;amp;serviceId=urn:micasaverde-com:serviceId:ZWaveNetwork1&amp;amp;amp;action=SendData&amp;amp;amp;Stress=X&amp;quot; &lt;br /&gt;
&lt;br /&gt;
where X is: &lt;br /&gt;
&lt;br /&gt;
 #define STRESS_TEST_CONSTANT		1  // Constant BASIC_SET's&lt;br /&gt;
 #define STRESS_TEST_NEIGHBOR_UPDATE	2  // Constant Neighbor updates&lt;br /&gt;
 #define STRESS_TEST_WATCHDOG		3  // Constant Watchdog checks -- bugs in the Z-Wave serial API cause this to crash&lt;br /&gt;
 #define STRESS_TEST_SOFT_RESET		4  // Constant soft resets&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Configuration_Options</id>
		<title>ZWave Configuration Options</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Configuration_Options"/>
				<updated>2010-04-17T21:42:28Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
= Options under the '+' button  =&lt;br /&gt;
&lt;br /&gt;
When you go to the [[Devices|'Devices']] tab on Vera's [[Quick Start|setup site]] and click '+' next to a Z-Wave device, you will see Z-Wave specific options for that particular device. &lt;br /&gt;
&lt;br /&gt;
The node ID is the identification number Vera assigned to the device on the Z-Wave network. &lt;br /&gt;
&lt;br /&gt;
Z-Wave devices are normally polled to see if the device is working and if the status has changed, such as the device having been turned off, etc. Normally leave this blank to let Vera do the default polling, or see [[Polling Settings|polling settings]] to learn how to change Vera's polling behavior. &lt;br /&gt;
&lt;br /&gt;
== Wattage  ==&lt;br /&gt;
&lt;br /&gt;
Very few Z-Wave devices are actually able to report how much energy they are using, so Vera generally estimates this based on the device's wattage. By default each light will have 100 watts. If the light really is a 100 watt light, you can leave it. If not, put in the&amp;amp;nbsp;actual wattage, which is usually printed on the bulb. Remember that if multiple lights are on the same Z-Wave switch you should add their wattages. You can also specify the wattages for appliance modules; for example, if you have a 200-watt fan plugged into an appliance module, you would type &amp;quot;200&amp;quot; for this device's wattage. Vera will constantly poll all the Z-Wave devices in your home to see if they are on, off or dimmed to a certain level, and Vera will use this to estimate the electricity being used. Also see: [[Energy]] &lt;br /&gt;
&lt;br /&gt;
== Automatically configure  ==&lt;br /&gt;
&lt;br /&gt;
Normally you should leave the default behavior, as specified on the 'Z-Wave options' page,&amp;amp;nbsp;by leaving&amp;amp;nbsp;'By default Vera should automatically configure devices' checked,&amp;amp;nbsp;with all your devices set to 'Use the default'. This way Vera will automatically configure all your devices. In many cases, the devices will not work unless Vera configures them, and generally you will always want Vera to do this for you. The only exception is when you have another Z-Wave controller&amp;amp;nbsp;configuring your devices, and you've&amp;amp;nbsp;made some special settings there, and you don't want Vera to change them. &lt;br /&gt;
&lt;br /&gt;
Even you do have have another Z-Wave controller, it's still okay to let Vera configure your Z-Wave devices. The only problem may arise when it comes to associations. If you don't know what Z-Wave associations are, just accept the default settings, which are necessary if you want certain types of devices, like sensors, to work with Vera. &lt;br /&gt;
&lt;br /&gt;
For those interested in an explanation of what this means, read on... &lt;br /&gt;
&lt;br /&gt;
In a Z-Wave network, some of your devices support what are called &amp;quot;Associations&amp;quot; (also called the Z-Wave command class association). This is how a device that sends messages knows where to send those messages. For example, motion sensors send messages when the sensor is tripped, thermometers may send messages when the temperature changes, and so on. Often times these devices have their own proprietary mechanism for setting associations, which is not standardized. For example, a motion sensor may provide instructions in the user's manual for how to associate it with a light switch so it turns the light switch on when the sensor is tripped. Generally, it's much easier to let Vera manage the associations for you. If you let Vera do this, Vera will associate all devices that send messages with Vera, telling them all to send the messages to Vera so Vera can process them for you. For example, Vera can tell any motion sensors and thermometers to send all messages to Vera, and that way, you can attach events to your scenes so Vera will run a scene, like turning on a light, when a motion sensor is tripped, or closing the blinds when the temperature is over 90 degrees to save energy. If these devices are not associated with Vera, Vera will never get the messages. The catch is that if you have previously set up associations, those associations will be lost when Vera configures the device, because Vera will manage the associations. The recommended solution is still to let Vera handle the configuring, but just tell Vera what extra associations you want as explained in the 'Associations' section below. Then Vera will set her own associations, and will also add whatever associations you specify. You can also disable automatic configuration, either for an individual device or globally, with this check box, and then Vera won't do anything with the device's associations. &lt;br /&gt;
&lt;br /&gt;
When you have added new devices and they appear on the 'Unassigned Devices' page, you have the option of turning off Vera's configuration in case you have already set&amp;amp;nbsp;up the associations before getting Vera, and you don't want Vera to take over this and change the associations you previously set up. &lt;br /&gt;
&lt;br /&gt;
== Configure node right now  ==&lt;br /&gt;
&lt;br /&gt;
This causes Vera to attempt to configure the device immediately. After clicking this button you see the job icon for 'Configuring the Device' next to the device description and it will turn green if Vera was able to configure the device, or red if Vera was not. (See [[Device Control Status#Job_icons|diagram of job icons]]) Some devices, like motion/door/window sensors, are generally not functional until they are configured. If they are not configured, you will see the configure job icon in red. But if the device is battery operated, it's quite possible that, in order to conserve battery life, the device goes into a 'sleep mode' during which the Z-Wave radio is turned off, and Vera cannot configure it. These battery operated devices typically wake up every few hours and announce that they're going to be awake for a few seconds. When this happens, Vera will use that opportunity to configure the device. So, if you added a battery operated device and you see the red 'Configure Job' icon, indicating the device is not configured and is not usable, you can check back the next day and it probably will be configured. Often times, the sensors allow you to remove and reinsert the batteries, or to press a button, and this will force them to listen to the Z-Wave network for a minute or two. (See [[Supported Hardware]] for a list of some popular Z-Wave sensors and an explanation of how they work.) If you have a sensor like this, you can then manually 'wake it up', and then you can&amp;amp;nbsp;promptly click the 'Configure Node Right Now' button to make Vera try to configure the device. This button is also useful if you have changed specific Z-Wave configuration and association settings and want to see them applied right away, as explained below. &lt;br /&gt;
&lt;br /&gt;
== Poll now  ==&lt;br /&gt;
&lt;br /&gt;
This causes Vera to attempt to poll the device immediately. After clicking it you see a poll job icon as shown&amp;amp;nbsp;in the&amp;amp;nbsp;[[Device Control Status#Job_icons|diagram of job icons]], and it will be green if Vera successfully polled the node, and red if not. To learn what polling is, why it's done, and how to change Vera's polling behavior, see&amp;amp;nbsp;[[Polling Settings|Polling Settings]]. &lt;br /&gt;
&lt;br /&gt;
== Permanently remove dead node  ==&lt;br /&gt;
&lt;br /&gt;
The list of Z-Wave devices which have been paired with Vera's black Z-Wave dongle is stored within the dongle itself. This means that even if you do a factory reset of Vera - which wipes out all of Vera's memory - once Vera comes back up, you'll still&amp;amp;nbsp;see the same list of Z-Wave devices. If there's a node in your home&amp;amp;nbsp;you want to remove&amp;amp;nbsp;from the Z-Wave network, the best way to do this is to exclude the Z-Wave device, also known as resetting the device. ([[Reset Node|Click here]] for an explanation) If the Z-Wave device is broken or gone, then you won't be able to exclude it&amp;amp;nbsp;the normal way. In this case, there are&amp;amp;nbsp;two alternative&amp;amp;nbsp;ways to permanently remove the paired Z-Wave device from Vera's Z-Wave dongle. One option is to choose 'Reset Z-Wave network' from Vera's [[ZWave Options|Z-Wave options]] page. But that removes '''all''' nodes and resets the dongle. The other option&amp;amp;nbsp;is to click the 'Permanently remove dead node' button to remove one particular node. You may not be able to remove a node this way if it is still powered and still responds. Power the unit off first. You may need to do this if you've added a Z-Wave controller, then later reset the Z-Wave controller, then added it again, as explained [[ZWave Add Controller|here]].&lt;br /&gt;
&lt;br /&gt;
= Custom Z-Wave Settings =&lt;br /&gt;
&lt;br /&gt;
todoal: show custom z-wave settings &lt;br /&gt;
&lt;br /&gt;
Click this button to see more Z-Wave specific options for this device. Click the 'Back to Devices' link when are you done making these changes to go back to the devices page. &lt;br /&gt;
&lt;br /&gt;
== Configuration settings ==&lt;br /&gt;
&lt;br /&gt;
Some Z-Wave devices allow you to manually set configuration variables to do things like adjust ramp rate and so on. This is unique for each device, and each manufacturer handles this differently. If the manual for your Z-Wave device indicates that you can set a configuration variable or setting to change the default behavior, do it by clicking the 'Add Configuration Setting' button. Indicate which variable number to set, and what value to set it to. The value can be a '1 byte hex', '1 byte dec', '2 byte hex', '2 byte dec', '4 byte hex' or '4 byte dec'. If you do not know what this means and the manufacturer did not tell you which one they want you to choose, then choose '4 byte dec'. Put the setting you want in 'Desired Value'. Vera will attempt to configure the node after you click the red 'Save' button, and if successful, you'll see the [[Device_Control_Status#Job_icons|green 'Configure Job'&amp;amp;nbsp;OK icon]. If it's a battery operated device and Vera can't configure it right away, read the comments above about the '''Configure node right now'''. Once Vera has configured the Z-Wave device, Vera will ask the device again for the value of the configuration setting and show it under 'Current Value'. If you set a value, configured the device, and the current value is something other than your desired value, that means the Z-Wave device did not accept the 'Desired Value' you gave it, and you may need to contact the manufacturer for clarification. If you change the 'Data Size' option to say 'Monitor only', then when the device is next configured Vera will not change the value, but Vera will ask the device for the current value and show it in the 'Current Value' column. If you change it to 'Default', then the next time Vera configures the device, Vera will tell the device to go back to the default value for this setting, and you'll see the value in the 'Current Value' column. &lt;br /&gt;
&lt;br /&gt;
== Associations ==&lt;br /&gt;
&lt;br /&gt;
'''Note:''' Leave ''By default Vera should automatically configure devices'' checked as explained above, and leave each device's ''Automatically configure'' set to 'Default Behavior'. If you tell Vera not to configure the device, Vera will leave the device alone and will not set the associations for you. &lt;br /&gt;
&lt;br /&gt;
These are also unique for each device according to the manufacturer. Associations are commonly used to tell sensors to turn on lights, and to associate devices. Refer to the manufacturer's users manual that came with the Z-Wave device to learn how they handle associations. Associations are given an ID or group ID. To add an association, type in the group ID, which is a number, click 'Add Group' and then check off the Z-Wave devices you want to be associated. Vera will attempt to configure the node after you click the red 'Save' button, and if successful, you'll see the [[Device_Control_Status#Job_icons|green 'configure job' ok icon]. If it's a battery operated device and Vera can't configure it right away, read the comments above about the '''Configure node right now'''. &lt;br /&gt;
&lt;br /&gt;
== Scene Assignments ==&lt;br /&gt;
&lt;br /&gt;
If this is a Z-Wave controller, then you will have another section on this page to assign scenes to the controller's buttons, as explained [[ZWave Add Controller#Scene_Assignments_for_controllers|here]]. You won't see this for other types of Z-Wave devices.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Command_Classes</id>
		<title>ZWave Command Classes</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Command_Classes"/>
				<updated>2010-04-17T21:41:45Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
Here are the command classes Vera supports:&lt;br /&gt;
&lt;br /&gt;
==Alphabetical==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;  cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Name !! Hex !! Dec&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ALARM || 0x71 || 113&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_APPLICATION_STATUS || 0x22 || 34&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION_COMMAND_CONFIGURATION || 0x9B || 155&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION || 0x85 || 133&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION_V2 || 0x85 || 133&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_CONTENT_DIRECTORY_MD || 0x95 || 149&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_CONTENT_SEARCH_MD || 0x97 || 151&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_RENDERER_STATUS || 0x96 || 150&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_TAGGING_MD || 0x99 || 153&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BASIC_WINDOW_COVERING || 0x50 || 80&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BASIC || 0x20 || 32&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BATTERY || 0x80 || 128&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CHIMNEY_FAN || 0x2A || 42&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CLIMATE_CONTROL_SCHEDULE || 0x46 || 70&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CLOCK || 0x81 || 129&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_COMPOSITE || 0x8D || 141&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONFIGURATION || 0x70 || 112&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONFIGURATION_V2 || 0x70 || 112&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONTROLLER_REPLICATION || 0x21 || 33&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_DOOR_LOCK || 0x62 || 98&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_DOOR_LOCK_LOGGING || 0x4C || 76&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ENERGY_PRODUCTION || 0x90 || 144&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_FIRMWARE_UPDATE_MD || 0x7A || 122&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_GEOGRAPHIC_LOCATION || 0x8C || 140&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_GROUPING_NAME || 0x7B || 123&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_HAIL || 0x82 || 130&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_INDICATOR || 0x87 || 135&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_IP_CONFIGURATION || 0x9A || 154&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_LANGUAGE || 0x89 || 137&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_LOCK || 0x76 || 118&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MANUFACTURER_PROPRIETARY || 0x91 || 145&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MANUFACTURER_SPECIFIC || 0x72 || 114&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MARK || 0xEF || 239&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_METER_PULSE || 0x35 || 53&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_METER || 0x32 || 50&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MTP_WINDOW_COVERING || 0x51 || 81&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION_V2 || 0x8E || 142&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CHANNEL_V2 || 0x60 || 96&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CMD || 0x8F || 143&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_INSTANCE_ASSOCIATION || 0x8E || 142&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_INSTANCE || 0x60 || 96&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NO_OPERATION || 0x00 || 0&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NODE_NAMING || 0x77 || 119&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NON_INTEROPERABLE || 0xF0 || 240&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_POWERLEVEL || 0x73 || 115&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROPRIETARY || 0x88 || 136&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROTECTION || 0x75 || 117&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROTECTION_V2 || 0x75 || 117&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_REMOTE_ASSOCIATION_ACTIVATE || 0x7C || 124&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_REMOTE_ASSOCIATION || 0x7D || 125&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_ACTIVATION || 0x2B || 43&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_ACTUATOR_CONF || 0x2C || 44&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_CONTROLLER_CONF || 0x2D || 45&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCHEDULE_ENTRY_LOCK || 0x4E || 78&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_ATTRIBUTES || 0x93 || 147&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_ATTRIBUTES_V2 || 0x93 || 147&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_MD || 0x92 || 146&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_MD_V2 || 0x92 || 146&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SECURITY || 0x98 || 152&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_ALARM || 0x9C || 156&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_BINARY || 0x30 || 48&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_CONFIGURATION || 0x9E || 158&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_MULTILEVEL || 0x31 || 49&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_MULTILEVEL_V2 || 0x31 || 49&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SILENCE_ALARM || 0x9D || 157&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SIMPLE_AV_CONTROL || 0x94 || 148&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_ALL || 0x27 || 39&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_BINARY || 0x25 || 37&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_MULTILEVEL || 0x26 || 38&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_MULTILEVEL_V2 || 0x26 || 38&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_TOGGLE_BINARY || 0x28 || 40&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_TOGGLE_MULTILEVEL || 0x29 || 41&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_FAN_MODE || 0x44 || 68&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_FAN_STATE || 0x45 || 69&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_HEATING || 0x38 || 56&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_MODE || 0x40 || 64&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_OPERATING_STATE || 0x42 || 66&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_SETBACK || 0x47 || 71&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_SETPOINT || 0x43 || 67&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_TIME_PARAMETERS || 0x8B || 139&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_TIME || 0x8A || 138&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_USER_CODE || 0x63 || 99&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_VERSION || 0x86 || 134&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_WAKE_UP || 0x84 || 132&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_WAKE_UP_V2 || 0x84 || 132&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_CLIENT || 0x34 || 52&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_SERVER || 0x33 || 51&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_SERVICES || 0x2F || 47&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_CLIENT || 0x2E || 46&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_SERVER || 0x24 || 36&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_SERVICES || 0x23 || 35&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Numeric==&lt;br /&gt;
{| border=&amp;quot;1&amp;quot;  cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
! Name !! Hex !! Dec&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NO_OPERATION || 0x00 || 0&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BASIC || 0x20 || 32&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONTROLLER_REPLICATION || 0x21 || 33&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_APPLICATION_STATUS || 0x22 || 34&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_SERVICES || 0x23 || 35&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_SERVER || 0x24 || 36&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_BINARY || 0x25 || 37&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_MULTILEVEL || 0x26 || 38&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_MULTILEVEL_V2 || 0x26 || 38&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_ALL || 0x27 || 39&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_TOGGLE_BINARY || 0x28 || 40&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SWITCH_TOGGLE_MULTILEVEL || 0x29 || 41&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CHIMNEY_FAN || 0x2A || 42&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_ACTIVATION || 0x2B || 43&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_ACTUATOR_CONF || 0x2C || 44&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCENE_CONTROLLER_CONF || 0x2D || 45&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_CLIENT || 0x2E || 46&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_SERVICES || 0x2F || 47&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_BINARY || 0x30 || 48&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_MULTILEVEL || 0x31 || 49&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_MULTILEVEL_V2 || 0x31 || 49&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_METER || 0x32 || 50&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_SERVER || 0x33 || 51&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ZIP_ADV_CLIENT || 0x34 || 52&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_METER_PULSE || 0x35 || 53&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_HEATING || 0x38 || 56&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_MODE || 0x40 || 64&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_OPERATING_STATE || 0x42 || 66&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_SETPOINT || 0x43 || 67&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_FAN_MODE || 0x44 || 68&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_FAN_STATE || 0x45 || 69&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CLIMATE_CONTROL_SCHEDULE || 0x46 || 70&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_THERMOSTAT_SETBACK || 0x47 || 71&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_DOOR_LOCK_LOGGING || 0x4C || 76&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCHEDULE_ENTRY_LOCK || 0x4E || 78&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BASIC_WINDOW_COVERING || 0x50 || 80&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MTP_WINDOW_COVERING || 0x51 || 81&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CHANNEL_V2 || 0x60 || 96&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_INSTANCE || 0x60 || 96&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_DOOR_LOCK || 0x62 || 98&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_USER_CODE || 0x63 || 99&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONFIGURATION || 0x70 || 112&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CONFIGURATION_V2 || 0x70 || 112&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ALARM || 0x71 || 113&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MANUFACTURER_SPECIFIC || 0x72 || 114&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_POWERLEVEL || 0x73 || 115&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROTECTION || 0x75 || 117&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROTECTION_V2 || 0x75 || 117&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_LOCK || 0x76 || 118&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NODE_NAMING || 0x77 || 119&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_FIRMWARE_UPDATE_MD || 0x7A || 122&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_GROUPING_NAME || 0x7B || 123&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_REMOTE_ASSOCIATION_ACTIVATE || 0x7C || 124&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_REMOTE_ASSOCIATION || 0x7D || 125&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_BATTERY || 0x80 || 128&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_CLOCK || 0x81 || 129&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_HAIL || 0x82 || 130&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_WAKE_UP || 0x84 || 132&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_WAKE_UP_V2 || 0x84 || 132&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION || 0x85 || 133&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION_V2 || 0x85 || 133&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_VERSION || 0x86 || 134&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_INDICATOR || 0x87 || 135&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_PROPRIETARY || 0x88 || 136&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_LANGUAGE || 0x89 || 137&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_TIME || 0x8A || 138&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_TIME_PARAMETERS || 0x8B || 139&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_GEOGRAPHIC_LOCATION || 0x8C || 140&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_COMPOSITE || 0x8D || 141&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CHANNEL_ASSOCIATION_V2 || 0x8E || 142&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_INSTANCE_ASSOCIATION || 0x8E || 142&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MULTI_CMD || 0x8F || 143&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ENERGY_PRODUCTION || 0x90 || 144&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MANUFACTURER_PROPRIETARY || 0x91 || 145&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_MD || 0x92 || 146&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_MD_V2 || 0x92 || 146&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_ATTRIBUTES || 0x93 || 147&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SCREEN_ATTRIBUTES_V2 || 0x93 || 147&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SIMPLE_AV_CONTROL || 0x94 || 148&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_CONTENT_DIRECTORY_MD || 0x95 || 149&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_RENDERER_STATUS || 0x96 || 150&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_CONTENT_SEARCH_MD || 0x97 || 151&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SECURITY || 0x98 || 152&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_AV_TAGGING_MD || 0x99 || 153&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_IP_CONFIGURATION || 0x9A || 154&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_ASSOCIATION_COMMAND_CONFIGURATION || 0x9B || 155&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_ALARM || 0x9C || 156&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SILENCE_ALARM || 0x9D || 157&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_SENSOR_CONFIGURATION || 0x9E || 158&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_MARK || 0xEF || 239&lt;br /&gt;
|-&lt;br /&gt;
|| COMMAND_CLASS_NON_INTEROPERABLE || 0xF0 || 240&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Add_Device</id>
		<title>ZWave Add Device</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Add_Device"/>
				<updated>2010-04-17T21:41:18Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
If the '''SAVE button''' in the upper left is '''red''', click it to save your changes before you add new devices.&amp;lt;br&amp;gt;&lt;br /&gt;
1. To add Z-Wave devices, first remove the Z-Wave dongle from the Home Gateway as shown.&amp;lt;br&amp;gt;&lt;br /&gt;
[[Image:zwave_remove_dongle.jpg]]&amp;lt;br&amp;gt;&lt;br /&gt;
2. Tap the button on the Z-Wave dongle to put it in 'Include' Mode.&amp;lt;br&amp;gt;&lt;br /&gt;
{| border=&amp;quot;0&amp;quot; cellpadding=&amp;quot;5&amp;quot; cellspacing=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; width=&amp;quot;90%&amp;quot;&lt;br /&gt;
| align=&amp;quot;center&amp;quot; width=&amp;quot;30%&amp;quot; | [[Image:zwave_dongle_off.jpg]] || align=&amp;quot;center&amp;quot; width=&amp;quot;30%&amp;quot; | [[Image:zwave_dongle_include_mode.gif]] || align=&amp;quot;center&amp;quot; width=&amp;quot;30%&amp;quot; | [[Image:zwave_dongle_reset_mode.gif]]&lt;br /&gt;
|-&lt;br /&gt;
| '''OFF - no light''' If the dongle is in include or reset mode tap the button to turn it off. || '''INCLUDE - slow blinking''' When the dongle is off tap the button to put it in include mode so you can add devices. || '''RESET - fast blinking''' When the dongle is off hold the button for 3 seconds until it starts blinking fast then release the button. This will reset devices.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
3. Carry the dongle with you as you activate all your Z-Wave devices. For lights, you generally activate them by turning the light on or off. Other Z-Wave devices will have an activate button. When you have successfully added a new Z-Wave device, the blue light on the dongle will stay on solid for 2 seconds. If you cannot add a Z-Wave device, then device was probably already added to another Z-Wave network and needs to be reset first, as explained [[Reset_Node | here]]. &amp;lt;br&amp;gt;&lt;br /&gt;
4. Once you have included all your Z-Wave devices, then reconnect the dongle to the Z-Wave Home Gateway.&amp;lt;br&amp;gt;&lt;br /&gt;
5. When you reconnect the dongle, I will show you any new devices you added in the order you added them. You need to give them a descriptive name, like 'Black table lamp' and pick the room they are in. If you have a lot of Z-Wave devices to add, you can add them a few at a time so that when you go to give them names you do not have too many new devices at once. You can click the 'Add Z-Wave devices' button at any time to add new Z-Wave devices.&amp;lt;br&amp;gt;&lt;br /&gt;
'''Note:''' If you're having trouble adding devices, those devices probably need to be [[Reset_Node | reset]], as here: troubleshooting. Also, if you have unsaved changes, meaning the save button in the upper left is RED, you won't see your new devices until you first save your changes.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/ZWave_Add_Controller</id>
		<title>ZWave Add Controller</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/ZWave_Add_Controller"/>
				<updated>2010-04-17T21:40:46Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:UI2]]&lt;br /&gt;
With most Z-Wave devices, you add them to Vera's Z-Wave network by clicking the 'Add other Z-Wave devices' on the 'Devices' tab in Vera's menu and following the instructions where you remove Vera's black Z-Wave dongle and carry it to your Z-Wave device. But, battery-operated handheld controllers are special cases. To add them you leave Vera's black dongle connected, bring them to Vera, and chose the 'Add Z-Wave Controller' option instead. In general, when adding these handheld controllers, there are a few more steps, as explained below. Most in-wall controllers that are connected to your house's electricity (i.e. ''not'' battery operated) can be added like any other Z-Wave device and do not need to be treated like the battery operated controllers. (See '''Supported controllers/gateways''' below for a list.) &lt;br /&gt;
&lt;br /&gt;
To assign the scene to a button on a handheld remote or scene controller, create the scene, click 'Add Event' next to the scene, choose the scene controller or handheld remote, choose the event 'A Scene is Activated', and pick the scene or button ID, such as 3 for button 3 on a scene controller.  In a traditional Z-Wave network, handheld remotes and scene controllers can only control certain scene-capable light switches and lamp modules.  But Vera automatically extends the capabilities of Z-Wave so all the commands in your scene will be activated when you press the button.&lt;br /&gt;
&lt;br /&gt;
For any commands in the scene that go to scene capable devices, namely Z-Wave scene capable light switches and lamp modules, Vera will program the scene controller or remote to talk directly to those scene capable devices.  And, if the remote or scene controller has Up/Down or Off buttons, they will be sent directly to the scene capable devices.  For any commands you assign to the scene which are not for scene-capable devices, like door locks, thermostats, non-scene capable lamp modules, etc., Vera will monitor the button pushes on your scene controller or handheld remote and automatically take care of the rest of the commands.&lt;br /&gt;
&lt;br /&gt;
The first step is to add the controller into Vera. &lt;br /&gt;
&lt;br /&gt;
== Adding battery operated handheld controllers to Vera  ==&lt;br /&gt;
&lt;br /&gt;
[[Image:AddZ-Wave.jpg|thumb|center|512px|Add Z-Wave Controller Screen]] &lt;br /&gt;
&lt;br /&gt;
When you want to add a handheld Z-Wave controller, go to Vera's [[Quick Start|setup page]], choose the &amp;quot;Devices&amp;quot; tab, and click the &amp;quot;Add Z-Wave controller&amp;quot; link or button. You will have 60 seconds to add the controller to an existing Z-Wave network, by bringing the handheld controller within 3 feet (1 meter) of Vera and pressing the buttons on the handheld controller. This process is different for each handheld controller, and is often given different names. A chart of some popular Z-Wave handheld controllers is shown below, along with the steps to add the controller to Vera, and what the process is called. Vera shows the status and progress in blue at the top of the page, starting with: &amp;quot;''Running: Job is waiting: Ready...''&amp;quot;, which means Vera is waiting for your handheld controller to start. &lt;br /&gt;
&lt;br /&gt;
If you cannot add the controller to Vera, it's possible the controller is already part of another Z-Wave network. In this case, you must first reset the controller before you can add it to Vera. Instructions for resetting some popular controllers are shown below.&lt;br /&gt;
&lt;br /&gt;
== Adding in-wall scene controllers to Vera  ==&lt;br /&gt;
&lt;br /&gt;
As mentioned above, in general you can add these devices like any other Z-Wave device and don't need to use the 'Add Z-Wave Controller' link. &lt;br /&gt;
&lt;br /&gt;
== '''Supported controllers/gateways'''  ==&lt;br /&gt;
&lt;br /&gt;
'''These devices are added by bringing the controller near Vera and choosing 'Add Z-Wave Controller'.''' &lt;br /&gt;
&lt;br /&gt;
The 'Add Sequence' is how you tell the controller to add to Vera. The 'Reset Sequence' is how you clear the controller if it's already been added to another Z-Wave network and can't be added to Vera. &lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Add Sequence &lt;br /&gt;
! Reset Sequence &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Cooper Wiring Devices &lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| RFHDCSG &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://store.homeseer.com/store/RFHDCSG---Z-Wave-Handheld-Controller-Cooper-Aspire-RF-P477C56.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/RFHDCSG---Z-Wave-Handheld-Controller-Cooper-Aspire-RF-P477C56.aspx Link] &lt;br /&gt;
| Menu, Settings, Replicate, Receive, From Unknown Controller &lt;br /&gt;
| Menu, Settings, Reset &lt;br /&gt;
| Works well with Vera. Can transfer devices from Vera to the handheld but doesn't transfer device names. Also very expensive.&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| HA07 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.intermatic.com/images/instruction_sheets/158ha11645-art.pdf Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Read [[Intermatic Handheld Remotes]]&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic/Wayne Dalton &lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| HA09 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.waynedaltonstore.com/product/741714108824.html Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Read [[Intermatic Handheld Remotes]]&lt;br /&gt;
|-&lt;br /&gt;
| GE/Jasco Products&lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| Z-Wave Home Theater Remote-45608 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.jascoproducts.com/z-wave/Z-Wave-Products.asp Link] &lt;br /&gt;
| [http://www.myhomeserver.com/?page_id=236 Link]  &lt;br /&gt;
| Read the detailed instructions here: [[GE_Home_Theater_45608]]&lt;br /&gt;
| RESET: Z-Wave Setup mode, scroll to NETWORK, press OK and displays RESET. Click OK to reset the Z-wave on remote.  This will not remove the remote from Vera's network. So if it's already been added to Vera's network follow the instructions here: [[GE_Home_Theater_45608]]&lt;br /&gt;
| Works well with Vera, Also controls A/V devices and includes X10 IR codes and Logitech Squeezebox IR codes, blue blacklit buttons, LCD screen allows editing labels of scenes, devices, etc.   Can also control Z-Wave and A/V devices using macros so you can &amp;quot;play DVD&amp;quot; and the lights will dim with this command.  VERY NICE REMOTE!&lt;br /&gt;
|-&lt;br /&gt;
| Wayne Dalton &lt;br /&gt;
| Gateway &lt;br /&gt;
| WDHA-12R &lt;br /&gt;
| &amp;amp;nbsp;?? &lt;br /&gt;
| [http://www.waynedaltonstore.com/product/74171410873.html Link] &lt;br /&gt;
| [http://www.zwaveworld.com/prodrevs/091406/reviews-pg4.php Link] &lt;br /&gt;
| See detailed instructions here: [[Wayne-Dalton_WDHA-12]] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Shows as Z-Wave controller and enables use of Homelink car remote, so can now turn on/off All Z-wave devices from car. '''This gateway is required for the 3-button remote sold by them.''' Translates commands to Z-Wave Scenes. As of firmware 1.0.602 it's working with Vera, it's seen as a secondary controller.&lt;br /&gt;
|-&lt;br /&gt;
| Wayne Dalton &lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| WDHC-20 &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Add Zwave Controller in Vera, on remote; HOME, hold SETUP until HOME blinks twice, enter 967, HOME blinks twice if successful.  Create the scenes and assign them to the scene controller as described earlier.  Click 'Save', and then go to the device and click Configure node right now on Vera, and repeat on remote. &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| I added this about a week ago, and typed this from memory, so it may not work 100%, but I know it does have to be programmed on the remote twice.  Only On works, couldn't find setting for Off, don't have a dimmer to test Bright/Dim.&lt;br /&gt;
|-&lt;br /&gt;
| Innovus &lt;br /&gt;
| Handheld Controller &lt;br /&gt;
| SmoothRemote &lt;br /&gt;
| &lt;br /&gt;
| [http://www.innovus.eu/fileadmin/user_upload/manual/z-wave/smoothremote-00120001-tech.pdf Link] &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
1. Add Z-Wave Controller on Vera&amp;lt;br&amp;gt;2. Press 3 times shift (Button 9)&amp;lt;br&amp;gt;3. Configure device on Vera (Associations)&amp;lt;br&amp;gt;4. To transfer your config settings, repeat step 1 &amp;amp;amp; 2&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
| &lt;br /&gt;
| Device can be configured using Vera. Has no scene buttons, so you can not trigger scenes with it (V1.0.616) which hopefully will be changed in further versions. Button 8 is always &amp;quot;ALL ON / ALL OFF&amp;quot;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; '''These devices are added like normal Z-Wave devices by choosing 'Add other Z-Wave devices' on Vera's menu and bringing Vera's Z-Wave dongle to the device''' &lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Add Sequence &lt;br /&gt;
! Reset Sequence &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Cooper &lt;br /&gt;
| 5 Scene Controller &lt;br /&gt;
| RFWDC &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Read [[Cooper Scene Controller]]&lt;br /&gt;
|-&lt;br /&gt;
| Leviton &lt;br /&gt;
| 4 Scene Controller &lt;br /&gt;
| RZCS4 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Read [[Leviton Scene Controller]]&lt;br /&gt;
|-&lt;br /&gt;
| Leviton &lt;br /&gt;
| 1 Scene Controller &lt;br /&gt;
| RZCZ1-1LX &lt;br /&gt;
| Unknown &lt;br /&gt;
| [http://shop.micasaverde.com/index.php?main_page=product_info&amp;amp;cPath=106&amp;amp;products_id=116 Link] &lt;br /&gt;
| [http://shop.micasaverde.com/index.php?main_page=product_info&amp;amp;cPath=106&amp;amp;products_id=116 Link] &lt;br /&gt;
| [http://www.leviton.com/OA_HTML/ibcGetAttachment.jsp?cItemId=4K.TQNnHt8AaVpmZu8gZrg&amp;amp;label=IBE&amp;amp;appName=IBE&amp;amp;LC12RP=qKakohvv7vJh2mB6bpElERJ8:S&amp;amp;LC12RP_pses=ZG4A2E9F82D5405FB0AA12ACDF90AC2545B909744B9ED50C8FDF1E42E5DDB0DBDAA696B9BE833B1E5A5FAF3CD3DD6FEF48EE84A0FF16567733 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Read [[Leviton Scene Controller]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== '''Unsupported / Partially supported controllers/gateways'''  ==&lt;br /&gt;
&lt;br /&gt;
Not working as of firmware version wl500gP-1.0.584.trx &lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Model &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Sylvania &lt;br /&gt;
| SH50201 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| '''&amp;quot;all on&amp;quot; and &amp;quot;all off&amp;quot; buttons work but scene buttons are not supported at this time. (3/28/2009)''' &lt;br /&gt;
To program this controller put vera in add controller mode and then hit &amp;quot;menu&amp;quot;, then press right arrow until you see setup. Press ok. Righ arrow to copy remote control. Press ok. Right arrow to receive information and click ok. Wait for vera to confirm the controller was added. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| ACT HomePro &lt;br /&gt;
| ZTH100 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Sylvania is a rebranded ACT Homepro '''&amp;quot;all on&amp;quot; and &amp;quot;all off&amp;quot; buttons work but scene buttons are not supported at this time. (3/28/2009)'''&lt;br /&gt;
|-&lt;br /&gt;
| Merten&lt;br /&gt;
| 1-gang radio push button 5051.., 5061.., 5071..&lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5051_581_01_web.pdf Link]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Use scene no. 0 for button 0 and scene no. 255 for button 1 (2009-09-30, firmware 1.0.900)&lt;br /&gt;
|-&lt;br /&gt;
| Merten&lt;br /&gt;
| 2-gang radio push button 5052.., 5062.., 5072..&lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5051_581_01_web.pdf Link]&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Only buttons 0 and 1 work; use scene no. 0 for button 0 and scene no. 255 for button 1 (2009-09-30, firmware 1.0.900)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== '''Troubleshooting''' ==&lt;br /&gt;
&lt;br /&gt;
In case your controller it's not working please follow this steps before submitting a trouble report.&lt;br /&gt;
&lt;br /&gt;
1. Open Vera's Dashboard &amp;lt;br&amp;gt;&lt;br /&gt;
2. Go to Advanced and enable Verbose Logging &amp;lt;br&amp;gt;&lt;br /&gt;
3. Go to Location choose your timezone and synchronize your watch &amp;lt;br&amp;gt;&lt;br /&gt;
4. Go to Devices-&amp;gt;Zwave-&amp;gt;More Zwave Options tab and where it says &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;quot;House/Node&amp;quot;, make note of the node ID of your dongle (node x.y where x is the node id).  &amp;lt;br&amp;gt; &lt;br /&gt;
5. Go to Devices-&amp;gt;Zwave tab, if you have any devices called &amp;quot;ZWave Controller/Scene Controller&amp;quot; besides the built-in  &amp;lt;br&amp;gt;one, be sure to rename them so you can tell which is which. &lt;br /&gt;
Also be sure 'scenes as events' is not checked for this controller. &amp;lt;br&amp;gt;&lt;br /&gt;
6. Go to Devices-&amp;gt;Zwave, expand your controller properties by clicking on the &amp;quot;+&amp;quot; sign near it and then press 'Custom Zwave Settings'.&amp;lt;br&amp;gt; &lt;br /&gt;
Under Associations add group 2 and when you click 'set', add 2 associations: both the device you want to control *and* the  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;quot;ZWave Controller&amp;quot; (ie Vera's dongle), which is probably in the 'unassigned' area. &amp;lt;br&amp;gt;&lt;br /&gt;
Press SAVE and wait until the 'Please wait....  configuring' is done. &amp;lt;br&amp;gt;&lt;br /&gt;
7. Press every button on your controller and note the exact time at which you've press it. &amp;lt;br&amp;gt;&lt;br /&gt;
8. Go to Advanced-&amp;gt;Tech Support and submit a trouble report in which you have to indicate &amp;lt;br&amp;gt;&lt;br /&gt;
        - the controller make and model and a link to its user manual &amp;lt;br&amp;gt;&lt;br /&gt;
        - the controller's NodeID &amp;lt;br&amp;gt;&lt;br /&gt;
        - the time when you hit 'configure right now' and when you hit each button &amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Z-Wave_Devices</id>
		<title>Z-Wave Devices</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Z-Wave_Devices"/>
				<updated>2010-04-17T21:39:50Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Hardware]]&lt;br /&gt;
= Z-Wave Devices =&lt;br /&gt;
This is a comprehensive list of Z-Wave devices and their associated WiKi Pages.  If you have experience with a device and would like to contribute to others working with the same device, please add your experience.&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
== Controllers (Secondary)  ==&lt;br /&gt;
[[Logitech 890Pro]]&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Leviton Scene Controller]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
== Door Locks  ==&lt;br /&gt;
[[Schlage_Lock|Schlage LiNK]]&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Thermostats  ==&lt;br /&gt;
[[Wayne Dalton WDTC-20]]&amp;lt;br/&amp;gt;&lt;br /&gt;
[[Danfoss Thermostat]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Z-Wave</id>
		<title>Z-Wave</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Z-Wave"/>
				<updated>2010-04-17T21:36:58Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Glossary]]&lt;br /&gt;
'''Z-Wave'''  is a [[wireless]] communications standard designed for [[home automation]], specifically to remote control applications in residential and light commercial environments. The technology, which is developed by Danish company Zensys, uses a low-power RF radio embedded or retrofitted into home electronics devices and systems, such as lighting, home access control, entertainment systems and household appliances. The technology has been standardized by the Z-Wave Alliance, an international consortium of manufacturers that oversees interoperability between Z-Wave products and enabled devices.&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
Z-Wave is a low-power wireless technology designed specifically for remote control applications.  Unlike [[Wi-Fi]] and other [[IEEE 802.11]]-based [[wireless LAN]] systems that are designed primarily for high-bandwidth data flow, the Z-Wave RF system operates in the sub Gigahertz frequency range and is optimized for low-overhead commands such as on-off (as in a light switch or an appliance) and raise-lower (as in a thermostat or volume control), with the ability to include device metadata in the communications.  Because Z-Wave operates apart from the 2.4 GHz frequency of 802.11 based wireless systems, it is largely impervious to interference from common household wireless electronics, such as Wi-Fi [[router]]s, cordless telephones and [[Bluetooth]] devices that work in the same frequency range.  This freedom from household interference allows for a standardized low-bandwidth control medium that can be reliable alongside common wireless devices. On other hand, 2.4GHz frequency usage allows unlicensed devices usage in most countries, this is convenient to customers and allows wider technology adoption and reduced deployment costs. This could be not true for other frequencies and could easily turn into a strong drawback if licensing is required or frequency is occupied. That's one of reason why competing 2.4GHz technologies became so popular.&lt;br /&gt;
&lt;br /&gt;
As a result of its low power consumption and low cost of manufacture, Z-Wave is easily embedded in consumer electronics products, including battery operated devices such as remote controls, smoke alarms and security sensors. Z-Wave is currently supported by over 200 manufacturers worldwide and appears in a broad range of consumer products in the U.S. and Europe.&lt;br /&gt;
&lt;br /&gt;
The standard itself is not [[Open standard|open]] and is available only to Zensys customers  under [[non-disclosure agreement]].&amp;lt;ref&amp;gt;http://www.zwaveworld.com/ask/ask26.php&amp;lt;/ref&amp;gt; Some Z-Wave product vendors have embraced the [[open source]] and hobbyist communities.&amp;lt;ref&amp;gt;http://www.zwaveworld.com/ask/ask8.php&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Product And Brand Interoperability ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Z-Wave is a broadly accepted technical standard that ensures interoperability between all Z-Wave devices, no matter what the brand.  This is a dramatic leap forward from legacy home control and automation systems, which typically used proprietary protocols, and also separates Z-Wave from other current wireless systems, which are largely brand-specific and frequently incompatible with products outside their own brand.&lt;br /&gt;
&lt;br /&gt;
The interoperable Z-Wave ecosystem allows both manufacturers and consumers the security of knowing that Z-Wave certified products will work together in any home environment.  &lt;br /&gt;
&lt;br /&gt;
Manufacturing devices with Z-Wave capabilities is simple and cost-effective, thanks to tool sets, proven designs and tested market experience from Sigma Designs and the members of the Z-Wave Alliance.  For consumers, adding devices to a Z-Wave mesh network is simple enough for do-it-yourself home improvement, yet powerful enough to control even the largest household systems.  And because Z-Wave mesh networks are modular, Z-Wave capabilities can be added to one device at a time, or a single room, or floor, or the entire household at once.&lt;br /&gt;
&lt;br /&gt;
Only the Z-Wave ecosystem offers all these advantages -- simplicity, affordability, scalability and an interoperable ecosystem where incompatibilities are a thing of the past.&lt;br /&gt;
http://www.zen-sys.com/modules/Ecosystem/?id=27&amp;amp;chk=773bd1d88e867a46540cfeaa2c4c7a8c&lt;br /&gt;
&lt;br /&gt;
== Applications ==&lt;br /&gt;
&lt;br /&gt;
Z-Wave is a [[mesh networking]] technology where each node or device on the network is capable of sending and receiving control commands through walls or floors and around household obstacles or radio dead spots that might occur in the home. Z-Wave devices can work singly or in groups, and can be programmed into scenes or events that trigger multiple devices, either automatically or via remote control.  Some common applications for Z-Wave include:&lt;br /&gt;
&lt;br /&gt;
'''Remote Home Control And Management'''&lt;br /&gt;
&lt;br /&gt;
By adding Z-Wave to home electronics such as lighting, climate and security systems, it is possible to control and monitor these household functions via remote control, based on manual or automated decisions.  The control can be applied to a single device or group of devices, in a single room or zone or throughout the entire home. One of the benefits of Z-Wave over powerline communication technologies is the ability to function in older houses lacking a neutral wire.  Z-Wave devices can also be monitored and controlled from outside of the home by way of a gateway that combines Z-Wave with broadband Internet access.&lt;br /&gt;
&lt;br /&gt;
'''Energy Conservation'''&lt;br /&gt;
&lt;br /&gt;
Z-Wave is envisioned as a key enabling technology for energy management in the green home.  As an example, Z-Wave enabled thermostats are able to raise or lower automatically based on commands from Z-Wave enabled daylight sensors.  Grouped scene controls can ensure that unnecessary energy consumption is minimized by various all-off states for systems throughout the home such as lighting, appliances and home entertainment systems. &lt;br /&gt;
&lt;br /&gt;
'''Home Safety And Security Systems'''&lt;br /&gt;
&lt;br /&gt;
Because Z-Wave can transceive commands based on real time conditions, and is able to control devices in intelligent groupings, it allows novel extensions of traditional home security concepts.  As an example, the opening of a Z-Wave enabled door lock can de-activate a security system and turn on lights when children arrive home from school, and send a notification to a parent's PC or cell phone via the Internet.  Opening a Z-Wave enabled garage door can trigger exterior and interior home lights, while a Z-Wave motion detector can trigger an outdoor security light and a [[webcam]], which would allow the end user to monitor the home while away.&lt;br /&gt;
&lt;br /&gt;
'''Home Entertainment'''&lt;br /&gt;
&lt;br /&gt;
Z-Wave’s ability to command multiple devices as a unified event makes it well suited for home audio and video applications.  For example, a simple “Play DVD” command on the remote control could turn on the needed components, set them to the correct inputs and even lower motorized shades and dim the room lights. Z-Wave’s RF technology is also well suited as an evolution of conventional infrared (IR) based remote controls for home electronics, as it is not constrained by IR’s line of sight and distance limitations.  In January of 2008, Zensys announced a single-chip solution that pairs Z-Wave with IR control, positioning the technology as an all encompassing solution for home remote controls.&lt;br /&gt;
&lt;br /&gt;
== Setting Up A Z-Wave network ==&lt;br /&gt;
&lt;br /&gt;
Z-Wave mesh networks can begin with a single controllable device and a controller.  Additional devices can be added at any time, as can multiple controllers, including traditional hand-held controllers, key-fob controllers, wall-switch controllers and PC applications designed for management and control of a Z-Wave network.&lt;br /&gt;
&lt;br /&gt;
A device must be “included” to the Z-Wave network before it can be controlled via Z-Wave.  This process (also known as “pairing” and “adding”) is usually achieved by pressing a sequence of buttons on the controller and the device being added to the network.  This sequence only needs to be performed once, after which the device is always recognized by the controller.  Devices can be removed from the Z-Wave network by a similar process of button strokes.&lt;br /&gt;
&lt;br /&gt;
This inclusion process is repeated for each device in the system. Because the controller is learning the signal strength between the devices during the inclusion process, the devices themselves should be in their intended final location before they are added to the system.&lt;br /&gt;
&lt;br /&gt;
However, once a device has been introduced into a network, it can become troublesome to remove the unit without actually having the functional unit present. A number of zwave users have complained that a zwave controller can be functionally destroyed by the bulb that it controls blowing and any controlling units then report errors every time a command that would affect that unit is sent (i.e. group commands / scene commands / all-on / all-off etc). The only way to restore the service to a non-error reporting state is to factory reset all controllers and then relearn all zwave devices. &amp;lt;ref&amp;gt;http://board.homeseer.com/showthread.php?t=100212&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Z-Wave Alliance ==&lt;br /&gt;
The [http://www.z-wavealliance.com Z-Wave Alliance] is a consortium of over 160 independent manufacturers who have agreed to build wireless home control products based on the Z-Wave standard. Principal members include [http://www.cooperwiringdevices.com Cooper Wiring Devices], [http://www.danfoss.com Danfoss], [http://www.fakro.com Fakro], [http://www.ingersollrand.com Ingersoll-Rand], [http://www.intel.com Intel], [http://www.intermatic.com Intermatic], [http://www.leviton.com Leviton], [http://www.uei.com/ Universal Electronics], [http://www.wayne-dalton.com Wayne-Dalton], [http://www.z-wave.com Z-Wave]&lt;br /&gt;
and [http://www.zen-sys.com Zensys].&lt;br /&gt;
&lt;br /&gt;
Products and applications from the Z-Wave Alliance fall into all major market sectors for residential and light commercial control applications.  These include lighting, HVAC and security control, as well as home theaters, automated window treatments, pool and spa controls, garage and access controls and more.&lt;br /&gt;
&lt;br /&gt;
== Radio specifications ==&lt;br /&gt;
Bandwidth: 9,600 bit/s or 40 [[Kilobit per second|Kbit/s]], fully interoperable&lt;br /&gt;
&lt;br /&gt;
[[Modulation]]: [[GFSK]]&lt;br /&gt;
&lt;br /&gt;
Range: Approximately 100 feet (or 30 meters) assuming &amp;quot;open air&amp;quot; conditions, with reduced range indoors depending on building materials, etc.&lt;br /&gt;
&lt;br /&gt;
Frequency band: The Z-Wave Radio uses the 900 MHz [[ISM band]]: 908.42MHz (USA); 868.42MHz (Europe); 919.82MHz (Hong Kong); 921.42MHz (Australia/New Zealand).&lt;br /&gt;
&lt;br /&gt;
== Radio specifics ==&lt;br /&gt;
In Europe, the 868 MHz band has a 1% duty cycle limitation, meaning that a Z-wave unit can only transmit 1% of the time. This limitation is not present in the US 908 MHz band, but US legislation imposes a 1 mW transmission power limit (as opposed to 25 mW in Europe).&lt;br /&gt;
Z-wave units can be in power-save mode and only be active 0.1% of the time, thus reducing power consumption dramatically.&lt;br /&gt;
&lt;br /&gt;
== Topology and routing ==&lt;br /&gt;
Z-wave uses an intelligent mesh network topology and has no master node. Devices can communicate to another around household obstacles or radio dead spots that might occur.  A message from node A to node C can be successfully delivered even if the two nodes are not within range, providing that a third node B can communicate with nodes A and C. If the preferred route is unavailable, the message originator will attempt other routes until a path is found to the &amp;quot;C&amp;quot; node. Therefore a Z-Wave network can span much further than the radio range of a single unit, however with several of these hops a delay may be introduced between the control command and the desired result. In order for Z-Wave units to be able to route unsolicited messages, they cannot be in sleep mode. Therefore, most battery-operated devices are not designed as repeater units. A Z-wave network can consist of up to 232 devices with the option of bridging networks if more devices are required.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[Insteon]] - dual-mesh technology from [[SmartLabs]]&lt;br /&gt;
*[[ZigBee]] - standards-based protocol based on IEEE 802.15.4.&lt;br /&gt;
*[[EnOcean]] - an alternative to Zigbee, mostly for battery-less switches.&lt;br /&gt;
*[[ONE-NET]] - An open source alternative&lt;br /&gt;
&lt;br /&gt;
==External links==&lt;br /&gt;
*[http://www.z-wavealliance.org Z-Wave Alliance], open consortium of over 160 manufacturers of Z-Wave products&lt;br /&gt;
*[http://www.zen-sys.com Zensys], the creator of Z-Wave&lt;br /&gt;
*[http://www.z-wave-europe.org Z-wave European Portal]&lt;br /&gt;
*[http://www.zwaveproducts.com Z-wave United States Portal]&lt;br /&gt;
*[http://www.liveautomatic.com/reviews/insteon-vs-x10-zigbee-and-zwave Z-wave vs Insteon]&lt;br /&gt;
*[http://www.pcworld.com/article/123856/first_look_catch_the_home_automation_zwave.html First Look: Catch the Home Automation Z-Wave]&lt;br /&gt;
*[http://www.euroxten.com/Products/ZWave.htm Information and Z-Wave products for 230V]&lt;br /&gt;
&lt;br /&gt;
==Z-Wave FAQ==&lt;br /&gt;
*[http://www.z-wave.com/modules/xoopsfaq/index.php?cat_id=2], External FAQ1&lt;br /&gt;
*[http://www.tomsguide.com/us/the-next-wave-in-home-control-systems,review-859-2.html], ZWave Mesh Network Diagram and Explanation&lt;br /&gt;
*[http://en.wikipedia.org/wiki/Mesh_networking], Wikipedia about Mesh Network&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/WiFiClientMode</id>
		<title>WiFiClientMode</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/WiFiClientMode"/>
				<updated>2010-04-17T21:35:51Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
Normally Vera you connect the WAN port on Vera to your modem or home network to give Vera an internet connection.  This method, using a physical network wired connection, is best.  However, if you need to position Vera in a location where there is no hardwired internet connection, but you have an existing wi-fi network, you can tell Vera to go into 'Wi-Fi client mode'.  This means that instead of Vera providing wi-fi to other devices, Vera will instead connect to your existing wi-fi network for internet.  Vera will also bridge the 4 LAN ports marked LAN1-LAN4 so you can connect devices to those ports, and they will have internet access through Vera over the wi-fi.&lt;br /&gt;
&lt;br /&gt;
'''VERY IMPORTANT:''' Once you put Vera in wi-fi client mode you must immediately disconnect any cable which connects Vera back to your home network.  Presumably this means disconnecting the cable in Vera's WAN port if that's what you initially connected to your home network.  If there is a network cable connected to Vera's WAN or LAN port while Vera is in wi-fi client mode which connects to your home's access point, it can cause problems on your entire home network and make the access point go down since it will see the same device connected with both LAN and Wi-Fi.  So once you put Vera in wi-fi client mode, disconnect the cables.&lt;br /&gt;
&lt;br /&gt;
To put Vera in wi-fi client mode, click Advanced, Net &amp;amp; Wi-fi from Vera's setup menu and choose the option &amp;quot;Through a wi-fi access point. Vera is a bridge.&amp;quot;  You will need to choose the existing wi-fi network and provide any password for it, if any.  After you click 'save', be sure to disconnect the cables as mentioned above.&lt;br /&gt;
&lt;br /&gt;
'''TROUBLESHOOTING:''' If Vera is unable to connect to your wi-fi network and you want to modify Vera's network settings, you have 2 options.  First you can double click the red button on the back of Vera.  That will reset Vera's network settings to the default, without losing your other changes, like rooms, users, etc.  You can then connect Vera with the WAN port like normal and re-configure the network.  The second option is to connect your PC to one of Vera's LAN ports and give your PC the static IP address 192.168.81.2.  Then you can go to http://192.168.81.1 to modify Vera's network settings without resetting them.&lt;br /&gt;
&lt;br /&gt;
'''BRIDGING:''' Although you cannot connect Vera's WAN or LAN ports back into your access point, you can plug other network devices, like a GC100 or a laptop, into Vera's WAN or LAN ports and Vera will bridge them over wi-fi so they have an internet connection from your main access point.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Weather_Plugin</id>
		<title>Weather Plugin</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Weather_Plugin"/>
				<updated>2010-04-17T21:34:56Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Plugins]]&lt;br /&gt;
[[Category:3rd Party]]&lt;br /&gt;
This page has moved to the MIOS Code Respository:&lt;br /&gt;
&lt;br /&gt;
    http://code.mios.com/trac/mios_weather/wiki&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Wayne-Dalton_WDHA-12</id>
		<title>Wayne-Dalton WDHA-12</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Wayne-Dalton_WDHA-12"/>
				<updated>2010-04-17T21:33:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
== '''How to Configure Vera with Wayne-Dalton WDHA-12 Gateway'''  ==&lt;br /&gt;
&lt;br /&gt;
(written Jan-2010 based on Vera firmware 1.0.979)&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The Wayne-Dalton WDHA-12 Gateway funnels commands from HomeLink devices and WD keychain remote controls into Vera.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Neither can speak directly to Vera (even though the WD keychain device is a Z-wave device of a sort). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The Gateway is configured as a secondary Z-wave controller which means that its only role is to forward commands to Vera.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Once configured as a secondary controller, it no longer speaks directly to devices, rather it only forwards commands to Vera (the primary controller in the configuration below) which in turn sends on the commands to devices.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;The Gateway has 3 scene buttons and each can be attached to a different scene in Vera. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
[[Image:Co1b.jpg]]&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Step 1 – Set up Vera.&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
Make sure you already have Vera working with at least one scene so that you have one less variable to be concerned with. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Step 2 – Turn Gateway into secondary controller and link to Vera.&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
Make sure you’re logged in to Vera. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
On the Gateway, press copy button &amp;lt;u&amp;gt;AND THEN&amp;lt;/u&amp;gt; press Scene 1 button (despite what the Gateway instructions say, if you press copy and Scene 1 at the same time the process doesn’t seem to work).&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Hold both buttons until all three LEDs light up and then release both. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Immediately after above, go to Vera Dashboard, click '''Setup''', then click '''Devices''' and then click '''Z-Wave'''.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Now click “'''Add Z-Wave controller'''”.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Within 60 seconds you will see “device detected.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
&amp;lt;/span&amp;gt;Added Node n” &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
For some reason, it appears that you need to perform this step 2 a second time for it to work properly.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
&amp;lt;/span&amp;gt;The second time you do this, Vera will recognize that the device has previously been detected and will display the node number again. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--[if gte vml 1]&amp;gt;&amp;lt;v:oval id=&amp;quot;_x0000_s1027&amp;quot; style='position:absolute;&lt;br /&gt;
 margin-left:270pt;margin-top:2.75pt;width:54pt;height:45pt;z-index:2'&lt;br /&gt;
 filled=&amp;quot;f&amp;quot; strokecolor=&amp;quot;red&amp;quot; strokeweight=&amp;quot;3pt&amp;quot;/&amp;gt;&amp;lt;![endif]--&amp;gt;&amp;lt;!--[if !vml]--&amp;gt;&amp;lt;!--[endif]--&amp;gt;&amp;lt;!--[if gte vml 1]&amp;gt;&amp;lt;v:shapetype id=&amp;quot;_x0000_t75&amp;quot;&lt;br /&gt;
 coordsize=&amp;quot;21600,21600&amp;quot; o:spt=&amp;quot;75&amp;quot; o:preferrelative=&amp;quot;t&amp;quot; path=&amp;quot;m@4@5l@4@11@9@11@9@5xe&amp;quot;&lt;br /&gt;
 filled=&amp;quot;f&amp;quot; stroked=&amp;quot;f&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;v:stroke joinstyle=&amp;quot;miter&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;v:formulas&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;if lineDrawn pixelLineWidth 0&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;sum @0 1 0&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;sum 0 0 @1&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @2 1 2&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @3 21600 pixelWidth&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @3 21600 pixelHeight&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;sum @0 0 1&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @6 1 2&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @7 21600 pixelWidth&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;sum @8 21600 0&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;prod @7 21600 pixelHeight&amp;quot;/&amp;gt;&lt;br /&gt;
  &amp;lt;v:f eqn=&amp;quot;sum @10 21600 0&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;/v:formulas&amp;gt;&lt;br /&gt;
 &amp;lt;v:path o:extrusionok=&amp;quot;f&amp;quot; gradientshapeok=&amp;quot;t&amp;quot; o:connecttype=&amp;quot;rect&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;o:lock v:ext=&amp;quot;edit&amp;quot; aspectratio=&amp;quot;t&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/v:shapetype&amp;gt;&amp;lt;v:shape id=&amp;quot;_x0000_s1026&amp;quot; type=&amp;quot;#_x0000_t75&amp;quot; style='position:absolute;&lt;br /&gt;
 margin-left:270pt;margin-top:2.75pt;width:208.5pt;height:78.7pt;z-index:-2'&lt;br /&gt;
 wrapcoords=&amp;quot;-41 0 -41 21492 21600 21492 21600 0 -41 0&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;v:imagedata src=&amp;quot;file:///C:\DOCUME~1\charlieo\LOCALS~1\Temp\msohtml1\01\clip_image002.png&amp;quot;&lt;br /&gt;
  o:title=&amp;quot;&amp;quot;/&amp;gt;&lt;br /&gt;
 &amp;lt;w:wrap type=&amp;quot;tight&amp;quot;/&amp;gt;&lt;br /&gt;
&amp;lt;/v:shape&amp;gt;&amp;lt;![endif]--&amp;gt;&amp;lt;!--[if !vml]--&amp;gt;&amp;lt;!--[endif]--&amp;gt;The Gateway is now configured as a secondary controller.&amp;amp;nbsp; &amp;lt;u&amp;gt;Note:&amp;lt;/u&amp;gt; In the Devices list, Vera will show the “red gear” status (as below) indicating that the device is not properly configured.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;This does not seem to matter. &lt;br /&gt;
&lt;br /&gt;
[[Image:Co2a.jpg]] '''&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Step 3 – Assign Gateway scene buttons to Vera scenes.&amp;lt;/u&amp;gt;'''&amp;lt;br&amp;gt; Click '''Scenes'''.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Click '''Add scene'''. &amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;Then click '''Add event''', select your scene controller in the '''Devices''' popup and then select Event type “'''A scene is activated'''”.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Then name the event and type in the digit 1, 2 or 3 in “'''scene number'''” corresponding to the Gateway scene number/button you want to use.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Finally, choose among the commands available for your device.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;[[Image:Co3a.jpg]]&amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Step 4 – Test.&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
On the Gateway, press the scene number/button that you assigned in Step 3 and confirm that the proper commands are executed.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
As a double check, you can look at Vera’s logs.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;Click '''Advanced''', then click '''Logs '''and then '''Show Z-Wave jobs'''. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''&amp;lt;u&amp;gt;Optional – Step 5 – Connect to HomeLink.&amp;lt;/u&amp;gt;''' &lt;br /&gt;
&lt;br /&gt;
To configure a HomeLink controller so that HomeLink triggers the Gateway which in turn triggers a Vera scene, follow the instructions in the WDHA-12 manual.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;One thing to know that the Gateway manual doesn’t tell you:&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;To “pair” (the HomeLink term is “teach”) the HomeLink controller with the Gateway, the Gateway must be unplugged from the AC.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp;&lt;br /&gt;
&amp;lt;/span&amp;gt;However it will only work as a gateway once you plug it back into the AC, so you &amp;lt;u&amp;gt;can’t test it while it’s still unplugged&amp;lt;/u&amp;gt;.&amp;lt;span style=&amp;quot;&amp;quot;&amp;gt;&amp;amp;nbsp; &amp;lt;/span&amp;gt;It turns out that when the Gateway is unplugged it works as a handheld controller (meaning the buttons work but it doesn't pass thru HomeLink commands) and only works as a Gateway when it’s plugged in.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
(if the directions in the WDHA-12 manual for pairing your car don't work- try [http://www.homelink.com homelink.com] and select the programming tab. Choose &amp;quot;program a garage door opener&amp;quot; from wayne dalton and pick your vehicle. It will provide you the proper sequence of things to do in your vehicle while following the WDHA instructions for the button presses on the gateway)&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Watts</id>
		<title>Watts</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Watts"/>
				<updated>2010-04-17T21:32:54Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Glossary]]&lt;br /&gt;
For an overview of energy conservation with Vera see [[Intro Energy Conservation]]. &lt;br /&gt;
&lt;br /&gt;
A few Z-Wave devices are able to tell Vera exactly how much energy they are using. Then Vera can log the devices' real, live energy usage. But, most Z-Wave devices, like light switches, do ''not'' measure energy usage. So, on the 'Devices' tab in Vera's 'Setup' page, you can click the '+' button next to each device and tell Vera how much energy each device uses when it's ''On'' by putting its energy usage in the &amp;quot;Watts&amp;quot; field. (Lights default to 100.) &lt;br /&gt;
&lt;br /&gt;
Most devices have the number of watts they use printed on them. For example, a 60W light bulb uses 60 watts. If you put '60' in the &amp;quot;Watts&amp;quot; field, then Vera will assume the device is using 60 watts at full brightness, and a percentage of 60 watts when dimmed to a lower level. Note that you may have a Z-Wave switch that controls several lights. The value you put in the &amp;quot;Watts&amp;quot; field should be the sum of all the lights controlled by a switch. So if a switch controls four 60W overhead lights, in the &amp;quot;Watts&amp;quot; field for that switch, put in 240.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For thermostats, the &amp;quot;Watts&amp;quot; field consists of 3 numbers separated by commas. The default is 1500,1500,300. The first number is how many watts are used when the thermostat is in 'heat' mode; the second is how many watts are used when the thermostat is in 'cool' mode; and the third number is for the 'fan only' mode.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Users</id>
		<title>Users</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Users"/>
				<updated>2010-04-17T21:32:08Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
Providing a list of the users, or family members, who will use the system is optional. The two main reasons for defining users are: &lt;br /&gt;
&lt;br /&gt;
1. You want to be notified of events at home, such as security breaches, sensors being tripped, and so on. Add each user who you want to be notified, and for each user specify how he should be notified: by SMS text message, email, or a voice call. Then when you add an event to a scene, you can specify for each event which users should be notified. Vera will use the contact info you provide here on the Users tab. &lt;br /&gt;
&lt;br /&gt;
2. The other reason to supply users is if you want to require a username and password to login when you are at home, from a web browser on your home network. By default anybody on the home network can control or configure Vera. This isn't necessarily a security issue; Vera by default turns on a firewall if you don't have one, so only people within the home, on your home network can access Vera's web page. If you want to restrict this so a username and password is required, add the users and their passwords and check the box &amp;quot;Require a username and password to access this from within my home network&amp;quot;. Note that these usernames and passwords are unrelated to the one you use for FindVera.com. The FindVera.com is for accessing the system remotely. The users and passwords you setup here are for accessing Vera on the local netowrk. &lt;br /&gt;
&lt;br /&gt;
NOTE: If you want to access Vera remotely '''without''' using the [[Find Vera Service|FindVera.com service]] you can do this by setting up a port forward in your home network and specifying &amp;quot;No Firewall&amp;quot; on Vera's 'Net &amp;amp;amp; Wi-Fi' tab. In this case you should always check the &amp;quot;Require a username and password&amp;quot; box to prevent unauthorized access from the internet.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Unassigned_devices</id>
		<title>Unassigned devices</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Unassigned_devices"/>
				<updated>2010-04-17T21:30:33Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:UI2]]&lt;br /&gt;
[[Image:UnnasignedDevices1.jpg|thumb|512px|center|]]&lt;br /&gt;
[[Image:UnnasignedDevices2.jpg|thumb|512px|center|]]&lt;br /&gt;
[[Image:UnnasignedDevices3.jpg|thumb|512px|center|caption text| Unassigned devices ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When you have recently added devices, but have not yet added them to a room, Vera will not let you continue until you tell Vera what room they are in.  For an explanation and instructions [[Devices#Unassigned_devices|click here]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/UI_Notes_Replacement</id>
		<title>UI Notes Replacement</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/UI_Notes_Replacement"/>
				<updated>2010-04-17T21:29:55Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
This page is outdated since it doesn't use the new Luup architecture.&lt;br /&gt;
&lt;br /&gt;
== Building a replacement UI for Vera  ==&lt;br /&gt;
&lt;br /&gt;
  Here are some notes on other tags that might be of interest, particularly&lt;br /&gt;
 when creating a full replacement for Vera's built-in web user interface.&lt;br /&gt;
&lt;br /&gt;
The unassigned devices and automation devices in the '''user_data''' JSON request are just counters. You can probably ignore them. Automation devices is just the count of all the devices that are children of 'zwave' (i.e. the count of your light switches, thermostats, etc.). Unassigned devices is the count of devices that haven't yet been assigned a room (i.e. FK_Room=0). It's your responsibility, in the UI, to be sure that every device which does *NOT* have the tag &amp;quot;Hidden&amp;quot;=1 or the variable '''urn:micasaverde-com:serviceId:HaDevice1/IgnoreRoom''' set to 1. You don't have to, actually; the devices work fine if they're not in a room. It's just a convention in our user paradigm that all devices have to be put in rooms as a way of cataloging. And our web developer said that since JavaScript is slow, rather than him parsing the whole device tree in order to figure out if there are any devices not yet assigned to a room, he asked us to put a counter in the JSON (UnassignedDevices). If it's 0, he doesn't need to display the popup &amp;quot;Tell me what rooms these new devices are in&amp;quot;. If it's &amp;amp;gt;0, then he goes ahead and parses the device tree to figure out what devices are already assigned to rooms and displays the popup for those that are not yet in a room. &lt;br /&gt;
&lt;br /&gt;
He also wanted an 'automation devices' counter, again, so he doesn't need to parse the JSON tree unnecessarily. If the counter is 0, then the user has no Z-Wave devices and he doesn't bother rendering the devices tab. &lt;br /&gt;
&lt;br /&gt;
The counters and data in the '''user_data''' are the 'master database' of all the devices in the home and their parameters. The database is updated whenever the list of devices changes, or the user makes changes to the configuration. &lt;br /&gt;
&lt;br /&gt;
The way our UI works is there's a background thread that polls '''user_data''' every 60 seconds or so. Each time it polls '''user_data''', it passes in the DataVersion from the last '''user_data''' it got. This way if there are no changes, rather than returning an identical JSON tree for you to parse all over again, you just get back an empty tree meaning &amp;quot;that DataVersion is still current&amp;quot;. When the '''user_data''' changes, the UI needs to update all the devices/trees/etc. because that means something has changed. &lt;br /&gt;
&lt;br /&gt;
Separately, there's another background poll of '''lu_status''' (explained later) to get the realtime info on the devices. This is used to determine which action button to highlight (on/off/etc.), what color code to use for the config cog wheel, what job icons to display, and so on. The way we implemented it is that when the user does something in the UI, we start polling '''zwave_status''' every 2 seconds. This is because things are changing quickly (i.e. the job may be succeeding/failing/etc.). Then after 15 seconds, the polling is reduced to once every 15 seconds. Then after 1 minute, the polling is reduced to 1 minute intervals. This way, when the UI is idle, and the user turns off a light, you won't see the change immediately in the UI because it can be 1 minute before the next '''zwave_status '''poll. But, you're not generating constant network traffic to keep polling the devices over and over again when there's nothing going on. &lt;br /&gt;
&lt;br /&gt;
If you use the binary socket layer, you don't need to poll since you can register to receive events when things change. But for web based UI's and engines like JavaScript, implementing raw socket transfers isn't as easy as simple HTTP GETs, so it just uses polling of the HTTP GETs.&lt;br /&gt;
&lt;br /&gt;
== Saving configuration settings ==&lt;br /&gt;
&lt;br /&gt;
This doesn't apply when creating a UI for control only, like a cell phone.&lt;br /&gt;
&lt;br /&gt;
All the configuration data is stored in the user_data json file.  The UI should allow the user to modify this data, set configuration parameters, and so on.  Refer to the user_data request on [[Data_Provider_Catalog_Plugin_Requests]] for instructions on how to submit the user's changes to the json files.  You can add your own tags to the JSON file to store your own information about devices.  Vera will simply ignore json tags that it doesn't recognize.&lt;br /&gt;
&lt;br /&gt;
== Current state of devices ==&lt;br /&gt;
&lt;br /&gt;
The state variables in user_data are not necessarily up to date.  They are just what was last saved in the database.  To get the up to date values, along with a list of the active jobs for a device, use the UPnP action GetStatus, or call: http://ipaddress:49451/data_request?id=lu_status&amp;amp;output_format=xml&lt;br /&gt;
&lt;br /&gt;
The job status will be one of the following:&lt;br /&gt;
&lt;br /&gt;
 job_None=-1,  // no icon&lt;br /&gt;
 job_WaitingToStart=0,  // gray icon&lt;br /&gt;
 job_InProgress=1,  // blue icon&lt;br /&gt;
 job_Error=2,  // red icon&lt;br /&gt;
 job_Aborted=3,  // red icon&lt;br /&gt;
 job_Done=4,  // green icon&lt;br /&gt;
 job_WaitingForCallback=5  // blue icon - Special case used in certain derived classes&lt;br /&gt;
&lt;br /&gt;
== Configuration parameters for devices ==&lt;br /&gt;
&lt;br /&gt;
--- this section is not current ---&lt;br /&gt;
&lt;br /&gt;
Here are configuration settings the UI should prompt the user for and store in the &amp;quot;DeviceData&amp;quot; section.  &lt;br /&gt;
&lt;br /&gt;
'''Global'''&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Manage_Associations_CONST 300:'''  Some Z-Wave devices report information about their state (ie fire events), such as motion sensors, remote controls which fire 'button pressed' events, and so on.  Generally you tell the device where to send the events by assigning them 'associations'.  For example, a motion sensor can be associated with a light switch and it will turn the light on/off automatically, or it can be associated with Vera so Vera gets 'sensor tripped' events.  If this is the sort of device that Vera would normally want to set associations for, Vera adds this configuration parameter to the device, with an empty value.  If the UI sees this parameter in &amp;quot;DeviceData&amp;quot;, display a check box that says something like &amp;quot;Allow Vera to manage associations&amp;quot; and, if checked, store a 1, otherwise a 0.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Scenes_As_Events_CONST 298:''' Normally ZWave handheld remote controls work with light switches only, and you can't receive events in Vera to allow them to execute Vera's scenes, which can do anything.  If this is a handheld remote control that Vera can &amp;quot;trick&amp;quot; into sending scene commands to Vera, which Vera can in turn translate into events, Vera will add this configuration parameter to the device, with an empty value.  If the UI sees this parameter in &amp;quot;DeviceData&amp;quot;, display a check box that says something like &amp;quot;Treat Scenes as events&amp;quot; and, if checked, store a 1, otherwise a 0.  See: [[ZWave_Add_Controller]] method #2&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Wakeup_Interval_CONST 299:''' If this is a battery operated device, that is not a FLiRS (see Zensys definition), it is normally 'sleeping' and cannot be communicated with except when it periodically wakes up and broadcasts a wakeup message.  If Vera detects this type of device, Vera will add this configuration parameter to the device, with an empty value.  If the UI sees this parameter in &amp;quot;DeviceData&amp;quot;, prompt the user for the wakeup interval and store the value, as # of seconds, in this parameter.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Manufacturer_Desc_CONST 294/DEVICEDATA_Model_Desc_CONST 295:''' This is a read-only setting with the name of the manufacturer/name of the model of the device, if known.  Do not overwrite these values.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Battery_Level_CONST 292:''' This is a read-only setting with the percentage of battery life left, from 0-100.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Battery_Alarm_CONST 293:''' If DEVICEDATA_Battery_Level_CONST 292 is specified, you can display an input box asking the user for the minimum battery life before firing an event (0-99) and store it in this setting.  When the battery level drops below this level an event will be fire, which can be attached to a scene to notify a user.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Capabilities_CONST 207:''' This may be of interest to more advanced users.  It has the device classes followed by a | and the supported command classes.  An S at the end means its a 'secure' command class.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_PortChannel_Number_CONST 12:''' This is read-only, and it's the ZWave Node id.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Multi_Channel_End_Point_CONST 296/DEVICEDATA_Multi_Channel_Capabilities_CONST 297/#define DEVICEDATA_Model_CONST 233/DEVICEDATA_Configuration_CONST 59/DEVICEDATA_Update_Name_CONST 41/DEVICEDATA_Only_One_Per_PC_CONST 162/DEVICEDATA_Energy_Log_CONST 286:''' Internal use only.  Do not modify or present to the user.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_LastUpdate_CONST 234:''' This is the unix time stamp indicating when the device was successfully configured.  Vera sets this when configuration is done.  If this is not empty or 0, Vera will not attempt to configure the device.  Whenever the user makes any change to a device, such as changing the settings in the UI, the UI must reset this to 0 when saving so Vera will re-configurate the device.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Polling_Settings_CONST 283:''' This is the maximum frequency, in seconds, to poll the device.  If set to empty, the default values will be used.  0 means the device will not be pulled.  60, for example, means poll the device at most once per 60 seconds.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_PK_FloorplanObjectType_CONST 11:''' Vera has no use for this value, but it is traditionally used to indicate which type of icon the user wants to see this device represented with on the floorplan.  It is made available to any controllers.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_InputOrOutput_CONST 18/DEVICEDATA_Default_State_CONST 19/DEVICEDATA_EK_AlertType_CONST 45:'''  These are for sensors indicating if they are input/output, normally open/close, and what type of alert they fire.  You should not need to modify these because the default values pulled from template_data.json, which are set when the device is created, should be correct.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Wattage_CONST 285:'''  This is how many watts the device uses at full power.  The user should be allowed to edit this so the estimated energy usage is accurate.&lt;br /&gt;
&lt;br /&gt;
'''Device specific notes:'''&lt;br /&gt;
&lt;br /&gt;
'''Light switches/lamp &amp;amp; appliance modules/Sensors:''' There are no special settings.  Just follow the general settings above.&lt;br /&gt;
&lt;br /&gt;
'''Thermostats:''' Note the syntax of Wattage here: [[Watts]]  Otherwise no special settings.&lt;br /&gt;
&lt;br /&gt;
'''IP Cameras:''' There are special json tags for the IP address and MAC address.  Store the username/password for http authentication in: DEVICEDATA_AuthUser_CONST 114/DEVICEDATA_AuthPassword_CONST 115 and the URL to retrieve a JPEG image in DEVICEDATA_Path_CONST 2.  Store information about archiving images and association with lights/motion sensors in DEVICEDATA_sPK_Device_Relations_For_Creat_CONST 184,DEVICEDATA_Video_settings_CONST 89.&lt;br /&gt;
&lt;br /&gt;
DEVICEDATA_sPK_Device_Relations_For_Creat_CONST 184 = comma separated list of associated lights, dash, comma separated list of associated sensors.&lt;br /&gt;
&lt;br /&gt;
DEVICEDATA_Video_settings_CONST 89 = comma separated values: # of seconds to archive, # of minutes/seconds to take automatic picture as a # followed by m or s, # of days to keep archives, [1|0] for 'turn on lights when viewing camera', [1|0] for 'turn on lights when the sensors are tripped and armed', [1|0] for 'turn on lights when the sensors are tripped and not armed', [1|0] for 'turn on lights for automatic picture'.  So, the following is data is stored for the following configuration:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;FK_DeviceData_184&amp;quot;: &amp;quot;13,14,17-20&amp;quot;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;quot;FK_DeviceData_89&amp;quot;: &amp;quot;98,97m,96,1,1,0,0&amp;quot; &lt;br /&gt;
&lt;br /&gt;
Archive a photo whenever the following sensors are tripped:&amp;lt;br&amp;gt;&lt;br /&gt;
 (20) &amp;lt;br&amp;gt;&lt;br /&gt;
And after the sensor(s) are tripped archive the video for 98 seconds.&amp;lt;br&amp;gt;&lt;br /&gt;
Which lights should be turned on when viewing this camera:&amp;lt;br&amp;gt;&lt;br /&gt;
 (13,14,17)&amp;lt;br&amp;gt;&lt;br /&gt;
For archival purposes, take a picture from the camera every  97 minutes, and keep the pictures 96 days.&amp;lt;br&amp;gt;&lt;br /&gt;
Turn on the lights:&amp;lt;br&amp;gt;&lt;br /&gt;
[x] When I view the camera from the web or phone.&amp;lt;br&amp;gt;&lt;br /&gt;
[x] When the sensor(s) above are tripped and they are armed&amp;lt;br&amp;gt;&lt;br /&gt;
[ ] When the sensors above are tripped and they are *not* armed&amp;lt;br&amp;gt;&lt;br /&gt;
[ ] When you take an automatic picture for the archive&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Configuration parameters for the Z-Wave device ==&lt;br /&gt;
&lt;br /&gt;
-- this section is not current --&lt;br /&gt;
&lt;br /&gt;
The Z-Wave device, the parent of all Z-Wave nodes, has configuration parameters as well:&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_COM_Port_on_PC_CONST 37:'''  The com port/linux device for the Z-Wave dongle.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Polling_Settings_CONST 283:''' The default poll settings, comma separated: [0|1] polling enabled, seconds to wait after startup before polling, seconds of idle time on the network before doing a poll, how many seconds to wait between polling nodes, seconds to wait between polling each node.&amp;lt;br&amp;gt;&lt;br /&gt;
So, &amp;quot;FK_DeviceData_283&amp;quot;: &amp;quot;1,20,10,10,60&amp;quot; is displayed as:&amp;lt;br&amp;gt;&lt;br /&gt;
[x] Poll nodes&amp;lt;br&amp;gt;&lt;br /&gt;
Wait 20 seconds to start polling.&amp;lt;br&amp;gt;	&lt;br /&gt;
Only poll a node if the Z-Wave network is idle at least 10 seconds.&amp;lt;br&amp;gt;&lt;br /&gt;
Poll a node every 10 seconds.&amp;lt;br&amp;gt;&lt;br /&gt;
Unless specified otherwise, poll each node at most once every 60 seconds.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Configuration_CONST 59:''' Firmware version of the dongle.  Read only&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_PortChannel_Number_CONST 12:''' House code and node id of the dongle.  Read only.&lt;br /&gt;
&lt;br /&gt;
'''DEVICEDATA_Capabilities_CONST 207:''' Read only status if the device is SUC/SIS and primary or not, such as: &amp;quot;Suc SIS:YES PRI:YES&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Creating scenes in the user_data.json ==&lt;br /&gt;
&lt;br /&gt;
--this section is not current--&lt;br /&gt;
&lt;br /&gt;
A scene is just a list of commands to send to various devices.  The Scenes section of user_data contains the pre-defined scenes.  For example:&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;scenes&amp;quot;: {&lt;br /&gt;
        &amp;quot;scene_10&amp;quot;: {&lt;br /&gt;
            &amp;quot;Description&amp;quot;: &amp;quot;leave home&amp;quot;,&lt;br /&gt;
            &amp;quot;FK_Room&amp;quot;: &amp;quot;5&amp;quot;,&lt;br /&gt;
            &amp;quot;commands_ids&amp;quot;: [&lt;br /&gt;
                1,&lt;br /&gt;
                2,&lt;br /&gt;
                3,&lt;br /&gt;
                4,&lt;br /&gt;
                5 &lt;br /&gt;
            ],&lt;br /&gt;
            &amp;quot;commands&amp;quot;: {&lt;br /&gt;
                &amp;quot;command_1&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 5,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;972&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_2&amp;quot;: 24,&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_5&amp;quot;: &amp;quot;ARMED&amp;quot; &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_2&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 14,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;184&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_76&amp;quot;: 75 &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_3&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 14,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;193&amp;quot;,&lt;br /&gt;
                    &amp;quot;Delay&amp;quot;: 60 &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_4&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 21,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;280&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_8&amp;quot;: &amp;quot;C&amp;quot; &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_5&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 21,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;278&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_5&amp;quot;: 20 &lt;br /&gt;
                    } &lt;br /&gt;
                } &lt;br /&gt;
            } &lt;br /&gt;
        } &lt;br /&gt;
    }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
This defines a scene called &amp;quot;leave home&amp;quot; which is in room.  It sets a thermostat (device #21) to 'cool' mode (command #280) and to 20 degrees celsius (command #278).  It also arms a motion detector (command #972).  As explained below, ZWave motion detectors themselves don't have an arm/disarm command.  It's just a flag which the security plugin keeps so that when a sensor is tripped, it knows if it's an &amp;quot;armed sensor tripped event&amp;quot; or a normal &amp;quot;sensor tripped event&amp;quot;.  So the command goes to device #5 (the security plugin), and the device id of the motion sensor (24) is a parameter to it.  It also sets device #14 (a light) to 75% (command #184) and after 60 seconds turns it off (command #193).  The list of device #'s is found in user_data Devices section.  The command and parameters and how to use them are explained below.&lt;br /&gt;
&lt;br /&gt;
To add this scene, you would submit the following JSON in the POST data for the user_data request.  Note that if you do a POST with an existing scene ID, the entire scene is replaced.  Changes are not merged.  For example, if you want to add a timer to an existing scene, send the entire scene again, with command, and include the timer.  We did this because it was difficult in the java script UI to keep track of all the changes and was easier to have the UI just re-send the whole scene each time.  See: [[Data_Provider_Catalog_Plugin_Requests]]&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;scenes&amp;quot;: {&lt;br /&gt;
        &amp;quot;scene_1000010&amp;quot;: {&lt;br /&gt;
            &amp;quot;Description&amp;quot;: &amp;quot;leave home&amp;quot;,&lt;br /&gt;
            &amp;quot;FK_Room&amp;quot;: &amp;quot;5&amp;quot;,&lt;br /&gt;
            &amp;quot;commands_ids&amp;quot;: [&lt;br /&gt;
                1,&lt;br /&gt;
                2,&lt;br /&gt;
                3,&lt;br /&gt;
                4,&lt;br /&gt;
                5 &lt;br /&gt;
            ],&lt;br /&gt;
            &amp;quot;commands&amp;quot;: {&lt;br /&gt;
                &amp;quot;command_1&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 5,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;972&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_2&amp;quot;: 24,&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_5&amp;quot;: &amp;quot;ARMED&amp;quot; &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_2&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 14,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;184&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_76&amp;quot;: 75 &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_3&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 14,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;193&amp;quot;,&lt;br /&gt;
                    &amp;quot;Delay&amp;quot;: 60 &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_4&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 21,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;280&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_8&amp;quot;: &amp;quot;C&amp;quot; &lt;br /&gt;
                    } &lt;br /&gt;
                },&lt;br /&gt;
                &amp;quot;command_5&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Device_To&amp;quot;: 21,&lt;br /&gt;
                    &amp;quot;FK_Command&amp;quot;: &amp;quot;278&amp;quot;,&lt;br /&gt;
                    &amp;quot;params&amp;quot;: {&lt;br /&gt;
                        &amp;quot;FK_CommandParameter_5&amp;quot;: 80 &lt;br /&gt;
                    } &lt;br /&gt;
                } &lt;br /&gt;
            },&lt;br /&gt;
            &amp;quot;json_action&amp;quot;: &amp;quot;add&amp;quot; &lt;br /&gt;
        } &lt;br /&gt;
    } &lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note the tag &amp;quot;json_action&amp;quot;: &amp;quot;add&amp;quot; within the scene.  This tells the data provider handler to add this scene.  Also note that the scene id number is 1000010.  The convention is that when adding new devices, scenes, rooms, sections or users you should use an id number &amp;gt; 1,000,000.  When the data provider handler sees an id number &amp;gt;1m, it automatically changes it to be the next available id #.  This is because all devices, scenes, rooms, sections and users need a unique id #.  Since there could be multiple web ui's submitting user changes at once, you don't want the web ui to assign the id # as there may be a collision.  If there were, the plugin would merge the data from the 2 post's.  By using an id# &amp;gt; 1m, you are ensured there will be no conflicts as the id # will be changed when it's processed.  Note that the same user_data you POST to with the new data, will also return the resulting user_data after the POST.  So after POST'ing the data, you should parse and use the user_data that is returned, and discard any copy of the user_data you posted, as the id #'s may be different.&lt;br /&gt;
&lt;br /&gt;
POST'ing the commands_ids is purely optional.  The Vera back-end doesn't ever use any of the _ids parameters in the json file.  They are there purely for the convenience of the web engine if it makes it easier to parse the json files.&lt;br /&gt;
&lt;br /&gt;
== List of commands and parameters to send to devices  ==&lt;br /&gt;
&lt;br /&gt;
The complete list of all commands and parameters is in the '''template_data''' JSON file explained [[Data Provider Catalog Plugin|here]]. There are over 1,000 commands in the full LinuxMCE command set. But the common ones used in Vera are: &lt;br /&gt;
&lt;br /&gt;
'''#184 Set Level:''' Sets a device to a certain level. For dimmable lights this sets the level&amp;lt;br&amp;gt; Parameters: #76 Level: a number between 0 and 100 &lt;br /&gt;
&lt;br /&gt;
'''#192 On/#193 Off:''' Turns a device on or off. This is also used for unlock/lock door locks&amp;lt;br&amp;gt; Parameters: #76 Level: a number between 0 and 100 &lt;br /&gt;
&lt;br /&gt;
'''#278 Set Temperature:''' Sets a thermostat's set point to a given temperature&amp;lt;br&amp;gt; Parameters: #5 Value_To_Assign: The temperature in degrees celsius. The number may be preceded with a - or a + to decrease/increase the temperature relative to its current setting, and may be followed by an H or C to set only heat or cool set point. If H or C is not specified, both heat/cool set points will be set for those thermostats that support dual set points &lt;br /&gt;
&lt;br /&gt;
'''#279 Set Fan:''' Sets the fan of a thermostat to always on or to automatic&amp;lt;br&amp;gt; Parameters: #8 On/Off: Set this value to 1 to put the thermostat in 'on' mode, and 0 to put it in 'auto' mode. &lt;br /&gt;
&lt;br /&gt;
'''#280 Set Heat/Cool:''' Sets the thermostat to heat/cool&amp;lt;br&amp;gt; Parameters: #8 On/Off: Set this value to H for heat mode, C for cool. To turn the thermostat off, send command #193 (off), and to put it in full 'auto' mode, send command #192 (on) &lt;br /&gt;
&lt;br /&gt;
'''#370 Execute Command Group:''' In the user_data, find the device with the template &amp;quot;FK_DeviceTemplate&amp;quot;: &amp;quot;27&amp;quot; (General_Info_Plugin) and send it this command to execute a scene. By including this command within a scene, you can have one scene execute or embed another scene.&amp;lt;br&amp;gt; Parameters: #28 PK_CommandGroup: This is the ID of the scene (i.e. the number following scene_).&amp;lt;br&amp;gt; Parameters: #9 Text: If you want to test a scene that you have not yet created, instead of passing the command group parameter above, you put send the raw string of commands in this format:&amp;lt;br&amp;gt; PK_Device,PK_DeviceGroup,PK_Command,Delay,CancelIfOther,IsTemporary,&amp;quot;PK_CommandParameter&amp;quot;,&amp;quot;Description&amp;quot;&amp;lt;br&amp;gt; where each command is separated with a new line (\n). In Vera's UI, when you execute a scene from the Dashboard (i.e. a scene that's already saved), it passes the scene # in parameter #28. When the user clicks 'Test' next to a scene in the scene editor, and you want to test a scene that you have not yet saved, it is sent as parameter #9. You can grep DCERouter.log for '^08' (lines starting with 08 are commands) after clicking 'Test' to see the syntax. &lt;br /&gt;
&lt;br /&gt;
'''#684 Zoom In/#685 Zoom Out/#200 Move Up/#201 Move Down/#202 Move Left/#203 Move Right:''' Send these commands to a camera for pan/tilt/zoom.&amp;lt;br&amp;gt; Parameters: None &lt;br /&gt;
&lt;br /&gt;
'''#84 Get_Video_Frame:''' Send this command to a camera to retrieve the current image as a JPEG file: Parameters: #19 Data: This is an output parameter that is returned, not an input parameter. It contains the actual image. The parameter type is 'Data', so it contains a block of binary data.&amp;lt;br&amp;gt; Parameters: #20 Format: This is the format of the data. Presently all the cameras return 'JPEG'. &lt;br /&gt;
&lt;br /&gt;
'''#776 Reset (when sent to a Z-Wave node):''' When sent to a Z-Wave node (i.e. a child of the device Z-Wave interface), it resets that node and causes it to be reconfigured. This is what's sent with Vera's &amp;quot;configure node right now&amp;quot; button. A configuration job is immediately added to the queue.&amp;lt;br&amp;gt; Parameters: none &lt;br /&gt;
&lt;br /&gt;
'''#776 Reset (when sent to the Z-Wave interface):''' When sent to the parent Z-Wave device, the interface which is often device #9, it resets the Z-Wave pairing in dongle. This is the only way to restore the black dongle to a clean state. If you do a hardware reset of Vera, without sending this command, the pairings will remain because they're stored in the dongle itself. This command is sent from Vera's Devices, Z-Wave options, 'reset zwave network' button explained here: [[ZWave Options]].&amp;lt;br&amp;gt; Parameters: #51 &amp;lt;br&amp;gt;Arguments: This parameter can be: SUC or SIS (i.e. send either of those 3 character strings, or leave the parameter blank). The default is to send it with SIS. This is a Z-Wave term, meaning the dongle will report new nodes to slave controllers. &lt;br /&gt;
&lt;br /&gt;
'''#967 Add Node:''' When sent to the parent Z-Wave device, the interface which is often device #9, it causes the dongle to go into 'pairing' mode to add new devices. See [[ZWave Options|Z-Wave Options]]&amp;lt;br&amp;gt; Parameters: #39 Options: This parameter can be the single character H to use high power inclusion. Or it can be the word CANCEL to stop any current add/remove going on.&amp;lt;br&amp;gt; Parameters: #48 Value: If empty or set to 1, any type of node can be added. You can also send one of the following values to restrict what type of node is added: 2=node controller, 3=node slave, 4=node existing, 5=node stop, 6=node stop failed&amp;lt;br&amp;gt; Parameters: #182 Timeout: Number of seconds to timeout. If not specified default is 60 seconds. This is how long to wait for the new node.&amp;lt;br&amp;gt; Parameters: #259 Multiple: If true (i.e. 1) then multiple devices can be added and the dongle will stay in include mode until the timeout is reached. Otherwise, the dongle will only add 1 device and exit add mode. &lt;br /&gt;
&lt;br /&gt;
'''#968 Remove Node:''' When sent to the parent Z-Wave device, the interface which is often device #9, it causes the dongle to go into 'reset' mode to remove devices. See [[ZWave Options|Z-Wave Options]]&amp;lt;br&amp;gt; Parameters: #39 Options: This parameter can be the single character H to use high power inclusion.&amp;lt;br&amp;gt; Parameters: #48 Value: If empty or set to 1, any type of node can be removed. You can also send one of the following values to restrict what type of node is removed: 2=node controller, 3=node slave, 4=node existing, 5=node stop, 6=node stop failed&amp;lt;br&amp;gt; Parameters: #182 Timeout: Number of seconds to timeout. If not specified default is 60 seconds. This is how long to wait for the node to be removed.&amp;lt;br&amp;gt; Parameters: #259 Multiple: If true (i.e. 1) then multiple devices can be removed and the dongle will stay in remove mode until the timeout is reached. Otherwise, the dongle will only remove 1 device and exit remove mode. &lt;br /&gt;
&lt;br /&gt;
'''#972 Set Sensor State:''' In the user_data, find the device with the template &amp;quot;FK_DeviceTemplate&amp;quot;: &amp;quot;33&amp;quot; (Security_Plugin) and send it this command to change the arm/unarmed state of a sensor. Z-Wave doesn't have the concept of armed/unarmed sensors. But the security plugin keeps a flag for all sensors so when a sensor is tripped, it can fire the normal 'sensor tripped' only, or also a 'armed sensor is tripped' event.&amp;lt;br&amp;gt; Parameters: #2 PK_Device: This is the device ID of the sensors&amp;lt;br&amp;gt; Parameters: #5 Value To Assign: Can be either: ARMED or UNARMED &lt;br /&gt;
&lt;br /&gt;
'''#974 Set PIN:''' For door locks, this sets a user code or pin.&amp;lt;br&amp;gt; Parameters: #17 PK_Users: This is user code to set&amp;lt;br&amp;gt; Parameters: #99 Password: This is the pin code. Leave it blank to clear the pin code for the given user.&lt;br /&gt;
&lt;br /&gt;
== Timer ==&lt;br /&gt;
&lt;br /&gt;
If you want to have a scene executed automatically at a certain time, add a [[Timer]].  As explained above, you must re-send the whole scene with the timer.  Add a JSON block like this to a scene to make it a timer:&lt;br /&gt;
&lt;br /&gt;
            &amp;quot;Timer&amp;quot;: {&lt;br /&gt;
                &amp;quot;PK_Timer_1&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Description&amp;quot;: &amp;quot;T_on30m&amp;quot;,&lt;br /&gt;
                    &amp;quot;Type&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                    &amp;quot;Enabled&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                    &amp;quot;Criteria&amp;quot;: {&lt;br /&gt;
                        &amp;quot;param_1&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 11,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;30m&amp;quot; &lt;br /&gt;
                        } &lt;br /&gt;
                    } &lt;br /&gt;
                } &lt;br /&gt;
            }&lt;br /&gt;
&lt;br /&gt;
The Timer ID # (1 in this case) can be whatever you want, as well as the description.  If Enabled is set to &amp;quot;0&amp;quot;, the timer will not execute.  Type can be: INTERVAL_EVENT=1 (ie does something every x minutes/seconds), DAY_OF_WEEK=2, DAY_OF_MONTH=3, ABSOLUTE_TIME=4.  In all cases, the parameters for the type are specified in the Criteria section.  The operator is OPERATOR_EQUALS=1, OPERATOR_NOTEQUALS=2, OPERATOR_GREATERTHAN=3, OPERATOR_LESSTHAN=4, OPERATOR_CONTAINS=5.&lt;br /&gt;
&lt;br /&gt;
For interval timers, leave parm blank, use &amp;quot;PK_CriteriaParmList&amp;quot;: 11 (per LinuxMCE this is: #define CRITERIAPARMLIST_Time_of_day_CONST 11), and set the value to a number followed by m or h (minutes/hours).  The above is a timer that will go off every 30 minutes.&lt;br /&gt;
&lt;br /&gt;
For Day of Week timers, set CRITERIAPARMLIST_Day_Of_Week_CONST 17 with a comma separated list of days of week (ie 1=Sunday), and CRITERIAPARMLIST_Time_of_day_CONST 11 is the time of day.  Multiple times are comma separated.  Times can be in 12 hour (with an optional am/pm) or 24 hour.  All the following are acceptable ways of saying 3:15pm: 3:15pm 3:15 p.m., 3:15p, 15:15.  Generally we use 24 hour time since it's simpler.  Here is a day of week timer that goes off every day at 6pm and 8pm:&lt;br /&gt;
&lt;br /&gt;
                    &amp;quot;Criteria&amp;quot;: {&lt;br /&gt;
                        &amp;quot;param_1&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 17,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;1,2,3,4,5,6,7&amp;quot; &lt;br /&gt;
                        },&lt;br /&gt;
                        &amp;quot;param_2&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 11,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;6:00pm ,20:00&amp;quot; &lt;br /&gt;
                        } &lt;br /&gt;
                    } &lt;br /&gt;
&lt;br /&gt;
For day of month timers, type 3, set CRITERIAPARMLIST_Day_Of_Month_CONST 18 to the days of the month, and CRITERIAPARMLIST_Time_of_day_CONST 11 to the time(s) of day.  The following goes off on the 2nd and 7th of each month, at midnight, and 9:30:35pm&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;Criteria&amp;quot;: {&lt;br /&gt;
                        &amp;quot;param_1&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 18,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;2,7&amp;quot; &lt;br /&gt;
                        },&lt;br /&gt;
                        &amp;quot;param_2&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 11,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;0:00,21:30:35&amp;quot; &lt;br /&gt;
                        } &lt;br /&gt;
                    } &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For absolute timers, set &amp;quot;PK_CriteriaParmList&amp;quot;: 19 (CRITERIAPARMLIST_Specific_Date_CONST 19) and set the Value to the actual date/time.   The following timer will go off on Feb 15, 2009 at 14:30:30&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;PK_Timer_2&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Description&amp;quot;: &amp;quot;New timer&amp;quot;,&lt;br /&gt;
                    &amp;quot;Type&amp;quot;: &amp;quot;4&amp;quot;,&lt;br /&gt;
                    &amp;quot;Enabled&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                    &amp;quot;commands_ids&amp;quot;: [&lt;br /&gt;
                        &lt;br /&gt;
                    ],&lt;br /&gt;
                    &amp;quot;commands&amp;quot;: {&lt;br /&gt;
                        &lt;br /&gt;
                    },&lt;br /&gt;
                    &amp;quot;Criteria&amp;quot;: {&lt;br /&gt;
                        &amp;quot;param_1&amp;quot;: {&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: 19,&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: 1,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;2009-2-15 14:30:30&amp;quot; &lt;br /&gt;
                        } &lt;br /&gt;
                    } &lt;br /&gt;
                } &lt;br /&gt;
            },&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Event  ==&lt;br /&gt;
&lt;br /&gt;
To make a scene happen automatically, add an [[Event]]. Note that any device in the system can fire any event. The event ID numbers and the parameters for each are defined in'''template_data'''. Therefore, when you add an event, this is a free-form template that can be used for any type of event. '''PK_CriteriaParmList''' is one of the following: &lt;br /&gt;
&lt;br /&gt;
1=CRITERIAPARMLIST_System_CONST&amp;lt;br&amp;gt; 2=CRITERIAPARMLIST_PK_Installation_CONST&amp;lt;br&amp;gt; 3=CRITERIAPARMLIST_PK_Skin_CONST&amp;lt;br&amp;gt; 5=CRITERIAPARMLIST_Month_CONST&amp;lt;br&amp;gt; 8=CRITERIAPARMLIST_PK_Device_CONST&amp;lt;br&amp;gt; 10=CRITERIAPARMLIST_PK_DeviceTemplate_CONST&amp;lt;br&amp;gt; 11=CRITERIAPARMLIST_Time_of_day_CONST&amp;lt;br&amp;gt; 12=CRITERIAPARMLIST_PK_DeviceCategory_CONST&amp;lt;br&amp;gt; 13=CRITERIAPARMLIST_PK_Room_CONST&amp;lt;br&amp;gt; 14=CRITERIAPARMLIST_PK_DeviceGroup_CONST&amp;lt;br&amp;gt; 15=CRITERIAPARMLIST_House_Mode_CONST&amp;lt;br&amp;gt; 16=CRITERIAPARMLIST_Room_Mode_CONST&amp;lt;br&amp;gt; 17=CRITERIAPARMLIST_Day_Of_Week_CONST&amp;lt;br&amp;gt; 18=CRITERIAPARMLIST_Day_Of_Month_CONST&amp;lt;br&amp;gt; 19=CRITERIAPARMLIST_Specific_Date_CONST&amp;lt;br&amp;gt; 20=CRITERIAPARMLIST_PK_RoomType_CONST&amp;lt;br&amp;gt; 22=CRITERIAPARMLIST_PK_EventList_CONST&amp;lt;br&amp;gt; 23=CRITERIAPARMLIST_PK_EventHandler_CONST&amp;lt;br&amp;gt; 24=CRITERIAPARMLIST_PK_EventParameter_CONST&amp;lt;br&amp;gt; 25=CRITERIAPARMLIST_User_Mode_CONST&amp;lt;br&amp;gt; 26=CRITERIAPARMLIST_State_CONST&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The operator is OPERATOR_EQUALS=1, OPERATOR_NOTEQUALS=2, OPERATOR_GREATERTHAN=3, OPERATOR_LESSTHAN=4, OPERATOR_CONTAINS=5. &lt;br /&gt;
&lt;br /&gt;
Only CRITERIAPARMLIST_PK_EventParameter_CONST uses the &amp;quot;Parm&amp;quot; field for the criteria, and in this case, the &amp;quot;Parm&amp;quot; field is the ID of the EventParameter and Value is the value of the event parameter. &lt;br /&gt;
&lt;br /&gt;
The following event will be evaluated TRUE when the device #21 (see 8=CRITERIAPARMLIST_PK_Device_CONST, operator 1 is 1) fires the event #25 (EVENT_Temperature_Changed_CONST 25) and the parameter #30 for the event EVENTPARAMETER_Value_CONST 30 is &amp;amp;gt;32 -- that is, (24=CRITERIAPARMLIST_PK_EventParameter_CONST parameter #30 operator 3=&amp;amp;gt; and value is 32). In other words, when the thermostat says the temperature is &amp;amp;gt; 32 degrees celsius the event will fire and the scene the event is attached to will be executed. &lt;br /&gt;
&lt;br /&gt;
                &amp;quot;PK_Event_2&amp;quot;: {&lt;br /&gt;
                    &amp;quot;Description&amp;quot;: &amp;quot;temp reached&amp;quot;,&lt;br /&gt;
                    &amp;quot;FK_CannedEvents&amp;quot;: &amp;quot;101&amp;quot;,&lt;br /&gt;
                    &amp;quot;PK_Event&amp;quot;: &amp;quot;25&amp;quot;,&lt;br /&gt;
                    &amp;quot;Enabled&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                    &amp;quot;Criteria&amp;quot;: {&lt;br /&gt;
                        &amp;quot;param_42&amp;quot;: {&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;21&amp;quot;,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: &amp;quot;8&amp;quot; &lt;br /&gt;
                        },&lt;br /&gt;
                        &amp;quot;param_43&amp;quot;: {&lt;br /&gt;
                            &amp;quot;Operator&amp;quot;: &amp;quot;3&amp;quot;,&lt;br /&gt;
                            &amp;quot;Value&amp;quot;: &amp;quot;32&amp;quot;,&lt;br /&gt;
                            &amp;quot;PK_ParameterType&amp;quot;: 2,&lt;br /&gt;
                            &amp;quot;Parm&amp;quot;: &amp;quot;30&amp;quot;,&lt;br /&gt;
                            &amp;quot;PK_CriteriaParmList&amp;quot;: &amp;quot;24&amp;quot; &lt;br /&gt;
                        } &lt;br /&gt;
                    } &lt;br /&gt;
                } &lt;br /&gt;
&lt;br /&gt;
Rather than presenting the user a free-form form to fill out to specify his event, Vera uses &amp;quot;Canned Events&amp;quot;, which are defined in template_data. These are basically event templates that define some common events and what parameters to prompt the user for. In the example above, note the canned event is 101. In template data: &lt;br /&gt;
&lt;br /&gt;
&amp;quot;PK_CannedEvents_101&amp;quot;: { &amp;quot;Description&amp;quot;:&amp;quot;Temperature is reached&amp;quot;, &amp;quot;FK_Event&amp;quot;:&amp;quot;25&amp;quot;, &amp;quot;bIsAnd&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;bIsNot&amp;quot;:&amp;quot;0&amp;quot; }, &lt;br /&gt;
&lt;br /&gt;
So it's an event handler for event #25, which is: &lt;br /&gt;
&lt;br /&gt;
&amp;quot;PK_Event_25&amp;quot;: { &amp;quot;FK_EventCategory&amp;quot;:&amp;quot;10&amp;quot;, &amp;quot;Description&amp;quot;:&amp;quot;Temperature Changed&amp;quot; }, &lt;br /&gt;
&lt;br /&gt;
'''bIsAnd''' means all the parameters are AND'd together and must all match. If bIsAnd were 0, it would be an OR. bIsNot means the negative, that is, trip the event if all the criteria are false. You also see: &lt;br /&gt;
&lt;br /&gt;
&amp;quot;PK_CannedEvents_CriteriaParmList_102&amp;quot;: { &amp;quot;FK_CannedEvents&amp;quot;:&amp;quot;101&amp;quot;, &amp;quot;FK_CriteriaParmList&amp;quot;:&amp;quot;8&amp;quot;, &amp;quot;Description&amp;quot;:&amp;quot;Which device?&amp;quot;, &amp;quot;Comments&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;Operator&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;Parm&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;DefaultValue&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;ExtraInfo&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;Required&amp;quot;:&amp;quot;0&amp;quot; }, &amp;quot;PK_CannedEvents_CriteriaParmList_103&amp;quot;: { &amp;quot;FK_CannedEvents&amp;quot;:&amp;quot;101&amp;quot;, &amp;quot;FK_CriteriaParmList&amp;quot;:&amp;quot;24&amp;quot;, &amp;quot;Description&amp;quot;:&amp;quot;What temperature?&amp;quot;, &amp;quot;Comments&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;Operator&amp;quot;:&amp;quot;1&amp;quot;, &amp;quot;Parm&amp;quot;:&amp;quot;30&amp;quot;, &amp;quot;DefaultValue&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;ExtraInfo&amp;quot;:&amp;quot;&amp;quot;, &amp;quot;Required&amp;quot;:&amp;quot;0&amp;quot; }, &lt;br /&gt;
&lt;br /&gt;
So, when prompting the user for a &amp;quot;Temperature changed&amp;quot; event, we will want to get 2 things: the device, and the temperature. Notice that in Vera's UI, the user is prompted for both, and they become part of the event that is attached to the scene. (See '''template_data''' for the complete list of events.)&lt;br /&gt;
&lt;br /&gt;
You do not necessarily need to parse '''template_data''' in your own UI implementation. The cleanest UI has a custom &amp;quot;hardcoded&amp;quot; panel for the user to fill out. But, '''template_data''' explains all the events Vera's UI prompts for and what values are used.&lt;br /&gt;
&lt;br /&gt;
== Sending Commands  ==&lt;br /&gt;
&lt;br /&gt;
The UI should always send commands with a return response (type r or o), as explained in [[Data Provider Catalog Plugin]]. The response will be &amp;quot;OK x&amp;quot; where x is the optional job #. For most Z-Wave activities, a job is created and the ID is returned. Some types of commands don't have job numbers, like controlling a camera. However, you must always check for an OK. It is normal that when you send a command it might not get through because the router is reloading the data, or the Z-Wave device is reset. After you submit new data with a user_data post, the router will reload, which takes a couple seconds, and then the Z-Wave device will also reload and re-configure any devices. So when sending a command, you should do this in a loop that tries to re-send the command every 5 seconds, for up to 30 seconds, until it gets an OK. During this time the UI should display some hourglass or something so the user knows his command hasn't been received or acknowledged yet. If the router and the Z-Wave module are already running, which is normally the case if you haven't just saved, you should get back the OK in less than 1 second. In the case of Z-Wave, the OK just means the command has been queued. It does not mean it's actually been sent on the Z-Wave network. Under normal circumstance the command will be sent right away. But, sometimes, the Z-Wave network may be busy. Or if the device is flaky, or if needs a lot of hops, or if it's a secure device which causes key exchange, the command can take a while to be processed. And, the command may fail. The initial OK just tells you the job was queued, not that it was successful. &lt;br /&gt;
&lt;br /&gt;
To find out if the job was successful and monitor its progress, you can do 3 things:&lt;br /&gt;
&lt;br /&gt;
1) you can use the '''zwave_status''' request (see [[ZWave Status|Z-Wave Status]]). This shows you all the jobs that are currently active or were completed within the last 30 seconds. It is broken down by device, and will contain the job ID.&lt;br /&gt;
&lt;br /&gt;
2) use '''job_status''' passing in the device ID only, such as '''http://127.0.0.1:3451/data_request?id=job_status&amp;amp;amp;parameters=13''' (for the parameter, you can pass either the device id of the Z-Wave device itself, or any of its children). This will return all jobs that are currently active. Jobs that are completed are not on the list. (See [[Data Provider Catalog Plugin Requests]])&lt;br /&gt;
&lt;br /&gt;
3) use the same request, but add [job #]. This will return just the information on the requested job, and you can get information on the job up to 3 minutes after the job has ended. ( See [[Data Provider Catalog Plugin Requests]])&lt;br /&gt;
&lt;br /&gt;
The reason for the 30 second timeout in option #1 is to make the UI presentation easier. The assumption is that if you're going to show all devices and icons representing the active jobs, after a job is completed and 30 seconds has passed, you probably don't want it on the list. But, if you're requesting specific information on a particular job, as in #3, you want the job info to be available as long as possible, and 3 minutes is how long a job is kept in the memory after completion before it's dumped.&lt;br /&gt;
&lt;br /&gt;
== Miscellaneous Test Tips ==&lt;br /&gt;
&lt;br /&gt;
If you want to create some sample devices, run:&lt;br /&gt;
&lt;br /&gt;
'''/usr/bin/MessageSend localhost 0 9 1 776 51 MANYNODES 88 xxx'''&lt;br /&gt;
&lt;br /&gt;
where '''xxx''' is the number of sets of test devices. This will create a set of dummy devices that don't actually exist, but that you can see how they work in the UI. Such as a thermostat, light switch, etc. So if you run it with xxx=1, it will create 1 set. If you want to see how the UI looks with lots of creates, run it with 15. Run it with 0 to return to normal.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/UI_Notes</id>
		<title>UI Notes</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/UI_Notes"/>
				<updated>2010-04-17T21:29:29Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
Here is some general information about getting information to display in a user interface:&lt;br /&gt;
&lt;br /&gt;
== UPnP messaging system  ==&lt;br /&gt;
&lt;br /&gt;
Vera uses UPnP for all the messaging, such as turning lights on and off.  So Vera translates Z-Wave, Insteon, infrared codes, etc., into UPnP actions. If you have already implemented a UPnP stack and can send properly formated UPnP SOAP/XML requests, you can control everything using standard UPnP action invocation. If you did not, Vera provides a simple HTTP GET interface as well, which is discussed below.&lt;br /&gt;
&lt;br /&gt;
In a nutshell UPnP works like this: You have UPnP devices, which are things that can be controlled and can report their state, like a light switch.  And you have UPnP Control Points, which are the things that let a user control UPnP devices, like a touch-screen web pad.  The Control Point does this by a) reading the device and descriptions for the UPnP device to see what it can do, and b) invoking actions on the UPnP device (ie telling it to do something), and c) reading and setting variables for the device which describe the current state and/or configuration settings for the device.&lt;br /&gt;
&lt;br /&gt;
A UPnP device is defined in an XML document called a device description document.  To see one, in Vera's setup UI, go to Devices, Luup plugins, Luup Files, and click 'view' file next to D_BinaryLight1.xml.  Use Firefox since it has a built-in XML viewer.  Notice the tag: &amp;lt;deviceType&amp;gt;urn:schemas-upnp-org:device:BinaryLight:1&amp;lt;/deviceType&amp;gt;.  This defines the type of device, namely an on/off light switch, which is what you use to know how to represent this device to a user.  A device optionally implements one or more services.  In this case the services: urn:upnp-org:serviceId:SwitchPower1, urn:micasaverde-com:serviceId:EnergyMetering1 and urn:micasaverde-com:serviceId:HaDevice1.&lt;br /&gt;
&lt;br /&gt;
A service is a collection of actions which a device implement and which you can invoke from a UPnP Control Point, as well as a collection of variables which always have a current value.  The variables describe the current state of the device and/or configuration settings.  View the file S_SwitchPower1.xml to see a service.  For example, the device urn:schemas-upnp-org:device:BinaryLight:1 implements the service urn:upnp-org:serviceId:SwitchPower1, which has the action SetTarget, which is how you turn the light on and off.  The action takes a single argument newTargetValue which can be 0 to turn the light off and 1 to turn it on.  The service also has the variable Status which is 0 or 1 depending on whether the light is currently on or off.&lt;br /&gt;
&lt;br /&gt;
If you open the device description for a dimmable light D_DimmableLight1.xml you'll see that it implements the same service S_SwitchPower1.xml, since you can still turn it on and off, and it also implements the service urn:upnp-org:serviceId:Dimming1, which has an action to set the dim level (SetLoadLevelTarget).&lt;br /&gt;
&lt;br /&gt;
To test UPnP calls you can use the Intel Device Spy utility available [http://www.intel.com/cd/ids/developer/asmo-na/eng/downloads/upnp/tools/218896.htm?desturl=http://softwarecommunity.intel.com/isn/downloads/zips/IntelToolsForUPnPTechnology_v2.zip here].  It should pick up Vera, show you all the devices, like light switches, thermostats, etc., let you expand the services and see the actions and variables.  Click an action, like SetTarget, to specify the arguments and click 'Invoke' to run the action, such as turning on and off the light.&lt;br /&gt;
&lt;br /&gt;
== JSON vs. XML ==&lt;br /&gt;
&lt;br /&gt;
The native UPnP protocol uses XML/SOAP.  But there are also several times you will request data from Vera that has nothing to do with the UPnP spec.  These will be done with data_request's as explained below, such as user_data, lu_status, etc.  Internally Vera uses JSON as the native format, but Vera can convert to XML (details follow).  In general when you want to view data in a human readable format, such as the device list, it's easiest to use the Firefox browser, and request Vera convert the data to XML.  Firefox has a nice browser to display XML in human readable format.  If you want to make the JSON data nicely formatted, you can use the web site jsonlint.com.  In a UI application which will request data regularly from Vera we recommend retrieving everything in JSON format, not XML, because Vera's CPU is not that powerful and so continuous requests of data in XML format will cause a lot of CPU time to be devoted to converting JSON into XML.&lt;br /&gt;
&lt;br /&gt;
== Finding Vera on the local network  ==&lt;br /&gt;
&lt;br /&gt;
You can find Vera by using the traditional UPnP discovery process, or you can retrieve this URL:&amp;lt;br&amp;gt;'''http://findvera.com/locator.php'''&lt;br /&gt;
&lt;br /&gt;
Each Vera, when it boots up, reports its internal IP address to the central findvera.com server, which tracks this along with the external IP address. '''locator.php''' shows all serial numbers and internal network IP addresses on the same external IP. For example, if '''http://findvera.com/locator.php''' returns the following: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
 7300 192.168.1.114&lt;br /&gt;
 6907 192.168.1.102&lt;br /&gt;
 7618 192.168.1.117&lt;br /&gt;
&lt;br /&gt;
Then there are 3 Vera's on the same internal network (i.e. sharing the same external IP as your browser), with serial numbers 7300, 6907 and 7618, with the 3 IP internal (LAN)&amp;amp;nbsp;addresses shown. &lt;br /&gt;
&lt;br /&gt;
You can also pass a FindVera username to '''locator.php''' and it will return the serial number and IP associated with it, such as: &lt;br /&gt;
&lt;br /&gt;
http://findvera.com/locator.php?username=demovera&lt;br /&gt;
&lt;br /&gt;
== The HTTP interface  ==&lt;br /&gt;
&lt;br /&gt;
Vera listens on port 3480. Vera responds to UPnP actions the normal way, or by making simple HTTP requests. For example, to turn on a light you can either send the UPnP action &amp;quot;SetTarget&amp;quot; to the device using the normal UPnP mechanism, or you can simply put this URL in your web browser, or with wget, or similar: &lt;br /&gt;
&lt;br /&gt;
http://[ipadress]:3480/data_request?id=lu_action&amp;amp;amp;output_format=xml&amp;amp;amp;DeviceNum=10&amp;amp;amp;serviceId=urn:upnp-org:serviceId:SwitchPower1&amp;amp;amp;action=SetTarget&amp;amp;amp;newTargetValue=1 &lt;br /&gt;
&lt;br /&gt;
That URL will return the same results of the action as using the normal UPnP architecture. The '''output_format=xml''' on the URL means the data returned should be in XML format. You can instead use '''output_format=json'''&lt;br /&gt;
&lt;br /&gt;
The service ID's, actions, and arguments are all defined by the UPnP forum.  A list of ratified UPnP devices and services is available on the [http://www.upnp.org UPnP Forum].  Mi Casa Verde added its own custom devices and services when there was no existing UPnP standard.  A list of these can be found in the [[Luup_UPNP_Files]] header files.&lt;br /&gt;
&lt;br /&gt;
== Getting the system configuration  ==&lt;br /&gt;
&lt;br /&gt;
Either use the UPnP service/action:&amp;lt;br&amp;gt; '''urn:micasaverde-com:serviceId:HomeAutomationGateway1/GetUserData''' &lt;br /&gt;
&lt;br /&gt;
or use the built-in request: &lt;br /&gt;
&lt;br /&gt;
'''http://ipaddress:3480/data_request?id=user_data2&amp;amp;amp;output_format=json''' (or xml) &lt;br /&gt;
&lt;br /&gt;
This returns the system configuration file for Vera. It's assumed you understand the way Vera categorizes devices with Rooms, Devices, Scenes, etc. When creating a user interface for controlling Vera only, like on a mobile phone, most of the tags can be ignored, since usually you just need the list of rooms and devices.&lt;br /&gt;
&lt;br /&gt;
== Accessing Vera remotely through the findvera server ==&lt;br /&gt;
&lt;br /&gt;
Native UPnP only works on a local area home network, and cannot be used over the Internet.  The FindVera server provides a secure way to remotely access and control your Vera system using the HTTP interface without having to make any substantial changes to the UI.  Everything you can do locally with Vera on port 3480, you can do remotely with findvera using the exact same syntax.  You only need to ask the user for his username and password and pass them on the URL to the remote access server.  For example, the above user_data is the syntax for local access on a home network.  To retrieve the same URL over the internet with findvera use:&lt;br /&gt;
&lt;br /&gt;
https://ra1.findvera.com/demovera/myvera123/3480/data_request?id=lu_status&amp;amp;output_format=json&lt;br /&gt;
&lt;br /&gt;
assuming demovera is the username and myvera123 is the password that the user chose on the 'findvera' tab in his Vera setup page.  Note that since the request is https, the username and password are encrypted because https encrypts the URL's as well as the contents of the page.&lt;br /&gt;
&lt;br /&gt;
== Building a control-only UI for Vera  ==&lt;br /&gt;
&lt;br /&gt;
If you just want to control Vera, and not modify the configuration, such as with a cell phone interface or web pad, the flow might possibly work like this: &lt;br /&gt;
&lt;br /&gt;
1. For the initial setup, you need to ask whether the user wants to (a)&amp;amp;nbsp;access Vera remotely with the FindVera service, and if so, get the user's username/password; or (b) access Vera directly on the home network. You can use locator.php to show the Vera on the home network. You might want to do an auto-detect. For example, you could use locator.php to see if Vera exists locally, and if not, prompt the user for a FindVera username and password. You can use locator.php and pass the username to get the serial number and internal IP, and then automatically switch to direct access if locator.php (without the username) indicates that serial number is found on the local network. This would allow the user to automatically switch between local access with Wi-Fi (which is much faster of course) and remote access with FindVera and the mobile phone network. &lt;br /&gt;
&lt;br /&gt;
2. Once the connection is established, retrieve the list of rooms, scenes, and devices from Vera (see '''user_data''' below). You can cache this data locally so you don't need to retrieve it and parse it over and over.&lt;br /&gt;
&lt;br /&gt;
3. Present the user with the rooms, scenes, devices.  In Vera's UI's we show first the rooms and then let the user pick a device or scene in the room.  However this data could be presented graphically, such as on a floorplan.  Your UI can have Vera store extra tags and data in the configuration database (ie user_data) to store things like coordinates for icons, outlines or rooms and so on.&lt;br /&gt;
&lt;br /&gt;
4. If the user picks a scene you can run the scene with the following URL, passing the scene number as '''x''', and it will return an OK if it went okay: &lt;br /&gt;
&lt;br /&gt;
http://127.0.0.1:3480/data_request?id=lu_action&amp;amp;amp;serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&amp;amp;amp;action=RunScene&amp;amp;amp;SceneNum=x &lt;br /&gt;
&lt;br /&gt;
5. If the user picks a device, you use the category which is contained in the user_data to determine what type of controls to present the user. (See [[Luup UPNP Files]] for a list of the categories.) When the user chooses an action, you can send it like this: &lt;br /&gt;
&lt;br /&gt;
http://ipadress:3480/data_request?id=lu_action&amp;amp;amp;output_format=xml&amp;amp;amp;DeviceNum=10&amp;amp;amp;serviceId=urn:upnp-org:serviceId:SwitchPower1&amp;amp;amp;action=SetTarget&amp;amp;amp;newTargetValue=1 &lt;br /&gt;
&lt;br /&gt;
For a list of common actions and device types see: [[Luup CP Mandatory Types]] &lt;br /&gt;
&lt;br /&gt;
Some actions return immediately with an 'OK'. Other jobs may take time to complete and are processed asynchronously.  For these asynchronous jobs you will get a job ID back.  There are several ways to present this to the user.  One possibility is to do what Vera does in the UI, namely to use '''lu_status '''(explained next) to find all active jobs and to put a 'job' icon next to each device to indicate the progress of the job. In this way the user isn't tracking a particular job ''per se'', but just has visual feedback that a device is busy, and if the job icon(s) turn green, that everything went through okay. You could instead track the action individually using the job number that is returned, or use some other method, like making the icon for the device appear animated while it's busy, and turn green or red if the last command succeeded or failed.&lt;br /&gt;
&lt;br /&gt;
6. Periodically poll the system with '''lu_status''' (explained below), like this: &lt;br /&gt;
&lt;br /&gt;
http://ipaddress:3480/data_request?id=lu_status2&amp;amp;amp;output_format=json &lt;br /&gt;
&lt;br /&gt;
That returns the current values of the UPnP variables, which you can use to show the user current status. For example, if the variable Status is 1 for a switch, you can show the 'on' button in a selected state, while 0 shows it in an 'off' state. '''lu_status''' also shows any active jobs for a device.&lt;br /&gt;
&lt;br /&gt;
== user_data and lu_status ==&lt;br /&gt;
&lt;br /&gt;
NOTE: On UI3 builds, user_data2 and user_data are the same, and so is lu_status2 and lu_status.  However, on UI2 builds, user_data and lu_status have been deprecated, and you should user_data2 and lu_status2.  Therefore, it's best to simply always use user_data2 instead of user_data, and lu_status2 instead of lu_status.&lt;br /&gt;
&lt;br /&gt;
The user_data is the main configuration file that Vera uses to store all the rooms, devices, scenes, timers, events, users, and any other data about the system.  You should request the user_data to get whatever data you need to present to the user, at a minimum, for example, you'll need the list of devices, their descriptions, and the categories (light switch, thermostat, etc.).  You'll also want the list of scenes to present the user.  To fetch the current user_data from Vera use the user_data2 request, like this:&lt;br /&gt;
&lt;br /&gt;
http://[ip address]:3480/data_request?id=user_data2&lt;br /&gt;
&lt;br /&gt;
That returns the data in JSON format, the native format Vera uses.  To format it nicely for reading copy and paste it into jsonlint.com.  You can also use the Firefox browser and append &amp;amp;output_format=xml to have Vera convert it to XML format so it shows up nicely in Firefox's xml viewer: http://[ip address]:3480/data_request?id=user_data2&amp;amp;output_format=xml&lt;br /&gt;
&lt;br /&gt;
Although XML is easier to view with Firefox's human-readable viewer, for production use, use the JSON format because otherwise Vera has to convert JSON to XML for each request.&lt;br /&gt;
&lt;br /&gt;
Notice there is a tag, like this: DataVersion=&amp;quot;315587159&amp;quot; This is a timestamp of the last time the user_data was modified.  If you pass the DataVersion which you have on the URL, Vera will return a page with the text NO_CHANGES if that is still the current version of user_data, like: &lt;br /&gt;
&lt;br /&gt;
http://[ip address]:3480/data_request?id=user_data2&amp;amp;DataVersion=315587159&lt;br /&gt;
&lt;br /&gt;
The user_data contains the state for all the devices.  For example this indicates that the device id #17, called &amp;quot;Switch&amp;quot; is turned off (ie service SwitchPower1, variable Status is 0)&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;devices&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: 17,&lt;br /&gt;
            &amp;quot;category&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;room&amp;quot;: 1,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Switch&amp;quot;,&lt;br /&gt;
            &amp;quot;ip&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;mac&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                {&lt;br /&gt;
                    &amp;quot;service&amp;quot;: &amp;quot;urn:upnp-org:serviceId:SwitchPower1&amp;quot;,&lt;br /&gt;
                    &amp;quot;variable&amp;quot;: &amp;quot;Status&amp;quot;,&lt;br /&gt;
                    &amp;quot;value&amp;quot;: &amp;quot;0&amp;quot; &lt;br /&gt;
                }&lt;br /&gt;
        }&lt;br /&gt;
     ]&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
These are the UPnP variables, which describe the state of the device according to the UPnP specs.  When the variables change that information needs to be shown to the user, such as changing the icon for the Switch from off to on.  If you are interfacing with Vera using the UPnP stack, you can subscribe to the device's events to receive notifications automatically when a device's state changes.  However if you're using the web interface you will need to poll.  You don't want to request and parse the full user_data each time you just want to see if devices states have changed.  So there is also a lu_status request you can use like this:&lt;br /&gt;
&lt;br /&gt;
http://[ip address]:3480/data_request?id=lu_status2&lt;br /&gt;
&lt;br /&gt;
Again add &amp;amp;output_format=xml to see it in XML.  This document contains only 3 pieces of information, which constantly change: 1) The state, or UPnP variables, for the device to indicate the device's current state.  2) The status of any active or recent jobs, such as if a light was successfully turned off.  3) The state of the system initialization, such as initialization of the plugin modules.&lt;br /&gt;
&lt;br /&gt;
For #1, the UPnP variables, are simply a subset of the data in user_data.  #2, the jobs, and #3, the system initialization, are generated live and are not stored in user_data.  Thus lu_status is the appropriate request to poll Vera to get the up to date information about what's going on so it can be presented to the user.&lt;br /&gt;
&lt;br /&gt;
The first tag is DataVersion.  This is also essentially a timestamp for the device variables.  If you call lu_status without passing a DataVersion on the URL, you will get the current value of all the UPnP variables for a device.  Note that most of the UPnP variables do not ever change.  For example, with a light switch, only the variable &amp;quot;SwitchPower:Status&amp;quot; changes, as the switch is turned off and on.  There are many other variables, like &amp;quot;Capabilities&amp;quot; which are simply configuration data or settings the user modified.  If you pass &amp;amp;DataVersion=1 on the URL, you will only see the UPnP variables which have changed since the Luup engine started.  So, if you parse the initial UPnP variables when you first call user_data, you can call lu_status with DataVersion=1.  Once you call lu_status the first time, store the DataVersion and on subsequent calls pass it on the URL and you will only get the UPnP variables which have changed since that last DataVersion.  Regardless, you will also get the current state of jobs and system initialization.&lt;br /&gt;
&lt;br /&gt;
On subsequent calls to lu_status2, you should also pass back in the LoadTime which you received on the prior call.  You can also pass in a Timeout value, which means the call will block for up to that many seconds if nothing has changed, and will return immediately when something does.  This way you can have infrequent polling, say every 60 seconds by putting a Timeout value of 60, but your UI will be immediately responsive since, when something changes, it returns immediately.  You can also add a MinimumDelay, which means that the call will wait for at least that many millseconds.  This is advisable so that in the event there are lots of continuous changes, such as a scene turning off many lights, you won't have lu_status2 calls returning non-stop consuming all the resources on both the Vera and the UI.&lt;br /&gt;
&lt;br /&gt;
The jobs for a device will look like this:&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;devices&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;id&amp;quot;: 1,&lt;br /&gt;
            &amp;quot;Jobs&amp;quot;: [&lt;br /&gt;
                {&lt;br /&gt;
                    &amp;quot;id&amp;quot;: &amp;quot;1&amp;quot;,&lt;br /&gt;
                    &amp;quot;name&amp;quot;: &amp;quot;job#1 :getnodes (0x00D068F0) P:10 S:4&amp;quot;,&lt;br /&gt;
                    &amp;quot;icon&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                    &amp;quot;comments&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
                    &amp;quot;status&amp;quot;: &amp;quot;4&amp;quot; &lt;br /&gt;
                } &lt;br /&gt;
            ] &lt;br /&gt;
        },&lt;br /&gt;
&lt;br /&gt;
The id is the job id number.  When you run an action, like turning on a light, if it happens asynchronously, you'll get a job id number.  All pending jobs for a device are shown by their id number.  The name is just an internal name for the job.  Icon is an optional keyword to indicate what sort of icon should be shown to the user.  For example, 'getnodes' has no icon, meaning this type of job is generally not of interest to a user.  If the icon was 'ON' or 'OFF' that would mean this job is busy turning on or off a light.  Comments is notes about the job, if any.  This may be shown to a user in a tool tip or similar, but is generally more technical than users would care to know.  The status indicates the current state of the job, as shown:&lt;br /&gt;
&lt;br /&gt;
			job_None=-1,  // no icon&lt;br /&gt;
			job_WaitingToStart=0,  // gray icon&lt;br /&gt;
			job_InProgress=1,  // blue icon&lt;br /&gt;
			job_Error=2,  // red icon&lt;br /&gt;
			job_Aborted=3,  // red icon&lt;br /&gt;
			job_Done=4,  // green icon&lt;br /&gt;
			job_WaitingForCallback=5  // blue icon - Special case used in certain derived classes&lt;br /&gt;
&lt;br /&gt;
If the status is 0, this means the job is queued but hasn't started.  If it's 1 or 5 the job is being executed right now.  Generally both 1 and 5 are presented to the user the same way as a 'busy', although technically 1 means Vera is actively talking to the device, and 5 means Vera is waiting for a reply from the device.  Status codes 2, 3 and 4 mean the job has finished.  4 means the job went ok, and both 2 and 3 mean it failed.  Technically 3 means the job was aborted by another job or an external process, like a user cancelling it, while 2 means it failed due to a problem talking to the device.  In both cases this is usually presented the user the same way, as a failure.&lt;br /&gt;
&lt;br /&gt;
The section with the initialization tasks is shown in the startup tag as shown:&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;startup&amp;quot;: {&lt;br /&gt;
        &amp;quot;tasks&amp;quot;: [&lt;br /&gt;
            {&lt;br /&gt;
                &amp;quot;id&amp;quot;: 0,&lt;br /&gt;
                &amp;quot;status&amp;quot;: 2,&lt;br /&gt;
                &amp;quot;type&amp;quot;: &amp;quot;ZWave&amp;quot;,&lt;br /&gt;
                &amp;quot;comments&amp;quot;: &amp;quot;No Z-Wave&amp;quot; &lt;br /&gt;
            },&lt;br /&gt;
&lt;br /&gt;
The startup tasks begin whenever the Luup engine is reset, such as after the user makes a configuration change.  Ever plugin and module in the Luup engine does a startup sequence.  The id is not really important.  The status numbers are the same as for jobs, so 2 means the module failed to startup.  The 'Type' is what you can use to key off of to know which module is being reported, such as &amp;quot;ZWave&amp;quot;, and comments are just notes indicating the current state.  For example, &amp;quot;No Z-Wave&amp;quot; means there's no Z-Wave dongle connected.&lt;br /&gt;
&lt;br /&gt;
Once all the plugins have been initialized successfully the startup section will disappear completely from lu_status.&lt;br /&gt;
&lt;br /&gt;
Note that lu_status2 also returns UserData_DataVersion, which is the dataversion from user_data.  That way you don't need to poll user_data in parallel.  Simply retrieve the user_data one time at startup, then poll lu_status, and, if UserData_DataVersion is different from the previous user_data you retrieved, then download user_data again.&lt;br /&gt;
&lt;br /&gt;
Some notes on building a full replacement, including configuration, are available here [[UI_Notes_Replacement]], however the syntax is not up to date with the Luup architecture.&lt;br /&gt;
&lt;br /&gt;
== Categories and device types ==&lt;br /&gt;
&lt;br /&gt;
The following values are used in user_data to determine the types of devices.  In general you can use the category instead of the devicetype since it's an integer and is thus faster to compare:&lt;br /&gt;
&lt;br /&gt;
  // Device Types&lt;br /&gt;
&lt;br /&gt;
  #define DEVICETYPE_HOME_AUTO_GATEWAY	&amp;quot;urn:schemas-micasaverde-com:device:HomeAutomationGateway:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_BINARY_LIGHT			&amp;quot;urn:schemas-upnp-org:device:BinaryLight:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DIMMABLE_LIGHT		&amp;quot;urn:schemas-upnp-org:device:DimmableLight:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_THERMOSTAT			&amp;quot;urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_HUMIDITY_SENSOR		&amp;quot;urn:schemas-micasaverde-com:device:HumiditySensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MULTI_IO				&amp;quot;urn:schemas-micasaverde-com:device:MultiIO:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DOOR_LOCK			&amp;quot;urn:schemas-micasaverde-com:device:DoorLock:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DOOR_SENSOR			&amp;quot;urn:schemas-micasaverde-com:device:DoorSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_ZWAVE_NETWORK		&amp;quot;urn:schemas-micasaverde-com:device:ZWaveNetwork:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_INSTEON_NETWORK		&amp;quot;urn:schemas-micasaverde-com:device:InsteonNetwork:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_USB_UIRT				&amp;quot;urn:schemas-micasaverde-com:device:USBUIRT:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_TEMPERATURE_SENSOR	&amp;quot;urn:schemas-micasaverde-com:device:TemperatureSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_POWER_METER			&amp;quot;urn:schemas-micasaverde-com:device:PowerMeter:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MOTION_SENSOR		&amp;quot;urn:schemas-micasaverde-com:device:MotionSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_LIGHT_SENSOR			&amp;quot;urn:schemas-micasaverde-com:device:LightSensor:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_IR_TRANSMITTER		&amp;quot;urn:schemas-micasaverde-com:device:IrTransmitter:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_WINDOW_COVERING		&amp;quot;urn:schemas-micasaverde-com:device:WindowCovering:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_GENERIC_IO			&amp;quot;urn:schemas-micasaverde-com:device:GenericIO:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_REMOTE_CONTROL		&amp;quot;urn:schemas-micasaverde-com:device:RemoteControl:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_COMBO_DEVICE			&amp;quot;urn:schemas-micasaverde-com:device:ComboDevice:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CAMERA				&amp;quot;urn:schemas-upnp-org:device:DigitalSecurityCamera:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SERIALPORT			&amp;quot;urn:micasaverde-org:device:SerialPort:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SCENE_CONTROLLER		&amp;quot;urn:schemas-micasaverde-com:device:SceneController:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_ENERGY_CALCULATOR	&amp;quot;urn:schemas-micasaverde-com:device:EnergyCalculator:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  // IR Device Types&lt;br /&gt;
&lt;br /&gt;
  #define DEVICETYPE_TV					&amp;quot;urn:schemas-micasaverde-com:device:tv:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CABLE				&amp;quot;urn:schemas-micasaverde-com:device:cable:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_SATELLITE			&amp;quot;urn:schemas-micasaverde-com:device:satellite:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VIDEO_ACCESSORY		&amp;quot;urn:schemas-micasaverde-com:device:videoaccessory:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VCR_DVR				&amp;quot;urn:schemas-micasaverde-com:device:vcrdvd:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_DVD_BLURAY			&amp;quot;urn:schemas-micasaverde-com:device:dvdbluray:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_RECEIVER				&amp;quot;urn:schemas-micasaverde-com:device:receiver:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_AMP					&amp;quot;urn:schemas-micasaverde-com:device:amp:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_CD					&amp;quot;urn:schemas-micasaverde-com:device:cd:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_MISC_HOME_CONTROL	&amp;quot;urn:schemas-micasaverde-com:device:mischomecontrol:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_AV_MISC				&amp;quot;urn:schemas-micasaverde-com:device:avmisc:1&amp;quot;&lt;br /&gt;
  #define DEVICETYPE_VIRTUAL_DEVICE		&amp;quot;urn:schemas-micasaverde-com:device:VirtualDevice:1&amp;quot;&lt;br /&gt;
&lt;br /&gt;
  // Device Categories&lt;br /&gt;
&lt;br /&gt;
  #define DEVICE_CATEGORY_INTERFACE		1&lt;br /&gt;
  #define DEVICE_CATEGORY_DIMMABLE_LIGHT         2&lt;br /&gt;
  #define DEVICE_CATEGORY_SWITCH                 3&lt;br /&gt;
  #define DEVICE_CATEGORY_SECURITY_SENSOR	4&lt;br /&gt;
  #define DEVICE_CATEGORY_HVAC			5&lt;br /&gt;
  #define DEVICE_CATEGORY_CAMERA                 6&lt;br /&gt;
  #define DEVICE_CATEGORY_DOOR_LOCK		7&lt;br /&gt;
  #define DEVICE_CATEGORY_WINDOW_COV		8&lt;br /&gt;
  #define DEVICE_CATEGORY_REMOTE_CONTROL         9&lt;br /&gt;
  #define DEVICE_CATEGORY_IR_TX			10	&lt;br /&gt;
  #define DEVICE_CATEGORY_GENERIC_IO		11&lt;br /&gt;
  #define DEVICE_CATEGORY_GENERIC_SENSOR         12&lt;br /&gt;
  #define DEVICE_CATEGORY_SERIAL_PORT		13&lt;br /&gt;
  #define DEVICE_CATEGORY_SCENE_CONTROLLER       14&lt;br /&gt;
  #define DEVICE_CATEGORY_AV			15&lt;br /&gt;
  #define DEVICE_CATEGORY_HUMIDITY		16&lt;br /&gt;
  #define DEVICE_CATEGORY_TEMPERATURE		17&lt;br /&gt;
  #define DEVICE_CATEGORY_LIGHT			18&lt;br /&gt;
  #define DEVICE_CATEGORY_ZWAVE_INT		19&lt;br /&gt;
  #define DEVICE_CATEGORY_INSTEON_INT		20&lt;br /&gt;
  #define DEVICE_CATEGORY_POWER_METER		21&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== pseudo-code for a UI ==&lt;br /&gt;
&lt;br /&gt;
Here is some pseudo code to show how the polling mechanism should be properly implemented.  The parsing code is, of course, unique to your UI, so placeholder function names are shown here, like FetchAndParse.  This shows the flow for handling the polling so you know you get the changes reported correctly.&lt;br /&gt;
&lt;br /&gt;
 variable int DataVersion_lustatus=0&lt;br /&gt;
  variable int LoadTime=0&lt;br /&gt;
  variable int DataVersion_userdata=0&lt;br /&gt;
&lt;br /&gt;
:START&lt;br /&gt;
  variable boolean FetchUserData=false;&lt;br /&gt;
  if( DataVersion_userdata==0 )  // If we're on the first loop and haven't retrieved user_data, do it and don't do an lu_status&lt;br /&gt;
    FetchUserData=true;&lt;br /&gt;
  else&lt;br /&gt;
  {&lt;br /&gt;
     while(true)&lt;br /&gt;
     {&lt;br /&gt;
         newdata = FetchAndParse(&amp;quot;lu_status2&amp;amp;DataVersion=&amp;quot;+DataVersion_lustatus+&amp;quot;&amp;amp;LoadTime=&amp;quot;+LoadTime);&lt;br /&gt;
         if( newdata.IsEmpty()==false &amp;amp;&amp;amp; newdata.isError()==false )&lt;br /&gt;
            break;  // If we got data, continue on and process it&lt;br /&gt;
        else&lt;br /&gt;
            Sleep 1; // If we didn't get anything, or if lu_status failed, just sleep 1 second and stay in the loop to try again&lt;br /&gt;
     } // End of while loop&lt;br /&gt;
&lt;br /&gt;
     if( newdata.UserData_DataVersion!=DataVersion_userdata )&lt;br /&gt;
     {&lt;br /&gt;
        FetchUserData=true;&lt;br /&gt;
     }&lt;br /&gt;
     else  // Only Parse if userdata is the same, otherwise we're going to reload user_data&lt;br /&gt;
     {&lt;br /&gt;
        ParseLuStatus();  // This won't run if user_data has changed&lt;br /&gt;
        DataVersion_lustatus=newdata.DataVersion&lt;br /&gt;
      }&lt;br /&gt;
  }  // end of else loop&lt;br /&gt;
&lt;br /&gt;
 if( FetchUserData==true )&lt;br /&gt;
{&lt;br /&gt;
   UI.HourglassAndSuspend(true); // Put a 'busy' hourglass in the UI, display a message in the info panel &amp;quot;Updating data&amp;quot; and suspend all UI stuff since this may take a moment&lt;br /&gt;
   newdata = FetchAndParse(&amp;quot;user_data2&amp;quot;);&lt;br /&gt;
    if( newdata.IsEmpty()==false &amp;amp;&amp;amp; newdata.isError()==false )&lt;br /&gt;
    {&lt;br /&gt;
        ParseUserData();&lt;br /&gt;
        DataVersion_lustatus=newdata.DataVersion&lt;br /&gt;
         LoadTime=newdata.LoadTime&lt;br /&gt;
         DataVersion_userdata=newdata.DataVersion&lt;br /&gt;
    }&lt;br /&gt;
    else&lt;br /&gt;
       UI.DisplayError(&amp;quot;Failed to update data&amp;quot;); // Display in the info panel an error message that the user will see for 10 seconds or so&lt;br /&gt;
&lt;br /&gt;
   UI.HourglassAndSuspend(false); // Put a 'busy' hourglass in the UI, display a message in the info panel &amp;quot;Updating data&amp;quot; and suspend all UI stuff since this may take a moment&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Sleep 1; // We know we just parsed user_data or lu_status, so sleep before looping&lt;br /&gt;
goto START; // Loop again and start over&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Troubleshooting</id>
		<title>Troubleshooting</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Troubleshooting"/>
				<updated>2010-04-17T21:28:29Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Troubleshooting]]&lt;br /&gt;
Read this for troubleshooting before you send a ticket to tech support. &lt;br /&gt;
&lt;br /&gt;
= Verify Logs / Notifications  =&lt;br /&gt;
&lt;br /&gt;
In order to ask us to check if the Notifications System is working either on your Vera box or on our server you can check yourself some things first: &lt;br /&gt;
&lt;br /&gt;
*'''Advanced/Logs''' Check here to see if the events appears or not. If not, then check that:&lt;br /&gt;
&lt;br /&gt;
#You have added a user under the '''Users''' tab, added and activated a phone number and an email address; &lt;br /&gt;
#The event that you've added has checked a user to send notifications to; &lt;br /&gt;
#Enable findvera service from '''findvera.com''' tab; &lt;br /&gt;
#You have Internet Connection and no firewall/proxy is blocking the access to findvera.com;&lt;br /&gt;
&lt;br /&gt;
If no log/notification appears under Advanced/Logs then there is a problem with the notification service on your Vera. If some entries with the &amp;quot;track on findvera&amp;quot; will appear it means that Vera is working. &lt;br /&gt;
&lt;br /&gt;
*'''track on findvera''' If you set it as a notifications by email or SMS, the event will be listed like a green link to findvera.com, if not, is listed in gray without hyperlink. Click that link and you will be redirected to findvera.com at that notification. The you can see a full description of that event and if the notification was successful or not. &lt;br /&gt;
*'''click &amp;quot;Luup notifications&amp;quot;''' and you see all the notifications that your Vera is trying to send. You'll see there the status of the Notifications ('''Success''' or '''Failure'''). &lt;br /&gt;
*If the status is '''Failure''' report the problem to us by sending a ticket to tech support.&lt;br /&gt;
&lt;br /&gt;
= Find Vera Service  =&lt;br /&gt;
&lt;br /&gt;
*;Issue &lt;br /&gt;
*:&lt;br /&gt;
&lt;br /&gt;
:If you've just upgraded the firmware with &amp;quot;Restore to factory defaults&amp;quot;&lt;br /&gt;
&lt;br /&gt;
**;Resolution &lt;br /&gt;
**:&lt;br /&gt;
&lt;br /&gt;
:Login directly to your Vera and go to Setup-&amp;amp;gt;FindVera.Com and re-enter your username and password then enable the service&lt;br /&gt;
&lt;br /&gt;
*;Issue &lt;br /&gt;
*:&lt;br /&gt;
&lt;br /&gt;
:If you've just upgraded the firmware with &amp;quot;Keep settings&amp;quot;&lt;br /&gt;
&lt;br /&gt;
**;Resolution &lt;br /&gt;
**:&lt;br /&gt;
&lt;br /&gt;
:It is possible that your Vera unit is still upgrading please wait a few minutes then try again&lt;br /&gt;
&lt;br /&gt;
*;Issue &lt;br /&gt;
*:&lt;br /&gt;
&lt;br /&gt;
:If the internet connection at Vera's side dropped or Vera doesn't have internet access anymore, you won't be able to access it through findvera.com&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
**;Resolution &lt;br /&gt;
**:&lt;br /&gt;
&lt;br /&gt;
:Check Vera's power led to be solid. &amp;lt;br&amp;gt;If it's blinking go to Setup-&amp;amp;gt;Advanced-&amp;amp;gt;Net&amp;amp;amp;Wi-Fi and configure your [[Networking Setup:Troubleshooting|Network settings]] then click 'Troubleshoot Network' and observe if it can reach Google and our servers.&lt;br /&gt;
&lt;br /&gt;
= Identifying Device number(#) and NodeID  =&lt;br /&gt;
&lt;br /&gt;
=== Device number (Device #x)  ===&lt;br /&gt;
&lt;br /&gt;
Under the Devices tab, you select any of the devices and press the '''+''' button and you'll see a field like: 'Device #xx'. That's the device number. &lt;br /&gt;
&lt;br /&gt;
=== NodeID  ===&lt;br /&gt;
&lt;br /&gt;
The NodeID cand be found under a Z-Wave device. Under the Devices tab, you select a Z-Wave devices and press the '''+''' button and you'll see a field like: 'NodeID xx ' &lt;br /&gt;
&lt;br /&gt;
[[Image:Identify dev node.JPG|thumb|center|500px|Identify Device number and NodeID]] &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Problems adding new Controller  =&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp; - go to Advanced-&amp;amp;gt;Logs and enable Verbose logging &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - Reset your controller, then go to Devices-&amp;amp;gt;Zwave and press Remove dead node if you still see it. &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - confirm that you can't see anymore your controller in Devices-&amp;amp;gt;Zwave and that the controller buttons don't do anything &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - go to Devices-&amp;amp;gt;Zwave-&amp;amp;gt;press Add Zwave Controller then &amp;quot; '''Include the Remote to another Controller and/or Replicating&amp;lt;br&amp;gt; Network Information from another Controller&amp;quot; ''' on your remote &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - confirm that your controller is added and assign it into a room. &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - confirm that the All OFF/All ON function on your controller isn't activated &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - create a Scene on Vera and confirm that it's working ( a simple scene: turn on an on/off appliance module) &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - create an event on that scene for the&amp;amp;nbsp; Scene Controller with Event Type &amp;quot;a scene is activated&amp;quot; and put 0 in the scene number. &amp;lt;br&amp;gt; '''Note: - set a descriptive unique name for the scene and for the event'''&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - save the scene &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - since the Controller is battery operated you'll have to re-add it to the network in order to it's configuration to update, so &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; go to Devices-&amp;amp;gt;Zwave-&amp;amp;gt;Add Zwave Controller and on your Controller follow again the &amp;quot; '''Include the Remote to another Controller and/or Replicating&amp;lt;br&amp;gt; Network Information from another Controller&amp;quot; ''' procedure &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - synchronize your clock with Vera's clock (you can see the clock in Location tab) &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - press the ON button on your controller and '''note the time&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - ''' if it's not working edit the scene and put 1 in the scene number, save then re-add your controller and test it by noting down the time when you've pressed the on button. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; At the end submit a trouble report from Advanced-&amp;amp;gt;Tech Support and mention &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - the name of the scene and event &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - time when you've pressed the on button with 0 in scene number &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; - time when you've pressed the on button with 1 in scene number &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; After we receive your ticket we'll try to see what we have to in order to successfully program your remote. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; For the other remote you'll have to follow the same procedure and send us also the complete make and model along with it's user manual. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; '''Clearing Group Association'''&amp;lt;br&amp;gt; Devices which are Associated to the Group Buttons can be cleared &amp;lt;br&amp;gt; by: &amp;lt;br&amp;gt; 1. Put the Configuration Switch in “Configuration Mode”. &amp;lt;br&amp;gt; 2. Press-and-hold “Up” Operation button for 2 seconds to enter &amp;lt;br&amp;gt; Configuration Mode. LED Indicator will illuminate Green. &amp;lt;br&amp;gt; 3. Short-press the “Up” Operation Button three times within &amp;lt;br&amp;gt; 1.5sec to put the device into Clear Group Associations Mode. &amp;lt;br&amp;gt; LED Indicator on the Remote will illuminate Green when Group &amp;lt;br&amp;gt; Associations are cleared successfully and illuminate Red if the &amp;lt;br&amp;gt; operation is unsuccessful. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; '''Enabling All On / Off Functionality'''&amp;lt;br&amp;gt; The Remote control can act as an All On / All Off Controller, which &amp;lt;br&amp;gt; allows all the devices in the Network to be turned On or Off at the &amp;lt;br&amp;gt; same time. &amp;lt;br&amp;gt; 1. Put the Configuration Switch in “Configuration Mode”. &amp;lt;br&amp;gt; 2. Press-and-hold “Up” Operation button for 2 seconds to enter &amp;lt;br&amp;gt; Configuration Mode. LED Indicator will illuminate Green. &amp;lt;br&amp;gt; 3. Short-press the “Up” Operation Button five times within &amp;lt;br&amp;gt; 2.5sec to configure the device to become an All On/Off &amp;lt;br&amp;gt; Controller. &amp;lt;br&amp;gt; Note 1: All Associations which have previously been made to the &amp;lt;br&amp;gt; Operation Buttons will be deleted. &amp;lt;br&amp;gt; Note 2: If one or more Associations are made as described in &amp;lt;br&amp;gt; “Associating Devices to Remote Operation Bottons” the All On/Off &amp;lt;br&amp;gt; functionality will automatically be disabled. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; '''Resetting the Controller'''&amp;lt;br&amp;gt; 1. Put the Configuration Switch in “Configuration Mode”. &amp;lt;br&amp;gt; 2. Press-and-hold “Up” Operation button for 2 seconds to enter &amp;lt;br&amp;gt; Configuration Mode. LED Indicator will illuminate Green. &amp;lt;br&amp;gt; 3. Press-and-hold “Up” Operation button for 10 seconds - this &amp;lt;br&amp;gt; will initiate a reset of the Controller. LED Indicator will &amp;lt;br&amp;gt; alternate Red, Yellow and Green while remote is being reset. &amp;lt;br&amp;gt; 4. LED Indicator on the Remote will illuminate Green when &amp;lt;br&amp;gt; Reset is successfully completed and illuminate Red if the &amp;lt;br&amp;gt; operation is unsuccessful. &amp;lt;br&amp;gt; &amp;lt;br&amp;gt; '''Include the Remote to another Controller and/or Replicating&amp;lt;br&amp;gt; Network Information from another Controller'''&amp;lt;br&amp;gt; When Including the remote to another Controller the remote &amp;lt;br&amp;gt; automatically becomes a Secondary Controller. To Replicate the &amp;lt;br&amp;gt; Network Information to the Remote Control (if Secondary) from &amp;lt;br&amp;gt; another Controller (Primary) following steps should be followed: &amp;lt;br&amp;gt; 1. Put the Switch in “Configuration Mode”. &amp;lt;br&amp;gt; 2. Press-and-hold “Up” Operation button for 2 seconds to enter &amp;lt;br&amp;gt; Configuration Mode. LED Indicator will illuminate Green. &amp;lt;br&amp;gt; 3. Short-press the “Up” Operation Button four time within 2sec to &amp;lt;br&amp;gt; put the device into Replication Transmit Mode. &amp;lt;br&amp;gt; 4. Press the Controller Replication Transmit initiator on the &amp;lt;br&amp;gt; Primary Controller. &amp;lt;br&amp;gt; 5. Replication will start and Remote Control LED Indicator will &amp;lt;br&amp;gt; blink Green when transferring Network Information. &amp;lt;br&amp;gt; 6. LED Indicator on the Remote will illuminate Green for 3 sec &amp;lt;br&amp;gt; when Replication is completed successfully and illuminate &amp;lt;br&amp;gt; Red if the operation is unsuccessful.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Networking Setup  =&lt;br /&gt;
&lt;br /&gt;
In general most people who have Vera don't need to know anything about networking and don't need to change any network settings. If you are experiencing difficulties or want to know how Vera's networking works, here is some information. &lt;br /&gt;
&lt;br /&gt;
=== Getting Vera an internet connection  ===&lt;br /&gt;
&lt;br /&gt;
Within 2 minutes after you plug Vera in, Vera will try to obtain an IP address (i.e. Internet Connection) automatically through the WAN port on the back of Vera.&amp;amp;nbsp; If Vera succeeds in getting an IP address and connects to the network, the power light on the front of Vera comes on solid.&amp;amp;nbsp; If Vera cannot get an internet connection, the power light will blink.&amp;amp;nbsp; Note that you can still use Vera without an internet connection, but certain features, like remote access over cell phones and video archiving, will not work without an internet connection. &lt;br /&gt;
&lt;br /&gt;
If you connected Vera directly to your DSL or cable modem, but Vera's power light is blinking, first try unplugging the DSL or cable modem for 2 minutes, then plug it in and wait a few minutes. &amp;amp;nbsp; If Vera's power light is still blinking that probably means you have a special network setup, such as PPPoE or a static IP address.&amp;amp;nbsp; These types of connections require special information from your internet service provider. &amp;amp;nbsp; To specify these settings, follow the &amp;quot;Getting to Vera's Setup Page Without an Internet Connection&amp;quot; and then &amp;quot;Manually Configure Vera's Network&amp;quot; instructions below.&amp;amp;nbsp; Then fill in the Setup Page's top section &amp;quot;How Can I Connect to the Internet&amp;quot; with the settings furnished by your internet service provider. &amp;amp;nbsp; Also, under Firewall choose &amp;quot;Firewall Active&amp;quot;, and under DHCP choose &amp;quot;DHCP Server ON&amp;quot;.&amp;amp;nbsp; Then click 'Save &amp;amp;amp; Apply'. &amp;amp;nbsp; (See the IMPORTANT&amp;amp;nbsp;NOTE below.) &lt;br /&gt;
&lt;br /&gt;
=== Getting to Vera's Setup Page if Vera already has an internet connection  ===&lt;br /&gt;
&lt;br /&gt;
Once Vera has an internet connection (the power light is on solid), you can open any web browser from anywhere on the home network and go to [http://findvera.com http://findvera.com] and click the green 'Setup' button.&amp;amp;nbsp; The computer with your web browser can be connected directly to one of Vera's LAN ports, or it can connect to Vera wirelessly, or be anywhere else on the home network that Vera is connected to through the WAN port. &lt;br /&gt;
&lt;br /&gt;
=== Getting to Vera's Setup Page without an internet connection  ===&lt;br /&gt;
&lt;br /&gt;
If Vera does not have an internet connection, then you must connect the computer with your web browser to one of Vera's four LAN ports, or connect to Vera wirelessly using the network name (SSID) and password shown on the bottom of Vera and on on the front of the Quick Start Guide.&amp;amp;nbsp; Then open your web browser and go to:&amp;amp;nbsp; '''http://local.findvera.com'''&amp;lt;br&amp;gt; If that fails, try: &amp;amp;nbsp; '''http://192.168.81.1'''&amp;lt;br&amp;gt; Vera's setup page should appear. &lt;br /&gt;
&lt;br /&gt;
=== Manually configuring your network  ===&lt;br /&gt;
&lt;br /&gt;
Normally Vera will automatically configure the network for you. &amp;amp;nbsp; If you want to configure the network manually, click the Advanced button in Vera's setup page and choose the 'Net &amp;amp;amp; Wi-Fi' option.&amp;amp;nbsp; Set the network the way you want and click 'Save &amp;amp;amp; Apply' at the bottom of the page.&amp;amp;nbsp; Note that once you click 'Save &amp;amp;amp; Apply,' Vera's automatic network configuration will be bypassed and Vera will use the network settings you provide. &amp;amp;nbsp; (See the IMPORTANT&amp;amp;nbsp;NOTE&amp;amp;nbsp;below if you want to do this.) &lt;br /&gt;
&lt;br /&gt;
==== On PC (Windows)  ====&lt;br /&gt;
&lt;br /&gt;
#Click Start &lt;br /&gt;
#Click Control Panel &lt;br /&gt;
#Double Click Network Connections &lt;br /&gt;
#Under LAN or High-Speed Internet Doubleclick the enabled device (the Local Area Connection or the Wireless Network Connestion) &lt;br /&gt;
#On the Status Box Window that opens Click the Properties button &lt;br /&gt;
#Drag the Properties window beside the Status window &lt;br /&gt;
#Click the SUpport tab on the Status window &lt;br /&gt;
#Click the Details button--this window provides the information you will need to manually configure your IP &lt;br /&gt;
#In the Properties window that you have open beside the Status windows scroll down through the devices until you get to Internet Protocol TCP/IP &lt;br /&gt;
#Select Internet Protocol TCP/IP and click the properties button &lt;br /&gt;
#In the Properties window that opens select &amp;quot;Use the following IP address&amp;quot; &lt;br /&gt;
#If you have a number of machines begin by setting the IP address to 192.168.1.100 then go to 192.168.1.101 and so forth giving each machine a unique IP on the network &lt;br /&gt;
#The subnet mask has a default value of 255.255.255.0 in most cases &lt;br /&gt;
#Copy the Default Gateway from the Network Connection Details window information (192.168.1.1 is common) &lt;br /&gt;
#Copy the DNS Server info from the Details window--there will likely be two adresses to copy. &lt;br /&gt;
#Close all the windows and test your internet connection&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
==== On MAC  ====&lt;br /&gt;
&lt;br /&gt;
#Select the network configuration that has the green dot next to it, from the &amp;quot;TCP/IP&amp;quot; screen you opened before. This is your active connection and will probably be the &amp;quot;Built-In-Ethernet&amp;quot; option in the drop-down box. Then click the &amp;quot;Configure&amp;quot; button at the bottom of the dialog box. &lt;br /&gt;
#Click the &amp;quot;Configure IPV4&amp;quot; drop down menu next and choose &amp;quot;Manually.&amp;quot; &lt;br /&gt;
#Type in your new IP address in the box under the TCP/IP menu. Simply delete the number that is in there and enter your new one. &lt;br /&gt;
#Click &amp;quot;Save.&amp;quot; Your address has now been changed.&lt;br /&gt;
&lt;br /&gt;
=== Common problem: Vera isn't sharing the network connection  ===&lt;br /&gt;
&lt;br /&gt;
When Vera gets an internet connection through the WAN port, Vera decides automatically if you already have a home network setup with another device (a router) that is sharing your internet connection.&amp;amp;nbsp; If Vera decides that you connected Vera directly to your DSL or cable modem, and don't already have a home network setup, then Vera will automatically create a home network for you and share the internet connection that Vera got from your DSL or cable modem.&amp;amp;nbsp; Some DSL or cable modems &amp;quot;trick&amp;quot; Vera into thinking you already have a home network, when in fact you do not.&amp;amp;nbsp; This happens when all of the following are true: 1) You connected Vera's WAN to your DSL or cable modem and do not already have a router. 2) Vera got an internet connection from your DSL or cable modem and you can tell this because Vera's power light is on solid. 3) Other computers in the home that you connect to Vera's 4 LAN ports, or connect to Vera wirelessly, are not able to get an internet connection. &lt;br /&gt;
&lt;br /&gt;
If those 3 things are all true, then that probably means Vera is not sharing your internet connection because Vera thinks you already have a home network. &amp;amp;nbsp; This happens when your DSL or modem &amp;quot;tricks&amp;quot; Vera by acting like a router. &amp;amp;nbsp; This problem is easy to solve.&amp;amp;nbsp; First, unplug the cable going into Vera's WAN port.&amp;amp;nbsp; Wait a few seconds for Vera's power light to start blinking.&amp;amp;nbsp; Now try again to connect your computer to Vera using the 4 LAN ports or with the wireless connection. &amp;amp;nbsp; Open your web browser and go to: http://local.findvera.com, or to http://192.168.81.1. Click the 'Advanced' button, choose 'Net &amp;amp;amp; Wi-Fi'. &lt;br /&gt;
&lt;br /&gt;
Set the following settings: &lt;br /&gt;
&lt;br /&gt;
How can I connect to the Internet? '''DHCP''' &lt;br /&gt;
&lt;br /&gt;
Firewall: '''Firewall active''' &lt;br /&gt;
&lt;br /&gt;
DHCP server: '''On''' &lt;br /&gt;
&lt;br /&gt;
Then click 'Save &amp;amp;amp; Apply'.&amp;amp;nbsp; Reconnect the cable to the WAN port.&amp;amp;nbsp; Wait 30 seconds.&amp;amp;nbsp; Then Vera should share the internet connection with any other PC's and devices connected to Vera's 4 LAN ports, or that connect to Vera wirelessly.&amp;amp;nbsp; (See the IMPORTANT&amp;amp;nbsp;NOTE below.) &lt;br /&gt;
&lt;br /&gt;
=== I already have a home router (i.e. DHCP server) and don't want Vera to replace my router  ===&lt;br /&gt;
&lt;br /&gt;
Normally this should be handled automatically. &amp;amp;nbsp; You simply connect Vera's WAN port to your existing home network and Vera should automatically detect that you already have a router, and then Vera will automatically turn off Vera's built-in router functions, like firewall and DHCP server, thus becoming a normal network device.&amp;amp;nbsp; You can still find Vera on your home network using the [http://findvera.com findvera.com] web site, and you can connect any network devices to Vera's 4 LAN ports or to Vera's Wi-Fi network, and they will work just fine on your home network, getting an IP address from your existing home router. When you go to the 'Net &amp;amp;amp; Wi-Fi' tab on Vera, you will see the DHCP server is set to &amp;quot;OFF&amp;quot;, and the firewall is set to &amp;quot;No Firewall&amp;quot;.&amp;amp;nbsp; (See the IMPORTANT&amp;amp;nbsp;NOTE below.) &lt;br /&gt;
&lt;br /&gt;
=== IMPORTANT NOTE: Vera's automatic network configuration may be disabled  ===&lt;br /&gt;
&lt;br /&gt;
To make Vera as easy as possible for the novice user, Vera will attempt to configure the network automatically for you.&amp;amp;nbsp; This means if you have an existing home router, Vera will work well with it.&amp;amp;nbsp; And if you do not, Vera will assume the role of your primary home router automatically.&amp;amp;nbsp; But, once you go to Vera's 'Net &amp;amp;amp; Wi-Fi' tab and make any changes, then Vera assumes you know what you're doing, and Vera will not again attempt to automatically configure the network unless you [[Factory Reset|reset Vera to the factory default]].&amp;amp;nbsp; This means, for example, that if you manually turn off Vera's firewall, and you then put Vera directly on the internet, other people may be able to access your Vera.&amp;amp;nbsp; For most users, we recommend you just leave the network settings alone and let Vera handle everything automatically. &lt;br /&gt;
&lt;br /&gt;
=== Technical Explanation: How Vera's auto networking works  ===&lt;br /&gt;
&lt;br /&gt;
This paragraph is for advanced users who understand networking concepts.&amp;amp;nbsp; Vera tries to obtain an IP address on the WAN port using DHCP.&amp;amp;nbsp; If Vera gets an internal IP address from another router, namely an address that starts with 192.168., or 172., or 10., then Vera assumes you already have a network router sharing your network connection and a DHCP server giving out IP addresses. &amp;amp;nbsp; So Vera goes into 'switch' mode.&amp;amp;nbsp; This means the WAN port and the 4 LAN ports are bridged, like a normal switch, and Vera's firewall and DHCP server are disabled. &amp;amp;nbsp; If Vera gets a routable IP address (not a 192.168., 172., or 10. address), Vera assumes she is connected directly to your Cable/DSL modem and that Vera should share the network connection for you.&amp;amp;nbsp; In this case, Vera turns on her DHCP server and gives out IP addresses in the 192.168.81.xx range on the four LAN ports.&amp;amp;nbsp; Vera's firewall is enabled and Vera only accepts connections from the 4 lan ports. &lt;br /&gt;
&lt;br /&gt;
=== Advanced Network Settings  ===&lt;br /&gt;
&lt;br /&gt;
[[Networking Setup:Advanced Network Setup]] &lt;br /&gt;
&lt;br /&gt;
=== Troubleshoot Network Settings  ===&lt;br /&gt;
&lt;br /&gt;
[[Networking Setup:Troubleshooting]] &lt;br /&gt;
&lt;br /&gt;
= Schlage Lock Troubleshooting =&lt;br /&gt;
&lt;br /&gt;
[[Schlage_Lock_Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Set_Up_Timers</id>
		<title>Set Up Timers</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Set_Up_Timers"/>
				<updated>2010-04-17T21:27:22Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
A timer is how you tell Vera to do certain things by running scenes either at fixed intervals, like every 15 minutes, or at certain times, like Wednesdays and Fridays at 8:30, or on December 20 at 11:00. For more on scenes, see [[Scenes]]. &lt;br /&gt;
&lt;br /&gt;
To add a timer, click the [[Scenes|'Scenes']] tab, add a new scene, and click 'Add Timer' to define when the scene should be triggered. &lt;br /&gt;
&lt;br /&gt;
Next choose the type of timer. Your choices are: &lt;br /&gt;
&lt;br /&gt;
'''Interval based''': For example, do something every x minutes, or every other hour. The minimum interval is 1 minute. There is no maximum. Specify the interval in hours or minutes. &lt;br /&gt;
&lt;br /&gt;
'''Day of week based''': For example, do something at 7:00 and 9:00 on Monday, Wednesday and Friday. You can check off what day(s) of the week you want this occur, and tell Vera what time(s) of day. You can specify multiple times, separated by commas. For example, check off Monday and Wednesday and put in 7:00, 9:00, 21:00 to do this at those three times on Monday and Wednesday. You can specify the time in either 12-hour or 24-hour format, so you could also put in: 7:00am, 9:00am, 9:00pm. &lt;br /&gt;
&lt;br /&gt;
'''Day of month based''': For example, do something at 8:00 on the 1st and 15th of each month. As explained above in &amp;quot;Day of week based&amp;quot;, you can enter multiple times, in 12- or 24-hour format. &lt;br /&gt;
&lt;br /&gt;
'''Absolute''': For example, do something on 5 Mar 2005 at 11:15. Use this timer to do something one time, at a certain time. &lt;br /&gt;
&lt;br /&gt;
After you specify the options for the timer, you can tell Vera what you want her to do at those times, in exactly the same way you do when creating a [[Scenes|scene]]. As explained in the [[Scenes|scene]] instructions, you can tell Vera to do something with a device and then after a period of time, do something else, such as: turn on the garage light and 30 seconds later turn it off again.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Tech_Support_Back_Door</id>
		<title>Tech Support Back Door</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Tech_Support_Back_Door"/>
				<updated>2010-04-17T21:13:48Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
To have your Vera open a back door for our tech support staff to look at your system, choose Advanced, Tech Support, and 'Enable it'. Then give tech support the code on the screen, which is in the format: xxxx-yyyyyy. Click 'Disable it' to close the back door. &lt;br /&gt;
&lt;br /&gt;
If you cannot get the web site to load, you can telnet or ssh (use Putty for Windows) to Vera and type:&amp;lt;br&amp;gt;'''''&amp;amp;nbsp; /usr/bin/RA-handler.sh --enable'''''&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Then, type:&amp;lt;br&amp;gt;'''''&amp;amp;nbsp; cat /etc/cmh/PK_AccessPoint'' '''&amp;lt;br&amp;gt;for your serial number and ''&amp;lt;br&amp;gt;'''''&amp;lt;i&amp;gt;&amp;amp;nbsp; cat /etc/cmh/ra_password&amp;lt;/i&amp;gt;''' &amp;lt;br&amp;gt;for the backdoor password.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Tech_Info</id>
		<title>Tech Info</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Tech_Info"/>
				<updated>2010-04-17T21:12:53Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Obsolete]]&lt;br /&gt;
Vera is built on OpenWRT, adds the DCE messaging protocol libraries from LinuxMCE, and the rest is our own in-house software as well as commercially licensed 3rd party. The architecture is extensible, and we document the protocols for controlling Vera from another application, and provide access to a build server for developers who want to write their own modules to run inside Vera. Vera has a consumer-friendly front-end and self-configuring network setup, a socket-based messaging architecture for devices similar to and binary-compatible with LinuxMCE, an easy-to-use HTTP server for interrogating and controlling devices, and a secure online remote access / remote control gateway. &lt;br /&gt;
&lt;br /&gt;
We've also put a Vera system online, at testvera.micasaverde.com, complete with a camera, Z-Wave accessories, and the secure remote access activated, so developers can play around with it and test having their own applications talk to it. (Learn more [[Testvera|here]].) Also see upcoming features in the [[Roadmap]]. &lt;br /&gt;
&lt;br /&gt;
== For OpenWRT users  ==&lt;br /&gt;
&lt;br /&gt;
To make Vera appealing to a mainstream audience we added a self-configuring networking module that automatically determines whether you have another DHCP server on the network and if Vera can get an internal (192.168., 10., 172.) or routable IP address, then automatically configures the firewall, DHCP server, and other network settings. To make Wi-Fi setup easy for a novice, each Vera comes pre-configured with Wi-Fi enabled with WPA2 encryption and a unique, strong password printed on the bottom of each unit, along with a unique SSID. We pre-configure the wireless accessories on our web shop to each particular customer's SSID and password. However, under the 'Net &amp;amp;amp; Wi-Fi' tab, when you click 'Advanced Configuration' it bypasses our simplified network setup and takes you directly into to the OpenWRT (Kamikaze) site. So you don't lose any of the advanced functionality in OpenWRT; we just add an extra layer on top to make it more consumer friendly. &lt;br /&gt;
&lt;br /&gt;
== For LinuxMCE users  ==&lt;br /&gt;
&lt;br /&gt;
Vera does not use any of LinuxMCE's code except for the open source DCE/util libraries. However, Vera's architecture will look quite familiar since the messaging layer is the same DCE protocol. Vera includes a message router that is compatible with LinuxMCE's DCERouter, although Vera's was re-written to use JSON files for storing device information, rather than a MySQL database, since Vera can't run MySQL. The device numbers, categories, etc., are the same, and your existing LinuxMCE devices can connect to Vera's message router and send/receive commands the same. If you have developed your own DCE Devices, they should work fine with Vera, although if you made devices that use the MySQL database, that database will need to be hosted on a PC, not on Vera. &lt;br /&gt;
&lt;br /&gt;
A bridge between Vera and LinuxMCE could make LinuxMCE more usable too. Vera has plenty of power to handle message routing. So, a Vera unit could be left on all the time to handle home control, security and remote access, using only 6 watts of electricity (or zero net additional watts if you wanted an access point anyway), and then the LinuxMCE core/media directors would only be running when you need media. Vera is also designed to be far simpler, with a higher WAF, than LinuxMCE. We're also developing a lightweight media plugin + media catalog + rip/identify software suite that runs inside a low-cost NAS device, and a front-end that runs on the Sigma 8634-based DMA's (same chip that's in Blu-Ray drives). They both use Vera as the Core. When this is done, you'll have a comparable media solution to LinuxMCE, but at a fraction of the cost with a tiny amount of energy consumption; the NAS/DMA units go into standby mode when you're not watching media, so you've only got Vera running at 6 watts most of the time. A normal PC running LinuxMCE uses up to $92/month in electricity ''vs'' $1.50 for Vera. (See: [[Energy Savings]]) This new media catalog will also compliment MythTV users well, since, like a LinuxMCE Core, our NAS device stores all your MythTV recordings, and you can watch them not only on a MythTV PC, but also on the DMA's. The NAS unit also has simplified ripping; attach a USB CD/DVD drive, and anytime you insert a disc it's automatically id'd, ripped and ejected, so it's really easy for everyone in the family to use. &lt;br /&gt;
&lt;br /&gt;
We also built our own data provider plugin for retrieving data. It is a lot more flexible than the DataGrid system in LinuxMCE, and returns data in XML and JSON format. We also built a request server that listens on port 3451 to accept messages and data requests as simple html requests. This makes it a lot easier to integrate Vera with other devices. [[Data Provider Catalog Plugin|more on the Data Provider Catalog Plugin]] We also have secure, remote access with SSL encryption. &lt;br /&gt;
&lt;br /&gt;
We are also working on Vera's own version of &amp;quot;Generic Serial Device&amp;quot;. But instead of Ruby we're developing a Lua version, because Lua is more lightweight and can run on Vera, and for GSD devices, people didn't really need the full power that Ruby offered anyway. &lt;br /&gt;
&lt;br /&gt;
== For Mr. House users  ==&lt;br /&gt;
&lt;br /&gt;
We have not tried integrating Vera with Mr. House. However, there have been attempts at integrating Mr. House with LinuxMCE, and as mentioned above, any LinuxMCE-&amp;amp;gt;Mr. House bridge devices should work fine with Vera. There are a few benefits that Mr. House users would find to having a Vera-&amp;amp;gt;Mr. House bridge: First, leaving a PC running 24/7 uses a lot of electricity. (See: [[Energy Savings]]); having a way for Vera to provide the basic home control while the PC is off would save quite a bit. Second, Vera should do well with the WAF. There's an iPhone and Java (Blackberry/Nokia) front-end and it's easy to configure. So a bridge would allow a simple, stable front end for the non-technical user, while the geeky Mr. House stuff runs elsewhere. Also, there's automatic secure, remote access with SSL encryption.&lt;br /&gt;
&lt;br /&gt;
== Build environment  ==&lt;br /&gt;
&lt;br /&gt;
One of the issues with building custom modules for an OpenWRT platform is that it's not as easy to compile C/C++ code as for an x86 because you need to set up the correct kernel header, tool chain, etc. To make it easier for developers, we've established a dedicated build server with virtual machines. So, when a developer wants to do some custom stuff, we'll provide a VM on our build server which is pre-configured with everything needed. Just run one script to build a new firmware image with your custom changes. And, we've forked our svn so the developers and FOSS community have their own branch where they can add the &amp;quot;geeky&amp;quot; stuff, and we periodically merge in the fixes/changes from our consumer branch. The source code is here: [[Source Code]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Supported_Hardware</id>
		<title>Supported Hardware</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Supported_Hardware"/>
				<updated>2010-04-17T21:12:20Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
This is a page for Supported Z-Wave devices. &lt;br /&gt;
&lt;br /&gt;
Alternative hardware pages exist for &lt;br /&gt;
&lt;br /&gt;
*[[ZWave Add Controller|Z-Wave Handheld Remote Controls, Gateways and Scene Controllers]] &lt;br /&gt;
*[[IP Cameras|IP Enabled Cameras]] &lt;br /&gt;
*[[Insteon Supported Hardware|Insteon/X10 devices]] &lt;br /&gt;
*USB, or USB-Serial, [[Serial Supported Hardware|Interface devices]]&lt;br /&gt;
&lt;br /&gt;
In general, any device with the Z-Wave logo should work with Vera. A list of tested Z-Wave devices is below, with specific notes for each type of device. This is a wiki, so feel free to add to the page. &lt;br /&gt;
&lt;br /&gt;
== Hardware Reported to Work  ==&lt;br /&gt;
&lt;br /&gt;
*We strongly encourage users to list any and all products they tested and installed. &lt;br /&gt;
*If a product works but you did not like it, please list it anyway. It may be the only product available to some users.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT! The devices listed here have been added by installers, technicians and users like yourself. Results may vary upon installations. MiCasaVerde does not guarantee operation and compatibility with your installation. The listed devices were found to work with their specific installation. Mixing different series and brands of equipment is not guaranteed in any way to work with other series and brands. It is very likely that users have not fully tested all features of the devices, so it is possible that a device listed here as compatible, will not prove compatible with your hardware. If you are editing this wiki DO NOT REMOVE a listed working device if it hasn't worked for you. Seek help to get the device to work under your individual circumstance. If you are adding to this wiki, please provide links to data for the device and add any tips you feel may benefit someone wanting to implement the device into an installation.''' &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
=== '''Lighting Devices'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;width: 1220px; height: 491px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Leviton &lt;br /&gt;
| Dimmer Switch &lt;br /&gt;
| VRM10-1LX &lt;br /&gt;
| 1 &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://shop.micasaverde.com/index.php?main_page=product_info&amp;amp;cPath=104&amp;amp;products_id=170 Link] &lt;br /&gt;
| [http://www.amazon.com/review/product/B000ZKM7I8/ref=dp_top_cm_cr_acr_txt?_encoding=UTF8&amp;amp;showViewpoints=1 Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=65 mark-hc] &lt;br /&gt;
| This is a high quality dimmer geared towards high-end installations&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| 300 watt dimmer &lt;br /&gt;
| HA06 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| July 2007 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.homesettings.com/products/modules/ha06.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Affordable Dimmer Switch. incandescent/halogen only. Loads for 300 watts or less no neutral required. Great for dimming one bulb.&lt;br /&gt;
|-&lt;br /&gt;
| Cooper&lt;br /&gt;
| Accessory (3-way slave)&lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
|  &lt;br /&gt;
| Indoor &lt;br /&gt;
|  &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
|  &lt;br /&gt;
| See [[Cooper_Accessory_Slave]]&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| 3-way Switch &lt;br /&gt;
| HA18 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Dec 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.homesettings.com/products/new%20products/ha18.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=66 Kozanator] &lt;br /&gt;
| Affordable 3-way Switch&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| 3-way Dimmer Switch &lt;br /&gt;
| HA20 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.homesettings.com/products/new%20products/ha20.aspx Link] &lt;br /&gt;
| [http://www.smarthome-products.com/p-460-intermatic-homesettings-ha20c-3-way-in-wall-switch-dimmer.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Affordable 3-way 600W dimmer&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| 2-way Dimmer Switch &lt;br /&gt;
| ZDW120 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/ZDW120---Z-Wave-600-Watt-2-Wire-Dimmer-ACT-HomePro-P17C64.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/ZDW120---Z-Wave-600-Watt-2-Wire-Dimmer-ACT-HomePro-P17C64.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=49 WSeverino] &lt;br /&gt;
| Works well, easy to install, LED is a very bright blue....can be programmed to be off when the light is off or on.&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| 3-way Dimmer Switch &lt;br /&gt;
| ZDW103 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/ZDW103---Z-Wave-500-Watt-3-way-Dimmer-ACT-HomePro-P19C64.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/ZDW103---Z-Wave-500-Watt-3-way-Dimmer-ACT-HomePro-P19C64.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=49 WSeverino] &lt;br /&gt;
| Works well, can be tricky to install due to the different combination of 3 way circuits, LED is a very bright blue....can be programmed to be off when the light is off or on.&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| 2-way Relay Switch &lt;br /&gt;
| ZRW113 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/ZRW113---Z-Wave-20-Amp-3-way-ISO-Relay-ACT-HomePro-P491C63.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/ZRW113---Z-Wave-20-Amp-3-way-ISO-Relay-ACT-HomePro-P491C63.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=49 WSeverino] &lt;br /&gt;
| Controls Florescent Lamps very well! No humming at all.&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| Companion Switch &lt;br /&gt;
| AS101 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/AS101---Z-Wave-3-Way-Companion-Switch-ACT-HomePro-P10C63.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/AS101---Z-Wave-3-Way-Companion-Switch-ACT-HomePro-P10C63.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=49 WSeverino] &lt;br /&gt;
| Works well, can be tricky to install due to the different combination of 3 way circuits, The trick here is to install this device where the power comes in.&lt;br /&gt;
|-&lt;br /&gt;
| ACT&amp;lt;br&amp;gt; &lt;br /&gt;
| 3-way Dimmer Switch, 2 rocker&amp;lt;br&amp;gt; &lt;br /&gt;
| ZDM230&amp;lt;br&amp;gt; &lt;br /&gt;
| 1.1&amp;lt;br&amp;gt; &lt;br /&gt;
| Aug 2009&amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor&amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.act-solutions.com/HomePro/pdfs/HomePro/Specs/ZDM230_spec.pdf Link]&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=3015 TedStriker]&amp;lt;br&amp;gt; &lt;br /&gt;
| Dimmer, Wall-mount, 230v, 500W,&amp;lt;br&amp;gt;3-way, 3 Wire, 2 rocker&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| 3-way Relay Switch, 2 rocker &lt;br /&gt;
| ZRM230&amp;lt;br&amp;gt; &lt;br /&gt;
| 1.1&amp;lt;br&amp;gt; &lt;br /&gt;
| Aug 2009&amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor&amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.act-solutions.com/HomePro/pdfs/HomePro/Specs/ZRM230_spec.pdf Link]&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=3015 TedStriker]&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;font size=&amp;quot;2&amp;quot;&amp;gt;Relay, Wall-mount, 230v, 6A,&amp;lt;br&amp;gt; 3-way, 3 Wire, 2 rocker - '''Status polling does not work with Vera'''&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Innovus &lt;br /&gt;
| Relay Switch Adapter &lt;br /&gt;
| RAone SmartPower &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Aug 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.innovus.eu/fileadmin/user_upload/manual/z-wave/smartpower_zw_tech_doc.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=3015 TedStriker] &lt;br /&gt;
| Works very well + it has a build in powermeter which works perfect with Vera&lt;br /&gt;
|-&lt;br /&gt;
| Innovus &lt;br /&gt;
| Dimmer Switch Adapter &lt;br /&gt;
| RAone SmartDimmer &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Aug 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.innovus.eu/fileadmin/user_upload/manual/z-wave/smartdimmer-00110001-tech.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=3015 TedStriker] &lt;br /&gt;
| Works very well + it has a build in powermeter which works perfect with Vera&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| Screw-in Module &lt;br /&gt;
| HA05C &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Outdoor &lt;br /&gt;
| [http://store.homeseer.com/store/HA05C---Z-Wave-IndoorOutdoor-Screw-in-Module-Intermatic-HomeSettings-P1C62.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/HA05C---Z-Wave-IndoorOutdoor-Screw-in-Module-Intermatic-HomeSettings-P1C62.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=49 WSeverino] &lt;br /&gt;
| Easy install, easy to pair with Vera!&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| Radio sensor cover for dimmer inserts &lt;br /&gt;
| 5026xx, 5036xx, 5046xx &lt;br /&gt;
| 6,2,7,1,5 &lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5026_581_01_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| Radio sensor cover for switch inserts &lt;br /&gt;
| 5024xx, 5034xx, 5044xx &lt;br /&gt;
| 6,2,27,2,2 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/5024xx_5034xx_5044xx_Sensorflaeche4pin_CONNECT_INT.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| Single Radio flush-mounted receiver &lt;br /&gt;
| 507001 &lt;br /&gt;
| 6,2,27,2,2 &lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5070_581_01_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| switch, flush-mounted&lt;br /&gt;
| 507501, 507601 &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| &amp;amp;nbsp;  &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5075_581_00_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well (according to [http://forum.micasaverde.com/index.php?topic=276.15 Link])&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| 1-gang universal dimmer, flush-mounted&lt;br /&gt;
| 507900 &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| &amp;amp;nbsp;  &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5079_581_01_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well (according to [http://forum.micasaverde.com/index.php?topic=276.15 Link])&lt;br /&gt;
|-&lt;br /&gt;
| Schlage &lt;br /&gt;
| Lamp Module &lt;br /&gt;
| RP200 &lt;br /&gt;
| 1.0 &lt;br /&gt;
| Aug 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://consumer.schlage.com/products/Productdetail3.asp?StyleID=139&amp;amp;FinishID=12&amp;amp;FunctionID=77 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2870 LibraSun] &lt;br /&gt;
| Works well&amp;lt;br&amp;gt;Sold with Schlage LiNK lock system&lt;br /&gt;
|-&lt;br /&gt;
| Leviton &lt;br /&gt;
| Dimmer Switch &lt;br /&gt;
| VRI06-1LX &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Aug 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.leviton.com/OA_HTML/ibeCCtpItmDspRte.jsp?item=305784&amp;amp;section=25501 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| Works well&lt;br /&gt;
|-&lt;br /&gt;
| Leviton &lt;br /&gt;
| 4-Scene Controller with Switch &lt;br /&gt;
| VRCS4-MRX &lt;br /&gt;
| 7,2,67,0,2 &lt;br /&gt;
| Aug 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.leviton.com/OA_HTML/ibeCCtpItmDspRte.jsp?item=433270&amp;amp;section=28563 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| Works well, pair as per [http://wiki.micasaverde.com/index.php/Leviton_Scene_Controller Leviton 4-Scene Controller], then again holding &amp;quot;2&amp;quot; and &amp;quot;4&amp;quot; to pair the Switch (&amp;quot;Load&amp;quot;) itself.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Plug &amp;amp;amp; Receptacle Devices'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Frequency&lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| In-Wall Receptacle &lt;br /&gt;
| CA3500 &lt;br /&gt;
| 1 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://shop.micasaverde.com/index.php?main_page=product_info&amp;amp;cPath=105&amp;amp;products_id=97 Link] &lt;br /&gt;
| [http://www.amazon.com/review/product/B000U3XYPA/ref=dp_top_cm_cr_acr_txt?_encoding=UTF8&amp;amp;showViewpoints=1 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| This is a decent, but expensive solution for in-wall receptacles. One receptacle RF controlled, the other is hot&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| Appliance Module &lt;br /&gt;
| HA02C &lt;br /&gt;
| 1 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://shop.micasaverde.com/index.php?main_page=product_info&amp;amp;cPath=108&amp;amp;products_id=98 Link] &lt;br /&gt;
| [http://www.amazon.com/Intermatic-HA02C-Settings-Heavy-Duty-Appliance/dp/B000BJSDZO/ref=sr_1_3?ie=UTF8&amp;amp;qid=1227467418&amp;amp;sr=8-3 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Seems to work well&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| In-Wall Receptacle &lt;br /&gt;
| ZRR150W &lt;br /&gt;
| 2.2 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.smarthome-products.com/p-527-homepro-zrr150-wall-receptacle.aspx Link] &lt;br /&gt;
| [http://www.smarthome-products.com/p-527-homepro-zrr150-wall-receptacle.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Works like a champ! Easy to Install. One receptacle RF controlled, the other is hot&lt;br /&gt;
|-&lt;br /&gt;
| Cooper Wiring Devices&lt;br /&gt;
| In-Wall Receptacle &lt;br /&gt;
| RFTR9505-T&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://solutions.cooperwiringdevices.com/common/brands.cfm?pg=Detail&amp;amp;brandName=CWD%20Technology&amp;amp;category=Aspire%20RF%20Lighting%20Control%20System%3A%20Receptacles&amp;amp;id=16772 Link] &lt;br /&gt;
| &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
|  One receptacle is RF controlled, the other is hot&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| Outdoor Module &lt;br /&gt;
| HA04C &lt;br /&gt;
| 1 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Dec 2008 &lt;br /&gt;
| Outdoor &lt;br /&gt;
| [http://store.homeseer.com/store/HA04C---Z-Wave-Outdoor-Module-Intermatic-HomeSettings-P6C62.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/HA04C---Z-Wave-Outdoor-Module-Intermatic-HomeSettings-P6C62.aspx Link] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=66 Kozanator] &lt;br /&gt;
| Easy to Install.&lt;br /&gt;
|-&lt;br /&gt;
| Monster Central &lt;br /&gt;
| 1800W Appliance Module &lt;br /&gt;
| ML-LAS1000 &lt;br /&gt;
| 1 &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Jan 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.monstercable.com/productdisplay.asp?pin=3164 Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| Easy to Install. I use this as a ZWave signal repeater. Appears to be a badge-engineering of [http://www.leviton.com/OA_HTML/ibeCCtpItmDspRte.jsp?item=309748&amp;amp;section=25542 Leviton VRP15-1LW]&lt;br /&gt;
|-&lt;br /&gt;
| Duwi &lt;br /&gt;
| &amp;lt;span class=&amp;quot;S33&amp;quot;&amp;gt;Z-Wave switch 3500 W&amp;lt;/span&amp;gt; &lt;br /&gt;
| &amp;lt;span class=&amp;quot;S31&amp;quot;&amp;gt;05437&amp;lt;/span&amp;gt; &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| EU&lt;br /&gt;
| Feb 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.duewi.com/ Link] &lt;br /&gt;
| &lt;br /&gt;
| ezhome &lt;br /&gt;
| High quality Plug-in switch, Easy install and works well&lt;br /&gt;
|-&lt;br /&gt;
| Merten&lt;br /&gt;
| switch, plug adapter, 2000 W &lt;br /&gt;
| 508519 &lt;br /&gt;
| 6,2,7,1,5&lt;br /&gt;
| EU&lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5085_581_01_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Thermostat Devices'''  ===&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Frequency &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added&amp;lt;br&amp;gt;By User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Wayne Dalton &lt;br /&gt;
| Wall Stat &lt;br /&gt;
| WDTC-20 &lt;br /&gt;
| &amp;amp;nbsp;?? &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/WDTC-20---Z-Wave-Thermostat-Wayne-Dalton-P599C38.aspx Link] &lt;br /&gt;
| [http://www.amazon.com/Wayne-Dalton-Corporation-Z-Wave-Thermostat/dp/B001F8QKYQ Link] &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| Has 2 inclusion modes: 1) press and release the bind button and the STAT will be included as a thermostat and works with Vera, 2) press and hold the bind button and it will be added as a binary switch for compatibility with old, non-compliant remotes. If it's added in the wrong mode, remove it and re-add it. Works great simple to use!&lt;br /&gt;
|-&lt;br /&gt;
| HAI &lt;br /&gt;
| Wall Stat &lt;br /&gt;
| RC-80BZ &lt;br /&gt;
| &amp;amp;nbsp;?? &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Nov 2007 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.homeauto.com Link] &lt;br /&gt;
| [http://www.homeauto.com/Downloads/Products/Omnistat/rcr80.pdf Link] &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| Shows up as Standard Thermostat in Vera, Hold button feature not able to control by Vera at this time. Priced above 200.00. Has internal setback programs. Works great.&lt;br /&gt;
|-&lt;br /&gt;
| RCS &lt;br /&gt;
| Wall Stat &lt;br /&gt;
| TZ43 &lt;br /&gt;
| &amp;amp;nbsp;?? &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://store.homeseer.com/store/TZ43---Z-Wave-Thermostat-RCS-P627C67.aspx Link] &lt;br /&gt;
| [http://store.homeseer.com/store/TZ43---Z-Wave-Thermostat-RCS-P627C67.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| Shows up as Standard Thermostat in Vera, much more feature rich the the WDTC-20 but comes with a hefty price tag ($214.95). Wish Vera could use all the features in this Thermostat! '''Note:'''''You need to set the thermostat to show the temperature, on its display, in Celsius degree in order to be able to receive &amp;quot;Set Temp&amp;quot; commands from Vera. This is no longer required in firmwares above '''''&amp;lt;i&amp;gt;1.0.862 (luup)&amp;lt;/i&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
| Schlage/Trane &lt;br /&gt;
| Wall Stat &lt;br /&gt;
| Trane &lt;br /&gt;
| &amp;amp;nbsp;?? &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| &amp;amp;nbsp;??&lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.link.schlage.com/Products/Pages/Thermostat.aspx Link] &lt;br /&gt;
| [http://www.trane.com/Residential/Products/Thermostats Link] &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| It's the same thermostat as the RCS TZ43 and it has the same issue: it's accepting &amp;quot;Set Temp Point&amp;quot; commands only in the measurement unit that is displayed on its screen. '''Note:'''''You need to set the thermostat to show the temperature, on its screen, in Celsius degree in order to be able to receive &amp;quot;Set Temp&amp;quot; commands from Vera. This is no longer required in firmwares above '''''&amp;lt;i&amp;gt;1.0.862 (luup)&amp;lt;/i&amp;gt;'''&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| InTouch &lt;br /&gt;
| CA8900 &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Nov 2008 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.smarthome-products.com/p-663-intermatic-intouch-ca8900-z-wave-digital-thermostat.aspx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| Looks very similar to the Wayne Dalton WDTC-20 listed here. works great, simple to use&lt;br /&gt;
|-&lt;br /&gt;
| Danfoss &lt;br /&gt;
| Radiator thermostat &lt;br /&gt;
| RA PLUS-w &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| EU &lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://raplusw.com/Content/E962FC0B-6461-4319-82FE-3E1E765142CF.html Link] [http://raplusw.com/PCMPDF/Data%20sheet%20RA-PLUS-w_02.pdf Link] &lt;br /&gt;
| [http://www.eurox10.com/Product/ZWave/Actuators/ZWDNF_RA_PLUS-W.htm Link] [http://www.eurox10.com]&lt;br /&gt;
| &amp;lt;br&amp;gt;&lt;br /&gt;
| See: [[Danfoss Thermostat]] for installation instructions&amp;lt;br&amp;gt;If the device cannot be configured at the final location, move the device closer to Vera and try again (this device might require a direct connection to Vera for configuration).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Sensors'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Frequency&lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| ACT &lt;br /&gt;
| Motion Sensor &lt;br /&gt;
| ZIR000 / ZIR010 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| EU (ZIR010) or US (ZIR000)&lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.act-solutions.com/HomePro/pdfs/HomePro/Specs/ZIR000_spec.pdf Link] [http://www.act-solutions.com/HomePro/pdfs/HomePro/Inst/ZIR000_instr.pdf Link] [http://www.act-solutions.com/HomePro/pdfs/HomePro/Specs/ZIR010_spec.pdf Link] [http://www.act-solutions.com/HomePro/pdfs/HomePro/Inst/ZIR010_instr.pdf Link]&lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Remove the cover, pair to Vera's dongle by using the push-button on the left of the circuit board. Vera must configure it to work, and it can only be configured within less of a minute (30 sec best) of inserting the batteries. With Vera's dongle removed, remove/reinsert the batteries, and within 30 seconds insert Vera's dongle. Within a few minutes confirm the &amp;quot;configure&amp;quot; icon for the device is green on Vera's setup page&lt;br /&gt;
|-&lt;br /&gt;
| Express Controls aka HomeSeer &lt;br /&gt;
| 3-in-1 sensor (light/temperature/motion) &lt;br /&gt;
| HSM100 / EZMotion &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| EU or US&lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://www.expresscontrols.com/pdf/EZMotionOwnerManual.pdf Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| See [[ExpressControls3in1]]&amp;lt;br&amp;gt;If the motion sensor does not work right after inclusion and configuration, remove the batteries for a few seconds.&lt;br /&gt;
|-&lt;br /&gt;
| EverSpring/Hawking/Home Manageables &lt;br /&gt;
| Door/window sensor &lt;br /&gt;
| SM103 &lt;br /&gt;
| 6,2,9,1,0 &lt;br /&gt;
| EU or US&lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.everspring.com/Products/Home_Automation_Detail.asp?parentUID=83&amp;amp;UID=355&amp;amp;CateUIDList=0,83 Link] [http://www.everspring.com/Archive/Image/File/A501110873R01_SM103_-ECR.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Pair using the intrusion button. The sensor will accept configuration within a few minutes of the initial pairing, or of pressing the intrusion button on the back even after it's paired. Pair the device, or if it's already paired, press the intrusion button, and within 30 seconds insert Vera's dongle. Within a few minutes confirm the &amp;quot;configure&amp;quot; icon for the device is green on Vera's setup page. NOTE: There is some confusion about the orientation of the sensor. The main sensor body has a back (where the intrusion is), a front (where the logo and LED is), and the 2 other surfaces, one of which has a curved edge, and the other is flat. The magnet needs to go against the flat surface. And the flat surface on the magnet should be as close as possible to the flat surface on the sensor, lined up in the middle so the line which passes through the LED lines up with the sensor.&lt;br /&gt;
|-&lt;br /&gt;
| EverSpring/Home Manageables &lt;br /&gt;
| Humidity + Temperature sensor&lt;br /&gt;
| HM-TS001 &lt;br /&gt;
|  &lt;br /&gt;
| &lt;br /&gt;
| Jan 2010 (requires version 1.1.0 or greater) &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.asihome.com/ASIshop/product_info.php?products_id=3946 Link] [http://www.homeseer.com/pdfs/guides/HM_TD001.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| micasaverde &lt;br /&gt;
| Pair or unpair the device by tapping the CF button 3 times very quickly.  Once it's paired and shows up in the UI as a generic device, press the CF button 3 times again quickly to make it wakeup and get configured.  Then it will correctly be identified as 3 devices (combo device + temperature + humidity).&lt;br /&gt;
|-&lt;br /&gt;
| Everspring &lt;br /&gt;
| Motion Detector &lt;br /&gt;
| SP103 &lt;br /&gt;
| 6,2,9,1,0 &lt;br /&gt;
| EU or US&lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.everspring.com/Products/Home_Automation_Detail.asp?parentUID=83&amp;amp;UID=354&amp;amp;CateUIDList=0,83 Link] [http://www.everspring.com/Archive/Image/File/A501110874R01_SP103_%20-%20ECR.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Works well&lt;br /&gt;
|-&lt;br /&gt;
| Fortrezz &lt;br /&gt;
| Water /Freeze &lt;br /&gt;
| WWA-001 &lt;br /&gt;
| &amp;amp;nbsp;?????? &lt;br /&gt;
| US&lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.Fortrezz.com Link] [http://www.fortrezz.com/resources/WWA_manual_01May2009.pdf Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Zmistro &lt;br /&gt;
| Works great I would place a few in your house. Bathrooms, laundry , kitchen , basement. Great product!&lt;br /&gt;
|-&lt;br /&gt;
| Merten&lt;br /&gt;
| 4-gang radio transmitter, flush-mounted &lt;br /&gt;
| 506004 &lt;br /&gt;
| 2,2,27,1,4 &lt;br /&gt;
| EU&lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5060_581_02_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp;&lt;br /&gt;
| Ap15e &lt;br /&gt;
| Note: There is proprietary functionality here. Support will be added soon.&lt;br /&gt;
Quite complex device; partially supported by Vera; can be used as a window/door sensor (as of firmware 1.0.900) ...&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Door Locks'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added&amp;lt;br&amp;gt;By User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Schlage &lt;br /&gt;
| Door lock and deadbolt &lt;br /&gt;
| BE369 (deadbolt) &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Mid 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://consumer.schlage.com/link/product_tour/ Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2870 LibraSun] &lt;br /&gt;
| Read the instructions here: [[Schlage Lock]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Drapes/Blinds'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added&amp;lt;br&amp;gt;By User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Electronic Solutions &lt;br /&gt;
| Drape/Blind Motor Controller&lt;br /&gt;
| DBMZ &lt;br /&gt;
| V2+1 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| For 12-24VDC Motors &lt;br /&gt;
| [http://www.elec-solutions.com/products/dc_mot_ctrls/z-wave/dbmz/dbmz.html Link] &lt;br /&gt;
| Shady &lt;br /&gt;
| 2-Wire Motors&lt;br /&gt;
|-&lt;br /&gt;
| Electronic Solutions &lt;br /&gt;
| Drape/Blind Motor Controller&lt;br /&gt;
| ABMHZ &lt;br /&gt;
| V2+1 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| For 110-230VAC Motors &lt;br /&gt;
| [http://www.elec-solutions.com/products/int_ac_mot_ctrls/z-wave/abmhz/abmhz.html Link] &lt;br /&gt;
| Shady &lt;br /&gt;
| 4-Wire Motors&lt;br /&gt;
|-&lt;br /&gt;
| Lagotek / RSSceneAutomation&lt;br /&gt;
| Drape/Blind Motor Controller&lt;br /&gt;
| DC1-ZW &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| For 12-24VDC Motors &lt;br /&gt;
| [http://www.lagotek.com/blindspdf/AC1-ZW%20Cut%20Sheet.pdf Link] &lt;br /&gt;
| Shady &lt;br /&gt;
| 2-Wire Motors&lt;br /&gt;
|-&lt;br /&gt;
| Lagotek / RSSceneAutomation &lt;br /&gt;
| Drape/Blind Motor Controller&lt;br /&gt;
| AC1-ZW &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| For 110-230VAC Motors &lt;br /&gt;
| [http://www.lagotek.com/blindspdf/DC1-ZW%20Cut%20Sheet.pdf Link] &lt;br /&gt;
| Shady  &lt;br /&gt;
| 4-Wire Motors&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Relay controls'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added&amp;lt;br&amp;gt;By User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Intermatic &lt;br /&gt;
| Contactor control box &lt;br /&gt;
| CA3750 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Nov 2007 &lt;br /&gt;
| Indoor/Outdoor &lt;br /&gt;
| [http://www.intouchcontrols.com/~/media/Files/InTouchControls/Products/Spec%20Sheets/CA3750.ashx Link] &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Multi-instance class supported for this device. Vera is able to control each of the 2 relays independently if desired. please note unit shows as three switches this is a bug with Intermatic not a real issue.You can check the box in devices to not show the second listing of the first relay in &amp;quot;Dasboard&amp;quot; You can control heavy loads like a water heater ,pool pump motor/s. great device&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Window Coverings'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Frequency&lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Specs &lt;br /&gt;
! Product Review &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Merten &lt;br /&gt;
| Radio roller shutter push-button &lt;br /&gt;
| 5025xx, 5035xx, 5045xx &lt;br /&gt;
| 6,2,27,2,3 and 6,2,27,2,4 &lt;br /&gt;
| EU&lt;br /&gt;
| Apr 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.merten.de/download/DL_doku/V5025_581_01_web.pdf Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Ap15e &lt;br /&gt;
| Open/Close buttons work well, but slide bar does not work. GUI buttons do not work with Luup release 1.0.843 and 1.0.862 (fixed with Luup release 1.0.879).&amp;lt;br&amp;gt;Workaround: Use a Luup Scene with the following code:&amp;lt;tt&amp;gt;&amp;lt;/tt&amp;gt; &lt;br /&gt;
&amp;lt;tt&amp;gt;local lul_arguments = {}&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lul_arguments[&amp;quot;newTargetValue&amp;quot;]=&amp;quot;0&amp;quot;&amp;lt;/tt&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;tt&amp;gt;lul_resultcode,lul_resultstring,lul_job,lul_returnarguments = luup.call_action(&amp;quot;urn:upnp-org:serviceId:SwitchPower1&amp;quot;,&amp;quot;SetTarget&amp;quot;,lul_arguments,6) &amp;lt;/tt&amp;gt; Replace &amp;quot;6&amp;quot; with your device number, replace &amp;quot;0&amp;quot; with &amp;quot;1&amp;quot; for inverse action. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| Duewi &lt;br /&gt;
| Radio roller shutter push-button &lt;br /&gt;
| 054368 &lt;br /&gt;
| 6,2,51,1,0 &lt;br /&gt;
| EU&lt;br /&gt;
| Jun 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| [http://www.duewi.de/index.php?productid=37344 Link] &lt;br /&gt;
| &amp;amp;nbsp; &lt;br /&gt;
| Lutz &lt;br /&gt;
| Open/Close buttons work well, but slide bar does not work.&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;Some additional observations by Ap15e (Vera V1, firmware 1.0.979):&amp;lt;UL&amp;gt;&amp;lt;LI&amp;gt;GUI button 'Stop' and corresponding UPnP service does not work.&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;GUI button 'Up' moves the shutter down, GUI button 'Down' moves the shutter up ...&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;After adjusting the running times even the slide bar seems to work!&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;I got a report from a user that the düwi device may fail due to interference from the shutter motor. In this case an additional filter is required (costs about 25 €/direction).&amp;lt;/LI&amp;gt;&amp;lt;LI&amp;gt;More information is available at [http://forum.micasaverde.com/index.php?topic=3359.msg16142#msg16142 Link]&amp;lt;/LI&amp;gt;&amp;lt;/UL&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== '''Cameras that work'''  ===&lt;br /&gt;
&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Device Type &lt;br /&gt;
! Model no. &lt;br /&gt;
! Version &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Location (indoor/outdoor) &lt;br /&gt;
! Path for JPEG image &lt;br /&gt;
! Product Review &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Linksys &lt;br /&gt;
| IP Camera &lt;br /&gt;
| WVC54GCA &lt;br /&gt;
| all &lt;br /&gt;
| 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| img/snapshot.cgi &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| An inexpensive camera with moderate image quality. Use the Linksys setup wizard for initial setup, then copy IP address and path into Vera setup fields. Use a static IP address.&lt;br /&gt;
|-&lt;br /&gt;
| Linksys &lt;br /&gt;
| IP Camera &lt;br /&gt;
| WVC210 &lt;br /&gt;
| all &lt;br /&gt;
| 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| img/snapshot.cgi &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| A more expensive camera with good image quality and pan/tilt ability. Use the Linksys setup wizard for initial setup, then copy IP address and path into Vera setup fields. Use a static IP address. Pan/tilt controls will not work with Vera.&lt;br /&gt;
|-&lt;br /&gt;
| Linksys &lt;br /&gt;
| IP Camera &lt;br /&gt;
| WVC80N &lt;br /&gt;
| all &lt;br /&gt;
| 2009 &lt;br /&gt;
| Indoor &lt;br /&gt;
| img/snapshot.cgi?size=2&amp;amp;quality=1 &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| A more expensive camera with good image quality and wireless N. Use the Linksys setup wizard for initial setup, then copy IP address and path into Vera setup fields. Use a static IP address. Pan/tilt controls will not work with Vera.&lt;br /&gt;
Size can be (160 x 120 = 1,320 x 240 = 2,640 x 480 = 3) and Quality can be (Very High= 1,High= 2,Normal= 3,Low= 4,Very Low= 5)&lt;br /&gt;
|-&lt;br /&gt;
| iCamView &lt;br /&gt;
| IP Camera Server &lt;br /&gt;
| iCV-22, iCV-32 &lt;br /&gt;
| all &lt;br /&gt;
| 2009&amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor/Outdoor &lt;br /&gt;
| pda.cgi?user=admin&amp;amp;amp;password=1234&amp;amp;amp;page=image&amp;amp;amp;cam=1&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;pda.cgi?user=admin&amp;amp;amp;password=1234&amp;amp;amp;page=image&amp;amp;amp;cam=2&amp;lt;br&amp;gt; &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Feature-rich IP camera server, suports up to two compatible USB cameras, optional WiFi support, USB storage, USB hubs, motion; works with range of cameras, see icamview.co.uk. Excellent modular solution. They do ship to North America.&lt;br /&gt;
|-&lt;br /&gt;
| SmartHome.com.au &lt;br /&gt;
| IP Camera &lt;br /&gt;
| Z~Series Wireless Camera &lt;br /&gt;
| all &lt;br /&gt;
| 2009&amp;lt;br&amp;gt; &lt;br /&gt;
| Indoor &lt;br /&gt;
| tmpfs/auto.jpg &lt;br /&gt;
| &amp;lt;br&amp;gt; &lt;br /&gt;
| Inexpensive IP security camera designed for the Australian and New Zealand Z-Wave users, but shipping world wide.&lt;br /&gt;
|-&lt;br /&gt;
| [http://global.level1.com LevelOne] &lt;br /&gt;
| IP Camera &lt;br /&gt;
| WCS-2030 &lt;br /&gt;
| all &lt;br /&gt;
| 2010 &lt;br /&gt;
| Indoor &lt;br /&gt;
| cgi-bin/video.jpg &lt;br /&gt;
| [http://reviews.cnet.com/search-results/levelone-camcon-wcs-2030/1707-5_7-31972011.html CNET review] &lt;br /&gt;
| An inexpensive IP camera with good image quality. Can be connected wired or wirelessly. Most LevelOne cameras use the same path for the JPEG image, so most of their line (both low and high end) should be compatible. Video and audio also stream over RTSP, which can be customized through the camera's web interface.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Source_Code</id>
		<title>Source Code</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Source_Code"/>
				<updated>2010-04-17T21:11:51Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
[[Category:Obsolete]]&lt;br /&gt;
Vera is based on OpenWRT KAMIKAZE. The full source tree for OpenWRT is available at openwrt.org. &lt;br /&gt;
&lt;br /&gt;
The source code for Vera's applications, as of version 1.0.602, is available here: http://download.findvera.com/source-1.0.602.tar.gz &lt;br /&gt;
&lt;br /&gt;
This includes DCERouter and some other libraries. The source code for Vera's Z-Wave stack and the router plugins are not included as they include licensed code and were created under NDA's. However these are not needed to extend the functionality of Vera because it is a plugin architecture so the proper way to add new functionality is to create another plugin or DCE device, rather than to add it into one of our existing devices. The binaries with the .602 release match the code, so you should be able to build a new firmware with the OpenWRT source tree + this source code, and add back in the non-open source Vera binaries. Note that the Z-Wave device (/usr/bin/ZWave) is not free or open source; license fees are paid per unit sold. &lt;br /&gt;
&lt;br /&gt;
The exciting part is that our new [[LuaUPnP]] module will largely replace the need for developers to use the C/C++ code. This is a collaborative environment that makes it much easier to extend the functionality of Vera and will facilitate making more powerful applications than building DCE devices. You will be able to do virtually anything you want to extend Vera with the [[LuaUPnP]] module. And any devices created with LuaUPnP will be automatically UPnP devices. Plus you can specify if you want to make the devices available to the community for use, for development, or private. &lt;br /&gt;
&lt;br /&gt;
Originally our plan to help facilitate developers wanting to add-on to Vera was to setup a build server with virtual machines. However we ran into some bugs and performance problems in the virtual machine emulators that made cross-compiling within a VM very difficult. So, we figured our developers' time is better spent on LuaUPnP since that will be a lot more useful tool for developers who want to make their own customizations and add-ons to Vera.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Source_Code</id>
		<title>Source Code</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Source_Code"/>
				<updated>2010-04-17T21:11:14Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Development]]&lt;br /&gt;
Vera is based on OpenWRT KAMIKAZE. The full source tree for OpenWRT is available at openwrt.org. &lt;br /&gt;
&lt;br /&gt;
The source code for Vera's applications, as of version 1.0.602, is available here: http://download.findvera.com/source-1.0.602.tar.gz &lt;br /&gt;
&lt;br /&gt;
This includes DCERouter and some other libraries. The source code for Vera's Z-Wave stack and the router plugins are not included as they include licensed code and were created under NDA's. However these are not needed to extend the functionality of Vera because it is a plugin architecture so the proper way to add new functionality is to create another plugin or DCE device, rather than to add it into one of our existing devices. The binaries with the .602 release match the code, so you should be able to build a new firmware with the OpenWRT source tree + this source code, and add back in the non-open source Vera binaries. Note that the Z-Wave device (/usr/bin/ZWave) is not free or open source; license fees are paid per unit sold. &lt;br /&gt;
&lt;br /&gt;
The exciting part is that our new [[LuaUPnP]] module will largely replace the need for developers to use the C/C++ code. This is a collaborative environment that makes it much easier to extend the functionality of Vera and will facilitate making more powerful applications than building DCE devices. You will be able to do virtually anything you want to extend Vera with the [[LuaUPnP]] module. And any devices created with LuaUPnP will be automatically UPnP devices. Plus you can specify if you want to make the devices available to the community for use, for development, or private. &lt;br /&gt;
&lt;br /&gt;
Originally our plan to help facilitate developers wanting to add-on to Vera was to setup a build server with virtual machines. However we ran into some bugs and performance problems in the virtual machine emulators that made cross-compiling within a VM very difficult. So, we figured our developers' time is better spent on LuaUPnP since that will be a lot more useful tool for developers who want to make their own customizations and add-ons to Vera.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Somfy_Plugin</id>
		<title>Somfy Plugin</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Somfy_Plugin"/>
				<updated>2010-04-17T21:10:29Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:Plugins]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
To use the Somfy plugin, follow these steps:&lt;br /&gt;
&lt;br /&gt;
1.  Click Devices, Luup Plugins.  Then 'install/uninstall plugins'.  Find the 'Somfy plugin', click 'install', then click 'save'.&lt;br /&gt;
&lt;br /&gt;
2.  When the data is saved wait for the 'continue' to appear, then click it.  Then click 'Devices' you will be asked to specify the room the Somfy Blind Interface is in.&lt;br /&gt;
&lt;br /&gt;
3.  Go to Devices, Luup Plugins, click 'Serial Port Configuration'.  Find the serial port which you connected the Somfy interface to.   Set the Baud to 9600, Parity to None, Data Bits to 8, Stop Bits to 1, and in the 'used by device', choose 'Somfy Blinds'.&lt;br /&gt;
&lt;br /&gt;
4.  Go to Devices, Luup Plugins, find the Somfy blind interface, click the '+' button.  In the box marked 'BlindIds' put in a list of all the blind numbers which are active.  The Somfy interface supports 16 blinds, and Vera cannot know which of those 16 ports are actually connected to blinds.  So rather than just displaying 16 blinds when you probably only have a couple hooked up, Vera expects you to enter in the &amp;quot;ID&amp;quot; field which ports actually have blinds.  Each number must be 2 digits, padded with a 0, and separated with a comma, with no spaces.  So if you have blinds connected to ports 5, 9 and 12, enter in the ID box: 05,09,12.  By default you will have blinds 01 and 02.&lt;br /&gt;
&lt;br /&gt;
5.  In the box UrtsiId, change the 01 to a single exclamation point, ie the ! character, if you are using an URTSI version 1.  For version 2, you can normally leave the 01 as the default, unless it's set to a different house id.&lt;br /&gt;
&lt;br /&gt;
6.  Click 'Save'.  Wait for the 'continue' button appear, click it.  Wait about 30 seconds for the Somfy interface to startup up, then click 'Devices'.  You will see the new blinds that you specified in #3.  Pick the rooms they are in, and you're done.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Serial_Supported_Hardware</id>
		<title>Serial Supported Hardware</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Serial_Supported_Hardware"/>
				<updated>2010-04-17T21:09:39Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
This page is not yet complete...&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
This is a page for Supported USB, or USB-Serial, interface devices.&lt;br /&gt;
&lt;br /&gt;
USB, and USB-Serial, devices need to be recognized by Vera's platform before they can be used to interface with the target device (through a Luup Module).  There are many USB-Serial devices out there, and not all will work out of the gate.&lt;br /&gt;
&lt;br /&gt;
This page is intended to capture the list of known USB Devices that have been ''tried'' with Vera, along with their current status, and any information required to get them working.&lt;br /&gt;
&lt;br /&gt;
This is a wiki, so feel free to add to the page. &lt;br /&gt;
&lt;br /&gt;
=Disclaimer=&lt;br /&gt;
'''IMPORTANT! The devices listed here have been added by installers, technicians and users like yourself. Results may vary upon installations. MiCasaVerde does not guarantee operation and compatibility with your installation. The listed devices were found to work with their specific installation. Mixing different series and brands of equipment is not guaranteed in any way to work with other series and brands. It is very likely that users have not fully tested all features of the devices, so it is possible that a device listed here as compatible, will not prove compatible with your hardware. If you are editing this wiki DO NOT REMOVE a listed working device if it hasn't worked for you. Seek help to get the device to work under your individual circumstance. If you are adding to this wiki, please provide links to data for the device and add any tips you feel may benefit someone wanting to implement the device into an installation.''' &lt;br /&gt;
&lt;br /&gt;
=USB Devices=&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;width: 1220px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Model # &lt;br /&gt;
! Status&lt;br /&gt;
! Date Purchased &lt;br /&gt;
! Chipset&lt;br /&gt;
! Specs &lt;br /&gt;
! Purchased from &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| USB-UIRT&lt;br /&gt;
| USB-UIRT &lt;br /&gt;
| Working (1.0.918)&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| http://www.usbuirt.com/&lt;br /&gt;
| http://www.usbuirt.com/&lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2 micasaverde] &lt;br /&gt;
| This one is listed in micasaverde's posting [http://forum.micasaverde.com/index.php?topic=1993.0]&lt;br /&gt;
|-&lt;br /&gt;
| APC&lt;br /&gt;
| Back-UPS ES 750 &lt;br /&gt;
| Not Working&lt;br /&gt;
|&lt;br /&gt;
| APC HID&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| Doesn't work in Vera 1.0.900.  Requires installation of Kernel/OpenWRT modules to support USB-HID Interface for UPS.  This one is listed in guessed's posting [http://forum.micasaverde.com/index.php?topic=1471.msg5570#msg5570]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= USB-Serial Devices  =&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; cellpadding=&amp;quot;2&amp;quot; width=&amp;quot;1220&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Model # &lt;br /&gt;
! Status &lt;br /&gt;
! Date Purchased &lt;br /&gt;
! #RS-232 Ports &lt;br /&gt;
! Chipset &lt;br /&gt;
! Specs &lt;br /&gt;
! Purchased from &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| Future Electronics &lt;br /&gt;
| UC232R-10 &lt;br /&gt;
| Working &lt;br /&gt;
| &lt;br /&gt;
| 1 &lt;br /&gt;
| FTDI &lt;br /&gt;
| [http://www.ftdichip.com/Documents/DataSheets/Modules/DS_UC232R.pdf Link] &lt;br /&gt;
| [http://www.futureelectronics.com/en/Technologies/Product.aspx?ProductID=UC232R10FUTURETECHNOLOGYDEVICES2297802 futureelectronics.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2 micasaverde] &lt;br /&gt;
| This one is listed in MiCasaVerde's posting [http://forum.micasaverde.com/index.php?topic=1170.msg4500#msg4500]&lt;br /&gt;
|-&lt;br /&gt;
| SerialGear &lt;br /&gt;
| 8XDB9-USB &lt;br /&gt;
| Unknown &lt;br /&gt;
| &lt;br /&gt;
| 8 &lt;br /&gt;
| FTDI - FT8U232AM &lt;br /&gt;
| [http://www.ftdichip.com/Documents/DataSheets/ft232r08.pdf Link] &lt;br /&gt;
| [http://www.usbgear.com/computer_cable_details.cfm?sku=8XDB9-USB&amp;amp;cats=199&amp;amp;catid=199%2C478%2C474 usbgear.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=525 nanckekr] &lt;br /&gt;
| This one is listed in nanckekr's posting [http://forum.micasaverde.com/index.php?topic=1170.msg4484#msg4484]&lt;br /&gt;
|-&lt;br /&gt;
| Bytecc &lt;br /&gt;
| BT-DB925 &lt;br /&gt;
| Manual &lt;br /&gt;
| &lt;br /&gt;
| 1 &lt;br /&gt;
| Prolific - PL-2303 &lt;br /&gt;
| &lt;br /&gt;
| [http://www.monoprice.com/products/product.asp?c_id=103&amp;amp;cp_id=10311&amp;amp;cs_id=1031104&amp;amp;p_id=2067&amp;amp;seq=1&amp;amp;format=2 monoprice.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| This one is listed in guessed's posting [http://forum.micasaverde.com/index.php?topic=1471.msg5512#msg5512]. It requires a series of manual configuration steps, and OS-Level access to Vera, to get it working.&lt;br /&gt;
|-&lt;br /&gt;
| BAFO &lt;br /&gt;
| DX SKU 5947 &lt;br /&gt;
| Manual &lt;br /&gt;
| &lt;br /&gt;
| 1 &lt;br /&gt;
| Prolific - PL-2303 &lt;br /&gt;
| N/A &lt;br /&gt;
| [http://www.dealextreme.com/details.dx/sku.5947 dealextreme.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=7 325xi] &lt;br /&gt;
| Well built, recognized by OpenWrt, Ubuntu, Windows, etc. On Vera it will require manual edits made through SSH. See details on nanckekr's post: [http://forum.micasaverde.com/index.php?topic=3025.msg12329#msg12329]&lt;br /&gt;
|-&lt;br /&gt;
| N/A &lt;br /&gt;
| DX SKU 22407 &lt;br /&gt;
| Not working &lt;br /&gt;
| &lt;br /&gt;
| 1 &lt;br /&gt;
| Prolific - PL-2303 &lt;br /&gt;
| N/A &lt;br /&gt;
| [http://www.dealextreme.com/details.dx/sku.22407 dealextreme.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=7 325xi] &lt;br /&gt;
| Intermittent USB recognition errors on Vera; but does work on Kamikaze&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
SYBA&lt;br /&gt;
&lt;br /&gt;
| N/A &lt;br /&gt;
| Not working &lt;br /&gt;
| &lt;br /&gt;
| 1 &lt;br /&gt;
| Prolific - PL-2303 &lt;br /&gt;
| N/A &lt;br /&gt;
| [http://www.monoprice.com/products/product.asp?c_id=103&amp;amp;cp_id=10311&amp;amp;cs_id=1031104&amp;amp;p_id=2276&amp;amp;seq=1&amp;amp;format=2 monoprice.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=7 325xi] &lt;br /&gt;
| USB recognition errors on Linux distros and OpenWRT&lt;br /&gt;
|-&lt;br /&gt;
| &amp;amp;nbsp;SerialStuff*&lt;br /&gt;
| &amp;amp;nbsp;USBG-4FTDI*&lt;br /&gt;
| Working &lt;br /&gt;
| 11/2006 &lt;br /&gt;
| 4 &lt;br /&gt;
| FTDI FT232BL*&lt;br /&gt;
| &amp;amp;nbsp;? &lt;br /&gt;
| [http://www.mcmelectronics.com/product/83-10137 mcmelectronics.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=4678 michaelk] &lt;br /&gt;
| 4 serial ports. Just plugged it in and it worked. There's also a 2-port model from the same place- that MIGHT&amp;amp;nbsp;work also. I assume it's FTDI becasue vera names the ports &amp;quot;ftdi_sio&amp;quot;.&amp;amp;nbsp; Fires right up from vera1's u sb port- but in case power is an issue it has a 5v input on the back so you can make it self powered. It's pretty generic- no name- etc. but feels solid- metal case and never had a problem with it over the years on a pc.&amp;amp;nbsp;&amp;amp;nbsp; '''NOTE''':&amp;amp;nbsp; *=I&amp;amp;nbsp;think it's the same as this page [http://www.usbgear.com/USBG-4FTDI.html usbgear.com]&amp;amp;nbsp;where I found that info&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Ethernet-Serial Devices=&lt;br /&gt;
{| cellpadding=&amp;quot;2&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;width: 1220px;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Manufacturer &lt;br /&gt;
! Model # &lt;br /&gt;
! Status&lt;br /&gt;
! Date Purchased &lt;br /&gt;
! #RS-232 Ports &lt;br /&gt;
! Chipset&lt;br /&gt;
! Specs &lt;br /&gt;
! Purchased from &lt;br /&gt;
! Added by User &lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| WizNet&lt;br /&gt;
| WIZ110SR &lt;br /&gt;
| Working&lt;br /&gt;
| Jan 2010&lt;br /&gt;
| 1 &lt;br /&gt;
| WIZnet&lt;br /&gt;
| [http://wiznet.co.kr/en/pro02.php?&amp;amp;page=1&amp;amp;num=20 Link] &lt;br /&gt;
| [http://www.sparkfun.com/commerce/product_info.php?products_id=9476 sparkfun.com] &lt;br /&gt;
| [http://forum.micasaverde.com/index.php?action=profile;u=2618 guessed] &lt;br /&gt;
| This is a stripped down Ethernet-enabled Serial/RS-232 Port.  It's useful in situations where you might otherwise need a GC-100 to get &amp;quot;just a serial port&amp;quot; to connect to a TV, Amplifier etc.  Don't forget to get yourself a 5V Power supply to drive it, or alternatively use a USB-5V Power code (as I do).  Initial configuration of the device requires a Windows machine to run the configuration tool (DHCP, Baud Rate/Parity etc).  Note that getting this &amp;quot;connected&amp;quot; to Vera is a manual process at this time.  http://forum.micasaverde.com/index.php?topic=2989.0 .  I use [http://www.sparkfun.com/commerce/product_info.php?products_id=8639 USB-5v] to power mine from an existing USB Power source.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Discussions=&lt;br /&gt;
*Forum Posting - [http://forum.micasaverde.com/index.php?topic=1471.0 How to make Vera recognize your USB-to-Serial Adapter]&lt;br /&gt;
*Forum Posting - [http://forum.micasaverde.com/index.php?topic=1170.0 Serial port:]&lt;br /&gt;
*Forum Posting - [http://forum.micasaverde.com/index.php?topic=1703.0 Attempts to get ser2net Proxy working on a remote router device]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Sensor_State</id>
		<title>Sensor State</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Sensor_State"/>
				<updated>2010-04-17T21:09:13Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Image:sensor-state.png]]&lt;br /&gt;
&lt;br /&gt;
The green/red dot next to Arm/Bypass buttons IS NOT the indication whether the sensor is armed or not! It shows the current tripped state of the sensor - Green=Idle, Red=Tripped.&lt;br /&gt;
&lt;br /&gt;
The only indication whether the sensor is armed or not is to check which button (Arm or Bypass) is highlighted in blue.&lt;br /&gt;
&lt;br /&gt;
Pretty much all sensors go from green to red (i.e. tripped) almost instantly - motion detected, door/window open, water leak detected etc.&lt;br /&gt;
&lt;br /&gt;
But going back from red to green (i.e. &amp;quot;untripped&amp;quot;, reset or go back to idle) is another story. Some sensors need to be manually reset (water leak sensors, like FortrezZ), some get untripped instantly (door/window closed) or some take time to idle-out (motion sensor when it does not detect motion for some period of time, like 20 minutes by default in HSM100).&lt;br /&gt;
&lt;br /&gt;
Note: The default idle value of 20 minutes in HSM100 can be changed, see [[ExpressControls3in1]])&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Security_Concerns</id>
		<title>Security Concerns</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Security_Concerns"/>
				<updated>2010-04-17T21:07:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
If, when setting up Vera, on the FindVera tab, after creating a username and password for the FindVera service, you check the boxes &amp;quot;Only allow access through the secure FindVera service&amp;quot; and &amp;quot;Disable terminal login&amp;quot;, then Vera will be a secure device that you can access only using our secure [http://FindVera.com FindVera.com] service, similar to some competing Z-Wave bridges and gateways that mandate you use their remote access service. In that case, the rest of this document may not interest you. &lt;br /&gt;
&lt;br /&gt;
However, we believe that since you already paid for Vera, you own it, and you should have the freedom to choose if you want to use our service or not. Therefore we recommend you read this document to understand your choices and the implications. &lt;br /&gt;
&lt;br /&gt;
There are 2 aspects to the security of your Z-Wave network. The first is the security of the Z-Wave network itself, and the second is the security of the internet connection Vera uses to allow remote control. &lt;br /&gt;
&lt;br /&gt;
= Z-Wave Security  =&lt;br /&gt;
&lt;br /&gt;
Mi Casa Verde did not have any role in implementing the Z-Wave security. This was done by Zensys and the Z-Wave alliance, who assert the system is robust and secure, and who certify secure devices. Z-Wave security is designed to prevent unauthorized Z-Wave devices from communicating with secure Z-Wave devices. &lt;br /&gt;
&lt;br /&gt;
= Internet Security  =&lt;br /&gt;
&lt;br /&gt;
If you turn off Vera's Wi-Fi, and don't connect Vera to your home network or to the internet, then internet security will not be an issue. However, you likely do want to connect Vera to the network so you can access Vera from your web browsers, cell phones, and such. &lt;br /&gt;
&lt;br /&gt;
One solution to internet security would be to mandate that you must only access Vera through our secure service. This is the approach that some competing Z-Wave gateways or bridges have taken. The drawback with this approach is that you cannot use the product, which you already paid for, unless you continually pay the manufacturer for use of their secure server. If you stop paying them, or if they stop providing the service, your Z-Wave gateway becomes useless. Also, if the internet connection goes down in your home, such as a cable/DSL outage, you lose any access to your Z-Wave gateway as well. &lt;br /&gt;
&lt;br /&gt;
'''Note: We give you the option of only allowing access to Vera using our secure service''', just like our competitors' product. However, being an open company and basing our products on open standards and a spirit of transparency, we feel that should be an option, not a mandate. You have the freedom to choose our secure services if you want to, but the functionality of Vera is not crippled if you choose otherwise. Vera functions without any internet connection at all. And, if you choose to disable the firewall, you can expose Vera to the internet and remotely access Vera over the internet and cell phone with limited security. &lt;br /&gt;
&lt;br /&gt;
Therefore, take a moment to read about the security issues so you can make an informed decision what security measures you would like to take. &lt;br /&gt;
&lt;br /&gt;
== Find Vera service  ==&lt;br /&gt;
&lt;br /&gt;
The FindVera service is designed to allow you to access your system remotely when you are away from home, by using our secure server as a gateway. With this service, Vera makes a secure, encrypted connection to the FindVera server, and you can remotely connect to the FindVera server over the internet or with your mobile phone. The FindVera server uses the same type of security as online banking, known as SSL. &lt;br /&gt;
&lt;br /&gt;
Naturally even secure servers can be compromised, and even major banks and credit card companies have had their servers hacked into and their databases stolen. Therefore, we believe the best protection is for us to be honest and direct in explaining the security measures that we have implemented so that technical users and security experts can provide peer review and uncensored, open critique. One important thing to note is that at no time during the sign up or setup of your system are you asked for your address. Even if you purchase Vera from our online shop, that is handled by a separate, unrelated online shopping system and your credit card and address verification are handled by third parties, like Google and Paypal. Therefore, even if the FindVera service were compromised, the hacker would not know your address. To learn more about the measures we have implemented to safeguard this service, see [[FindVera Security Measures]]. We also have an uncensored forum at [http://forum.micasaverde.com http://forum.micasaverde.com] dedicated to security concerns. &lt;br /&gt;
&lt;br /&gt;
On the FindVera tab, after you activate the FindVera service, you can check the box &amp;quot;Only allow access through the secure FindVera service&amp;quot;, and &amp;quot;Disable terminal login&amp;quot;. By doing this, Vera then has comparable security to our competitors' products, and you can only access Vera when your home network is up and you connect securely through https://findvera.com. Unlike our competitor's products, though, if you later change your mind and don't want to use our service, you can do a [[Factory Reset|factory reset]] of Vera and go back to using Vera without our service (requires firmware version 530 or later).&lt;br /&gt;
&lt;br /&gt;
== Wi-Fi security  ==&lt;br /&gt;
&lt;br /&gt;
If you check the box &amp;quot;Only allow access through the secure FindVera service&amp;quot;, that means that even if your Wi-Fi network is compromised, the intruder will not have access to Vera. &lt;br /&gt;
&lt;br /&gt;
Vera includes a built-in Wi-Fi access point, which is manufactured by a third party, and the Wi-Fi security is the same as any other access point. The original Wi-Fi security, WEP, was shown to have vulnerabilities and has been hacked. The newer Wi-Fi security, WPA2, which is what Vera uses by default, is considered to be more secure. However, Mi Casa Verde makes no guarantees about the security of Wi-Fi, and, if you are concerned about the possibility of hackers, you can go to 'Advanced', 'Net &amp;amp;amp; Wi-Fi' on Vera's 'Setup' page, and click 'Wi-Fi' ''Off''. Note that if you do that, and then you add another Wi-Fi access point to your home network, or leave Wi-Fi on in your computer, you may be exposing your home network to the same security risk.&lt;br /&gt;
&lt;br /&gt;
== Local web access over your home network  ==&lt;br /&gt;
&lt;br /&gt;
Again, if you check the box &amp;quot;Only allow access through the secure FindVera service&amp;quot;, this is not an issue, and you may skip this topic. &lt;br /&gt;
&lt;br /&gt;
By default, Vera comes with no security on your home's local network. That means that any other computers within your home, on your local network, or connected to your home network with Wi-Fi, can access and control Vera. So, if someone comes into your home and connects to your home network, or if they hack into your Wi-Fi network, or if you have another router acting as a firewall and it becomes compromised, users can control Vera. &lt;br /&gt;
&lt;br /&gt;
If this is a concern, there are a couple preventive measures you can take besides only allowing access through the FindVera service. &lt;br /&gt;
&lt;br /&gt;
On the Users tab, you can create user names and passwords and check the box &amp;quot;Require a username and password to access Vera from within my home network.&amp;quot; This means that even for people within the home, a username and password will be required. This makes Vera as secure as most any other IP device on your home network that requires a username or password. But that is not truly secure. Unlike the FindVera service which uses special encryption like online banking (SSL), you don't have any special encryption on your home network. So, if somebody hacked into your home network and was able to monitor your network traffic while you logged into Vera, someone who knew about network protocols could get your user username and password to Vera.&lt;br /&gt;
&lt;br /&gt;
== Local terminal login  ==&lt;br /&gt;
&lt;br /&gt;
If you check the box &amp;quot;Disable terminal login&amp;quot; on the FindVera tab, you don't need to worry about this. If you're not a technical person, you can just check this box. You don't have to sign up for the FindVera service to check this option. &lt;br /&gt;
&lt;br /&gt;
For the technical users out there, in addition to allowing you to connect to Vera from a web browser, Vera allows you to connect directly using what's called ssh or telnet. Vera is, after all, an open system, running the Linux operating system. By default, Vera allows anybody on your local home network to login without any password at all. If you want to set a password, go to 'Advanced', 'Net &amp;amp;amp; Wi-Fi', and click 'Advanced Configuration'. You can then set a password. At that point, you can no longer log in with telnet, which is insecure, but must thereafter login with SSH, which is secure. Or just check the &amp;quot;Disable terminal login&amp;quot; box and all login is blocked. You can uncheck it later if you change your mind.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Secure_Remote_Access_TechInfo</id>
		<title>Secure Remote Access TechInfo</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Secure_Remote_Access_TechInfo"/>
				<updated>2010-04-17T21:06:46Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: Undo revision 2342 by Javier (Talk)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;We have made it a top priority to provide customers a safe way to remotely control their Vera that is easy for the customer, but at the same time is secure and does not expose the customer to hackers and other security risks. This page provides technical details about the security measures we have implemented so we are subject to peer review. We have provided a 'Security concerns' forum at [http://forum.micasaverde.com forum.micasaverde.com] for uncensored discussion about security concerns. &lt;br /&gt;
&lt;br /&gt;
Vera listens on two network ports: port 80 is the normal web interface, and port 3451 is for a special control protocol. When Vera boots up, if the network settings have not been changed manually, Vera first checks if the IP address is an internal IP address (i.e. starts with 192.168, 10. or 172.x), and whether there is a valid internet connection. Vera does this by pinging a couple of common servers, such as google, youtube, and micasaverde, to confirm that it gets unique addresses for each domain name and that at least 2 of the 3 servers respond. If Vera has an internal IP address and a valid internet connection, all 5 ports on Vera go into 'switch' mode, meaning they're effective bridged, and there is no firewall. Thus Vera is open for access from another system on the same home network. If Vera has an external, or routable IP address, Vera goes into 'gateway' mode: The WAN and LAN ports are separated, a firewall is setup, a DHCP server runs on the LAN ports providing addresses in the 192.168.81.x range, and Vera only accepts incoming connections on ports 80 and 3451 from the LAN ports. Thus, only PC's within the home would be able to access Vera, and nothing external, unless the homeowner changes the network settings or sets up a port forward through the main router's firewall. Vera's built-in Wi-Fi is enabled by default, which allows users into the system wirelessly. So we ship Vera with WPA2 encryption turned on, and a random Wi-Fi password consisting of two dictionary words plus a number, which is printed on the bottom of Vera. &lt;br /&gt;
&lt;br /&gt;
Each Vera has two unique hardware keys which are stored in the NVRAM (non-volatile memory) and assigned at the factory along with the serial number and the domain name for the remote access server that Vera will use. Only the remote access server for a particular Vera has a database with the serial numbers and hardware keys. When the user goes to the [http://findvera.com FindVera.com] tab on his setup page (i.e. from within the home) and activates the service, his username and an MD5 hash (security checksum) of the password, along with the serial number and hardware key, are sent to the remote access server using the https: (SSL encryption) protocol. The remote access server validates the connection by checking whether the serial number and hardware key match, and if so, replies with a port number that the Vera unit can use for remote access. &lt;br /&gt;
&lt;br /&gt;
The Vera then uses ssh with a pre-defined ssh username and shared key to make a connection to the remote access server. The remote access server only accepts incoming ssh connections from that username with that shared key. And ssh is configured on the server so that when a connection comes in, rather than giving the ssh user a console (i.e. bash), it runs a script that requires the serial number and hardware key be sent in within 10 seconds. If they are, and they match, and the right port number was used, the ssh connection is authorized. If there is a mis-match, a log is filed with the incoming external IP address so we can add a block to this IP in the firewall in case this is a DOS (denial of service)&amp;amp;nbsp;or similar attack. The SSH connection includes a port forward of ports 80 and 3451 using the standard ssh port forward mechanism. This port forward does not allow 'gateway', that is, the ports are only accessible from within the remote access server. &lt;br /&gt;
&lt;br /&gt;
NetworkMonitor runs on Vera and calls a php page on the remote access server using https, passing in the serial number and hardware key, which does a loop back test to ensure the ssh tunnel is active. If it's not, NetworkMonitor shuts it down and re-opens it. &lt;br /&gt;
&lt;br /&gt;
When first logging on through [http://FindVera.com FindVera.com], the user is redirected to the remote access server, which only accepts secure (https) connections. Once the remote access server validates the username and password, then the php page on the control tab effectively acts as a gateway to the customer's Vera. It passes requests between the SSL connection and port 80 and port 3451 that are forwarded from the ssh connection on Vera by looking up the ports that are associated with that username. &lt;br /&gt;
&lt;br /&gt;
It should also be noted that we purposely never ask users for their home address so that if the remote access server ever were compromised, nobody would know the address of the Vera units.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Secure_Remote_Access_TechInfo</id>
		<title>Secure Remote Access TechInfo</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Secure_Remote_Access_TechInfo"/>
				<updated>2010-04-17T21:04:14Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
We have made it a top priority to provide customers a safe way to remotely control their Vera that is easy for the customer, but at the same time is secure and does not expose the customer to hackers and other security risks. This page provides technical details about the security measures we have implemented so we are subject to peer review. We have provided a 'Security concerns' forum at [http://forum.micasaverde.com forum.micasaverde.com] for uncensored discussion about security concerns. &lt;br /&gt;
&lt;br /&gt;
Vera listens on two network ports: port 80 is the normal web interface, and port 3451 is for a special control protocol. When Vera boots up, if the network settings have not been changed manually, Vera first checks if the IP address is an internal IP address (i.e. starts with 192.168, 10. or 172.x), and whether there is a valid internet connection. Vera does this by pinging a couple of common servers, such as google, youtube, and micasaverde, to confirm that it gets unique addresses for each domain name and that at least 2 of the 3 servers respond. If Vera has an internal IP address and a valid internet connection, all 5 ports on Vera go into 'switch' mode, meaning they're effective bridged, and there is no firewall. Thus Vera is open for access from another system on the same home network. If Vera has an external, or routable IP address, Vera goes into 'gateway' mode: The WAN and LAN ports are separated, a firewall is setup, a DHCP server runs on the LAN ports providing addresses in the 192.168.81.x range, and Vera only accepts incoming connections on ports 80 and 3451 from the LAN ports. Thus, only PC's within the home would be able to access Vera, and nothing external, unless the homeowner changes the network settings or sets up a port forward through the main router's firewall. Vera's built-in Wi-Fi is enabled by default, which allows users into the system wirelessly. So we ship Vera with WPA2 encryption turned on, and a random Wi-Fi password consisting of two dictionary words plus a number, which is printed on the bottom of Vera. &lt;br /&gt;
&lt;br /&gt;
Each Vera has two unique hardware keys which are stored in the NVRAM (non-volatile memory) and assigned at the factory along with the serial number and the domain name for the remote access server that Vera will use. Only the remote access server for a particular Vera has a database with the serial numbers and hardware keys. When the user goes to the [http://findvera.com FindVera.com] tab on his setup page (i.e. from within the home) and activates the service, his username and an MD5 hash (security checksum) of the password, along with the serial number and hardware key, are sent to the remote access server using the https: (SSL encryption) protocol. The remote access server validates the connection by checking whether the serial number and hardware key match, and if so, replies with a port number that the Vera unit can use for remote access. &lt;br /&gt;
&lt;br /&gt;
The Vera then uses ssh with a pre-defined ssh username and shared key to make a connection to the remote access server. The remote access server only accepts incoming ssh connections from that username with that shared key. And ssh is configured on the server so that when a connection comes in, rather than giving the ssh user a console (i.e. bash), it runs a script that requires the serial number and hardware key be sent in within 10 seconds. If they are, and they match, and the right port number was used, the ssh connection is authorized. If there is a mis-match, a log is filed with the incoming external IP address so we can add a block to this IP in the firewall in case this is a DOS (denial of service)&amp;amp;nbsp;or similar attack. The SSH connection includes a port forward of ports 80 and 3451 using the standard ssh port forward mechanism. This port forward does not allow 'gateway', that is, the ports are only accessible from within the remote access server. &lt;br /&gt;
&lt;br /&gt;
NetworkMonitor runs on Vera and calls a php page on the remote access server using https, passing in the serial number and hardware key, which does a loop back test to ensure the ssh tunnel is active. If it's not, NetworkMonitor shuts it down and re-opens it. &lt;br /&gt;
&lt;br /&gt;
When first logging on through [http://FindVera.com FindVera.com], the user is redirected to the remote access server, which only accepts secure (https) connections. Once the remote access server validates the username and password, then the php page on the control tab effectively acts as a gateway to the customer's Vera. It passes requests between the SSL connection and port 80 and port 3451 that are forwarded from the ssh connection on Vera by looking up the ports that are associated with that username. &lt;br /&gt;
&lt;br /&gt;
It should also be noted that we purposely never ask users for their home address so that if the remote access server ever were compromised, nobody would know the address of the Vera units.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Secure_Remote_Access</id>
		<title>Secure Remote Access</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Secure_Remote_Access"/>
				<updated>2010-04-17T21:03:41Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
Normally if you add a home networking device, like an IP camera, or a home control system, and you want to view or control that device from the internet, you will not be able to do this securely. This is because, even though the device may ask for a username and password, that username and password is transmitted all over the internet, and it's very easy to hack in. &lt;br /&gt;
&lt;br /&gt;
The reason it's safe to use on-line banking and secure e-commerce is because the company's that run those sites have set up &amp;quot;secure servers&amp;quot;. This is a complex process that involves creating encryption keys and getting your identification verified by an on-line security house, like Verisign, and setting up a secure server. A normal home user will never go through this process, and therefore, before Vera, there as no easy way to remotely and safely view your home's security cameras or control your home. &lt;br /&gt;
&lt;br /&gt;
You can tell which companies have set up secure networks because when you to their web site, your web browser will show the web site in a special color, usually yellow, and the web site will start with https://, instead of http://, and your web browser will show you a padlock. When you see that, then you know you are on a secure network. You web browser has established a secure, protected connection directly to the company's server. You can type in your username and password and view pictures and be assured that whatever you are typing or doing cannot be seen by outsiders. &lt;br /&gt;
&lt;br /&gt;
Mi Casa Verde has solved all these issues. We set up a secure server, [http://findvera.com FindVera.com], which only accepts secure connections. &lt;br /&gt;
&lt;br /&gt;
When you first set up Vera you are asked for a username and password for the [http://findvera.com FindVera.com] site. From then on, whenever you turn Vera on and she finds the internet, Vera makes a secure connection to [http://findvera.com FindVera.com] automatically. Now when you are away from the home and want to connect to Vera, you also go to [http://findvera.com FindVera.com]. The [http://findvera.com FindVera.com] secure server then acts like a &amp;quot;patch&amp;quot; for you. So when you tell Vera to do something, it goes through the secure [http://findvera.com FindVera.com] server. And when you want to view your cameras, [http://findvera.com FindVera.com] gets the image from Vera using the secure connection and gives it back to you. &lt;br /&gt;
&lt;br /&gt;
So the end result is that there is nothing to configure or setup. All you do is pick a username and password, and then you can access Vera to control your home and view cameras from anywhere, on any web browser or mobile phone, and it's a secure connection. &lt;br /&gt;
&lt;br /&gt;
What's more, Mi Casa Verde has isolated the [http://findvera.com FindVera.com] secure server and put in place special measures and software that keeps your password encrypted, so that not even the Mi Casa Verde staff to can get in.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Schlage_Lock_Troubleshooting</id>
		<title>Schlage Lock Troubleshooting</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Schlage_Lock_Troubleshooting"/>
				<updated>2010-04-17T21:03:05Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
[[Category:Troubleshooting]]&lt;br /&gt;
&amp;lt;div lang=&amp;quot;x-western&amp;quot; class=&amp;quot;moz-text-html&amp;quot;&amp;gt;'''In order to pair your lock please follow this step by step instructions carefully: '''&amp;lt;br&amp;gt; - place Vera near the lock (under 10ft) and keep Vera connected to the internet and the black zwave dongle in it's usb port&amp;amp;nbsp;!!!&amp;lt;br&amp;gt; - open Vera's dashboard&amp;lt;br&amp;gt; - go to Setup-&amp;amp;gt;Advanced-&amp;amp;gt;Logs and enable verbose logging&amp;lt;br&amp;gt; - locate your Schlage 6 digit programing code&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ( more infos about schlage lock pairing are on this manual page:&amp;amp;nbsp;[[Schlage Lock|http://wiki.micasaverde.com/index.php/Schlage_Lock]]&amp;amp;nbsp; )&amp;lt;br&amp;gt; - go to Devices-&amp;amp;gt;Zwave Options and '''exclude''' your lock by: &amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ( more infos about full power inclusion are on this manual page:&amp;amp;nbsp; [[Full Power Inclusion|http://wiki.micasaverde.com/index.php?title=Full_Power_Inclusion]] )&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +changing INCLUDE to EXCLUDE&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +low power to FULL POWER&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +and timeout from 30 to 120 seconds&amp;lt;br&amp;gt; then press GO button and go to your lock and:&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +type the programing code, wait for the schlage led to blink ORANGE&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; + press Schlage button then 0 key and confirm that the led blinks &amp;lt;u&amp;gt;''GREEN''&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt; --- '''if the lock led blinks RED then repeat the exclude procedure''' ---&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; - go to Devices and confirm that your lock doesn't appear there anymore, if it's there repeat the exclude procedure&amp;lt;br&amp;gt; - go to the lock and reset it to factory defaults as it says on its user manual on page 4: [http://part2.schlage.com/docs/lock_user_guide.pdf http://part2.schlage.com/docs/lock_user_guide.pdf]&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; *Note: Restoring factory settings WILL NOT exclude the lock from the bridge.&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; DO NOT reset your lock unless you are able to locate the original programming code. Customer service cannot retrieve a lost programming code.&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +1. For FE599, disconnect the batteries. For BE369, disconnect the 9V battery.&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +2. On the lock keypad, press and release the Schlage button.&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +3. Reconnect the battery and wait until the Schlage button is no longer lit.&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +4. Within ten (10) seconds, press and hold the Schlage button '''until it lights green and the lock beeps.'''&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; - go&amp;amp;nbsp; to Devices-&amp;amp;gt;Zwave Options and&amp;amp;nbsp; '''include''' your lock by:&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +set to INCLUDE&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +low power to FULL POWER&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +and timeout from 30 to 120 seconds&amp;lt;br&amp;gt; then press GO button and go to your lock and:&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; +type the programing code, wait for the schlage led to blink ORANGE&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; + press Schlage button then 0 key and confirm that the led blinks &amp;lt;u&amp;gt;''GREEN''&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt; --- '''if the lock led blinks RED then repeat the include procedure''' ---&amp;lt;br&amp;gt; * you can see the progress written in blue text at the top of the page, bellow &amp;quot;Z-Wave options&amp;quot; page title&amp;lt;br&amp;gt; - wait for the lock to be added and the zwave network to be restarted then&amp;lt;br&amp;gt; - go to Devices and observe the lock configuration progress by going with the mouse pointer over its BLUE COG WHEEL&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ( more infos about device status are on this manual page:&amp;amp;nbsp; [[Device_Control_Status|http://wiki.micasaverde.com/index.php/Device_Control_Status]] )&amp;lt;br&amp;gt; ''* during the lock configuration time you should not unplug Vera from the power cord or change / save other settings on it *&amp;lt;br&amp;gt; - assign the lock into a Room, press Continue and the press the Red SAVE button. Vera will continue the lock configuration.&amp;lt;br&amp;gt; '' - after the cog wheel turns green test your lock: send lock/unlock commands, then add an user code&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ''- confirm that you can control your lock when Vera it's near it, then move Vera at it's initial place''&amp;lt;br&amp;gt; - after you've put back Vera at it's initial place you have to update the zwave network routing table by running &amp;quot;Repair my Network&amp;quot; from&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; Device-&amp;amp;gt;Zwave Options with 5 minute stress time. More informations can be found here: [[Heal Network|http://wiki.micasaverde.com/index.php/Heal_Network]]&amp;lt;br&amp;gt; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; ''- wait for the Heal Network process to finish then test again your lock&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; ''- if the cog wheel turns RED or your lock doesn't respond to commands and you are sure that you've followed the above steps carefully and at every step you've seen the lock schlage led blinking GREEN then go to Advanced-&amp;amp;gt;Tech Support: enable it and submit a trouble report with your logs attached and tell us at what step the configuration stage failed.&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Schlage_Lock</id>
		<title>Schlage Lock</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Schlage_Lock"/>
				<updated>2010-04-17T21:01:46Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
= Secure Z-Wave Devices Explained  =&lt;br /&gt;
&lt;br /&gt;
Door locks are a special breed of Z-Wave devices which require an exchange of security keys with Vera during the 'Include' (&amp;quot;pairing&amp;quot;) process.&amp;amp;nbsp; Accordingly, the normal 'Include' procedure - carrying Vera's black Z-Wave dongle to the device - will &amp;lt;u&amp;gt;not&amp;lt;/u&amp;gt; work with Schlage locks.&amp;amp;nbsp; Instead, Schlage locks must be paired with Vera using a special procedure (see 'Adding/Pairing a Lock', below). &lt;br /&gt;
&lt;br /&gt;
In order for Vera to interoperate successfully with a Schlage lock or other secure Z-Wave device, the following conditions must all be met:&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;'''1)''' Vera's Z-Wave dongle must have a built-in security class:&amp;lt;br&amp;gt;'''Go to Setup -&amp;amp;gt; Devices -&amp;amp;gt; Z-Wave Options''', and look at the ''''Version''''.&amp;lt;br&amp;gt;If the&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color: rgb(255,0,0)&amp;quot;&amp;gt;'''version is 2.40 '''&amp;lt;/span&amp;gt;'''your dongle does &amp;lt;u&amp;gt;not&amp;lt;/u&amp;gt; have the security class implemented.'''&amp;amp;nbsp; Request a replacement dongle by sending us a support request at the [http://www.micasaverde.com micasaverde.com] website (click 'Support'), including your serial number, name, address and email.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''2)''' Vera's firmware must be &amp;lt;span style=&amp;quot;color: rgb(255,0,0)&amp;quot;&amp;gt;'''version 1.0.602 or later'''&amp;lt;/span&amp;gt;:&amp;lt;br&amp;gt;'''Go to Setup -&amp;amp;gt; Advanced -&amp;amp;gt; Download''' and confirm the version of your firmware.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''3)''' The range for the Schlage lock is much less than for other devices because the antenna is inside a metal housing. The distance (in open air) between Vera and your lock should not exceed 30 feet (if you have two walls between them, the distance should be much lower). You can use a [http://www.newegg.com/Product/Product.aspx?Item=N82E16812191054 USB Cable extender] to place Vera's Z-Wave dongle closer to the lock. (If you change&amp;amp;nbsp;the dongle position, don't forget to do a [[Heal Network]] after.) Otherwise you will need to add lamp modules to act as Z-Wave relays, as explained in #4.&lt;br /&gt;
&lt;br /&gt;
'''4)''' Schlage locks work with Zensys' &amp;quot;Zensor Net Technology&amp;quot; which prolongs battery life for battery-powered Z-Wave devices. If the Schlage lock cannot be in direct communication to Vera and its signal must be routed through other Z-Wave devices, the &amp;lt;u&amp;gt;last&amp;lt;/u&amp;gt; node in the route must be capable of &amp;quot;Zensor Net Beam&amp;quot; (ZNB). Currently, the only Z-Wave devices on the market known to support ZNB are the Homepro ZDP100 lamp module (must be firmware version 3.3 or later) and the Schlage RP200 light module. After you've added lamp modules, you must do a [[Heal Network]] before they will effectively act as relays. [[Heal Network]] will also give you a report to confirm that Vera can talk to all your Z-Wave devices.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Setting Up a Schlage Lock with Vera  =&lt;br /&gt;
&lt;br /&gt;
== Adding/Pairing a Lock  ==&lt;br /&gt;
&lt;br /&gt;
Adding (&amp;quot;pairing&amp;quot;) a secure device like the Schlage lock takes longer than adding a normal, non-secure device because Vera needs to share encryption keys with a secure device.&amp;amp;nbsp; IMPORTANT: Leave Vera's black Z-Wave dongle inserted when pairing a lock with Vera.&lt;br /&gt;
&lt;br /&gt;
Choose one of the following methods for adding a lock to Vera's network:&lt;br /&gt;
&lt;br /&gt;
=== Method 1 - Vera is located FAR from the lock you are adding  ===&lt;br /&gt;
&lt;br /&gt;
These are the steps typically used to pair secure Z-Wave devices with&amp;amp;nbsp;Vera.&amp;amp;nbsp; Note beforehand that this method involves Vera being disconnected from the internet as well as your home network.&amp;amp;nbsp; However, because Vera's Wi-Fi remains active throughout, you can perform Steps 7-9 by connecting your computer wirelessly to Vera. &lt;br /&gt;
&lt;br /&gt;
1. Disconnect Vera and move Vera close to the Schlage lock. Plug Vera into an electrical outlet near the lock. &lt;br /&gt;
&lt;br /&gt;
2. After 60 seconds, Vera's power light comes on and starts double flashing - meaning Vera is operational but has no internet connection. &lt;br /&gt;
&lt;br /&gt;
3. Press-and-hold the black button on the back of Vera, then tap the red button once. (Be careful not to press the black ('restore') button twice in a row, as this will reset Vera to the [[Factory Reset|factory default]] configuration!) Vera's power light will begin blinking steadily once per second - meaning Vera is in 'Add' mode. (Wait up to 30 seconds for Vera's power light to start blinking like this, and if it does not, repeat Step 3 until it does.) &lt;br /&gt;
&lt;br /&gt;
4. On the Schlage lock's keypad, enter its 6-digit programming code.&amp;amp;nbsp; The light will blink orange.&amp;lt;br&amp;gt;''&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; (Note: You can find the lock's program code on the back of the lock or in its manual.)'' &lt;br /&gt;
&lt;br /&gt;
5. Wait the lock to flash 3 times and to tone 3 times, then press the [Schlage] button, and then '0'. &lt;br /&gt;
&lt;br /&gt;
6. If Vera's power light flutters briefly, and the lock's [Schlage] button blinks green twice, pairing was successful. Otherwise, you must follow the steps below for 'Resetting a Schlage Lock' and then repeat Steps 1-5 to try pairing the lock again &lt;br /&gt;
&lt;br /&gt;
7. Reconnect Vera back where it belongs (or connect to Vera wirelessly) and access Vera through your web browser. &lt;br /&gt;
&lt;br /&gt;
8. On Vera's 'Devices' page, assign the lock to a room and give it a name, and set any other options, then click 'Save'. &lt;br /&gt;
&lt;br /&gt;
9. Try activating (locking or unlocking) the door lock using Vera. &lt;br /&gt;
&lt;br /&gt;
NOTE:&amp;amp;nbsp;If the lock fails to pair with Vera despite repeated attempts, try resetting the lock (see 'Resetting a Schlage Lock'), then attempt Steps 1-5 once again. &lt;br /&gt;
&lt;br /&gt;
(For more information on the method described here, read the 'Adding/Removing Z-Wave Devices' section of [[Buttons Indicators#Adding.2FRemoving_Z-Wave_devices|Adding/Removing Z-Wave Devices with the Red/Black Buttons]].)&lt;br /&gt;
&lt;br /&gt;
=== Method 2 - Vera is located CLOSE to the lock you're adding  ===&lt;br /&gt;
&lt;br /&gt;
This method works best if your Vera unit is already positioned close enough to communicate with the Schlage door lock. &lt;br /&gt;
&lt;br /&gt;
1) Log in to Vera's interface by directing your computer's web browser to Vera's IP address (e.g. 192.168.81.1).&amp;lt;br&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; (Note: You can also log in using [http://FindVera.com FindVera.com], but the IP login works a bit faster.) &lt;br /&gt;
&lt;br /&gt;
2) Click 'SETUP' in the top right hand corner of the Dashboard. &lt;br /&gt;
&lt;br /&gt;
3) Click 'Devices'. &lt;br /&gt;
&lt;br /&gt;
4) Click 'Z-Wave Options'. &lt;br /&gt;
&lt;br /&gt;
5) From the pull-down menus, choose: &amp;quot;''Include''&amp;quot; &amp;quot;''one''&amp;quot; node &amp;quot;''any''&amp;quot; with &amp;quot;''high power''&amp;quot; and timeout after &amp;quot;''30''&amp;quot; seconds. &lt;br /&gt;
&lt;br /&gt;
6) Before proceeding, have your lock's programming code handy and have a clear walking path to your lock. &lt;br /&gt;
&lt;br /&gt;
7) Click 'Go' and immediately walk to the lock. (''You must complete Steps 6-8 within 30 seconds''.) &lt;br /&gt;
&lt;br /&gt;
8) On the lock's keypad, enter the 6-digit programming code, then press the [Schlage] button. &lt;br /&gt;
&lt;br /&gt;
9) After the [Schlage] button stops blinking amber and the 3 tones finishes, press '0'.&amp;amp;nbsp; The [Schlage] button should light up green, indicating that pairing with Vera was successful.&amp;lt;br&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; NOTE: If the [Schlage] button instead blinks red, the lock may need to be reset first. Repeat Steps 1-9, but choose &amp;quot;''Exclude''&amp;quot; in Step 5, to reset the lock. Then try to pair the lock again. &lt;br /&gt;
&lt;br /&gt;
10) On Vera's 'Devices' page, assign the lock to a room and give it a name, and set any other desired options, then click 'Save'. &lt;br /&gt;
&lt;br /&gt;
11) Try activating (locking or unlocking) the door lock using Vera. &lt;br /&gt;
&lt;br /&gt;
NOTE:&amp;amp;nbsp;If the lock fails to pair with Vera despite repeated attemps with either method shown here, you may need to reset the lock to its factory default state before trying again&amp;amp;nbsp;(see 'Resetting a Schlage Lock to Factory Default', below).&lt;br /&gt;
&lt;br /&gt;
Once pairing has succeeded, Vera will begin configuring the lock you just added.&amp;amp;nbsp; During the configuration process, Vera will display a spinning blue cog icon next to the lock on Vera's 'Devices' page (see [[Device Control Status|Device Control Status]] for more details). It can take as long as 10 minutes for Vera to configure the lock completely, because a lot of encrypted data is being exchanged in the process. Be patient, and don't use Vera for other tasks until the green cog icon appears.&amp;amp;nbsp; Whenever you rename the lock, change its room, or otherwise change its&amp;amp;nbsp;configuration settings (other than assigning PIN codes), Vera will need to re-configure the lock again.&lt;br /&gt;
&lt;br /&gt;
== Resetting a Schlage Lock  ==&lt;br /&gt;
&lt;br /&gt;
A. Disconnect Vera and move Vera close to the Schlage lock. Plug Vera into an electrical outlet near the lock. &lt;br /&gt;
&lt;br /&gt;
B. Vera's power light comes on and starts double flashing - meaning Vera is operational but has no internet connection. &lt;br /&gt;
&lt;br /&gt;
C. Press-and-hold the red button on the back of Vera, then tap the black button once. Vera's power light will begin blinking fast, about 3 times per second - meaning Vera is in 'Remove' mode. (Wait up to 30 seconds for Vera's power light to start blinking like this, and if it does not, repeat Steps A-C until it does.)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
D. On the Schlage lock's keypad, enter the lock's programming code. &lt;br /&gt;
&lt;br /&gt;
E. Press the [Schlage] button and then '0'. The lock should beep and the 'Schlage' button should blink twice, indicating the lock is now reset and ready to be paired with your Vera (see 'Adding/Pairing a Schlage Lock,' above). &lt;br /&gt;
&lt;br /&gt;
If the lock fails to reset as described in Step E, try repeating Steps C-E until it does.&lt;br /&gt;
&lt;br /&gt;
== Excluding a Schlage Lock From Previous Network  ==&lt;br /&gt;
&lt;br /&gt;
Before adding a lock to your Z-Wave network, you may have to [http://wiki.micasaverde.com/index.php/Reset_Node exclude] it first from a previous network. Even if the lock is new, it could have come from the factory already paired with a Z-Wave network.&amp;amp;nbsp;To resolve this issue:&lt;br /&gt;
&lt;br /&gt;
#Unplug the black Z-Wave dongle from the back of Vera. &lt;br /&gt;
#Keep the dongle's button pressed for 5 seconds, until the blue light starts blinking fast. &lt;br /&gt;
#On the lock's keypad, enter the programming code and wait for the light to blink orange. &lt;br /&gt;
#Press the [Schlage] button and then '0'.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Removing/Unpairing a Lock  ==&lt;br /&gt;
&lt;br /&gt;
If your Schlage lock was mistakenly paired using Vera's normal (dongle-based) 'Include' procedure, the lock will have a red cog icon displayed next to it on Vera's 'Devices' page, and you won't be able to control it. To use the lock with Vera, you must first remove (&amp;quot;unpair&amp;quot;)&amp;amp;nbsp;the lock from the Z-Wave network. &lt;br /&gt;
&lt;br /&gt;
Remove the lock the same way as any other Z-Wave device: &lt;br /&gt;
&lt;br /&gt;
(1)&amp;amp;nbsp;Remove Vera's black dongle, then hold the dongle near the lock.&lt;br /&gt;
&lt;br /&gt;
(2) Press and hold the button on the dongle for 3 seconds until the light starts blinking fast, which indicates it's in 'Remove' mode.&lt;br /&gt;
&lt;br /&gt;
(2) On the lock's keypad, enter the 6-digit programming code.&amp;amp;nbsp; The lock will beep audibly.&lt;br /&gt;
&lt;br /&gt;
(3) Press the [Schlage] button followed by '0'.&lt;br /&gt;
&lt;br /&gt;
(4) Re-insert the dongle in Vera, wait 60 seconds, and refresh the browser page. &lt;br /&gt;
&lt;br /&gt;
The lock should now be gone from Vera's 'Devices' list, indicating the lock has been successfully removed from the network, and you can proceed to pair, or include, the lock the right way (see Method 1 or Method 2, above).&lt;br /&gt;
&lt;br /&gt;
= Resetting a Schlage Lock to Factory Default  =&lt;br /&gt;
&lt;br /&gt;
It is sometimes necessary to reset a Schlage lock to its factory default, in order to enable the lock to pair properly with Vera, or to resolve other lock malfunctions:&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
1) Remove the batteries from the lock.&lt;br /&gt;
&lt;br /&gt;
2) On the lock's keypad, press and release the [Schlage] button.&lt;br /&gt;
&lt;br /&gt;
3) Reconnect the lock's battery(s).&lt;br /&gt;
&lt;br /&gt;
4) Wait until the [Schlage] button is no longer lit.&lt;br /&gt;
&lt;br /&gt;
5) ''Within 10 seconds'', press and hold the [Schlage] button until it lights green and the lock beeps.&lt;br /&gt;
&lt;br /&gt;
Your Schlage lock is now reset to its factory default, and you may proceed to add it to Vera's network.&lt;br /&gt;
&lt;br /&gt;
= Other Notes  =&lt;br /&gt;
&lt;br /&gt;
Any time Vera configures a secure Z-Wave device such as a Schlage lock - either immediately after pairing the lock with Vera, or when subsequent changes are made to the lock's settings on Vera's 'Devices' page - Vera needs to poll all 19 of the lock's user codes, even ones that are not set yet!&amp;amp;nbsp; Accordingly, it may take Vera a while to display the green cog icon.&amp;amp;nbsp; Be patient, and do not use Vera for any other tasks during the configuration process.&lt;br /&gt;
&lt;br /&gt;
You can see Vera's event log by choosing the 'Advanced' tab -&amp;amp;gt; 'Logs' -&amp;amp;gt; 'Verbose' -&amp;amp;gt; 'Show Z-Wave Jobs'.&amp;amp;nbsp; If Vera's communication with the lock has been successful, the list will show all completed events.&amp;amp;nbsp; Refresh the page using your web browser to see subsequent events as they are added to Vera's event log.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Using a Schlage Lock with Vera  =&lt;br /&gt;
&lt;br /&gt;
== Lock/Unlock  ==&lt;br /&gt;
&lt;br /&gt;
You can lock/unlock door locks and deadbolts with Vera the same way you turn a light On or Off. A door lock can be locked and unlocked remotely. '''But Schlage &amp;lt;u&amp;gt;deadbolts&amp;lt;/u&amp;gt; are designed so someone has to physically turn the deadbolt knob to engage/disengage the deadbolt. When Vera tells the deadbolt to unlock, the deadbolt knob is engaged for 10 seconds so someone can turn it, and then after 10 seconds, it's disengaged again. '''(This behavior is identical to when you enter your PIN on the deadbolt's keypad.) Schlage locks contain no motor to lock/unlock the deadbolt. Thus, Vera cannot remotely lock or unlock a deadbolt for you. Instead, you can wait until someone is at the door, then click 'Lock' or 'Unlock' using Vera's interface, and tell the person to turn the deadbolt knob. &lt;br /&gt;
&lt;br /&gt;
Vera offers three ways to control a door lock or deadbolt: &lt;br /&gt;
&lt;br /&gt;
1) Use your PC's or PDA's web browser to click the lock/unlock buttons on Vera's 'Dashboard'. To allow remote access, you can click 'Unlock' when a person is in front of the door, giving the person a few seconds to manually turn the latch; &lt;br /&gt;
&lt;br /&gt;
2) Use a cellphone application to activate the lock remotely; or,&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
3) Issue a PIN to each authorized user (see 'Setting a User PIN,' below).&lt;br /&gt;
&lt;br /&gt;
== Controlling the lock with handheld remotes and scene controllers  ==&lt;br /&gt;
&lt;br /&gt;
You can add handheld remotes and scene controllers to Vera and choose the option &amp;quot;Manage scenes as events&amp;quot;. Then you can create a scene which locks a door, as well as doing other tasks, and&amp;amp;nbsp;associate the scene&amp;amp;nbsp;to&amp;amp;nbsp;a button on the remote or in-wall scene controller. (See [[ZWave Add Controller|Z-Wave Add Controller]] method #2.) So you can create a 'Go to Bed' scene, for example, which&amp;amp;nbsp;may be&amp;amp;nbsp;button 1 on your scene controller, and which locks all the doors and turns off the lights and thermostats. For your security, we only allow you to 'lock' the doors using a handheld remote or scene controller. You cannot 'unlock' them with this technique because remotes and scene controllers are not secure devices and, therefore, there is the risk that an intruder could impersonate you using your handheld remote or scene controller. To unlock the doors, you must&amp;amp;nbsp;use Vera's web interface or mobile phone interface.&lt;br /&gt;
&lt;br /&gt;
== Scenes and Events  ==&lt;br /&gt;
&lt;br /&gt;
Door locks initiate events (a) when the door is locked/unlocked, (b) when a user enters a PIN, and (c) when someone enters the wrong PIN three times in a row. You can create a scene, associate one or more&amp;amp;nbsp;of these events&amp;amp;nbsp;with the scene, and check one of the 'Notify User' boxes if you want to be notified&amp;amp;nbsp;when&amp;amp;nbsp;an event (and a corresponding scene)&amp;amp;nbsp;happens.&lt;br /&gt;
&lt;br /&gt;
== Setting a User PIN  ==&lt;br /&gt;
&lt;br /&gt;
You can create a PIN for each authorized user to use when locking/unlocking the door:&lt;br /&gt;
&lt;br /&gt;
=== Adding a new PIN  ===&lt;br /&gt;
&lt;br /&gt;
#Navigate to Vera's 'Control' (or 'Dashboard' or 'Devices') page &lt;br /&gt;
#Select an empty slot for the new user &lt;br /&gt;
#Give the user a descriptive name (e.g. &amp;quot;Pool Service&amp;quot;) &lt;br /&gt;
#Type the user's new PIN &lt;br /&gt;
#Click 'Set'. &lt;br /&gt;
#Each user's PIN will remain active until you remove it.&lt;br /&gt;
&lt;br /&gt;
It may take up to 60 seconds for Vera to confirm the new code was set, whereupon you will see the new user listed next to the lock, along with a 'Remove' button.&amp;amp;nbsp; If the lock already contained user PINs - which you added manually or through a different Z-Wave controller - Vera will display them as &amp;quot;Code 1&amp;quot;, &amp;quot;Code 2&amp;quot;, etc. &lt;br /&gt;
&lt;br /&gt;
NOTE: For your security, Vera does not keep a copy of the codes; they are only stored in the lock itself.&lt;br /&gt;
&lt;br /&gt;
=== Changing an existing PIN  ===&lt;br /&gt;
&lt;br /&gt;
#Navigate to Vera's 'Control' (or 'Dashboard' or 'Devices') page &lt;br /&gt;
#Remove an existing user's slot (see below)&amp;lt;br&amp;gt; &lt;br /&gt;
#Add the user again with a different PIN (see above)&amp;lt;br&amp;gt; &lt;br /&gt;
#Click 'Set'. &amp;lt;br&amp;gt; &lt;br /&gt;
#The user's PIN will remain active until you remove it.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Removing a PIN  ===&lt;br /&gt;
&lt;br /&gt;
#Navigate to Vera's 'Control' (or 'Dashboard' or 'Devices') page &lt;br /&gt;
#From the list, find the user&amp;amp;nbsp;whose PIN you wish to de-activate &lt;br /&gt;
#Click the 'Remove' button next to that user &lt;br /&gt;
#Click 'Set'. &lt;br /&gt;
#The user's PIN will&amp;amp;nbsp;be removed from Vera's list.&lt;br /&gt;
&lt;br /&gt;
NOTE:&amp;amp;nbsp;If Vera does not confirm the removal after 60 seconds, simply try again.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
SPECIAL&amp;amp;nbsp;NOTE: If you add, change&amp;amp;nbsp;or remove many users/PINs in rapid succession, Vera will display a 'job icon' for each addition/change/deletion. You do &amp;lt;u&amp;gt;not&amp;lt;/u&amp;gt; need to wait for each one to complete. For example, you can add 10 users in rapid succession, and you will see 10 gray 'job icons'. Gray indicates Vera hasn't started yet, as explained [[Device Control Status|here]]. Since it takes several seconds for Vera to program a new PIN into the lock, as each job is being processed (in order), the corresponding icon turns blue, then becomes green when it is successful. In this way, you can quickly queue up several new users, and then just let Vera process them one at a time. When Vera is finished, you will see the list of all users, along with a 'Remove' button next to each. Similarly, you can click several 'Remove' buttons in rapid succession without waiting for each removal to complete.&lt;br /&gt;
&lt;br /&gt;
== Reversing the Lock/Unlock Status  ==&lt;br /&gt;
&lt;br /&gt;
If the lock/unlock status of your door lock is backwards, meaning Vera's 'Dashboard' shows it is locked when it's really unlocked and vice-versa, it's possible the lock was oriented upside-down when mounted. To solve this issue, go to Vera's 'Setup' page, click the 'Devices' tab and click the '+' button next to the door lock, and then the 'Advanced' button. If you see a parameter &amp;quot;#305 Reverse&amp;quot;, enter a value of '''1'''.&amp;amp;nbsp; Save this change. Vera will now reverse the lock/unlock status. &lt;br /&gt;
&lt;br /&gt;
If parameter #305 is &amp;lt;u&amp;gt;not&amp;lt;/u&amp;gt; in the list, then at the bottom of the page, type '''305''' in the &amp;quot;New Device Data ID&amp;quot; field, and type '''1''' in the &amp;quot;New Device Data Value&amp;quot; field. Click 'Add'. Then save your changes. Vera will now reverse the lock/unlock status.&lt;br /&gt;
&lt;br /&gt;
== Logging and Camera Links  ==&lt;br /&gt;
&lt;br /&gt;
When you log in to [http://FindVera.com FindVera.com] and click 'Events', you can select the door lock to see all the times someone entered a user code at the door or locked/unlocked the door. &lt;br /&gt;
&lt;br /&gt;
On the 'Devices' tab, click '+' next to your security camera(s), and you will have a check box for this lock. Then, whenever the door is locked/unlocked, Vera will also take a picture with the camera(s). You will see the pictures associated with an Event when you click the event on the [http://FindVera.com FindVera.com] site. &lt;br /&gt;
&lt;br /&gt;
= Security Concerns  =&lt;br /&gt;
&lt;br /&gt;
See: [[Security Concerns]] &lt;br /&gt;
&lt;br /&gt;
= External Links  =&lt;br /&gt;
&lt;br /&gt;
*[http://part2.schlage.com/docs/manual_lock_programming-beta.pdf Schlage Lock User Manual] &lt;br /&gt;
*[http://part2.schlage.com/docs/lock_user_guide.pdf Schlage Lock User Guide]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Set_up_Scenes</id>
		<title>Set up Scenes</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Set_up_Scenes"/>
				<updated>2010-04-17T21:01:07Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
A scene is a group of commands or settings that you can do all at once, rather than one at a time. For example, when you leave your home, you may want to turn off 5 lights, turn on the porch light, ARM your motion detector so the alarm is active, turn on the garage light for 5 minutes so you have time to leave, and then turn it off again. You could do this using the [[Dashboard|dashboard]] by clicking on the control buttons for each of the lights and devices, and then waiting 5 minutes and turning off the garage light. But this is a lot of work. So, instead, you can create a scene, give it a descriptive name, like &amp;quot;Leave your home&amp;quot;, and then put all the settings for those lights and the motion detector in the scene. This way, when you leave, you just choose the one scene &amp;quot;Leave your home&amp;quot;, and Vera does the rest. &lt;br /&gt;
&lt;br /&gt;
When you create a scene you must first decide what room to put the scene in. This is just to make it easier for you to keep track of your scenes. Generally pick the room where you are most likely to use the scene. Often this is the same room where you want to control the devices. For example, if you create a scene called &amp;quot;Watch TV&amp;quot;, which turns off all the lights in the living room so you can watch TV in that room. In this case, the &amp;quot;Watch TV&amp;quot; scene would probably go in the living room, since that's where you'll most likely use it. But this isn't necessarily the case. Maybe, for example, you have a young child, &amp;quot;Sarah&amp;quot;, and you want a scene that turns off the lights in Sarah's room, but you usually do this from your own bedroom. In this case, you would put the scene in the &amp;quot;Master Bedroom&amp;quot; because, even though it controls the lights in Sarah's room, you will generally use the scene in the Master Bedroom. Similarly, scenes like &amp;quot;Leave for Work&amp;quot; or &amp;quot;Come Home&amp;quot; would typically go in whatever room you normally enter and leave the home from, like the Garage, Kitchen, Patio, etc. &lt;br /&gt;
&lt;br /&gt;
By organizing your scenes according to the room you use them, you can leave a remote control in that room, like an iPod Touch, and have it just show the scenes for that room, so it's easy to find what you're looking for. For example, you could leave an iPod on the coffee table in the Living Room, set to the room &amp;quot;Living Room&amp;quot;, and you'll see just the scenes for that room, like &amp;quot;Watch TV&amp;quot;, without having to scroll through lots of scenes in other rooms you won't use. You can also give scenes the same name if they're in different rooms. For example, you may have 3 scenes called &amp;quot;Go to bed&amp;quot;; 1 in the master bedroom, 1 in Sarah's room, and 1 in the guest bedroom. Each scene does something different, as appropriate for that room. &lt;br /&gt;
&lt;br /&gt;
To add a scene, click the 'Scenes' button on Vera's [[Quick Start|setup page]]. All the rooms are listed, as shown here. Click the 'Add Scene' button next to the room you want to add the scene to. &lt;br /&gt;
&lt;br /&gt;
Then, a new scene will be added. Change the name from &amp;quot;New Scene&amp;quot; to whatever name you want. Underneath that scene are all the devices in your home organized by room. Next to each device is a pull-down menu where you indicate what you want to happen to that device when you choose the scene. So in the first example, &amp;quot;Leave your home&amp;quot;, you would find the 5 lights you want to be turned off and, next to each light, select the pull down and choose &amp;quot;Off&amp;quot;. You would also choose the pull down next to the motion detector and choose &amp;quot;ARM&amp;quot;. Remember in the &amp;quot;Leave your home&amp;quot; example we wanted the garage light to come on for 5 minutes and then turn off. So, next to the garage light choose the pull-down, select &amp;quot;On&amp;quot;, and then in the next pull-down change &amp;quot;and leave it&amp;quot; to &amp;quot;after 5 minutes&amp;quot; and then another pull down will appear where you can choose &amp;quot;Set a new setting&amp;quot; and &amp;quot;Off&amp;quot;. This means the garage light will come on for 5 minutes, and then turn off, regardless whether the light was already on before you chose the scene. If instead you want the garage light to come on for 5 minutes, but after the 5 minutes have passed, you &amp;lt;u&amp;gt;only&amp;lt;/u&amp;gt; want it to turn off if it was already off before you chose the scene, then leave the pull down to say &amp;quot;Go back to the prior setting&amp;quot;. Note that this works for dim levels as well. If you said you wanted to dim the light to 70% for 5 minutes and then &amp;quot;Go back to the prior setting&amp;quot;, that means if the light was at 30% brightness before you started the scene, then, when you chose the scene the light would go to 70% and after the 5 minutes had passed, it would return to 30%. &lt;br /&gt;
&lt;br /&gt;
Scenes can also adjust your thermostat, and any other type of device. &lt;br /&gt;
&lt;br /&gt;
One device you can set in a scene that may not be so intuitive are motion detectors and other security alarm sensors. The reason for this is that you may want to be notified when a sensor is tripped because it might mean there is an intruder. But, when you are at home and passing in front of the sensors all the time, then you probably do not want to be notified every time the sensor is tripped; only when you are away. The solution is to create a scene which you choose when you leave the house and which changes the sensors to &amp;quot;ARM&amp;quot; and then another scene when you return home which changes them to &amp;quot;BYPASS&amp;quot;. Then you can create an [[Event|event]] which notifies when the sensor is tripped while it is armed. For more information on setting up a security system with Vera, see [[Intro Security|Security Introduction]]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt; [[Image:Scene1.jpg|thumb|center|512px]] [[Image:Scene2.jpg|thumb|center|512px|The Scenes]] &lt;br /&gt;
&lt;br /&gt;
== Adding timers &amp;amp;amp; Events  ==&lt;br /&gt;
&lt;br /&gt;
Vera can also run your scenes for you at certain times, such as every Wednesday at 6pm, or every 30 minutes, or 10 minutes after Sunrise.  These are called 'Timers'.  Learn [[Timer|How to create timers]].  Vera can also run your scenes automatically in response to some event from another device, for example &amp;quot;When a motion sensor is tripped&amp;quot; or &amp;quot;When a door is locked&amp;quot;.  These are called 'Events'. Learn [[Event|How to create events]].&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Rooms</id>
		<title>Rooms</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Rooms"/>
				<updated>2010-04-17T21:00:40Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Glossary]]&lt;br /&gt;
All the devices and scenes in Vera are grouped by room. So you must list the rooms in your house, and then on the 'Devices' page, you need to specify which rooms your devices are in. Some devices, like handheld controllers, may be used throughout the house. In this case, just pick the room where the device is most commonly used or kept. The sole purpose of rooms is to help organize your devices and scenes so you can find them easily and and keep track of which is which. So you don't have to take the term &amp;quot;Room&amp;quot; too literally. You could, for example, create a &amp;quot;Room&amp;quot; called &amp;quot;Back yard&amp;quot; or &amp;quot;Outdoors&amp;quot;, or even a room called &amp;quot;John's stuff&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
When you create a scene you generally add the scene to a room as well, namely whatever room you are most likely to want to use the scene in. Again, this is just to help organize your scenes and remember which scene is which. Note that what room you add a scene to does not have any effect on which devices it can control. For example, you can create a scene in the &amp;quot;Living Room&amp;quot; that turns on bedroom lights. Create the scene in whatever room you are most likely to want to use that scene. The reason for putting scenes in rooms is just to make it easier to keep track of which scene is which and to quickly find the scenes for the room you are in. For example, on remote controls like iPhone and mobile phones, when you enter a room you need only pick the room once. Then you will see all the scenes in that room without being distracted by all the other scenes in other rooms. This also means you can create multiple scenes with the same name in different rooms. For example, you may have 3 scenes called &amp;quot;go to bed&amp;quot; in 3 different bedrooms. Each scene may do something different. &lt;br /&gt;
&lt;br /&gt;
There may be a couple scenes that are not really tied to a room, or are used throughout the home or in different rooms. For example, you may have a scene called &amp;quot;Entertaining Mode&amp;quot; which you use when guests arrive. You could put this scene in any room that will allow you to easily find it, remember the purpose of putting scenes in rooms is solely to make it easier for you to find the scenes. In a case like this, &amp;quot;Entertaining Mode&amp;quot; would probably be put in the &amp;quot;Entry Room&amp;quot; or &amp;quot;Living Room&amp;quot; if that's where you usually greet your guests. If you truly want a &amp;quot;global scene&amp;quot;, meaning a scene that you would normally use from anywhere in the home, then you will note on the 'Scenes' tab there is a special place called &amp;quot;Global Scenes&amp;quot; to add those scenes. If you add a scene to &amp;quot;Global Scenes&amp;quot;, then it's like adding to every room. For example, say you create a global scene called &amp;quot;Energy savings mode&amp;quot; that turns off all the lights in the home. And, say you have an iPhone you use as a remote control. The iPhone will let you pick the room it's in, but no matter what room you pick, you'll see the global scene &amp;quot;Energy savings mode&amp;quot;. If the iPhone is showing the Living Room, you'll see the global scene ''plus'' the scenes in the Living Room. The global scenes appear in every room. On the [[Dashboard]] the global scenes appear at the top. &lt;br /&gt;
&lt;br /&gt;
For more advanced users, if you have a very large house, or if you want to create graphical floorplans to control the devices with icons, you can also create &amp;quot;Sections&amp;quot;, and organize the rooms by section. Examples of sections may be: &amp;quot;First Floor&amp;quot; and &amp;quot;Second Floor&amp;quot;, or &amp;quot;Main House&amp;quot;, &amp;quot;Guest House&amp;quot; and &amp;quot;Grounds&amp;quot;. Create sections by clicking the &amp;quot;Advanced&amp;quot; tab and choosing the sub-tab &amp;quot;Sections&amp;quot;. You can create a floorplan for each section using your favorite paint or draw program and upload them to Vera on that page. You can also position the devices on the floorplan. Before you do this, go back to the 'Rooms' tab and be sure to indicate which section each room is in. Since most users don't create sections, by default Vera has only one section &amp;quot;My Home&amp;quot; and all rooms are put there.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Rooms</id>
		<title>Rooms</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Rooms"/>
				<updated>2010-04-17T21:00:06Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
All the devices and scenes in Vera are grouped by room. So you must list the rooms in your house, and then on the 'Devices' page, you need to specify which rooms your devices are in. Some devices, like handheld controllers, may be used throughout the house. In this case, just pick the room where the device is most commonly used or kept. The sole purpose of rooms is to help organize your devices and scenes so you can find them easily and and keep track of which is which. So you don't have to take the term &amp;quot;Room&amp;quot; too literally. You could, for example, create a &amp;quot;Room&amp;quot; called &amp;quot;Back yard&amp;quot; or &amp;quot;Outdoors&amp;quot;, or even a room called &amp;quot;John's stuff&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
When you create a scene you generally add the scene to a room as well, namely whatever room you are most likely to want to use the scene in. Again, this is just to help organize your scenes and remember which scene is which. Note that what room you add a scene to does not have any effect on which devices it can control. For example, you can create a scene in the &amp;quot;Living Room&amp;quot; that turns on bedroom lights. Create the scene in whatever room you are most likely to want to use that scene. The reason for putting scenes in rooms is just to make it easier to keep track of which scene is which and to quickly find the scenes for the room you are in. For example, on remote controls like iPhone and mobile phones, when you enter a room you need only pick the room once. Then you will see all the scenes in that room without being distracted by all the other scenes in other rooms. This also means you can create multiple scenes with the same name in different rooms. For example, you may have 3 scenes called &amp;quot;go to bed&amp;quot; in 3 different bedrooms. Each scene may do something different. &lt;br /&gt;
&lt;br /&gt;
There may be a couple scenes that are not really tied to a room, or are used throughout the home or in different rooms. For example, you may have a scene called &amp;quot;Entertaining Mode&amp;quot; which you use when guests arrive. You could put this scene in any room that will allow you to easily find it, remember the purpose of putting scenes in rooms is solely to make it easier for you to find the scenes. In a case like this, &amp;quot;Entertaining Mode&amp;quot; would probably be put in the &amp;quot;Entry Room&amp;quot; or &amp;quot;Living Room&amp;quot; if that's where you usually greet your guests. If you truly want a &amp;quot;global scene&amp;quot;, meaning a scene that you would normally use from anywhere in the home, then you will note on the 'Scenes' tab there is a special place called &amp;quot;Global Scenes&amp;quot; to add those scenes. If you add a scene to &amp;quot;Global Scenes&amp;quot;, then it's like adding to every room. For example, say you create a global scene called &amp;quot;Energy savings mode&amp;quot; that turns off all the lights in the home. And, say you have an iPhone you use as a remote control. The iPhone will let you pick the room it's in, but no matter what room you pick, you'll see the global scene &amp;quot;Energy savings mode&amp;quot;. If the iPhone is showing the Living Room, you'll see the global scene ''plus'' the scenes in the Living Room. The global scenes appear in every room. On the [[Dashboard]] the global scenes appear at the top. &lt;br /&gt;
&lt;br /&gt;
For more advanced users, if you have a very large house, or if you want to create graphical floorplans to control the devices with icons, you can also create &amp;quot;Sections&amp;quot;, and organize the rooms by section. Examples of sections may be: &amp;quot;First Floor&amp;quot; and &amp;quot;Second Floor&amp;quot;, or &amp;quot;Main House&amp;quot;, &amp;quot;Guest House&amp;quot; and &amp;quot;Grounds&amp;quot;. Create sections by clicking the &amp;quot;Advanced&amp;quot; tab and choosing the sub-tab &amp;quot;Sections&amp;quot;. You can create a floorplan for each section using your favorite paint or draw program and upload them to Vera on that page. You can also position the devices on the floorplan. Before you do this, go back to the 'Rooms' tab and be sure to indicate which section each room is in. Since most users don't create sections, by default Vera has only one section &amp;quot;My Home&amp;quot; and all rooms are put there.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Reset_Node</id>
		<title>Reset Node</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Reset_Node"/>
				<updated>2010-04-17T20:59:31Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
=== Reset / Exclude / Un-pair / Remove Node from ZWave Network  ===&lt;br /&gt;
&lt;br /&gt;
Z-Wave devices, like lamp modules, light switches, sensors, and so on, can only be added to &amp;lt;u&amp;gt;one&amp;lt;/u&amp;gt; Z-Wave network. If you experience difficulty adding a device to Vera's Z-Wave network by carrying the black Z-Wave dongle to it, this may be a sign that the Z-Wave device was already paired with another Z-Wave controller, and needs to be reset. You can reset the Z-Wave device using Vera's black Z-Wave dongle. First, remove Vera's Z-Wave dongle and be sure the dongle is 'Off', meaning the blue light is off. If the blue light is on or blinking, tap the button on the dongle to turn it off. Now, press and hold the button on Vera's Z-Wave dongle for 3 seconds until the blue light starts blinking rapidly. When you see the blue light blinking rapidly, then you can carry the dongle with you and it will reset any Z-Wave that you activate while that device is within 3 feet (1 meter) of the dongle. You typically activate Z-Wave devices, like lamp modules, by turning them on or off. Some Z-Wave devices, like sensors and thermostats, may have an 'Active' or 'Include' button, as explained in their manuals. If you activate a Z-Wave device while Vera's Z-Wave dongle is in the 'Reset' mode, meaning the blue light is blinking fast, then the Z-Wave device will be reset. After resetting a device, the blue light on Vera's Z-Wave dongle will momentarily stop blinking. If you have several devices to reset, just leave the Z-Wave dongle in this 'Reset' mode while you carry it around and activate all the devices you want to reset. &lt;br /&gt;
&lt;br /&gt;
Once a Z-Wave device has been reset, you may want to use it with Vera.&amp;amp;nbsp; To do so, simply tap the button on Vera's Z-Wave dongle to stop the reset mode and turn the dongle off, meaning the blue light goes out. Then, tap the button again briefly so that the blue light is blinking slowly. This means the dongle is now in 'Include' mode. Now when you activate a Z-Wave device within 3 feet (1 meter) of the dongle, you will see the blue light on the dongle stop blinking and come on solid momentarily, to let you know that it was successfully added to Vera's Z-Wave network. &lt;br /&gt;
&lt;br /&gt;
When you are finished, insert the black Z-Wave dongle back into the port on the back of Vera and leave it there. Go to the 'Devices' tab on Vera's setup web page, within about 30 seconds of inserting the dongle, to see any new devices you have included. &lt;br /&gt;
&lt;br /&gt;
'''Note: If you have made changes to Vera's setup page, and have not saved those changes, you will not see your new devices. Instead you will see a red message that says: ''This data has changed and is not up to date. Click &amp;quot;SAVE&amp;quot; to save your changes and refresh the page.'' You need to click 'SAVE' before seeing your devices.'''&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Repair_My_Network</id>
		<title>Repair My Network</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Repair_My_Network"/>
				<updated>2010-04-17T20:59:10Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
Please follow this link for Repairing Z-Wave Network: [[Heal_Network]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/RemoteLinc</id>
		<title>RemoteLinc</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/RemoteLinc"/>
				<updated>2010-04-17T20:58:19Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:Hardware]]&lt;br /&gt;
To add the SmartHome.com RemoteLinc to Vera, go to Devices, INSTEON &amp;amp; X10, click 'Add/Remove INSTEON device'.  In the box &amp;quot;If you know the INSTEON id&amp;quot;, enter the id of the RemoteLinc and click 'Add an INSTEON device' beneath it.  Then click 'Save'.  Wait 60 seconds or until the configuration has stopped and when you click on 'Devices' you will see your new device as a Generic I/O.  Press the 'All On' button on the RemoteLinc to wake it up so Vera can figure out that it's a RemoteLinc.  Wait a minute or so and click on devices again.  It should now appear as a Scene Controller.  Assign it to a room, give it a name, click 'continue' and then 'Save'.  After Vera finishes configuring again press the 'All On' button again to wake it up again so Vera can complete the configuration of the RemoteLinc.  When it's all done you will see a green cog wheel next to the device to indicate that it's configured and ready to go.&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Quick_Start_Hardware</id>
		<title>Quick Start Hardware</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Quick_Start_Hardware"/>
				<updated>2010-04-17T20:57:38Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
1.  Insert the black Z-Wave dongle into either of the matching ports on the back of Vera.&lt;br /&gt;
&lt;br /&gt;
2.  Screw the antenna to the gold 'antenna' port on the back of Vera and leave the antenna pointed up.&lt;br /&gt;
&lt;br /&gt;
3.  Use a standard network cable (included) to connect the network port on the back of Vera marked '''''WAN''''' into either your DSL or cable modem, or into your existing home network.  Vera will use this port to connect to the internet.  &lt;br /&gt;
&lt;br /&gt;
4.  Connect the power cord and plug Vera in.  '''Wait 2 minutes after plugging Vera in before continuing.'''&lt;br /&gt;
&lt;br /&gt;
[[Image:VeraBackQSG.png|thumb|512px|center|caption text| The Back of Vera]]&lt;br /&gt;
&lt;br /&gt;
5.  After you have waited 2 minutes, look at the power light on the front of Vera.  If it is on solid that means Vera was able to connect to the Internet.  Proceed to step 6.  Otherwise, read the network troubleshooting section before proceeding.&lt;br /&gt;
&lt;br /&gt;
[[Image:VeraFrontQSG.png|thumb|512px|center|caption text| The Front of Vera with the Power Light On]]&lt;br /&gt;
&lt;br /&gt;
'''Note: To setup Vera you will need an internet web browser.  The web browser can be anywhere on the same home network as Vera.  Or connect your computer to one of Vera's 4 ports marked LAN.  Or, connect to the wireless home network Vera setup for you automatically using the network name and password on the front of this guide.&lt;br /&gt;
'''&lt;br /&gt;
&lt;br /&gt;
6.  Open your web browser and go to: http://findvera.com.  Click the green &amp;quot;Setup Vera&amp;quot; button as shown below (left).  If you don't see that button, read the network troubleshooting section.&lt;br /&gt;
&lt;br /&gt;
--todoal: Update the screen shot in the adobe illustrator quick start guide, and put both pics here so it matches&lt;br /&gt;
&lt;br /&gt;
7.  You should now see Vera's setup page in your web browser (above right). Vera has helpful videos to guide you and links to online documentation with detailed instructions. You should be up and running in just a few minutes. If you do not see Vera's setup page, read the [[Networking_Setup | network troubleshooting]] section.  If you don't have an internet connection you can still use Vera, but you will not see the videos or online documents.&lt;br /&gt;
&lt;br /&gt;
'''Note: Vera will share your internet connection automatically. Connect other network devices to Vera's LAN1-LAN4 ports or to Vera's wireless network. Vera will automatically detect compatible devices, like security cameras, and let you control or view them from outside the home using Vera's secure network. If you purchased wireless devices from Mi Casa Verde, like wireless security cameras, they were shipped to you pre-configured to work with Vera's wireless network. Just plug them in; there is nothing to configure.&lt;br /&gt;
'''&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	<entry>
		<id>http://wiki.mios.com/index.php/Quick_Start</id>
		<title>Quick Start</title>
		<link rel="alternate" type="text/html" href="http://wiki.mios.com/index.php/Quick_Start"/>
				<updated>2010-04-17T20:57:04Z</updated>
		
		<summary type="html">&lt;p&gt;Javier: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:User Instructions]]&lt;br /&gt;
[[Category:UI2]]&lt;br /&gt;
The Quick Start Guide that comes in Vera's box explains how to physically connect Vera and get to Vera's setup site in your web browser. If you've already done this, including inserting Vera's black Z-Wave dongle, confirming Vera's power light is on solid, and you see the Vera's setup site in your web browser, continue to setup Vera as explained below. If not, [[Quick Start Hardware|click here]]. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;[[Image:Setup1.jpg|thumb|left|512px]] [[Image:Setup2.jpg|thumb|left|512px|This explains the basic things]] &lt;br /&gt;
&lt;br /&gt;
== Setting up Vera  ==&lt;br /&gt;
&lt;br /&gt;
Vera's setup page is shown above. You only need to use the setup page when you first setup Vera, or if you want to make changes later on. Once Vera is setup, you will see the [[Dashboard]] page instead, but you can always return to the setup page by clicking the &amp;quot;Setup&amp;quot; button. &lt;br /&gt;
&lt;br /&gt;
Technically, the only&amp;amp;nbsp;two steps that are required are 'Rooms' and 'Devices'. You can be up and running in just a couple minutes. However, to get the full benefit of Vera we recommend you go through all 9 steps in order. Note that once you have made changes you will see this red 'Save' button. [[Image:RedButton.JPG|RedButton.JPG]] Your changes are not saved until you click it. &lt;br /&gt;
&lt;br /&gt;
The 9 steps are: &lt;br /&gt;
&lt;br /&gt;
'''[[Intro|Intro]]''' This explains the basic things Vera can do for you and shows you what accessories you'll need. &lt;br /&gt;
&lt;br /&gt;
'''[[Find Vera Service|FindVera.com]]''' This explains the FindVera.com service and lets you pick a username and password for that service. &lt;br /&gt;
&lt;br /&gt;
'''[[Rooms|Rooms]]''' Here you list the rooms in your house. &lt;br /&gt;
&lt;br /&gt;
'''[[Users|Users]]''' Add all the people in your home who will be able to use the system and who you want to be notified of events, like a security breach or a sensor being tripped. Also tell Vera how to notify each user, such as with Email or SMS text. &lt;br /&gt;
&lt;br /&gt;
'''[[Devices|Devices]]''' Here you add the devices you want to control, like Z-Wave lamp modules and IP cameras. &lt;br /&gt;
&lt;br /&gt;
'''[[Scenes|Scenes]]''' You can create scenes, which are really just a set of actions for your devices. For example, the &amp;quot;Go to Work&amp;quot; scene may turn off all the lights and the thermostat. This way you can press just&amp;amp;nbsp;one button, &amp;quot;Go to Work&amp;quot;, to control a lot of devices at once. You can also add timers and events to make scenes happen at certain intervals, or in response to events such a motion detector being tripped or the sun going down. &lt;br /&gt;
&lt;br /&gt;
'''[[Location|Location]]''' If you tell Vera where you live, then Vera can set the time and calculate sunrise and sunset for that location. This is needed if you want to add timers and events to your scenes. &lt;br /&gt;
&lt;br /&gt;
'''[[Energy]]''' Tell Vera to notify you if you forgot to turn the lights off after you left for work, or if energy usage is higher than it should be. Also, tell Vera how to handle an energy alert from your local government or utility, such as the Flex Alert in California. &lt;br /&gt;
&lt;br /&gt;
'''[[Advanced|Advanced]]''' Most people don't need to use this. It has advanced settings, such as manually configuring your network settings. &lt;br /&gt;
&lt;br /&gt;
'''Note: Don't forget to click the 'Save' button to save your changes. If you close your web browser without clicking 'Save', your changes will be lost.''' &lt;br /&gt;
&lt;br /&gt;
Also, once you complete the setup page, then you won't see the setup page anymore when you access Vera. Instead, you will see the [[Dashboard|Dashboard]]. If you want to change your setup later, just click the 'Setup' button on the dashboard to get back to this setup page, jump directly to the setup step you want to change, make your changes, and click 'Save'. &lt;br /&gt;
&lt;br /&gt;
[[Image:Dashboard1.jpg|thumb|center|512px|The Dashboard]]&lt;/div&gt;</summary>
		<author><name>Javier</name></author>	</entry>

	</feed>