Skip to content
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

Create an AAI registry for PwRPC services to allow registration of custom AAI classes #37351

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

sxb427
Copy link
Contributor

@sxb427 sxb427 commented Feb 2, 2025

Chef delegates can now register attribute access classes in AttributeAccessorRegistry to serve PwRPC write requests. It is not ideal for PwRPC writes to take the same path as Matter Attribute Writes, as they have no constraint of being spec compliant. This PR adds the support for PwRPC write requests to directly reach custom handlers without going through Matter Attribute Writes pathway.

When attribute access registration is not found, it falls back to the old route.

Testing

Added the following custom handler in chef-air-quality.cpp

class AirQualityAttrAccess : public chip::rpc::AttributeAccessor
{
public:
    AirQualityAttrAccess() : chip::rpc::AttributeAccessor(Optional<EndpointId>::Missing(), AirQuality::Id) {}

    pw::Status Read(const ConcreteReadAttributePath & aPath, AttributeValueEncoder & aEncoder) override { return pw::OkStatus(); }

    pw::Status Write(const ConcreteDataAttributePath & aPath, AttributeValueDecoder & aDecoder) override
    {

        ChipLogProgress(DeviceLayer, "AirQualityAttrAccessRpc Write");

        if (aPath.mClusterId != AirQuality::Id)
        {
            ChipLogError(DeviceLayer, "AirQualityAttrAccessRpc Write: Got bad cluster %u", aPath.mClusterId);
            return pw::Status::InvalidArgument();
        }

        Instance * clusterInstance = gAirQualityClusterInstance[aPath.mEndpointId];

        switch (aPath.mAttributeId)
        {
        case chip::app::Clusters::AirQuality::Attributes::AirQuality::Id: {
            AirQualityEnum finalValue;
            CHIP_ERROR decoded = aDecoder.Decode(finalValue);
            if (decoded != CHIP_NO_ERROR)
            {
                ChipLogError(DeviceLayer, "AirQualityAttrAccessRpc Write: Decoder failed %" CHIP_ERROR_FORMAT, decoded.Format());
                return pw::Status::Internal();
            }
            Protocols::InteractionModel::Status status = clusterInstance->UpdateAirQuality(finalValue);
            if (Protocols::InteractionModel::Status::Success != status)
            {
                ChipLogError(DeviceLayer, "AirQualityAttrAccessRpc Write: UpdateAirQuality failed");
                return pw::Status::Internal();
            }
            return pw::OkStatus();
        }
        break;
        default: {
            ChipLogProgress(DeviceLayer, "AirQualityAttrAccessRpc Write: Decoder not called.");
            break;
        }
        }

        return ::pw::Status::PermissionDenied(); // Block writes to other attributes
        // return pw::OkStatus();
    }
};

AirQualityAttrAccess rpcAai;
.
.
.

void emberAfAirQualityClusterInitCallback(...)
{
    ...
    VerifyOrDieWithMsg(chip::rpc::AttributeAccessorRegistry::Instance().Register(&rpcAai), DeviceLayer,
                       "attribute accessor registration failed.");
}

Tested with rootnode_airqualitysensor_e63187f6c9

Send Write via RPC console -

rpcs.chip.rpc.Attributes.Write(data=protos.chip.rpc.AttributeData(data_uint8=3), metadata=protos.chip.rpc.AttributeMetadata(endpoint=1, cluster=int("0x005B", 16), attribute_id=0, type=protos.chip.rpc.AttributeType.ZCL_ENUM8_ATTRIBUTE_TYPE))

Read value

rpcs.chip.rpc.Attributes.Read(endpoint=1, cluster=int("0x005B", 16), attribute_id=0, type=protos.chip.rpc.AttributeType.ZCL_ENUM8_ATTRIBUTE_TYPE, pw_rpc_timeout_s=1000)

Output = 3

Logs -

[1738650327.031355][9:9] CHIP:SPT: Registering attribute accessor for clusterId: 91
.
.
.
[1738650414.953750][9:11] CHIP:DMG: Reading attribute: Cluster=0x0000_005B Endpoint=0x1 AttributeId=0x0000_0000 (expanded=0)
[1738650425.610376][9:10] CHIP:DL: No wifi interface name. Ignoring IP update event.
[1738650501.359854][9:11] CHIP:DL: AirQualityAttrAccessRpc Write
[1738650501.359877][9:11] CHIP:DMG: Endpoint 1, Cluster 0x0000_005B update version to a17e12ff

Testing backwards compatibility

Device: rootnode_airqualitysensor_e63187f6c9

Set MeasuredValue to 421.5

rpcs.chip.rpc.Attributes.Write(data=protos.chip.rpc.AttributeData(data_single=421.5), metadata=protos.chip.rpc.AttributeMetadata(endpoint=1, cluster=int("0x040D", 16), attribute_id=0, type=protos.chip.rpc.AttributeType.ZCL_DOUBLE_ATTRIBUTE_TYPE))

Read MeasuredValue

./chip-tool carbondioxideconcentrationmeasurement read measured-value 0x20 1 | grep "MeasuredValue"

Output: 421.5

Logs -

[1738650610.491999][9:11] CHIP:SPT: No custom Attribute Accessor Write registration found for: endpoint=1 cluster=1037
[1738650610.492021][9:11] CHIP:DMG: Writing attribute: Cluster=0x0000_040D Endpoint=0x1 AttributeId=0x0000_0000
[1738650610.492039][9:11] CHIP:DMG: Endpoint 1, Cluster 0x0000_040D update version to c8605c06
[1738650610.492049][9:11] CHIP:DL: Updated EP:1, Cluster: 0x040d MeasuredValue
[1738650610.492053][9:11] CHIP:DMG: Endpoint 1, Cluster 0x0000_040D update version to c8605c07
[1738650610.492060][9:11] CHIP:ZCL: Cluster callback: 0x0000_040D

Copy link

Review changes with  SemanticDiff

Copy link

github-actions bot commented Feb 2, 2025

PR #37351: Size comparison from 95d5de5 to a130e5f

Full report (67 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 95d5de5 a130e5f change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1093546 1093968 422 0.0
RAM 103298 103330 32 0.0
bl702 lighting-app bl702+eth FLASH 650158 650158 0 0.0
RAM 25265 25265 0 0.0
bl702+wifi FLASH 828066 828066 0 0.0
RAM 13981 13981 0 0.0
bl706+mfd+rpc+littlefs FLASH 1056626 1057052 426 0.0
RAM 23861 23893 32 0.1
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 888060 888058 -2 -0.0
RAM 18504 18504 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 971046 971044 -2 -0.0
RAM 16368 16368 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 838032 838080 48 0.0
RAM 123464 123464 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 823436 823500 64 0.0
RAM 125344 125344 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 770676 770724 48 0.0
RAM 113804 113804 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 754920 754968 48 0.0
RAM 114012 114012 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538461 538525 64 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572325 572389 64 0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 679433 679489 56 0.0
RAM 78532 78532 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 699285 699341 56 0.0
RAM 81172 81172 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 699285 699341 56 0.0
RAM 81172 81172 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 656213 656269 56 0.0
RAM 73600 73600 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 615817 615873 56 0.0
RAM 71516 71516 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 635445 635501 56 0.0
RAM 74060 74060 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 635445 635501 56 0.0
RAM 74060 74060 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 635289 635353 64 0.0
RAM 74524 74524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 654997 655061 64 0.0
RAM 77068 77068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 654997 655061 64 0.0
RAM 77068 77068 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 611725 611789 64 0.0
RAM 68612 68612 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 631585 631649 64 0.0
RAM 71252 71252 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 631585 631649 64 0.0
RAM 71252 71252 0 0.0
linux air-purifier-app debug unknown 4760 4760 0 0.0
FLASH 2708945 2708945 0 0.0
RAM 132816 132816 0 0.0
all-clusters-app debug unknown 5568 5568 0 0.0
FLASH 5974968 5974968 0 0.0
RAM 531632 531632 0 0.0
all-clusters-minimal-app debug unknown 5464 5464 0 0.0
FLASH 5323654 5323654 0 0.0
RAM 242744 242744 0 0.0
bridge-app debug unknown 5480 5480 0 0.0
FLASH 4681842 4681842 0 0.0
RAM 221480 221480 0 0.0
chip-tool debug unknown 6120 6120 0 0.0
FLASH 13098730 13098730 0 0.0
RAM 596770 596770 0 0.0
chip-tool-ipv6only arm64 unknown 21848 21848 0 0.0
FLASH 11164208 11164208 0 0.0
RAM 648496 648496 0 0.0
fabric-admin debug unknown 5808 5808 0 0.0
FLASH 11388203 11388203 0 0.0
RAM 596554 596554 0 0.0
fabric-bridge-app debug unknown 4736 4736 0 0.0
FLASH 4506440 4506440 0 0.0
RAM 208664 208664 0 0.0
fabric-sync debug unknown 4976 4976 0 0.0
FLASH 5612821 5612821 0 0.0
RAM 483536 483536 0 0.0
lighting-app debug+rpc+ui unknown 6144 6144 0 0.0
FLASH 5624593 5625233 640 0.0
RAM 231760 231824 64 0.0
lock-app debug unknown 5416 5416 0 0.0
FLASH 4730956 4730956 0 0.0
RAM 207728 207728 0 0.0
ota-provider-app debug unknown 4776 4776 0 0.0
FLASH 4359500 4359500 0 0.0
RAM 201368 201368 0 0.0
ota-requestor-app debug unknown 4728 4728 0 0.0
FLASH 4496972 4496972 0 0.0
RAM 205952 205952 0 0.0
shell debug unknown 4256 4256 0 0.0
FLASH 3004877 3004877 0 0.0
RAM 160504 160504 0 0.0
thermostat-no-ble arm64 unknown 9536 9536 0 0.0
FLASH 4098768 4098768 0 0.0
RAM 246144 246144 0 0.0
tv-app debug unknown 5744 5744 0 0.0
FLASH 5952421 5952421 0 0.0
RAM 606936 606936 0 0.0
tv-casting-app debug unknown 5320 5320 0 0.0
FLASH 11272333 11272333 0 0.0
RAM 710896 710896 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 906992 907052 60 0.0
RAM 142395 142395 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 901532 901532 0 0.0
RAM 124739 124739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845716 845776 60 0.0
RAM 141323 141323 0 0.0
nxp contact k32w0+release FLASH 584304 584368 64 0.0
RAM 70860 70860 0 0.0
mcxw71+release FLASH 599664 599712 48 0.0
RAM 63080 63080 0 0.0
light k32w0+release FLASH 610748 610812 64 0.0
RAM 70252 70252 0 0.0
k32w1+release FLASH 685208 685272 64 0.0
RAM 48664 48664 0 0.0
lock mcxw71+release FLASH 748680 748744 64 0.0
RAM 67476 67476 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646356 1646356 0 0.0
RAM 211560 211560 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553148 1553148 0 0.0
RAM 208376 208376 0 0.0
light cy8ckit_062s2_43012 FLASH 1468828 1468828 0 0.0
RAM 200352 200352 0 0.0
lock cy8ckit_062s2_43012 FLASH 1466860 1466860 0 0.0
RAM 224688 224688 0 0.0
qpg lighting-app qpg6105+debug FLASH 662016 662080 64 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 619804 619868 64 0.0
RAM 99648 99648 0 0.0
stm32 light STM32WB5MM-DK FLASH 482624 482688 64 0.0
RAM 144672 144672 0 0.0
telink bridge-app tl7218x FLASH 664774 664820 46 0.0
RAM 90812 90812 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621532 621578 46 0.0
RAM 31484 31484 0 0.0
light-app-ota-shell-factory-data tl3218x FLASH 770284 770330 46 0.0
RAM 43552 43552 0 0.0
tl7218x FLASH 778816 778862 46 0.0
RAM 98688 98688 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 680150 680196 46 0.0
RAM 52176 52176 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 708704 708750 46 0.0
RAM 73384 73384 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 625618 625664 46 0.0
RAM 142016 142016 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813000 813150 150 0.0
RAM 99560 99596 36 0.0
tizen all-clusters-app arm unknown 5116 5116 0 0.0
FLASH 1751916 1751916 0 0.0
RAM 93524 93524 0 0.0
chip-tool-ubsan arm unknown 11408 11408 0 0.0
FLASH 18698198 18698198 0 0.0
RAM 8183840 8183840 0 0.0

Copy link
Contributor

@andy31415 andy31415 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

code in src/data-model-providers should not be touched for example development.

Copy link

github-actions bot commented Feb 3, 2025

PR #37351: Size comparison from 95d5de5 to 4393084

Full report (67 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 95d5de5 4393084 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1093546 1093966 420 0.0
RAM 103298 103330 32 0.0
bl702 lighting-app bl702+eth FLASH 650158 650154 -4 -0.0
RAM 25265 25265 0 0.0
bl702+wifi FLASH 828066 828062 -4 -0.0
RAM 13981 13981 0 0.0
bl706+mfd+rpc+littlefs FLASH 1056626 1057050 424 0.0
RAM 23861 23893 32 0.1
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 888060 888056 -4 -0.0
RAM 18504 18504 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 971046 971042 -4 -0.0
RAM 16368 16368 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 838032 838080 48 0.0
RAM 123464 123464 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 823436 823500 64 0.0
RAM 125344 125344 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 770676 770724 48 0.0
RAM 113804 113804 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 754920 754968 48 0.0
RAM 114012 114012 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538461 538525 64 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572325 572381 56 0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 679433 679489 56 0.0
RAM 78532 78532 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 699285 699333 48 0.0
RAM 81172 81172 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 699285 699333 48 0.0
RAM 81172 81172 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 656213 656269 56 0.0
RAM 73600 73600 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 615817 615865 48 0.0
RAM 71516 71516 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 635445 635493 48 0.0
RAM 74060 74060 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 635445 635493 48 0.0
RAM 74060 74060 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 635289 635353 64 0.0
RAM 74524 74524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 654997 655061 64 0.0
RAM 77068 77068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 654997 655061 64 0.0
RAM 77068 77068 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 611725 611789 64 0.0
RAM 68612 68612 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 631585 631649 64 0.0
RAM 71252 71252 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 631585 631649 64 0.0
RAM 71252 71252 0 0.0
linux air-purifier-app debug unknown 4760 4760 0 0.0
FLASH 2708945 2708945 0 0.0
RAM 132816 132816 0 0.0
all-clusters-app debug unknown 5568 5568 0 0.0
FLASH 5974968 5974968 0 0.0
RAM 531632 531632 0 0.0
all-clusters-minimal-app debug unknown 5464 5464 0 0.0
FLASH 5323654 5323654 0 0.0
RAM 242744 242744 0 0.0
bridge-app debug unknown 5480 5480 0 0.0
FLASH 4681842 4681842 0 0.0
RAM 221480 221480 0 0.0
chip-tool debug unknown 6120 6120 0 0.0
FLASH 13098730 13098730 0 0.0
RAM 596770 596770 0 0.0
chip-tool-ipv6only arm64 unknown 21848 21848 0 0.0
FLASH 11164208 11164224 16 0.0
RAM 648496 648496 0 0.0
fabric-admin debug unknown 5808 5808 0 0.0
FLASH 11388203 11388203 0 0.0
RAM 596554 596554 0 0.0
fabric-bridge-app debug unknown 4736 4736 0 0.0
FLASH 4506440 4506440 0 0.0
RAM 208664 208664 0 0.0
fabric-sync debug unknown 4976 4976 0 0.0
FLASH 5612821 5612821 0 0.0
RAM 483536 483536 0 0.0
lighting-app debug+rpc+ui unknown 6144 6144 0 0.0
FLASH 5624593 5625233 640 0.0
RAM 231760 231824 64 0.0
lock-app debug unknown 5416 5416 0 0.0
FLASH 4730956 4730956 0 0.0
RAM 207728 207728 0 0.0
ota-provider-app debug unknown 4776 4776 0 0.0
FLASH 4359500 4359500 0 0.0
RAM 201368 201368 0 0.0
ota-requestor-app debug unknown 4728 4728 0 0.0
FLASH 4496972 4496972 0 0.0
RAM 205952 205952 0 0.0
shell debug unknown 4256 4256 0 0.0
FLASH 3004877 3004877 0 0.0
RAM 160504 160504 0 0.0
thermostat-no-ble arm64 unknown 9536 9536 0 0.0
FLASH 4098768 4098784 16 0.0
RAM 246144 246144 0 0.0
tv-app debug unknown 5744 5744 0 0.0
FLASH 5952421 5952421 0 0.0
RAM 606936 606936 0 0.0
tv-casting-app debug unknown 5320 5320 0 0.0
FLASH 11272333 11272333 0 0.0
RAM 710896 710896 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 906992 907052 60 0.0
RAM 142395 142395 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 901532 901532 0 0.0
RAM 124739 124739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845716 845776 60 0.0
RAM 141323 141323 0 0.0
nxp contact k32w0+release FLASH 584304 584368 64 0.0
RAM 70860 70860 0 0.0
mcxw71+release FLASH 599664 599712 48 0.0
RAM 63080 63080 0 0.0
light k32w0+release FLASH 610748 610812 64 0.0
RAM 70252 70252 0 0.0
k32w1+release FLASH 685208 685272 64 0.0
RAM 48664 48664 0 0.0
lock mcxw71+release FLASH 748680 748744 64 0.0
RAM 67476 67476 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646356 1646356 0 0.0
RAM 211560 211560 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553148 1553148 0 0.0
RAM 208376 208376 0 0.0
light cy8ckit_062s2_43012 FLASH 1468828 1468828 0 0.0
RAM 200352 200352 0 0.0
lock cy8ckit_062s2_43012 FLASH 1466860 1466860 0 0.0
RAM 224688 224688 0 0.0
qpg lighting-app qpg6105+debug FLASH 662016 662080 64 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 619804 619860 56 0.0
RAM 99648 99648 0 0.0
stm32 light STM32WB5MM-DK FLASH 482624 482688 64 0.0
RAM 144672 144672 0 0.0
telink bridge-app tl7218x FLASH 664774 664818 44 0.0
RAM 90812 90812 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621532 621576 44 0.0
RAM 31484 31484 0 0.0
light-app-ota-shell-factory-data tl3218x FLASH 770284 770328 44 0.0
RAM 43552 43552 0 0.0
tl7218x FLASH 778816 778860 44 0.0
RAM 98688 98688 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 680150 680194 44 0.0
RAM 52176 52176 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 708704 708748 44 0.0
RAM 73384 73384 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 625618 625662 44 0.0
RAM 142016 142016 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813000 813148 148 0.0
RAM 99560 99596 36 0.0
tizen all-clusters-app arm unknown 5116 5116 0 0.0
FLASH 1751916 1751908 -8 -0.0
RAM 93524 93524 0 0.0
chip-tool-ubsan arm unknown 11408 11408 0 0.0
FLASH 18698198 18698190 -8 -0.0
RAM 8183840 8183840 0 0.0

Copy link

github-actions bot commented Feb 4, 2025

PR #37351: Size comparison from 95d5de5 to a8bcf87

Full report (67 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 95d5de5 a8bcf87 change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1093546 1094398 852 0.1
RAM 103298 103354 56 0.1
bl702 lighting-app bl702+eth FLASH 650158 650154 -4 -0.0
RAM 25265 25265 0 0.0
bl702+wifi FLASH 828066 828062 -4 -0.0
RAM 13981 13981 0 0.0
bl706+mfd+rpc+littlefs FLASH 1056626 1057514 888 0.1
RAM 23861 23909 48 0.2
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 888060 888056 -4 -0.0
RAM 18504 18504 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 971046 971042 -4 -0.0
RAM 16368 16368 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 838032 838032 0 0.0
RAM 123464 123464 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 823436 823436 0 0.0
RAM 125344 125344 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 770676 770676 0 0.0
RAM 113804 113804 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 754920 754920 0 0.0
RAM 114012 114012 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538461 538461 0 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572325 572317 -8 -0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 679433 679433 0 0.0
RAM 78532 78532 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 699285 699277 -8 -0.0
RAM 81172 81172 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 699285 699277 -8 -0.0
RAM 81172 81172 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 656213 656213 0 0.0
RAM 73600 73600 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 615817 615809 -8 -0.0
RAM 71516 71516 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 635445 635437 -8 -0.0
RAM 74060 74060 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 635445 635437 -8 -0.0
RAM 74060 74060 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 635289 635289 0 0.0
RAM 74524 74524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 654997 654997 0 0.0
RAM 77068 77068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 654997 654997 0 0.0
RAM 77068 77068 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 611725 611725 0 0.0
RAM 68612 68612 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 631585 631585 0 0.0
RAM 71252 71252 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 631585 631585 0 0.0
RAM 71252 71252 0 0.0
linux air-purifier-app debug unknown 4760 4760 0 0.0
FLASH 2708945 2708945 0 0.0
RAM 132816 132816 0 0.0
all-clusters-app debug unknown 5568 5568 0 0.0
FLASH 5974968 5974968 0 0.0
RAM 531632 531632 0 0.0
all-clusters-minimal-app debug unknown 5464 5464 0 0.0
FLASH 5323654 5323654 0 0.0
RAM 242744 242744 0 0.0
bridge-app debug unknown 5480 5480 0 0.0
FLASH 4681842 4681842 0 0.0
RAM 221480 221480 0 0.0
chip-tool debug unknown 6120 6120 0 0.0
FLASH 13098730 13098730 0 0.0
RAM 596770 596770 0 0.0
chip-tool-ipv6only arm64 unknown 21848 21848 0 0.0
FLASH 11164208 11164224 16 0.0
RAM 648496 648496 0 0.0
fabric-admin debug unknown 5808 5808 0 0.0
FLASH 11388203 11388203 0 0.0
RAM 596554 596554 0 0.0
fabric-bridge-app debug unknown 4736 4736 0 0.0
FLASH 4506440 4506440 0 0.0
RAM 208664 208664 0 0.0
fabric-sync debug unknown 4976 4976 0 0.0
FLASH 5612821 5612821 0 0.0
RAM 483536 483536 0 0.0
lighting-app debug+rpc+ui unknown 6144 6152 8 0.1
FLASH 5624593 5631505 6912 0.1
RAM 231760 231888 128 0.1
lock-app debug unknown 5416 5416 0 0.0
FLASH 4730956 4730956 0 0.0
RAM 207728 207728 0 0.0
ota-provider-app debug unknown 4776 4776 0 0.0
FLASH 4359500 4359500 0 0.0
RAM 201368 201368 0 0.0
ota-requestor-app debug unknown 4728 4728 0 0.0
FLASH 4496972 4496972 0 0.0
RAM 205952 205952 0 0.0
shell debug unknown 4256 4256 0 0.0
FLASH 3004877 3004877 0 0.0
RAM 160504 160504 0 0.0
thermostat-no-ble arm64 unknown 9536 9536 0 0.0
FLASH 4098768 4098784 16 0.0
RAM 246144 246144 0 0.0
tv-app debug unknown 5744 5744 0 0.0
FLASH 5952421 5952421 0 0.0
RAM 606936 606936 0 0.0
tv-casting-app debug unknown 5320 5320 0 0.0
FLASH 11272333 11272333 0 0.0
RAM 710896 710896 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 906992 906988 -4 -0.0
RAM 142395 142395 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 901532 901532 0 0.0
RAM 124739 124739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845716 845712 -4 -0.0
RAM 141323 141323 0 0.0
nxp contact k32w0+release FLASH 584304 584304 0 0.0
RAM 70860 70860 0 0.0
mcxw71+release FLASH 599664 599664 0 0.0
RAM 63080 63080 0 0.0
light k32w0+release FLASH 610748 610748 0 0.0
RAM 70252 70252 0 0.0
k32w1+release FLASH 685208 685208 0 0.0
RAM 48664 48664 0 0.0
lock mcxw71+release FLASH 748680 748680 0 0.0
RAM 67476 67476 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646356 1646356 0 0.0
RAM 211560 211560 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553148 1553148 0 0.0
RAM 208376 208376 0 0.0
light cy8ckit_062s2_43012 FLASH 1468828 1468828 0 0.0
RAM 200352 200352 0 0.0
lock cy8ckit_062s2_43012 FLASH 1466860 1466860 0 0.0
RAM 224688 224688 0 0.0
qpg lighting-app qpg6105+debug FLASH 662016 662016 0 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 619804 619796 -8 -0.0
RAM 99648 99648 0 0.0
stm32 light STM32WB5MM-DK FLASH 482624 482624 0 0.0
RAM 144672 144672 0 0.0
telink bridge-app tl7218x FLASH 664774 664772 -2 -0.0
RAM 90812 90812 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621532 621530 -2 -0.0
RAM 31484 31484 0 0.0
light-app-ota-shell-factory-data tl3218x FLASH 770284 770282 -2 -0.0
RAM 43552 43552 0 0.0
tl7218x FLASH 778816 778814 -2 -0.0
RAM 98688 98688 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 680150 680148 -2 -0.0
RAM 52176 52176 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 708704 708702 -2 -0.0
RAM 73384 73384 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 625618 625616 -2 -0.0
RAM 142016 142016 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813000 813638 638 0.1
RAM 99560 99616 56 0.1
tizen all-clusters-app arm unknown 5116 5116 0 0.0
FLASH 1751916 1751908 -8 -0.0
RAM 93524 93524 0 0.0
chip-tool-ubsan arm unknown 11408 11408 0 0.0
FLASH 18698198 18698190 -8 -0.0
RAM 8183840 8183840 0 0.0

Copy link

github-actions bot commented Feb 4, 2025

PR #37351: Size comparison from 95d5de5 to 95c1d6b

Full report (67 builds for bl602, bl702, bl702l, cc13x4_26x4, cc32xx, cyw30739, linux, nrfconnect, nxp, psoc6, qpg, stm32, telink, tizen)
platform target config section 95d5de5 95c1d6b change % change
bl602 lighting-app bl602+mfd+littlefs+rpc FLASH 1093546 1094398 852 0.1
RAM 103298 103354 56 0.1
bl702 lighting-app bl702+eth FLASH 650158 650154 -4 -0.0
RAM 25265 25265 0 0.0
bl702+wifi FLASH 828066 828062 -4 -0.0
RAM 13981 13981 0 0.0
bl706+mfd+rpc+littlefs FLASH 1056626 1057514 888 0.1
RAM 23861 23909 48 0.2
bl702l contact-sensor-app bl702l+mfd+littlefs FLASH 888060 888056 -4 -0.0
RAM 18504 18504 0 0.0
lighting-app bl702l+mfd+littlefs FLASH 971046 971042 -4 -0.0
RAM 16368 16368 0 0.0
cc13x4_26x4 lighting-app LP_EM_CC1354P10_6 FLASH 838032 838032 0 0.0
RAM 123464 123464 0 0.0
lock-ftd LP_EM_CC1354P10_6 FLASH 823436 823436 0 0.0
RAM 125344 125344 0 0.0
pump-app LP_EM_CC1354P10_6 FLASH 770676 770676 0 0.0
RAM 113804 113804 0 0.0
pump-controller-app LP_EM_CC1354P10_6 FLASH 754920 754920 0 0.0
RAM 114012 114012 0 0.0
cc32xx air-purifier CC3235SF_LAUNCHXL FLASH 538461 538461 0 0.0
RAM 205192 205192 0 0.0
lock CC3235SF_LAUNCHXL FLASH 572325 572317 -8 -0.0
RAM 205344 205344 0 0.0
cyw30739 light CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 679433 679433 0 0.0
RAM 78532 78532 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 699285 699277 -8 -0.0
RAM 81172 81172 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 699285 699277 -8 -0.0
RAM 81172 81172 0 0.0
CYW930739M2EVB-02 unknown 2040 2040 0 0.0
FLASH 656213 656213 0 0.0
RAM 73600 73600 0 0.0
light-switch CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 615817 615809 -8 -0.0
RAM 71516 71516 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 635445 635437 -8 -0.0
RAM 74060 74060 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 635445 635437 -8 -0.0
RAM 74060 74060 0 0.0
lock CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 635289 635289 0 0.0
RAM 74524 74524 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 654997 654997 0 0.0
RAM 77068 77068 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 654997 654997 0 0.0
RAM 77068 77068 0 0.0
thermostat CYW30739B2-P5-EVK-01 unknown 2040 2040 0 0.0
FLASH 611725 611725 0 0.0
RAM 68612 68612 0 0.0
CYW30739B2-P5-EVK-02 unknown 2040 2040 0 0.0
FLASH 631585 631585 0 0.0
RAM 71252 71252 0 0.0
CYW30739B2-P5-EVK-03 unknown 2040 2040 0 0.0
FLASH 631585 631585 0 0.0
RAM 71252 71252 0 0.0
linux air-purifier-app debug unknown 4760 4760 0 0.0
FLASH 2708945 2708945 0 0.0
RAM 132816 132816 0 0.0
all-clusters-app debug unknown 5568 5568 0 0.0
FLASH 5974968 5974968 0 0.0
RAM 531632 531632 0 0.0
all-clusters-minimal-app debug unknown 5464 5464 0 0.0
FLASH 5323654 5323654 0 0.0
RAM 242744 242744 0 0.0
bridge-app debug unknown 5480 5480 0 0.0
FLASH 4681842 4681842 0 0.0
RAM 221480 221480 0 0.0
chip-tool debug unknown 6120 6120 0 0.0
FLASH 13098730 13098730 0 0.0
RAM 596770 596770 0 0.0
chip-tool-ipv6only arm64 unknown 21848 21848 0 0.0
FLASH 11164208 11164224 16 0.0
RAM 648496 648496 0 0.0
fabric-admin debug unknown 5808 5808 0 0.0
FLASH 11388203 11388203 0 0.0
RAM 596554 596554 0 0.0
fabric-bridge-app debug unknown 4736 4736 0 0.0
FLASH 4506440 4506440 0 0.0
RAM 208664 208664 0 0.0
fabric-sync debug unknown 4976 4976 0 0.0
FLASH 5612821 5612821 0 0.0
RAM 483536 483536 0 0.0
lighting-app debug+rpc+ui unknown 6144 6152 8 0.1
FLASH 5624593 5631505 6912 0.1
RAM 231760 231888 128 0.1
lock-app debug unknown 5416 5416 0 0.0
FLASH 4730956 4730956 0 0.0
RAM 207728 207728 0 0.0
ota-provider-app debug unknown 4776 4776 0 0.0
FLASH 4359500 4359500 0 0.0
RAM 201368 201368 0 0.0
ota-requestor-app debug unknown 4728 4728 0 0.0
FLASH 4496972 4496972 0 0.0
RAM 205952 205952 0 0.0
shell debug unknown 4256 4256 0 0.0
FLASH 3004877 3004877 0 0.0
RAM 160504 160504 0 0.0
thermostat-no-ble arm64 unknown 9536 9536 0 0.0
FLASH 4098768 4098784 16 0.0
RAM 246144 246144 0 0.0
tv-app debug unknown 5744 5744 0 0.0
FLASH 5952421 5952421 0 0.0
RAM 606936 606936 0 0.0
tv-casting-app debug unknown 5320 5320 0 0.0
FLASH 11272333 11272333 0 0.0
RAM 710896 710896 0 0.0
nrfconnect all-clusters-app nrf52840dk_nrf52840 FLASH 906992 906988 -4 -0.0
RAM 142395 142395 0 0.0
nrf7002dk_nrf5340_cpuapp FLASH 901532 901532 0 0.0
RAM 124739 124739 0 0.0
all-clusters-minimal-app nrf52840dk_nrf52840 FLASH 845716 845712 -4 -0.0
RAM 141323 141323 0 0.0
nxp contact k32w0+release FLASH 584304 584304 0 0.0
RAM 70860 70860 0 0.0
mcxw71+release FLASH 599664 599664 0 0.0
RAM 63080 63080 0 0.0
light k32w0+release FLASH 610748 610748 0 0.0
RAM 70252 70252 0 0.0
k32w1+release FLASH 685208 685208 0 0.0
RAM 48664 48664 0 0.0
lock mcxw71+release FLASH 748680 748680 0 0.0
RAM 67476 67476 0 0.0
psoc6 all-clusters cy8ckit_062s2_43012 FLASH 1646356 1646356 0 0.0
RAM 211560 211560 0 0.0
all-clusters-minimal cy8ckit_062s2_43012 FLASH 1553148 1553148 0 0.0
RAM 208376 208376 0 0.0
light cy8ckit_062s2_43012 FLASH 1468828 1468828 0 0.0
RAM 200352 200352 0 0.0
lock cy8ckit_062s2_43012 FLASH 1466860 1466860 0 0.0
RAM 224688 224688 0 0.0
qpg lighting-app qpg6105+debug FLASH 662016 662016 0 0.0
RAM 105204 105204 0 0.0
lock-app qpg6105+debug FLASH 619804 619796 -8 -0.0
RAM 99648 99648 0 0.0
stm32 light STM32WB5MM-DK FLASH 482624 482624 0 0.0
RAM 144672 144672 0 0.0
telink bridge-app tl7218x FLASH 664774 664772 -2 -0.0
RAM 90812 90812 0 0.0
contact-sensor-app tlsr9528a_retention FLASH 621532 621530 -2 -0.0
RAM 31484 31484 0 0.0
light-app-ota-shell-factory-data tl3218x FLASH 770284 770282 -2 -0.0
RAM 43552 43552 0 0.0
tl7218x FLASH 778816 778814 -2 -0.0
RAM 98688 98688 0 0.0
light-switch-app-ota-compress-lzma-factory-data tl7218x_retention FLASH 680150 680148 -2 -0.0
RAM 52176 52176 0 0.0
light-switch-app-ota-compress-lzma-shell-factory-data tlsr9528a FLASH 708704 708702 -2 -0.0
RAM 73384 73384 0 0.0
lighting-app-ota-factory-data tlsr9118bdk40d FLASH 625618 625616 -2 -0.0
RAM 142016 142016 0 0.0
lighting-app-ota-rpc-factory-data-4mb tlsr9518adk80d FLASH 813000 813638 638 0.1
RAM 99560 99616 56 0.1
tizen all-clusters-app arm unknown 5116 5116 0 0.0
FLASH 1751916 1751908 -8 -0.0
RAM 93524 93524 0 0.0
chip-tool-ubsan arm unknown 11408 11408 0 0.0
FLASH 18698198 18698190 -8 -0.0
RAM 8183840 8183840 0 0.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants