@@ -4204,9 +4204,9 @@ - (NSArray *)_getAttributesToReportWithReportedValues:(NSArray<NSDictionary<NSSt
4204
4204
// When the expected value interval expires, the correct value will be reported,
4205
4205
// if needed.
4206
4206
if (expectedValue) {
4207
- MTR_LOG("%@ report %@ value filtered - expected value still present", self, attributePath);
4207
+ MTR_LOG (" %@ report %@ value %@ filtered - expected value still present" , self, attributePath, attributeDataValue );
4208
4208
} else {
4209
- MTR_LOG("%@ report %@ value filtered - same as read cache", self, attributePath);
4209
+ MTR_LOG (" %@ report %@ value %@ filtered - same as read cache" , self, attributePath, attributeDataValue );
4210
4210
}
4211
4211
}
4212
4212
@@ -4319,6 +4319,22 @@ - (void)_doSetPersistedClusterData:(NSDictionary<MTRClusterPath *, MTRDeviceClus
4319
4319
4320
4320
[self _updateAttributeDependentDescriptionData ];
4321
4321
4322
+ NSNumber * networkFeatures = nil ;
4323
+ {
4324
+ std::lock_guard descriptionLock (_descriptionLock);
4325
+ networkFeatures = _allNetworkFeatures;
4326
+ }
4327
+
4328
+ if ((networkFeatures.unsignedLongLongValue & MTRNetworkCommissioningFeatureWiFiNetworkInterface) == 0 && (networkFeatures.unsignedLongLongValue & MTRNetworkCommissioningFeatureThreadNetworkInterface) == 0 ) {
4329
+ // We had persisted data, but apparently this device does not have any
4330
+ // known network technologies? Log some more information about what's
4331
+ // going on.
4332
+ auto * rootNetworkCommissioningPath = [MTRClusterPath clusterPathWithEndpointID: @(kRootEndpointId ) clusterID: @(MTRClusterIDTypeNetworkCommissioningID)];
4333
+ auto * networkCommisioningData = clusterData[rootNetworkCommissioningPath];
4334
+ MTR_LOG (" %@ after setting persisted data, network features: %@, root network commissioning featureMap: %@" , self, networkFeatures,
4335
+ networkCommisioningData.attributes [@(MTRClusterGlobalAttributeFeatureMapID)]);
4336
+ }
4337
+
4322
4338
// We have some stored data. Since we don't store data until the end of the
4323
4339
// initial priming report, our device cache must be primed.
4324
4340
_deviceCachePrimed = YES ;
0 commit comments