You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
using the idl_bridge_generator output does not compile.
i am on 1.1.0.1 tag (8f66f42) creating a dynamic bridge app.
Depending on the used clusters in the Bridge app the Encode() and Decode() methods of cluster specific struct types are failing due to unsupported assignments.
For me this was the case for BridgeDeviceBasicInformation (BridgedDeviceBasicInformationCluster::ProductAppearanceStruct) and DoorLock (DoorLockCluster::CredentialStruct) clusters, but i assume there are more cases.
I tried to fix it but this needs more substantial changes:
scripts/py_matter_idl/matter_idl/generators/bridge/BridgeClustersCpp.jinja - use AssignValue method in the Encode/Decode methods for assignment (added with Fix Dynamic Bridge example compilation #26129) like used in the global structs (BridgeClustersGlobalStructs.jinja)
the struct field types differ in the struct implementation and the corresponding ::DecodableType implementation (integral types vs enums vs Optional/Nullable types) - for this i think changes are needed in 'scripts/py_matter_idl/matter_idl/generators/bridge/init.py'
e.g. to handle enum types in get_field_type() and get_field_info() methods and return the enum classes instead
Platform
core (please add to version below)
Platform Version(s)
No response
Type
Manually tested with SDK
(Optional) If manually tested please explain why this is only manually tested
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered:
Reproduction steps / Feature
Hi,
using the idl_bridge_generator output does not compile.
i am on 1.1.0.1 tag (8f66f42) creating a dynamic bridge app.
Depending on the used clusters in the Bridge app the Encode() and Decode() methods of cluster specific struct types are failing due to unsupported assignments.
For me this was the case for BridgeDeviceBasicInformation (BridgedDeviceBasicInformationCluster::ProductAppearanceStruct) and DoorLock (DoorLockCluster::CredentialStruct) clusters, but i assume there are more cases.
I tried to fix it but this needs more substantial changes:
scripts/py_matter_idl/matter_idl/generators/bridge/BridgeClustersCpp.jinja - use AssignValue method in the Encode/Decode methods for assignment (added with Fix Dynamic Bridge example compilation #26129) like used in the global structs (BridgeClustersGlobalStructs.jinja)
the struct field types differ in the struct implementation and the corresponding ::DecodableType implementation (integral types vs enums vs Optional/Nullable types) - for this i think changes are needed in 'scripts/py_matter_idl/matter_idl/generators/bridge/init.py'
e.g. to handle enum types in get_field_type() and get_field_info() methods and return the enum classes instead
Platform
core (please add to version below)
Platform Version(s)
No response
Type
Manually tested with SDK
(Optional) If manually tested please explain why this is only manually tested
No response
Anything else?
No response
The text was updated successfully, but these errors were encountered: