Author
Topic: ZWave API (Read 82232 times)

I try to collect all the public available ZWave information out in the wild on a wiki page: http://wiki.linuxmce.org/index.php/ZWave_APISome manuals hold information about node types, command and device classes. And there is sample code in the "HomeDaemon" project. Maybe we can pull enough information together to create an open api header file.

I'm working on my own code to talk to a Z-wave controller (ZCU201), the result will hopefully be a small C library with some documentation.

I'm using a combination of the LMCE code, the Zensys docs you have also found, and some reverse engineering to figure things out...

One thing I'm curious about is the actual legal status of the Z-wave code in LMCE. It couldn't have been written without access to information under NDA with Zensys right? Further more, some of the header files still have Zensys copyright notices...

It couldn't have been written without access to information under NDA with Zensys right?

not without big reverse engineering.

Quote

Further more, some of the header files still have Zensys copyright notices...

that problem was identified a few days ago. The actual driver is now removed from the trunk until that issue is resolved. I did some scripting to get the used defines from our code. Without the Zensys headers there are at about 50 defines needed for the lmce ZWave driver to compile.

It would be great if you could add valuable _public available_/reverse engineered information to the wiki page.

We're doing testing for the 0710 release and trying to be sure it works with the ACT ZCU101 (the pyramid shaped zwave usb) because this is the model currently sold, and the only zwave dongle in 0704 doesn't work. I know some new kernel modules were added by Hari, I believe, and now the ZCU101 is detected, and gets a ttyUSB interface. However the ZWave software still can't talk to it. Has anybody had any success with it?

We're doing testing for the 0710 release and trying to be sure it works with the ACT ZCU101 (the pyramid shaped zwave usb) because this is the model currently sold, and the only zwave dongle in 0704 doesn't work. I know some new kernel modules were added by Hari, I believe, and now the ZCU101 is detected, and gets a ttyUSB interface. However the ZWave software still can't talk to it. Has anybody had any success with it?

>> sent commands to the device with his own software and the new driver

I had been making the assumption that the 'new driver/software' was basically just for the usb->rs232 chip, so the kernel would see the dongle and add it as a ttyUSB

entry, but that once that happened, the serial protocol to talk to the device was the same and the existing ZWave binary would be used. Is that a misunderstanding? Have you and cyr been developing your own replacement for the existing ZWave binary? Maybe the 3 of us (4 if we get Daniel in) could talk about this on Skype or something. This is relevant for us since the programmer at Pluto who wrote the ZWave module originally is not with us anymore, and there's some new ZWave features we need implemented, and maybe we can get you guys some equipment if you're working on ZWave drivers.

My logs show this (this has the new kernel module for ttyUSB, but uses the existing ZWave software)

>> sent commands to the device with his own software and the new driver

I had been making the assumption that the 'new driver/software' was basically just for the usb->rs232 chip, so the kernel would see the dongle and add it as a ttyUSBX entry, but that once that happened, the serial protocol to talk to the device was the same and the existing ZWave binary would be used. Is that a misunderstanding?

thats also my understanding. I did the same approach for the Seluxit Dongle. It also uses a new chip (>2.xx) and works perfect.

Quote

Have you and cyr been developing your own replacement for the existing ZWave binary? Maybe the 3 of us (4 if we get Daniel in) could talk about this on Skype or something. This is relevant for us since the programmer at Pluto who wrote the ZWave module originally is not with us anymore, and there's some new ZWave features we need implemented, and maybe we can get you guys some equipment if you're working on ZWave drivers.

cyr works on a seperate project but seems to make good progress without the Zensys SDK.I stared at the DCE ZWave code for some days and have coarse understanding. My next steps will be implementing multilevel sensor support after receiving the multisensor sample from Seluxit and improving bidirectional support. What holds me back for now is the "unknown state" of the lmce/pluto code atm. It got removed because of the Zensys headers. I did some code parsing and came up with ~50 #defines needed to get rid of the both zensys files. If Zensys is happy with that I can continue to improve the code.

Quote

My logs show this (this has the new kernel module for ttyUSB, but uses the existing ZWave software)

We're doing testing for the 0710 release and trying to be sure it works with the ACT ZCU101 (the pyramid shaped zwave usb) because this is the model currently sold, and the only zwave dongle in 0704 doesn't work. I know some new kernel modules were added by Hari, I believe, and now the ZCU101 is detected, and gets a ttyUSB interface. However the ZWave software still can't talk to it. Has anybody had any success with it?

>> sent commands to the device with his own software and the new driver

I had been making the assumption that the 'new driver/software' was basically just for the usb->rs232 chip, so the kernel would see the dongle and add it as a ttyUSB

entry, but that once that happened, the serial protocol to talk to the device was the same and the existing ZWave binary would be used. Is that a misunderstanding? Have you and cyr been developing your own replacement for the existing ZWave binary? Maybe the 3 of us (4 if we get Daniel in) could talk about this on Skype or something. This is relevant for us since the programmer at Pluto who wrote the ZWave module originally is not with us anymore, and there's some new ZWave features we need implemented, and maybe we can get you guys some equipment if you're working on ZWave drivers.

My logs show this (this has the new kernel module for ttyUSB, but uses the existing ZWave software)