background preloader

ZWave

Facebook Twitter

Undocumented Z-Wave API. As you know, I've been playing with Z-Wave Home Automation ever since I bought a house. Before taking the plunge, I had researched Z-Wave in great detail. I found several SDKs and APIs that looked like I could integrate Z-Wave into a C# application fairly painlessly. I was disappointed to find that they're all broken, heavily COM- or C++-dependent, or in very early development, and generally aren't aimed at my specific purpose. So I decided to write my own. But first I needed a proof of concept. A bit of Googling showed me that my Vera Lite exposes a telnet server. I already knew that the system supported events, triggers, and the like; and I already knew that these could be configured to execute arbitrary code in a language (or over a protocol) that seems to be called LUUP.

A bit more Googling brought me to a list of LUUP requests. The moral of the story is that now I have a reliable, predictable, programmatic way to interact with the Vera. Luup Requests. In addition to sending requests using standard UPnP, you can also do most things using a simple HTTP requests. Use the built-in URL data_request, and pass the following on the URL: id the id of the request (prior to 15 Oct 2010 all requests had an lu_ in front, which is now optional), output_format the format in which you want a response as json, xml or text. Not all requests support all output_format options. Here is the list of requests: user_data Example: 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. status This returns the current status for all devices including all the current UPnP variables and the status of any active jobs.

Examples: Or for a specific device: sdata actions device This renames or deletes a device. Scene. Zvirtualscenes - Free open-source home automation tool for Windows, Android, iOS, Blackberry and the Web. zVirtualScenes Free open-source home automation tool for Windows, Android, iOS, Blackberry and the Web NEW! Latest stable version 7.0 released 11-20-2013 Download | Change Log | System Requirements | Getting Started | Sceenshots | Available Plugins & Adapters zVirtualScenes is a software-based ZWave Scene Controller where you can create custom ZWave scenes to be played back via GUI, HTTP Commands or Smartphone.

Take FULL control of your ZWave Compatible Device in a simple GUI interface. Control your ZWave devices from your smart phone (Android and IPhone). zVirtualScenes is a certified LightSwitch server written in Visual C# using .NET Framework 4.5. If you are financially able and love ZVirtualScenes, please consider making a donation of any amount. Z-Wave Home Automation Australia - Z-Wave RaZberry Card. The RaZberry is a tiny daughter card that site on top of the Raspberry PI GPIO connector not blocking the USB boards. It is powered by the Raspberry PI board with 3.3V and communicates using TTL TTY signals (RX/TX).

The daughter card hosts a Sigma Designs 3102 Z-Wave transceiver module, an external 32 K SPI flash for network data and a PCBA antenna. Additionally two LEDs are used to indicate certain status of the Z-Wave controller chip. The power consumption of the board is typically 18 mA @ 3.3 V but can peak at 40 mA when the chip is transmitting. The Razberry-Pi GPIO Daughter Card adds all the components needed to turn a Raspberry PI board into a fully operational and inexpensive Z-Wave gateway. The Z-Wave Razberry-Pi GPIO Daughter Card turns every Raspberry Pi board into a Z-Wave Home Automation Gateway. The included Z-Way API offers an easy to understand and easy to use interface applying the well-known JavaScript interface technology JSON on a built in web server.

Manuals: BETI 4. Work on BETI continues to progress in features and in coolness as my Z-Wave network expands. This one might actually see the light of day. I have moved the neighbor map lines to a new tab on the main window. It loses a little context, but there's a good reason for it: The maps are now opened in their own window, and the user can now define and open any number of them. I have my house divided into four maps: One for each floor, and a fourth ("outside") for the property itself. Yeah, I don't know what all that crap on the right side of the circle is. This display really brings out the "mesh" network, although admittedly it will have scalability issues when I start getting over 30-40 devices.

Breaking out the maps into their own windows is necessary for multiple-monitor users like myself; after all, who doesn't have multiple 1080p screens? The tree is still here, of course, as well as one log tab per Z-Wave Network. As with BETI3, BETI4 keeps a record of its data in SQL. Z-Wave. Z-wave usb stick. How to develop Z-Wave Devices. October 04, 2012 | Christian Pätz | 222908151 Page 1 of 11 1. What is Z-Wave ? Z-Wave has become the new star on the horizon of smart home technology with now more than 700 interoperable devices in the market. It opens a great opportunity for newcomers to add smart and new ideas to this large ecosystem of interoperable products and leverages the existing installed base. This article describes the development process and the tools available to design and test Z-Wave compatible devices. 2. To support the Z-Wave radio layer a special Z-Wave transceiver hardware is needed. Z-Wave OpenZWave - DomotiGa. Z-Wave is a wireless communications protocol designed for home automation, specifically to remotely control applications in residential and light commercial environments.

The technology 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. DomotiGa doesn't directly talk to the Z-Wave stick, but it uses wrapper. This OpenZWave wrapper is a library which transforms the open-zwave library C++ calls to C calls so DomotiGa can use them, together with JSON-RPC methods to report status changes of the Z-Wave network back to DomotiGa. Tested Hardware¶ The following is the list of Z-Wave known to work with DomotiGa and the openzwave library.

In principle all normal Z-Wave devices should work, with the exception of security devices (e.g. door locks) and with some limitations thermostat devices. Z-Wave Controllers¶ Z-Wave Devices¶ open-zwave wrapper¶ 1. 1. Compile open-zwave code: Catching the Z-Wave. ZWave Serial Protocol. Open-zwave? - Premise Home Control. One way to look at it is that the extra $50 for a VRC0P gets you a free zWave driver. Unless you feel compelled to write a new driver (always welcome), that's a pretty good deal. I'm no zWave expert but my understanding is that you'll need something other than the VRC0P to act as the primary controller.

I believe the Z-Stick can serve this purpose. Buy both, use the VRC0P with the free driver today. While that is working nicely with your zWave lights, motion detectors, thermostats, and locks, take your time learning how to write a driver for the Z-Stick. Native drivers require use of the HSDK which means you need to know how to code in C++ and have Visual Studio (not Express because the HSDK includes macros, to build classes, that do not work in Express). If you use MiniBroker (a COM object that exposes Premise's internals) you can code a driver using any language that supports COM objects. The easiest way to write a driver is as a Module. Write some code. Write some code. The solution? Alsenet Z-Wave wiki - Alsenet Z-Wave Wiki. An introduction to Z-Wave programming in C# » digiWave.dk. Z-Wave is a protocol for wireless communication with home appliances e.g. lamps and sensors. Z-Wave can be used for switching on, switching off, monitoring etc.

It is possible to learn more about Z-Wave by reading one of the previous articles (in Danish) on this site or at Z-Waves.dk. It is easy to get started with Z-Wave programming. One important note here is that the specifications aren’t publicly available. The example in this article can be used for switching a lamp on or off. A Z-Wave USB stick from Aeon Labs is required for running the example in this article. It can be bought at HOMEe.dk. A switch or dimmer unit is also needed e.g. the Innovus SmartPower, but any switch unit will work. A number of requirements needs to be fulfilled in order to be able to run the example from this article. In the below example the Z-Wave USB stick is installed as the ‘COM4′ port and the node id of the switch is ‘6′. /* 0x01, 0x09, 0x00, 0x13, nodeId, 0x03, 0x20, 0x01, state, 0x05, checksum */

ZWaveAPI - Home. Z-Wave-Me/z-way-mini-ui. Yepher/RaZBerry. Zwave on Raspberry | Open Source Building Automation. Home. Openzwave. This is a node.js add-on which wraps the Open Z-Wave library to provide access to a Z-Wave network from JavaScript. It is currently able to scan a Z-Wave network, report on connected devices, monitor the network for changes, and has rudimentary write support.

Install $ npm install openzwave Start by loading the addon and creating a new instance, specifying a path to the USB device: var OZW = require('openzwave');var zwave = new OZW('/dev/ttyUSB0'); An optional object can be passed at creation time to alter the behavior of the ZWave module. The rest of the API is split into Functions and Events. Functions Connecting to the network: zwave.connect(); zwave.disconnect(); Modifying device state: zwave.setLevel(nodeid, level); zwave.switchOn(nodeid); zwave.switchOff(nodeid); zwave.setValue(nodeid, commandclass, index, value); Writing to device metadata (stored on the device itself): zwave.setLocation(nodeid, location); zwave.setName(nodeid, name); Reset the controller.

Events The supported events are: 2.0 How To - Z-Wave. This page describes Z-Wave support in OpenRemote. Z-Wave is a proprietary protocol for wireless sensor networks. Wireless sensors are often battery-powered devices that are particularly useful for retro-fitting automation to existing and difficult-to-wire buildings and spaces. Other alternative wireless sensors and sensor networks are EnOcean energy-harvesting sensors and Zigbee sensor networks. Introduction OpenRemote uses Z-Wave serial API to communicate with a Z-Wave controller. Aeon Z-Stick 2 is an OpenRemote certified and tested Z-Wave controller with a serial API. OpenRemote Z-Wave support is available in two separate distributions.

For professional installs that require large Z-Wave network integration, please get OpenRemote Professional Designer for unlimited Z-Wave network size and auto-discovery of linked Z-Wave devices into OpenRemote Professional Designer. Hardware Following hardware is required for OpenRemote Z-Wave integration: Hardware Setup Configuration of System Notes See Also. Z-Wave For Developers/OEMs. About the Z-Wave Technology Standard Z-Wave is a wireless communications technology that is ideal for short range, two-way mesh topology automation networks. The technology is licensed by Sigma Designs, Milpitas CA, and is comprised of a mesh communications protocol stack, a set of device profiles, a wide selection of transceiver chips and modules and a finished product certification program.

Z-Wave’s physical and media access layers (PHY/MAC) have been ratified by the International Telecommunication Union (ITU) as the international standard (G.9959). The Z-Wave Standard is administered by the Z-Wave Alliance which serves as the Standards Development Organization (SDO) for Z-Wave. Together, Sigma Designs, the Z-Wave Alliance and the over 250 international companies that use Z-Wave technology in their products and services present the largest ecosystem of interoperable wireless control products in the world. How To Start Developing Z-Wave Solutions Summary: Product Certification. OpenZWave - Open-Source Cross-Platform Software for Z-Wave. Open-zwave - An open-source interface to Z-Wave networks. ZWave API - LinuxMCE.

The ZWave API is not available for free. You have to get the Zensys SDK for command specifications and device class definitions. This page tries to collect all the freely available information about ZWave. The final goal is to provide a header file with all necessary definitions for basic operation with open source software. IMPORTANT: all information added to this page _must_ have a reference to the source where it came from.

Frame specification Karl Denninger implemented basic ZWave support in his software "HomeDaemon". He advised that basic frame specification can be derived from his source code ( Basic Classes From the Leviton Z-Wave RS232 ASCII Interface Programming Guide (RZC0P-1LW, 10/9/2007): Controller 1 Static controller 2 Slave 3 Routing Slave 4 that leads us to some definitions: #define OZA_BASIC_CLASS_CONTROLLER 0x01 #define OZA_BASIC_CLASS_STATIC_CONTROLLER 0x02 #define OZA_BASIC_CLASS_SLAVE 0x03 #define OZA_BASIC_CLASS_ROUTING_SLAVE 0x04.