Matter - Android CHIP Tool fails to send commands to clusters and read attributes from clusters

Following this link -> developer.nordicsemi.com/.../ug_matter_gs_adding_clusters.html I have set up two endpoints on a Matter end device (nRF52840 DK) and some commands and attributes cant be interacted with. I have modified the nRF Connect SDK v2.1.0 Template sample project and added a temperature sensor endpoint. Following Nordics tutorial, the On/Off cluster is needed to trigger temperature reads. My problem is when I send the on or off command to the On/Off cluster the Android CHIP Tool returns with a "Command Failed" error (See below).

    

The basic cluster works as expected and endpoint 0 does too. Not sure how to solve this error, any suggestions?

Error from End Device:

 

I: 168771 [EM]Received message of type 0x8 with protocolId (0, 1) and MessageCounter:195486001 on exchange 35492r
D: 168781 [EM]Handling via exchange: 35492r, Delegate: 0x2000cd24
D: 168787 [DMG]No command 0x0000_0001 in Cluster 0x0000_0006 on Endpoint 0x1
D: 168794 [DMG]Command handler moving to [ Preparing]
D: 168799 [DMG]Command handler moving to [AddingComm]
D: 168804 [DMG]Command handler moving to [AddedComma]
D: 168809 [DMG]Decreasing reference count for CommandHandler, remaining 0
I: 168816 [IN]Prepared secure message 0x20005124 to 0x000000000001B669 (1)  of type 0x9 and protocolId (0, 1) on exchange 35492r with MessageCounter:17585820.
I: 168830 [IN]Sending encrypted msg 0x20005124 with MessageCounter:17585820 to 0x000000000001B669 (1) at monotonic time: 000000000002937E msec
D: 168844 [DMG]Command handler moving to [CommandSen]
D: 168849 [DMG]Command handler moving to [AwaitingDe]
I: 168901 [EM]Received message of type 0x10 with protocolId (0, 0) and MessageCounter:195486002 on exchange 35492r
D: 168911 [EM]Found matching exchange: 35492r, Delegate: (nil)
D: 168917 [EM]Rxd Ack; Removing MessageCounter:17585820 from Retrans Table on exchange 35492r
D: 168925 [EM]Removed CHIP MessageCounter:17585820 from RetransTable on exchange 35492r
E: 168971 [SWU]No suitable OTA Provider candidate found
I: 168976 [SWU]No provider available

Parents Reply
  • No, the event handlers are not called, I confirmed this by adding LOG_INF() print statements inside the event handlers.

    void AppTask::SensorActivateHandler()
    {
            LOG_INF("SensorActivateHandler");
            StartSensorTimer(500);
    }
    
    void AppTask::SensorDeactivateHandler()
    {
            LOG_INF("SensorDeactivateHandler");
            StopSensorTimer();
    }
    
    void AppTask::SensorMeasureHandler()
    {
            LOG_INF("SensorMeasureHandler");
            chip::app::Clusters::TemperatureMeasurement::Attributes::MeasuredValue::Set(
                    /* endpoint ID */ 1, /* temperature in 0.01*C */ int16_t(rand() % 5000));
    }

    The tutorial puts the event handlers into app_task.cpp.

Children
Related