-
-
Notifications
You must be signed in to change notification settings - Fork 911
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unhandled Command Class 0x2b when FGD212 sends SceneActivation after restart #1667
Comments
Back on master:
Also, it might be worth nothing that the CC support seemed to work as expected, thanks! :) |
Firstly: Second - As this is a Controlling CC (meaning it is meant to control other devices, by sending SET Commands instead of receiving SET commands) and not a Controlled CommandClass - It needs to be updated in OZW, as we now distinguish between the two types of messages. This is WIP in the Dev Branch. The Infrastructure is there, but the CommandClasses have not been updated. |
Aha, apparently I was quite tired and blind when I ended up posting this.. Looking closer, very apparent that HandleIncomingMsg wasn't implemented and thus returns false.. Looking forward to test when more stable, thanks! |
…ns. Notifications for Scene Activation to be depreciated in 1.8
Fixed. This CC now exposes the Scene ID (and Duration) via ValueID's. The old Notification for it will be depreciated in 1.8. |
@Fishwaldo , yes, finaly found it... took me some debugging to figure this one out. Please find a PR that corrects the function name so 'HandleIncomingMsg' is now indeed handled ;) This probably solves some scene issues... |
@gizmocuz, good catch. I was working on this, you beat me to it! The typo is in the comments so I'll make a new PR. I've tested this on domoticz + FGD212 |
When I add an FGD212 Fibaro Dimmer 2, SceneActivation works until you restart OZW
The CC is in m_advertisedCommandClassMap because after receiving UPDATE_STATE_NODE_INFO_RECEIVED that CC gets added to that map. If you reboot, data is read from the cache and:
|
Related: domoticz/domoticz#3240 |
Related: That's in fact a request to enable OZW to send the CC That topic is old, and it is suggesting the reception of CC 0x2b should always be handled regardless of NIF, which sounds plausible to me. "SDS13781 Z-Wave Application Command Class Specification.pdf", "3.4 Node Information Frame" The field MAY advertise the list of Command Classes that the node can control in other nodes. If present, the list of controlling Command Classes MUST be prepended by the COMMAND_CLASS_MARK Command Class identifier. It is NOT RECOMMENDED to advertise controlled Command Classes. I have no idea how many devices report Scene Activation like the FGD212 does. BTW the FGD212 is the last device by Fibaro to support Scene Activation, devices after that support Central Scene. The device was designed in 2015 and is still available. |
@petergebruers , yes, it would be best if 0x2b is always handled! I made a internal patch for this a year ago |
Thank for reporting back. I am rather new to the development of OZW, but not new to Z-Wave. The second device I can use to test is the Aeotec Minimote. By "internal" do you mean for personal use, or used in "Domoticz"? I am asking because I don't want to break things, and I am interested in possible side effects. Also I'll have to discuss this with @Fishwaldo. |
Always accepting CC 0x2b works for me, both on FGD212 and Minimote, but, note to self: check writing of m_advertisedCommandClassMap aka "AfterMark" to ozwcache, and retrieving it at startup. |
Should be Fixed. We were mixing up the Controller "Advertised" CommandClass with the Nodes Controlling CommandClass (aka AfterMark) I still need to rework the Controllers CommandClass support, but thats for another day. |
Issue Guidelines
While experimenting with Dev and the new CC support, I've hit some other issues.. I've got two Fibaro dimmers which on S2 sends a scene activation command.
With Dev cleanly built on FreeBSD 11.2, with an Aeon S2 stick, I just get the following when pressing S2:
From what I can interpret, the 0x04 means 4 bytes long and 0x01 means
data[0] == 0x01
insideSceneActivation::HandleMsg
.. so I cannot at all understand how HandleMsg can return false...I've also had issues with my application (agocontrol) initially failing to detect all classes on the device, resulting in the following:
After a manual
RefreshNodeInfo
on the node, it managed to obtain the classes and instead now gives the HandleIncommingMsg error instead.Both Node031 and Node003 are Fibaro FGD211.
I can provide more logs from above runs, and perhaps debugging aid, but until then I will move back to master to get a working system again.
The text was updated successfully, but these errors were encountered: