Closed thijscrombeen closed 6 years ago
After some more researching the RefreshNodeInfo functionality should refresh the values without reading this from the cache file.
I wanted to test this by adding functionality in your UWP app so that it can refresh node info per node. However, the UWP app becomes unresponsive after refreshing the node info.
In the OZW_Log there is a line "Refreshing node info for node ...." but no more logging after that.
Do you have any idea? Thanks in advance.
@thijscrombeen Could you share your forked version so I can try? It's most likely a core openzwave issue though, and not specific to this wrapper
@dotMorten Thanks for your quick reply. You can find my fork here: https://github.com/thijscrombeen/openzwave-dotnet-uwp
@dotMorten did you by any chance find the time to check my fork?
Thanks in advance for your time
@thijscrombeen Had some issues with my USB device for a while but got things going again and can repro on UWP and .NET. Please see the linked issue above for a description of the issue and where to fix it, or see the PR linked below.
Fix merged in openzwave
Thanks @dotMorten
I have noticed after some time my ozwcache file no longer contains all of the command classes for a certain device. Why this happens I still don't know.
As a workaround I can stop the UWP app, delete the ozwcache xml file and restart the UWP and the file is recreated again with all the values. When I just restart the UWP without deleting the file it will not add the missing command classes.
In my case I have a danalock and when missing the command classes, I cannot lock and unlock anymore because the ZWValueId is no longer present.
I wanted to automate the workaround:
For a moment it seems to work however my UWP app crashes due to following: The program '[1044] OZWAppx.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.
The ozwlog always ends up outputting
2018-08-08 15:43:21.926 Info, Node001, Received reply to FUNC_ID_ZW_GET_NODE_PROTOCOL_INFO 2018-08-08 15:43:21.926 Info, Node001, Protocol Info for Node 1: 2018-08-08 15:43:21.926 Info, Node001, Listening = true 2018-08-08 15:43:21.926 Info, Node001, Beaming = true 2018-08-08 15:43:21.926 Info, Node001, Routing = false 2018-08-08 15:43:21.926 Info, Node001, Max Baud Rate = 40000 2018-08-08 15:43:21.941 Info, Node001, Version = 4 2018-08-08 15:43:21.941 Info, Node001, Security = false 2018-08-08 15:43:21.941 Info, Node001, Basic device class (0x02) - Static Controller 2018-08-08 15:43:21.941 Info, Node001, No generic or specific device classes defined 2018-08-08 15:43:21.941 Info, Node001, Mandatory Command Classes for Node 1: 2018-08-08 15:43:21.941 Info, Node001, COMMAND_CLASS_MANUFACTURER_SPECIFIC 2018-08-08 15:43:21.941 Info, Node001, Mandatory Command Classes controlled by Node 1: 2018-08-08 15:43:21.941 Info, Node001, None 2018-08-08 15:43:21.941 Info, Node001, Advertised CommandClasses on Controller Node:
OZW_Log.txt
Is there perhaps an easier way to make the zwave controller refetch all command class and recreate the cache file?