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

Zigbee readManufacturer fail leads to reboot #10777

Closed
1 task done
AndunHH opened this issue Dec 23, 2024 · 5 comments · Fixed by #10817
Closed
1 task done

Zigbee readManufacturer fail leads to reboot #10777

AndunHH opened this issue Dec 23, 2024 · 5 comments · Fixed by #10817
Assignees
Labels
Area: Zigbee Issues and Feature Request about Zigbee Status: In Progress ⚠️ Issue is in progress

Comments

@AndunHH
Copy link

AndunHH commented Dec 23, 2024

Board

seeed xiao esp32-c6

Device Description

I use the Seeeduino-XIAO-Expansion-Board/

Hardware Configuration

nothing added

Version

latest master (checkout manually)

IDE Name

Arduino IDE 2 and pioarduino

Operating System

Ubuntu 2024.04

Flash frequency

80Mhz

PSRAM enabled

yes

Upload speed

921600

Description

When calling zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr) within the zigbee Switch example the manufacturer is reported.

Unfortunately, the timeout within this function leads to a rebooting device, because it is not handled, when the device is not answering.

I expect, that the function readManufacturer() returns a "n/a" or likewise, but is not resetting the controller, when no information could be obtained.

I tried to avoid the problem by checking zbSwitch.bound() before calling readManufacturer(), but this doesn't solve the problem, because bound() doesn't know, that I just unplugged the light.

Sketch

// Copyright 2024 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * @brief This example demonstrates simple Zigbee light switch.
 *
 * The example demonstrates how to use Zigbee library to control a light bulb.
 * The light bulb is a Zigbee end device, which is controlled by a Zigbee coordinator (Switch).
 * Button switch and Zigbee runs in separate tasks.
 *
 * Proper Zigbee mode must be selected in Tools->Zigbee mode
 * and also the correct partition scheme must be selected in Tools->Partition Scheme.
 *
 * Please check the README.md for instructions and more detailed description.
 *
 * Created by Jan Procházka (https://github.com/P-R-O-C-H-Y/)
 */

#ifndef ZIGBEE_MODE_ZCZR
#error "Zigbee coordinator mode is not selected in Tools->Zigbee mode"
#endif

#include "Zigbee.h"

/* Zigbee switch configuration */
#define SWITCH_ENDPOINT_NUMBER 5

#define GPIO_INPUT_IO_TOGGLE_SWITCH BOOT_PIN
#define PAIR_SIZE(TYPE_STR_PAIR)    (sizeof(TYPE_STR_PAIR) / sizeof(TYPE_STR_PAIR[0]))

typedef enum {
  SWITCH_ON_CONTROL,
  SWITCH_OFF_CONTROL,
  SWITCH_ONOFF_TOGGLE_CONTROL,
  SWITCH_LEVEL_UP_CONTROL,
  SWITCH_LEVEL_DOWN_CONTROL,
  SWITCH_LEVEL_CYCLE_CONTROL,
  SWITCH_COLOR_CONTROL,
} SwitchFunction;

typedef struct {
  uint8_t pin;
  SwitchFunction func;
} SwitchData;

typedef enum {
  SWITCH_IDLE,
  SWITCH_PRESS_ARMED,
  SWITCH_PRESS_DETECTED,
  SWITCH_PRESSED,
  SWITCH_RELEASE_DETECTED,
} SwitchState;

static SwitchData buttonFunctionPair[] = {{GPIO_INPUT_IO_TOGGLE_SWITCH, SWITCH_ONOFF_TOGGLE_CONTROL}};

ZigbeeSwitch zbSwitch = ZigbeeSwitch(SWITCH_ENDPOINT_NUMBER);

/********************* Zigbee functions **************************/
static void onZbButton(SwitchData *button_func_pair) {
  if (button_func_pair->func == SWITCH_ONOFF_TOGGLE_CONTROL) {
    // Send toggle command to the light
    Serial.println("Toggling light");
    zbSwitch.lightToggle();
  }
}

/********************* GPIO functions **************************/
static QueueHandle_t gpio_evt_queue = NULL;

static void IRAM_ATTR onGpioInterrupt(void *arg) {
  xQueueSendFromISR(gpio_evt_queue, (SwitchData *)arg, NULL);
}

static void enableGpioInterrupt(bool enabled) {
  for (int i = 0; i < PAIR_SIZE(buttonFunctionPair); ++i) {
    if (enabled) {
      enableInterrupt((buttonFunctionPair[i]).pin);
    } else {
      disableInterrupt((buttonFunctionPair[i]).pin);
    }
  }
}

/********************* Arduino functions **************************/
void setup() {
  Serial.begin(115200);

  //Optional: set Zigbee device name and model
  zbSwitch.setManufacturerAndModel("Espressif", "ZigbeeSwitch");

  //Optional to allow multiple light to bind to the switch
  zbSwitch.allowMultipleBinding(true);

  //Add endpoint to Zigbee Core
  Serial.println("Adding ZigbeeSwitch endpoint to Zigbee Core");
  Zigbee.addEndpoint(&zbSwitch);

  //Open network for 180 seconds after boot
  Zigbee.setRebootOpenNetwork(180);

  // Init button switch
  for (int i = 0; i < PAIR_SIZE(buttonFunctionPair); i++) {
    pinMode(buttonFunctionPair[i].pin, INPUT_PULLUP);
    /* create a queue to handle gpio event from isr */
    gpio_evt_queue = xQueueCreate(10, sizeof(SwitchData));
    if (gpio_evt_queue == 0) {
      Serial.println("Queue creating failed, rebooting...");
      ESP.restart();
    }
    attachInterruptArg(buttonFunctionPair[i].pin, onGpioInterrupt, (void *)(buttonFunctionPair + i), FALLING);
  }

  // When all EPs are registered, start Zigbee with ZIGBEE_COORDINATOR mode
  if (!Zigbee.begin(ZIGBEE_COORDINATOR)) {
    Serial.println("Zigbee failed to start!");
    Serial.println("Rebooting...");
    ESP.restart();
  }

  Serial.println("Waiting for Light to bound to the switch");
  //Wait for switch to bound to a light:
  while (!zbSwitch.bound()) {
    Serial.printf(".");
    delay(500);
  }

  // Optional: List all bound devices and read manufacturer and model name
  std::list<zb_device_params_t *> boundLights = zbSwitch.getBoundDevices();
  for (const auto &device : boundLights) {
    Serial.printf("Device on endpoint %d, short address: 0x%x\r\n", device->endpoint, device->short_addr);
    Serial.printf(
      "IEEE Address: %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X\r\n", device->ieee_addr[7], device->ieee_addr[6], device->ieee_addr[5], device->ieee_addr[4],
      device->ieee_addr[3], device->ieee_addr[2], device->ieee_addr[1], device->ieee_addr[0]
    );
    Serial.printf("Light manufacturer: %s\r\n", zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr));
    Serial.printf("Light model: %s\r\n", zbSwitch.readModel(device->endpoint, device->short_addr, device->ieee_addr));
  }

  Serial.println();
}

void loop() {
  // Handle button switch in loop()
  uint8_t pin = 0;
  SwitchData buttonSwitch;
  static SwitchState buttonState = SWITCH_IDLE;
  bool eventFlag = false;

  /* check if there is any queue received, if yes read out the buttonSwitch */
  if (xQueueReceive(gpio_evt_queue, &buttonSwitch, 200)) {
    pin = buttonSwitch.pin;
    enableGpioInterrupt(false);
    eventFlag = true;
  }
  while (eventFlag) {
    bool value = digitalRead(pin);
    switch (buttonState) {
      case SWITCH_IDLE:           buttonState = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_IDLE; break;
      case SWITCH_PRESS_DETECTED: buttonState = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_RELEASE_DETECTED; break;
      case SWITCH_RELEASE_DETECTED:
        buttonState = SWITCH_IDLE;
        /* callback to button_handler */
        (*onZbButton)(&buttonSwitch);
        break;
      default: break;
    }
    if (buttonState == SWITCH_IDLE) {
      enableGpioInterrupt(true);
      eventFlag = false;
      break;
    }
    vTaskDelay(10 / portTICK_PERIOD_MS);
  }

  // print the bound lights every 10 seconds
  static uint32_t lastPrint = 0;
  if (millis() - lastPrint > 10000) {
    lastPrint = millis();
    zbSwitch.printBoundDevices(Serial);
        // Optional: List all bound devices and read manufacturer and model name
    std::list<zb_device_params_t *> boundLights = zbSwitch.getBoundDevices();
    for (const auto &device : boundLights) {
      Serial.printf("Light manufacturer: %s\r\n", zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr));
    }
  }
}

Debug Message

The ExceptionDecoder is unfortunately not running on my new ubuntu. here is the debugging:

Waiting for Light to bound to the switch
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[   856][I][ZigbeeCore.cpp:326] esp_zb_app_signal_handler(): Network(0x5d24) is open for 180 seconds
[  7647][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0x264) src endpoint(1) to dst endpoint(5) cluster(0x0)
[  7648][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(134), cluster(0x0), attribute(0x4), type(0x0), value(0)
[ 10395][E][ZigbeeEP.cpp:148] readManufacturer(): Error while reading manuGuru Meditation Error: Core  0 panic'ed (Load access fault). Exception was unhandled.

Other Steps to Reproduce

In the pasted example I changed the xQueueReceive timeout in line 161 to 200 ticks to get to the end of the loop().
The really interesting part, is that I added the for loop in line 193 from the printBoundDevice function.

I'm using the latest master for arduino-esp32: commit 9eb7dc6

The behavior is independent of a factory-reset or not.

When the light is not available the readManufacturer runs into the unhandled exception.

I can reproduce this problems when
a) I disconnected the light bulb after successfull connection and toggling.
b) if the esp32c6 restarts and remembers the bound devices, but the actual reconnection to the light needs some time, but I'm already asking for a manufacturer.

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.
@AndunHH AndunHH added the Status: Awaiting triage Issue is waiting for triage label Dec 23, 2024
@P-R-O-C-H-Y P-R-O-C-H-Y self-assigned this Dec 23, 2024
@SuGlider SuGlider added the Area: Zigbee Issues and Feature Request about Zigbee label Dec 29, 2024
@P-R-O-C-H-Y
Copy link
Member

@AndunHH Thank you for the report, I will work on fixing it.

@P-R-O-C-H-Y P-R-O-C-H-Y added Status: In Progress ⚠️ Issue is in progress and removed Status: Awaiting triage Issue is waiting for triage labels Jan 6, 2025
@P-R-O-C-H-Y
Copy link
Member

@AndunHH Can you test with this changed code in the example? Just replace the part of listing devices:

  // Optional: List all bound devices and read manufacturer and model name
  std::list<zb_device_params_t *> boundLights = zbSwitch.getBoundDevices();
  for (const auto &device : boundLights) {
    Serial.printf("Device on endpoint %d, short address: 0x%x\r\n", device->endpoint, device->short_addr);
    Serial.printf(
      "IEEE Address: %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X\r\n", device->ieee_addr[7], device->ieee_addr[6], device->ieee_addr[5], device->ieee_addr[4],
      device->ieee_addr[3], device->ieee_addr[2], device->ieee_addr[1], device->ieee_addr[0]
    );
    char* manufacturer = zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr);
    if(manufacturer != nullptr) {
      Serial.printf("Light manufacturer: %s\r\n", zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr));
    }
    char* model = zbSwitch.readModel(device->endpoint, device->short_addr, device->ieee_addr);
    if(model != nullptr) {
      Serial.printf("Light model: %s\r\n", zbSwitch.readModel(device->endpoint, device->short_addr, device->ieee_addr));
    }
  }

@AndunHH
Copy link
Author

AndunHH commented Jan 6, 2025

Thanks for the fast solution approach. The first response: Yes, the device is not rebooting endlessly because of the readModel() or readManufacturer().

But sadly, it's also not working as expected.

I refer the millisecond counter from the log file:

  1. After ca. 12 seconds the ikea plug was found and bound.
  2. At 30s the device trys to read the manfacturer and model successfully (see 30515 and 30668). Here the list of bound devices is searched for TWO devices: short adress 0x0 and 0xfa2d.
  3. At 35s I toggle the plug successfully four times.
  4. I observe the behavior...
  5. After 60s I unplug the outlet and the device is not able to get the information, see 60310 to 70290.
  6. After 75s I reconnect the plug, see 75205 and from the debugging we see, that the information is in general present. Unfortunately, asking for this information in our application is not working: At 77594 the list of bound devices is checked again and contains THREE devices now: 0x0, 0xfa2d and again 0xfa2d. Sadly, none of them reports the manufacturer to our application (only the debug info is visible).
  7. I let the application run to see if something changes after 180s with the open network, but this is not the case.

Therefore: reading the manufacturer in the application is not possible after un- and replugging the outlet.

Here is the complete log and below my actual sketch:

complete log
=========== Before Setup Start ===========
Chip Info:
------------------------------------------
  Model             : ESP32-C6
  Package           : 1
  Revision          : 0.01
  Cores             : 1
  CPU Frequency     : 160 MHz
  XTAL Frequency    : 40 MHz
  Features Bitfield : 0x00000052
  Embedded Flash    : No
  Embedded PSRAM    : No
  2.4GHz WiFi       : Yes
  Classic BT        : No
  BT Low Energy     : Yes
  IEEE 802.15.4     : Yes
------------------------------------------
INTERNAL Memory Info:
------------------------------------------
  Total Size        :   446348 B ( 435.9 KB)
  Free Bytes        :   414488 B ( 404.8 KB)
  Allocated Bytes   :    24652 B (  24.1 KB)
  Minimum Free Bytes:   409676 B ( 400.1 KB)
  Largest Free Block:   376820 B ( 368.0 KB)
------------------------------------------
Flash Info:
------------------------------------------
  Chip Size         :  4194304 B (4 MB)
  Block Size        :    65536 B (  64.0 KB)
  Sector Size       :     4096 B (   4.0 KB)
  Page Size         :      256 B (   0.2 KB)
  Bus Speed         : 40 MHz
  Bus Mode          : QIO
------------------------------------------
Partitions Info:
------------------------------------------
                nvs : addr: 0x00009000, size:    20.0 KB, type: DATA, subtype: NVS
            otadata : addr: 0x0000E000, size:     8.0 KB, type: DATA, subtype: OTA
               app0 : addr: 0x00010000, size:  1280.0 KB, type:  APP, subtype: OTA_0
               app1 : addr: 0x00150000, size:  1280.0 KB, type:  APP, subtype: OTA_1
             spiffs : addr: 0x00290000, size:  1388.0 KB, type: DATA, subtype: SPIFFS
         zb_storage : addr: 0x003EB000, size:    16.0 KB, type: DATA, subtype: FAT
             zb_fct : addr: 0x003EF000, size:     4.0 KB, type: DATA, subtype: FAT
           coredump : addr: 0x003F0000, size:    64.0 KB, type: DATA, subtype: COREDUMP
------------------------------------------
Software Info:
------------------------------------------
  Compile Date/Time : Jan  6 2025 19:40:26
  Compile Host OS   : linux
  ESP-IDF Version   : v5.3.1-638-ga0f798cfc4-dirty
  Arduino Version   : 3.1.0
------------------------------------------
Board Info:
------------------------------------------
  Arduino Board     : XIAO_ESP32C6
  Arduino Variant   : XIAO_ESP32C6
  Arduino FQBN      : espressif:arduino-esp32:XIAO_ESP32C6:UploadSpeed=921600,CDCOnBoot=cdc,CPUFreq=160,FlashFreq=80,FlashMode=qio,FlashSize=4M,PartitionScheme=zigbee,DebugLevel=verbose,EraseFlash=none,JTAGAdapter=default,ZigbeeMode=zczr
============ Before Setup End ============
[  1750][I][esp32-hal-periman.c:141] perimanSetPinBus(): Pin 12 already has type USB_DM (38) with bus 0x408102d0
[  1751][I][esp32-hal-periman.c:141] perimanSetPinBus(): Pin 13 already has type USB_DP (39) with bus 0x408102d0
Adding ZigbeeSwitch endpoint to Zigbee Core
[  1752][D][ZigbeeCore.cpp:84] addEndpoint(): Endpoint: 5, Device ID: 0x0000
[  1752][V][esp32-hal-periman.c:235] perimanSetBusDeinit(): Deinit function for type GPIO (1) successfully set to 0x42003c50
[  1753][V][esp32-hal-periman.c:160] perimanSetPinBus(): Pin 9 successfully set to type GPIO (1) with bus 0xa
[  1754][D][ZigbeeCore.cpp:123] zigbeeInit(): Initialize Zigbee stack
[  1791][D][ZigbeeCore.cpp:130] zigbeeInit(): Register all Zigbee EPs in list
[  1792][I][ZigbeeCore.cpp:138] zigbeeInit(): List of registered Zigbee EPs:
[  1792][I][ZigbeeCore.cpp:140] zigbeeInit(): Device type: General On/Off switch, Endpoint: 5, Device ID: 0x0000
[  1803][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: ZDO Config Ready (0x17), status: ESP_FAIL
[  1804][I][ZigbeeCore.cpp:219] esp_zb_app_signal_handler(): Zigbee stack initialized
[  1809][I][ZigbeeCore.cpp:328] esp_zb_app_signal_handler(): Network(0xb7d4) closed, devices joining not allowed.
[  1810][I][ZigbeeCore.cpp:225] esp_zb_app_signal_handler(): Device started up in non factory-reset mode
[  1811][I][ZigbeeCore.cpp:238] esp_zb_app_signal_handler(): Device rebooted
[  1812][I][ZigbeeCore.cpp:242] esp_zb_app_signal_handler(): Opening network for joining for 180 seconds
[  1812][D][ZigbeeCore.cpp:466] searchBindings(): Requesting binding table for address 0x0000
[  1814][D][ZigbeeCore.cpp:406] bindingTableCb(): Binding table callback for address 0x0000 with status 0
[  1815][D][ZigbeeCore.cpp:409] bindingTableCb(): Binding table info: total 1, index 0, count 1
[  1815][D][ZigbeeCore.cpp:419] bindingTableCb(): Binding table record: src_endp 5, dst_endp 1, cluster_id 0x0006, dst_addr_mode 3
[  1816][D][ZigbeeCore.cpp:436] bindingTableCb(): Device bound to EP 5 -> device endpoint: 1, short addr: 0x0000, ieee addr: 84:71:27:FF:FE:DC:28:D0
[  1817][D][ZigbeeCore.cpp:457] bindingTableCb(): Filling bounded devices finished
Waiting for Light to bound to the switch
=========== After Setup Start ============
INTERNAL Memory Info:
------------------------------------------
  Total Size        :   446348 B ( 435.9 KB)
  Free Bytes        :   384416 B ( 375.4 KB)
  Allocated Bytes   :    53940 B (  52.7 KB)
  Minimum Free Bytes:   384416 B ( 375.4 KB)
  Largest Free Block:   352244 B ( 344.0 KB)
------------------------------------------
GPIO Info:
------------------------------------------
  GPIO : BUS_TYPE[bus/unit][chan]
  --------------------------------------  
     3 : GPIO
     9 : GPIO
    12 : USB_DM
    13 : USB_DP
    14 : GPIO
    16 : UART_TX[0]
    17 : UART_RX[0]
============ After Setup End =============
[  2280][I][ZigbeeCore.cpp:326] esp_zb_app_signal_handler(): Network(0xb7d4) is open for 180 seconds
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 11946][I][ZigbeeCore.cpp:298] esp_zb_app_signal_handler(): New device commissioned or rejoined (short: 0xfa2d)
[ 11946][V][ZigbeeCore.cpp:302] esp_zb_app_signal_handler(): Device capabilities: 0x8e
[ 12011][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x0) with status 0x84
[ 12030][D][ZigbeeSwitch.cpp:31] findCb(): Found light endpoint
[ 12030][I][ZigbeeSwitch.cpp:44] findCb(): Try to bind On/Off
[ 12034][I][ZigbeeSwitch.cpp:19] bindCb(): Bound successfully!
[ 12035][I][ZigbeeSwitch.cpp:22] bindCb(): The light originating from address(0xfa2d) on endpoint(1)
[ 20063][E][ZigbeeEP.cpp:148] readManufacturer(): Error while reading manufacturer
[ 20128][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x0) with status 0x84
[ 20809][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[ 30063][E][ZigbeeEP.cpp:184] readModel(): Error while reading model
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 30135][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30136][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 30136][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 30210][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30211][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 30212][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 30283][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30284][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 30284][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 30360][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30361][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 30362][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 30440][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30441][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 30442][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 30513][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30514][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 30515][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 30585][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30586][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 30587][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 30666][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 30667][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 30668][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Toggling light
[ 35786][V][ZigbeeSwitch.cpp:72] lightToggle(): Sending 'light toggle' command
[ 35862][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x6) with status 0x0
Toggling light
[ 36840][V][ZigbeeSwitch.cpp:72] lightToggle(): Sending 'light toggle' command
[ 36914][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x6) with status 0x0
Toggling light
[ 37602][V][ZigbeeSwitch.cpp:72] lightToggle(): Sending 'light toggle' command
[ 37678][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x6) with status 0x0
Toggling light
[ 38245][V][ZigbeeSwitch.cpp:72] lightToggle(): Sending 'light toggle' command
[ 38318][V][ZigbeeHandlers.cpp:134] zb_cmd_default_resp_handler(): Received default response: from address(0xfa2d), src_endpoint(1) to dst_endpoint(5), cluster(0x6) with status 0x0
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 40322][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40323][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 40324][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 40393][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40394][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 40395][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 40465][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40466][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 40467][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 40542][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40543][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 40544][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 40613][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40614][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 40615][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 40694][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40695][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 40695][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 40769][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40770][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 40771][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 40850][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 40851][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 40852][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 50349][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50350][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 50351][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 50420][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50421][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 50422][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 50496][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50497][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 50497][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 50569][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50570][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 50571][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 50640][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50641][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 50642][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 50713][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50714][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 50715][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Light manufacturer: IKEA of Sweden
[ 50785][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50786][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 50787][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 50862][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 50863][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 50864][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Light model: TRADFRI control outlet
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 60310][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[ 63311][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[ 66311][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[ 70290][E][ZigbeeEP.cpp:148] readManufacturer(): Error while reading manufacturer
[ 75205][I][ZigbeeCore.cpp:298] esp_zb_app_signal_handler(): New device commissioned or rejoined (short: 0xfa2d)
[ 75205][V][ZigbeeCore.cpp:302] esp_zb_app_signal_handler(): Device capabilities: 0x8e
[ 77235][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77236][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 77237][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 77252][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77253][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 77254][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 77277][D][ZigbeeSwitch.cpp:31] findCb(): Found light endpoint
[ 77277][I][ZigbeeSwitch.cpp:44] findCb(): Try to bind On/Off
[ 77281][I][ZigbeeSwitch.cpp:19] bindCb(): Bound successfully!
[ 77282][I][ZigbeeSwitch.cpp:22] bindCb(): The light originating from address(0xfa2d) on endpoint(1)
[ 77315][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77316][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 77317][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 77331][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77332][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 77333][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 77594][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77594][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 77595][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 77617][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77618][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 77619][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 77668][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77669][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 77670][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 77693][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77694][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 77695][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 77742][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77743][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 77744][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 77768][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 77769][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 77770][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 79868][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 87645][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87646][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 87647][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 87663][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87664][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 87665][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 87722][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87723][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 87724][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 87747][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87748][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 87749][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 87797][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87798][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 87799][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 87824][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 87825][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 87826][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 97696][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97697][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 97698][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 97716][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97717][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 97718][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 97764][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97765][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 97766][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[ 97787][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97788][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 97789][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[ 97834][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97835][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[ 97835][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[ 97859][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[ 97860][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[ 97861][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[107733][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107734][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[107735][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[107762][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107763][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[107764][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[107814][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107814][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[107815][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[107831][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107832][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[107833][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[107887][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107888][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[107889][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[107900][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[107901][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[107901][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[117789][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117790][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[117791][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[117816][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117817][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[117818][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[117864][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117865][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[117865][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[117891][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117892][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[117893][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[117937][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117938][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[117939][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[117963][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[117964][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[117965][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[127838][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[127839][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[127839][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[127856][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[127857][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[127858][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[127908][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[127909][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[127910][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[127928][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[127929][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[127930][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[127980][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[127981][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[127982][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[128003][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[128004][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[128004][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[137879][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[137880][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[137881][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[137918][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[137918][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[137919][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[137969][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[137970][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[137971][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[137996][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[137997][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[137998][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[138042][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[138043][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[138044][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[138067][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[138068][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[138068][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[147941][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[147942][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[147943][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[147971][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[147971][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[147972][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[148025][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[148026][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[148027][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[148046][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[148047][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[148048][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[148097][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[148098][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[148099][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[148122][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[148123][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[148124][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[157997][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[157998][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[157999][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[158015][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[158016][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[158017][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[158072][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[158073][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[158074][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[158098][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[158099][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[158100][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[158148][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[158149][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[158150][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[158175][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[158176][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[158177][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[168046][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168046][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[168047][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[168068][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168069][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[168070][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[168125][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168126][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[168127][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[168146][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168147][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[168148][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[168193][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168194][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[168195][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[168215][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[168216][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[168217][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[178091][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178092][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[178093][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[178110][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178111][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[178112][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[178166][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178167][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[178168][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[178194][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178195][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[178195][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[178240][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178241][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[178242][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[178272][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[178273][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[178273][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[182280][I][ZigbeeCore.cpp:328] esp_zb_app_signal_handler(): Network(0xb7d4) closed, devices joining not allowed.
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[188140][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188141][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[188142][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[188157][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188158][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[188159][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[188214][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188215][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[188216][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[188246][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188247][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[188248][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[188291][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188292][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[188293][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[188317][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[188318][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[188319][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[198189][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198190][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[198191][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[198209][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198210][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[198211][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[198264][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198265][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[198266][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[198295][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198296][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[198297][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[198342][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198343][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[198344][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[198370][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[198371][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[198372][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[208193][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[208211][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[211193][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[211211][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[214194][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[214212][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[218172][E][ZigbeeEP.cpp:184] readModel(): Error while reading model
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[221827][I][ZigbeeCore.cpp:298] esp_zb_app_signal_handler(): New device commissioned or rejoined (short: 0xfa2d)
[221828][V][ZigbeeCore.cpp:302] esp_zb_app_signal_handler(): Device capabilities: 0x8e
[226829][D][ZigbeeSwitch.cpp:47] findCb(): No light endpoint found
[228015][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[228173][E][ZigbeeEP.cpp:148] readManufacturer(): Error while reading manufacturer
[228301][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228302][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228303][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[228329][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228330][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[228330][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[228360][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228361][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228362][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[228425][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228426][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228427][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[228437][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228438][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[228439][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[228640][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228641][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228642][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[228669][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228670][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[228671][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[228724][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228725][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228726][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[228750][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228750][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[228751][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[228776][V][ZigbeeCore.cpp:339] esp_zb_app_signal_handler(): ZDO signal: NLME Status Indication (0x32), status: ESP_OK
[228802][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[228803][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[228804][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[229904][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[229905][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[229906][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[231245][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[231246][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[231247][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[231827][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[231828][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[231828][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[238701][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238702][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[238703][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[238723][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238724][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[238724][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[238769][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238770][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[238771][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[238792][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238793][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[238794][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[238843][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238844][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[238844][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[238864][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[238865][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[238866][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
Trying to read every 10s
Device on endpoint 1, short address: 0x0
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[248743][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248744][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[248745][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[248767][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248768][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[248769][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[248819][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248820][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[248821][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
Device on endpoint 1, short address: 0xfa2d
IEEE Address: 84:71:27:FF:FE:DC:28:D0
[248843][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248844][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[248845][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
[248895][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248895][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x4), type(0x42), value(14)
[248896][I][ZigbeeEP.cpp:220] zbReadBasicCluster(): Peer Manufacturer is "IKEA of Sweden"
[248917][V][ZigbeeHandlers.cpp:82] zb_cmd_read_attr_resp_handler(): Read attribute response: from address(0xfa2d) src endpoint(1) to dst endpoint(5) cluster(0x0)
[248918][V][ZigbeeHandlers.cpp:91] zb_cmd_read_attr_resp_handler(): Read attribute response: status(0), cluster(0x0), attribute(0x5), type(0x42), value(22)
[248919][I][ZigbeeEP.cpp:229] zbReadBasicCluster(): Peer Model is "TRADFRI control outlet"
My Sketch
// Copyright 2024 Espressif Systems (Shanghai) PTE LTD
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * @brief This example demonstrates simple Zigbee light switch.
 *
 * The example demonstrates how to use Zigbee library to control a light bulb.
 * The light bulb is a Zigbee end device, which is controlled by a Zigbee coordinator (Switch).
 * Button switch and Zigbee runs in separate tasks.
 *
 * Proper Zigbee mode must be selected in Tools->Zigbee mode
 * and also the correct partition scheme must be selected in Tools->Partition Scheme.
 *
 * Please check the README.md for instructions and more detailed description.
 *
 * Created by Jan Procházka (https://github.com/P-R-O-C-H-Y/)
 */

#ifndef ZIGBEE_MODE_ZCZR
#error "Zigbee coordinator mode is not selected in Tools->Zigbee mode"
#endif

#include "Zigbee.h"

/* Zigbee switch configuration */
#define SWITCH_ENDPOINT_NUMBER 5

#define GPIO_INPUT_IO_TOGGLE_SWITCH BOOT_PIN
#define PAIR_SIZE(TYPE_STR_PAIR)    (sizeof(TYPE_STR_PAIR) / sizeof(TYPE_STR_PAIR[0]))

typedef enum {
  SWITCH_ON_CONTROL,
  SWITCH_OFF_CONTROL,
  SWITCH_ONOFF_TOGGLE_CONTROL,
  SWITCH_LEVEL_UP_CONTROL,
  SWITCH_LEVEL_DOWN_CONTROL,
  SWITCH_LEVEL_CYCLE_CONTROL,
  SWITCH_COLOR_CONTROL,
} SwitchFunction;

typedef struct {
  uint8_t pin;
  SwitchFunction func;
} SwitchData;

typedef enum {
  SWITCH_IDLE,
  SWITCH_PRESS_ARMED,
  SWITCH_PRESS_DETECTED,
  SWITCH_PRESSED,
  SWITCH_RELEASE_DETECTED,
} SwitchState;

static SwitchData buttonFunctionPair[] = {{GPIO_INPUT_IO_TOGGLE_SWITCH, SWITCH_ONOFF_TOGGLE_CONTROL}};

ZigbeeSwitch zbSwitch = ZigbeeSwitch(SWITCH_ENDPOINT_NUMBER);

/********************* Zigbee functions **************************/
static void onZbButton(SwitchData *button_func_pair) {
  if (button_func_pair->func == SWITCH_ONOFF_TOGGLE_CONTROL) {
    // Send toggle command to the light
    Serial.println("Toggling light");
    zbSwitch.lightToggle();
  }
}

/********************* GPIO functions **************************/
static QueueHandle_t gpio_evt_queue = NULL;

static void IRAM_ATTR onGpioInterrupt(void *arg) {
  xQueueSendFromISR(gpio_evt_queue, (SwitchData *)arg, NULL);
}

static void enableGpioInterrupt(bool enabled) {
  for (int i = 0; i < PAIR_SIZE(buttonFunctionPair); ++i) {
    if (enabled) {
      enableInterrupt((buttonFunctionPair[i]).pin);
    } else {
      disableInterrupt((buttonFunctionPair[i]).pin);
    }
  }
}

/********************* Arduino functions **************************/
void setup() {
  Serial.begin(115200);

  //Optional: set Zigbee device name and model
  zbSwitch.setManufacturerAndModel("Espressif", "ZigbeeSwitch");

  //Optional to allow multiple light to bind to the switch
  zbSwitch.allowMultipleBinding(true);

  //Add endpoint to Zigbee Core
  Serial.println("Adding ZigbeeSwitch endpoint to Zigbee Core");
  Zigbee.addEndpoint(&zbSwitch);

  //Open network for 180 seconds after boot
  Zigbee.setRebootOpenNetwork(180);

  // Init button switch
  for (int i = 0; i < PAIR_SIZE(buttonFunctionPair); i++) {
    pinMode(buttonFunctionPair[i].pin, INPUT_PULLUP);
    /* create a queue to handle gpio event from isr */
    gpio_evt_queue = xQueueCreate(10, sizeof(SwitchData));
    if (gpio_evt_queue == 0) {
      Serial.println("Queue creating failed, rebooting...");
      ESP.restart();
    }
    attachInterruptArg(buttonFunctionPair[i].pin, onGpioInterrupt, (void *)(buttonFunctionPair + i), FALLING);
  }

  // When all EPs are registered, start Zigbee with ZIGBEE_COORDINATOR mode
  if (!Zigbee.begin(ZIGBEE_COORDINATOR)) {
    Serial.println("Zigbee failed to start!");
    Serial.println("Rebooting...");
    ESP.restart();
  }

  Serial.println("Waiting for Light to bound to the switch");
  //Wait for switch to bound to a light:
  while (!zbSwitch.bound()) {
    Serial.printf(".");
    delay(500);
  }

}

void loop() {
  // Handle button switch in loop()
  uint8_t pin = 0;
  SwitchData buttonSwitch;
  static SwitchState buttonState = SWITCH_IDLE;
  bool eventFlag = false;

  /* check if there is any queue received, if yes read out the buttonSwitch */
  if (xQueueReceive(gpio_evt_queue, &buttonSwitch, 200)) {
    pin = buttonSwitch.pin;
    enableGpioInterrupt(false);
    eventFlag = true;
  }
  while (eventFlag) {
    bool value = digitalRead(pin);
    switch (buttonState) {
      case SWITCH_IDLE:           buttonState = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_IDLE; break;
      case SWITCH_PRESS_DETECTED: buttonState = (value == LOW) ? SWITCH_PRESS_DETECTED : SWITCH_RELEASE_DETECTED; break;
      case SWITCH_RELEASE_DETECTED:
        buttonState = SWITCH_IDLE;
        /* callback to button_handler */
        (*onZbButton)(&buttonSwitch);
        break;
      default: break;
    }
    if (buttonState == SWITCH_IDLE) {
      enableGpioInterrupt(true);
      eventFlag = false;
      break;
    }
    vTaskDelay(10 / portTICK_PERIOD_MS);
  }

  // print the bound lights every 10 seconds
  static uint32_t lastPrint = 0;
  if (millis() - lastPrint > 10000) {
    lastPrint = millis();

  // Optional: List all bound devices and read manufacturer and model name
  Serial.println("Trying to read every 10s");
  std::list<zb_device_params_t *> boundLights = zbSwitch.getBoundDevices();
  for (const auto &device : boundLights) {
    Serial.printf("Device on endpoint %d, short address: 0x%x\r\n", device->endpoint, device->short_addr);
    Serial.printf(
      "IEEE Address: %02X:%02X:%02X:%02X:%02X:%02X:%02X:%02X\r\n", device->ieee_addr[7], device->ieee_addr[6], device->ieee_addr[5], device->ieee_addr[4],
      device->ieee_addr[3], device->ieee_addr[2], device->ieee_addr[1], device->ieee_addr[0]
    );
    char* manufacturer = zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr);
    if(manufacturer != nullptr) {
      Serial.printf("Light manufacturer: %s\r\n", zbSwitch.readManufacturer(device->endpoint, device->short_addr, device->ieee_addr));
    }
    char* model = zbSwitch.readModel(device->endpoint, device->short_addr, device->ieee_addr);
    if(model != nullptr) {
      Serial.printf("Light model: %s\r\n", zbSwitch.readModel(device->endpoint, device->short_addr, device->ieee_addr));
    }
  }

  }
}

@P-R-O-C-H-Y
Copy link
Member

@AndunHH The reading there is duplicated, I have fixed it in the PR I opened.
I was able to reproduce the issue that the device is added multiple times to the bounded device list. I will add a fix for it. Thank you for nice report.

@P-R-O-C-H-Y
Copy link
Member

@AndunHH I have added a fix to the PR #10817

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Zigbee Issues and Feature Request about Zigbee Status: In Progress ⚠️ Issue is in progress
Projects
None yet
3 participants