mjcumming / isy994v5 Goto Github PK
View Code? Open in Web Editor NEWInterface to the ISY994 device with V5 firmware.
License: MIT License
Interface to the ISY994 device with V5 firmware.
License: MIT License
Relevant section of log file below:
2020-04-27 01:11:01,603 - isy994.controller - DEBUG - Container Event House Door Lock from .Device: Device House Door Lock, type lock, ID ZW005_1 (('status', 'ready'),)
2020-04-27 01:11:01,604 - isy_homie.bridge - INFO - Event property from Device: House Door Lock ('status', 'ready')
2020-04-27 01:11:01,604 - isy_homie.bridge - INFO - Event property from Device: House Door Lock ('status', 'ready')
2020-04-27 01:11:01,605 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,605 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,605 - isy994.controller - DEBUG - Container Event House Door Lock from .Device: Device House Door Lock, type lock, ID ZW005_1 (('state', 'Locked'),)
2020-04-27 01:11:01,606 - isy_homie.bridge - INFO - Event property from Device: House Door Lock ('state', 'Locked')
2020-04-27 01:11:01,606 - isy_homie.bridge - INFO - Event property from Device: House Door Lock ('state', 'Locked')
2020-04-27 01:11:01,606 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,606 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,607 - isy994.controller - DEBUG - Container Event House Door Lock from .Device: Device House Door Lock, type lock, ID ZW005_1 ((),)
2020-04-27 01:11:01,608 - isy_homie.bridge - INFO - Event add from Device: House Door Lock ()
2020-04-27 01:11:01,608 - isy_homie.bridge - INFO - Event add from Device: House Door Lock ()
2020-04-27 01:11:01,608 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,608 - isy_homie.bridge - DEBUG - Device event House Door Lock
2020-04-27 01:11:01,609 - isy994.controller - ERROR - Event handler Error 'Device_ZWave_Lock' object has no attribute 'get_homie_device_id'
Hi there - I've set "Chunked encoding" to Off (and rebooted, to be certain), and I get a 401 error from the websocket request.
ISY994v5 connect successfully, I know, because it's able to pull all the nodes and the variables at startup.
Is there anything I can do to provide extra info to debug this?
Edit: looks like an authentication error - I'm investigating.
Do you have any further examples, usage documentation?
Get Nodes
Get Node Info (UOM, Precision, Parent, Children, Value)
Control Functions
Currently comparing with PyISY for a project and this seems very promising but early stage?
Have several Z-Wave contact sensors made by Sensative. I see these errors in the log. Happy to add them as needed or create a new config for them.
2020-04-27 01:11:01,600 - isy994.items.devices.device_container - WARNING - No device class for Device: Name Master Bed Notify Sensor Address ZW010_1, Family 4, Type 4.7.1.0, DevCat 185, Def ID UZW0007
2020-04-27 01:11:01,601 - isy994.items.devices.device_container - WARNING - No device class for Device: Name Master Bed Binary Sensor Address ZW010_104, Family 4, Type 4.7.1.0, DevCat 104, Def ID UZW0008
2020-04-27 01:11:01,603 - isy994.items.devices.device_container - WARNING - No device class for Device: Name Master Bed Barrier Address ZW010_184, Family 4, Type 4.7.1.0, DevCat 184, Def ID UZW000A
In adding Z-Wave devices I'm trying to determine a clean approach following your structure for adding child devices. These are things like multisensors that support temp, humidity, luminance and power plugs supporting energy meters.
These show in the ISY generally as a child node of the parent and they have multiple properties besides a single ST which is in the 'extended' properties set for the node. I haven't gone all the way through the existing discovery code yet but I'm not seeing if the 'properties' are being pulled as as single value or into a list or dictionary. If can provide sample XML if needed for your ideas/thoughts on it.
My ISY can sometimes be slow to return pages like http:///rest/vars/get/2 - based on this I've been able to improve the reliability of ISY994v5 by changing the http requests to use a 15 second timeout for the the initial requests. Given how important it is to get these definitions during start-up, perhaps it's worth having a different timeout value for initialisation vs 'normal' execution?
Even with the increased timeout, I see some issues where variables and programs aren't found when events arrive via the websocket.
I routinely see e.g. "Unable able to find program type id 00EB" or "Unable able to find variable type 14 id 1" - these definitely exist on the ISY.
Happy to share detailed logs to help debug this.
@mjcumming getting back to this testing finally!
I submitted a new PR to fix some issues I've seen crop up in logging. I am getting numerous errors like the following. Do you know why this might be?
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0008
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0009
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000A
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000B
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000C
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000D
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000E
isy994.items.programs.program_container - WARNING - Unable able to find program type id 000F
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0010
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0014
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0015
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0016
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0017
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0018
isy994.items.programs.program_container - WARNING - Unable able to find program type id 0019
isy994.items.programs.program_container - WARNING - Unable able to find program type id 001A
isy994.items.programs.program_container - WARNING - Unable able to find program type id 001B
isy994.items.programs.program_container - WARNING - Unable able to find program type id 001C
isy994.items.variables.variable_container - WARNING - Unable able to find variable type 3 id 1
isy994.items.variables.variable_container - WARNING - Unable able to find variable type 6 id 2
isy994.items.variables.variable_container - WARNING - Unable able to find variable type 7 id 2
isy994.items.variables.variable_container - WARNING - Unable able to find variable type 8 id 2
isy994.items.variables.variable_container - WARNING - Unable able to find variable type 9 id 2
I have (several) Siren modules, and I see that it isn't supported in the insteon devices.
I know that this thing is a bear to deal with (I've written several half assed drivers for it).
maybe we could add some simple support for it (ignore all the complicated stuff), just on/off, chime/tone, duration?
If you don't have a siren, it would be impossible to figure out. If you don't, I can give it a try.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.