I am using VScode with esp-idf and I have a code problem and I think libraries I want to connect an 868 MHz modem to esp32c6 and connect a wireless PIR Sensor. The 868 MHz module is an RS485 transcelerator eletechsup RT18A01.
And here how I wanted to connect the detector via zigbee
#include < RadioLib.h >
// Pin czujnika ruchu
const int motionSensorPin = 2);
// Pin czujnika drzwi
const int doorSensorPin = 3;
// 868 MHz pinów modułu radiowego
const int radioModuleSSPin = 5;
const int radioModuleRSTPin = 4;
// Częstotliwość modułu radiowego i częstotliwość transmisji danych
const uint32_t częstotliwość = 868000000; // 868 MHz
const uint32_t dataRate = 9600;
// Obiekt modułu radiowego
Radio SX1278 = nowy moduł(RADIO_CS_PIN, RADIO_IRQ_PIN, RADIO_RST_PIN, RADIO_DATAREADY_PIN, RADIO_DIOO0_PIN);
nieważny skonfigurować() {
Seryjny.zacząć(9600);
pinMode(motionSensorPin, WZÓR);
pinMode(doorSensorPin, WZÓR);
radio.init();
radio.setFrequency(częstotliwość);
radio.setDatarate(dataRate);
radio.setRxConfig(RadioModemFSK);
radio.setTxConfig(RadioModemFSK, 10);
}
nieważny pętla() {
int motionSensorStatus = cyfrowyCzytaj(motionSensorPin);
int doorSensorStatus = cyfrowyCzytaj(doorSensorPin);
jeśli (motionSensorStatus = = WYSOKI) {
sendMessage("„Wykryto ruch!”!");
opóźnienie(1000); // Opóźnienie w celu uniknięcia wielu wyzwalaczy
}
jeśli (doorSensorStatus = = WYSOKI) {
sendMessage("„Drzwi się otworzyły!”!");
opóźnienie(1000); // Opóźnienie w celu uniknięcia wielu wyzwalaczy
}
}
nieważny sendMessage(const char* wiadomość) {
Seryjny.druk(wiadomość);
radio.startTransmit();
radio.writeFIFO((bajt*)wiadomość, strlen(wiadomość));
radio.transmisja();
}
* Executing task: /home/michal/.espressif/python_env/idf5.1_py3.10_env/bin/python /home/michal/esp/esp-idf/tools/idf_size.py /home/michal/project-name/build/project-name.map
Total sizes:
Used stat D/IRAM: 44876 bytes ( 407236 remain, 9.9% used)
.data size: 4188 bytes
.bss size: 3720 bytes
.text size: 36968 bytes
Used Flash size : 82358 bytes
.text: 53030 bytes
.rodata: 29072 bytes
Total image size: 123514 bytes (.bin may be padded larger)
* Executing task: ninja
[4/904] Generating ../../partition_table/partition-table.bin
Partition table binary generated. Contents:
*******************************************************************************
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
*******************************************************************************
[209/904] Performing configure step for 'bootloader'
-- Found Git: /usr/bin/git (found version "2.40.1")
-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-gcc
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building ESP-IDF components for target esp32c6
-- Project sdkconfig file /home/michal/project-name/sdkconfig
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of time_t
-- Check size of time_t - done
-- Adding linker script /home/michal/esp/esp-idf/components/soc/esp32c6/ld/esp32c6.peripherals.ld
-- App "bootloader" version: v5.1-dirty
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.api.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.rvfp.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.newlib.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.phy.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.wdt.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.version.ld
-- Adding linker script /home/michal/esp/esp-idf/components/bootloader/subproject/main/ld/esp32c6/bootloader.ld
-- Adding linker script /home/michal/esp/esp-idf/components/bootloader/subproject/main/ld/esp32c6/bootloader.rom.ld
-- Components: bootloader bootloader_support efuse esp_app_format esp_common esp_hw_support esp_rom esp_system esptool_py freertos hal log main micro-ecc newlib partition_table riscv soc spi_flash
-- Component paths: /home/michal/esp/esp-idf/components/bootloader /home/michal/esp/esp-idf/components/bootloader_support /home/michal/esp/esp-idf/components/efuse /home/michal/esp/esp-idf/components/esp_app_format /home/michal/esp/esp-idf/components/esp_common /home/michal/esp/esp-idf/components/esp_hw_support /home/michal/esp/esp-idf/components/esp_rom /home/michal/esp/esp-idf/components/esp_system /home/michal/esp/esp-idf/components/esptool_py /home/michal/esp/esp-idf/components/freertos /home/michal/esp/esp-idf/components/hal /home/michal/esp/esp-idf/components/log /home/michal/esp/esp-idf/components/bootloader/subproject/main /home/michal/esp/esp-idf/components/bootloader/subproject/components/micro-ecc /home/michal/esp/esp-idf/components/newlib /home/michal/esp/esp-idf/components/partition_table /home/michal/esp/esp-idf/components/riscv /home/michal/esp/esp-idf/components/soc /home/michal/esp/esp-idf/components/spi_flash
-- Configuring done
-- Generating done
-- Build files have been written to: /home/michal/project-name/build/bootloader
[302/904] Performing build step for 'bootloader'
[1/106] Generating project_elf_src_esp32c6.c
[2/106] Building C object CMakeFiles/bootloader.elf.dir/project_elf_src_esp32c6.c.obj
[3/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/interrupts.c.obj
[4/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/dport_access_common.c.obj
[5/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/gpio_periph.c.obj
[6/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/lldesc.c.obj
[7/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/uart_periph.c.obj
[8/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/gdma_periph.c.obj
[9/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/dedic_gpio_periph.c.obj
[10/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/adc_periph.c.obj
[11/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/ledc_periph.c.obj
[12/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/rmt_periph.c.obj
[13/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/sdm_periph.c.obj
[14/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/pcnt_periph.c.obj
[15/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/spi_periph.c.obj
[16/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/i2s_periph.c.obj
[17/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/temperature_sensor_periph.c.obj
[18/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/timer_periph.c.obj
[19/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/i2c_periph.c.obj
[20/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/mcpwm_periph.c.obj
[21/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/parlio_periph.c.obj
[22/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/twai_periph.c.obj
[23/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/ieee802154_periph.c.obj
[24/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/rtc_io_periph.c.obj
[25/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/sdio_slave_periph.c.obj
[26/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/mpu_hal.c.obj
[27/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/efuse_hal.c.obj
[28/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32c6/efuse_hal.c.obj
[29/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/cache_hal.c.obj
[30/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32c6/lp_timer_hal.c.obj
[31/106] Building C object esp-idf/micro-ecc/CMakeFiles/__idf_micro-ecc.dir/uECC_verify_antifault.c.obj
[32/106] Building C object esp-idf/spi_flash/CMakeFiles/__idf_spi_flash.dir/spi_flash_wrap.c.obj
[33/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/mmu_hal.c.obj
[34/106] Building C object esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj
[35/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_clock_init.c.obj
[36/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random_esp32c6.c.obj
[37/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_mem.c.obj
[38/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common.c.obj
[39/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random.c.obj
[40/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common_loader.c.obj
[41/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_efuse.c.obj
[42/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/secure_boot.c.obj
[43/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/bootloader_flash.c.obj
[44/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/flash_qio_mode.c.obj
[45/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_clock_loader.c.obj
[46/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_encrypt.c.obj
[47/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/bootloader_flash_config_esp32c6.c.obj
[48/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_partitions.c.obj
[49/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_utility.c.obj
[50/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console_loader.c.obj
[51/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_init.c.obj
[52/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp_image_format.c.obj
[53/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console.c.obj
[54/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_soc.c.obj
[55/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_sha.c.obj
[56/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_ecdsa.c.obj
[57/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_esp32c6.c.obj
[58/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_panic.c.obj
[59/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_table.c.obj
[60/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_api.c.obj
[61/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_fields.c.obj
[62/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_rtc_calib.c.obj
[63/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/efuse_controller/keys/with_key_purposes/esp_efuse_api_key.c.obj
[64/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_utility.c.obj
[65/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_fields.c.obj
[66/106] Building C object esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/esp_err.c.obj
[67/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/cpu_region_protect.c.obj
[68/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/esp_memory_utils.c.obj
[69/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/cpu.c.obj
[70/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_clk_init.c.obj
[71/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_utility.c.obj
[72/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_param.c.obj
[73/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_clk.c.obj
[74/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_sleep.c.obj
[75/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/chip_info.c.obj
[76/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_time.c.obj
[77/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_init.c.obj
[78/106] Building C object esp-idf/esp_common/CMakeFiles/__idf_esp_common.dir/src/esp_err_to_name.c.obj
[79/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_crc.c.obj
[80/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_regi2c_esp32c6.c.obj
[81/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_sys.c.obj
[82/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_spiflash.c.obj
[83/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log.c.obj
[84/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_efuse.c.obj
[85/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_uart.c.obj
[86/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_systimer.c.obj
[87/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log_noos.c.obj
[88/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_wdt.c.obj
[89/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log_buffers.c.obj
[90/106] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/bootloader_start.c.obj
[91/106] Linking C static library esp-idf/log/liblog.a
[92/106] Linking C static library esp-idf/esp_rom/libesp_rom.a
[93/106] Linking C static library esp-idf/esp_common/libesp_common.a
[94/106] Linking C static library esp-idf/esp_hw_support/libesp_hw_support.a
[95/106] Linking C static library esp-idf/esp_system/libesp_system.a
[96/106] Linking C static library esp-idf/efuse/libefuse.a
[97/106] Linking C static library esp-idf/bootloader_support/libbootloader_support.a
[98/106] Linking C static library esp-idf/esp_app_format/libesp_app_format.a
[99/106] Linking C static library esp-idf/spi_flash/libspi_flash.a
[100/106] Linking C static library esp-idf/hal/libhal.a
[101/106] Linking C static library esp-idf/micro-ecc/libmicro-ecc.a
[102/106] Linking C static library esp-idf/soc/libsoc.a
[103/106] Linking C static library esp-idf/main/libmain.a
[104/106] Linking C executable bootloader.elf
[105/106] Generating binary image from built executable
esptool.py v4.6.2
Creating esp32c6 image...
Merged 2 ELF sections
Successfully created esp32c6 image.
Generated /home/michal/project-name/build/bootloader/bootloader.bin
[106/106] cd /home/michal/project-name/build/bootloader/esp-idf/esptool_py && /home/michal/.espressif/python_env/idf5.1_py3.10_env/bin/python /home/michal/esp/esp-idf/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 /home/michal/project-name/build/bootloader/bootloader.bin
Bootloader binary size 0x52f0 bytes. 0x2d10 bytes (35%) free.
[903/904] Generating binary image from built executable
esptool.py v4.6.2
Creating esp32c6 image...
Merged 1 ELF section
Successfully created esp32c6 image.
Generated /home/michal/project-name/build/project-name.bin
[904/904] cd /home/michal/project-name/build/esp-idf/esptoo...-table.bin /home/michal/project-name/build/project-name.bin
project-name.bin binary size 0x1e2e0 bytes. Smallest app partition is 0x100000 bytes. 0xe1d20 bytes (88%) free.
[{
"resource": "/home/michal/868idf/main/main.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "#include errors detected. Consider updating your compile_commands.json or includePath. Squiggles are disabled for this translation unit (/home/michal/868idf/main/main.c).",
"source": "C/C++",
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 1,
"endColumn": 22
}]
[{
"resource": "/home/michal/868idf/main/main.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "cannot open source file \"RadioLib.h\"",
"source": "C/C++",
"startLineNumber": 1,
"startColumn": 1,
"endLineNumber": 1,
"endColumn": 22
}]
And here how I wanted to connect the detector via zigbee
#include "esp_log.h"
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "esp_netif.h"
#include "esp_vfs_eventfd.h"
#include "esp_wifi.h"
#include "nvs_flash.h"
#include "protocol_examples_common.h"
#include "esp_coexist_internal.h"
#include "esp_zigbee_gateway.h"
#if (!defined ZB_MACSPLIT_HOST && defined ZB_MACSPLIT_DEVICE)
#error Only Zigbee gateway host device should be defined
#endif
static const char *TAG = "ESP_ZB_GATEWAY";
/********************* Define functions **************************/
static void bdb_start_top_level_commissioning_cb(uint8_t mode_mask)
{
ESP_ERROR_CHECK(esp_zb_bdb_start_top_level_commissioning(mode_mask));
}
void esp_zb_app_signal_handler(esp_zb_app_signal_t *signal_struct)
{
uint32_t *p_sg_p = signal_struct->p_app_signal;
esp_err_t err_status = signal_struct->esp_err_status;
esp_zb_app_signal_type_t sig_type = *p_sg_p;
esp_zb_zdo_signal_device_annce_params_t *dev_annce_params = NULL;
esp_zb_zdo_signal_macsplit_dev_boot_params_t *rcp_version = NULL;
switch (sig_type) {
case ESP_ZB_ZDO_SIGNAL_SKIP_STARTUP:
ESP_LOGI(TAG, "Zigbee stack initialized");
esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_INITIALIZATION);
break;
case ESP_ZB_MACSPLIT_DEVICE_BOOT:
ESP_LOGI(TAG, "Zigbee rcp device booted");
rcp_version = (esp_zb_zdo_signal_macsplit_dev_boot_params_t*)esp_zb_app_signal_get_params(p_sg_p);
ESP_LOGI(TAG, "Running RCP Version:%s", rcp_version->version_str);
break;
case ESP_ZB_BDB_SIGNAL_DEVICE_FIRST_START:
case ESP_ZB_BDB_SIGNAL_DEVICE_REBOOT:
if (err_status == ESP_OK) {
ESP_LOGI(TAG, "Start network formation");
esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_FORMATION);
} else {
ESP_LOGE(TAG, "Failed to initialize Zigbee stack (status: %d)", err_status);
}
break;
case ESP_ZB_BDB_SIGNAL_FORMATION:
if (err_status == ESP_OK) {
esp_zb_ieee_addr_t ieee_address;
esp_zb_get_long_address(ieee_address);
ESP_LOGI(TAG, "Formed network successfully (ieee_address: %02x:%02x:%02x:%02x:%02x:%02x:%02x:%02x, PAN ID: 0x%04hx, Channel:%d)",
ieee_address[7], ieee_address[6], ieee_address[5], ieee_address[4],
ieee_address[3], ieee_address[2], ieee_address[1], ieee_address[0],
esp_zb_get_pan_id(), esp_zb_get_current_channel());
esp_zb_bdb_start_top_level_commissioning(ESP_ZB_BDB_MODE_NETWORK_STEERING);
} else {
ESP_LOGI(TAG, "Restart network formation (status: %d)", err_status);
esp_zb_scheduler_alarm((esp_zb_callback_t)bdb_start_top_level_commissioning_cb, ESP_ZB_BDB_MODE_NETWORK_FORMATION, 1000);
}
break;
case ESP_ZB_BDB_SIGNAL_STEERING:
if (err_status == ESP_OK) {
ESP_LOGI(TAG, "Network steering started");
}
break;
case ESP_ZB_ZDO_SIGNAL_DEVICE_ANNCE:
dev_annce_params = (esp_zb_zdo_signal_device_annce_params_t *)esp_zb_app_signal_get_params(p_sg_p);
ESP_LOGI(TAG, "New device commissioned or rejoined (short: 0x%04hx)", dev_annce_params->device_short_addr);
break;
default:
ESP_LOGI(TAG, "ZDO signal: %d, status: %d", sig_type, err_status);
break;
}
}
static void esp_zb_task(void *pvParameters)
{
/* initialize Zigbee stack with Zigbee coordinator config */
esp_zb_cfg_t zb_nwk_cfg = ESP_ZB_ZC_CONFIG();
esp_zb_init(&zb_nwk_cfg);
/* initiate Zigbee Stack start without zb_send_no_autostart_signal auto-start */
esp_zb_set_primary_network_channel_set(ESP_ZB_PRIMARY_CHANNEL_MASK);
ESP_ERROR_CHECK(esp_zb_start(false));
esp_zb_main_loop_iteration();
}
void app_main(void)
{
esp_zb_platform_config_t config = {
.radio_config = ESP_ZB_DEFAULT_RADIO_CONFIG(),
.host_config = ESP_ZB_DEFAULT_HOST_CONFIG(),
};
/* load Zigbee gateway platform config to initialization */
ESP_ERROR_CHECK(esp_zb_platform_config(&config));
ESP_ERROR_CHECK(nvs_flash_init());
ESP_ERROR_CHECK(esp_netif_init());
ESP_ERROR_CHECK(esp_event_loop_create_default());
#if CONFIG_EXAMPLE_CONNECT_WIFI
ESP_ERROR_CHECK(example_connect());
#if CONFIG_ESP_COEX_SW_COEXIST_ENABLE
ESP_ERROR_CHECK(esp_wifi_set_ps(WIFI_PS_MIN_MODEM));
coex_enable();
coex_schm_status_bit_set(1, 1);
#else
ESP_ERROR_CHECK(esp_wifi_set_ps(WIFI_PS_NONE));
#endif
#endif
xTaskCreate(esp_zb_task, "Zigbee_main", 4096, NULL, 5, NULL);
}
* Executing task: /home/michal/.espressif/python_env/idf5.1_py3.10_env/bin/python /home/michal/esp/esp-idf/tools/idf_size.py /home/michal/project-name/build/project-name.map
Total sizes:
Used stat D/IRAM: 44876 bytes ( 407236 remain, 9.9% used)
.data size: 4188 bytes
.bss size: 3720 bytes
.text size: 36968 bytes
Used Flash size : 82358 bytes
.text: 53030 bytes
.rodata: 29072 bytes
Total image size: 123514 bytes (.bin may be padded larger)
* Executing task: ninja
[5/904] Generating ../../partition_table/partition-table.bin
Partition table binary generated. Contents:
*******************************************************************************
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
nvs,data,nvs,0x9000,24K,
phy_init,data,phy,0xf000,4K,
factory,app,factory,0x10000,1M,
*******************************************************************************
[203/904] Performing configure step for 'bootloader'
-- Found Git: /usr/bin/git (found version "2.40.1")
-- The C compiler identification is GNU 12.2.0
-- The CXX compiler identification is GNU 12.2.0
-- The ASM compiler identification is GNU
-- Found assembler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-gcc
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /home/michal/.espressif/tools/riscv32-esp-elf/esp-12.2.0_20230208/riscv32-esp-elf/bin/riscv32-esp-elf-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Building ESP-IDF components for target esp32c6
-- Project sdkconfig file /home/michal/project-name/sdkconfig
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of time_t
-- Check size of time_t - done
-- Adding linker script /home/michal/esp/esp-idf/components/soc/esp32c6/ld/esp32c6.peripherals.ld
-- App "bootloader" version: v5.1-dirty
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.api.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.rvfp.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.newlib.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.phy.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.wdt.ld
-- Adding linker script /home/michal/esp/esp-idf/components/esp_rom/esp32c6/ld/esp32c6.rom.version.ld
-- Adding linker script /home/michal/esp/esp-idf/components/bootloader/subproject/main/ld/esp32c6/bootloader.ld
-- Adding linker script /home/michal/esp/esp-idf/components/bootloader/subproject/main/ld/esp32c6/bootloader.rom.ld
-- Components: bootloader bootloader_support efuse esp_app_format esp_common esp_hw_support esp_rom esp_system esptool_py freertos hal log main micro-ecc newlib partition_table riscv soc spi_flash
-- Component paths: /home/michal/esp/esp-idf/components/bootloader /home/michal/esp/esp-idf/components/bootloader_support /home/michal/esp/esp-idf/components/efuse /home/michal/esp/esp-idf/components/esp_app_format /home/michal/esp/esp-idf/components/esp_common /home/michal/esp/esp-idf/components/esp_hw_support /home/michal/esp/esp-idf/components/esp_rom /home/michal/esp/esp-idf/components/esp_system /home/michal/esp/esp-idf/components/esptool_py /home/michal/esp/esp-idf/components/freertos /home/michal/esp/esp-idf/components/hal /home/michal/esp/esp-idf/components/log /home/michal/esp/esp-idf/components/bootloader/subproject/main /home/michal/esp/esp-idf/components/bootloader/subproject/components/micro-ecc /home/michal/esp/esp-idf/components/newlib /home/michal/esp/esp-idf/components/partition_table /home/michal/esp/esp-idf/components/riscv /home/michal/esp/esp-idf/components/soc /home/michal/esp/esp-idf/components/spi_flash
-- Configuring done
-- Generating done
-- Build files have been written to: /home/michal/project-name/build/bootloader
[277/904] Performing build step for 'bootloader'
[1/106] Generating project_elf_src_esp32c6.c
[2/106] Building C object CMakeFiles/bootloader.elf.dir/project_elf_src_esp32c6.c.obj
[3/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/dport_access_common.c.obj
[4/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/interrupts.c.obj
[5/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/lldesc.c.obj
[6/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/gpio_periph.c.obj
[7/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/adc_periph.c.obj
[8/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/uart_periph.c.obj
[9/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/gdma_periph.c.obj
[10/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/dedic_gpio_periph.c.obj
[11/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/ledc_periph.c.obj
[12/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/spi_periph.c.obj
[13/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/pcnt_periph.c.obj
[14/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/rmt_periph.c.obj
[15/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/sdm_periph.c.obj
[16/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/i2s_periph.c.obj
[17/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/i2c_periph.c.obj
[18/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/timer_periph.c.obj
[19/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/mcpwm_periph.c.obj
[20/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/temperature_sensor_periph.c.obj
[21/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/twai_periph.c.obj
[22/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/ieee802154_periph.c.obj
[23/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/parlio_periph.c.obj
[24/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/rtc_io_periph.c.obj
[25/106] Building C object esp-idf/soc/CMakeFiles/__idf_soc.dir/esp32c6/sdio_slave_periph.c.obj
[26/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/mpu_hal.c.obj
[27/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/efuse_hal.c.obj
[28/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32c6/efuse_hal.c.obj
[29/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/mmu_hal.c.obj
[30/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/esp32c6/lp_timer_hal.c.obj
[31/106] Building C object esp-idf/hal/CMakeFiles/__idf_hal.dir/cache_hal.c.obj
[32/106] Building C object esp-idf/spi_flash/CMakeFiles/__idf_spi_flash.dir/spi_flash_wrap.c.obj
[33/106] Building C object esp-idf/esp_app_format/CMakeFiles/__idf_esp_app_format.dir/esp_app_desc.c.obj
[34/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common_loader.c.obj
[35/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_clock_init.c.obj
[36/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random_esp32c6.c.obj
[37/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_common.c.obj
[38/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_random.c.obj
[39/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_mem.c.obj
[40/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_efuse.c.obj
[41/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/bootloader_flash.c.obj
[42/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_encrypt.c.obj
[43/106] Building C object esp-idf/micro-ecc/CMakeFiles/__idf_micro-ecc.dir/uECC_verify_antifault.c.obj
[44/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/secure_boot.c.obj
[45/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_clock_loader.c.obj
[46/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/flash_qio_mode.c.obj
[47/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/bootloader_flash/src/bootloader_flash_config_esp32c6.c.obj
[48/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/flash_partitions.c.obj
[49/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_init.c.obj
[50/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console_loader.c.obj
[51/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_utility.c.obj
[52/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_sha.c.obj
[53/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_console.c.obj
[54/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_soc.c.obj
[55/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_ecdsa.c.obj
[56/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp_image_format.c.obj
[57/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/bootloader_panic.c.obj
[58/106] Building C object esp-idf/bootloader_support/CMakeFiles/__idf_bootloader_support.dir/src/esp32c6/bootloader_esp32c6.c.obj
[59/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_table.c.obj
[60/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_fields.c.obj
[61/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_rtc_calib.c.obj
[62/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/esp32c6/esp_efuse_utility.c.obj
[63/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_api.c.obj
[64/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_fields.c.obj
[65/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/efuse_controller/keys/with_key_purposes/esp_efuse_api_key.c.obj
[66/106] Building C object esp-idf/esp_system/CMakeFiles/__idf_esp_system.dir/esp_err.c.obj
[67/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/cpu_region_protect.c.obj
[68/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/cpu.c.obj
[69/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/esp_memory_utils.c.obj
[70/106] Building C object esp-idf/efuse/CMakeFiles/__idf_efuse.dir/src/esp_efuse_utility.c.obj
[71/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_clk_init.c.obj
[72/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_param.c.obj
[73/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_clk.c.obj
[74/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_init.c.obj
[75/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/chip_info.c.obj
[76/106] Building C object esp-idf/esp_common/CMakeFiles/__idf_esp_common.dir/src/esp_err_to_name.c.obj
[77/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/rtc_time.c.obj
[78/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_regi2c_esp32c6.c.obj
[79/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log.c.obj
[80/106] Building C object esp-idf/esp_hw_support/CMakeFiles/__idf_esp_hw_support.dir/port/esp32c6/pmu_sleep.c.obj
[81/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_crc.c.obj
[82/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_sys.c.obj
[83/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_efuse.c.obj
[84/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_spiflash.c.obj
[85/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_systimer.c.obj
[86/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_uart.c.obj
[87/106] Building C object esp-idf/esp_rom/CMakeFiles/__idf_esp_rom.dir/patches/esp_rom_wdt.c.obj
[88/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log_buffers.c.obj
[89/106] Building C object esp-idf/log/CMakeFiles/__idf_log.dir/log_noos.c.obj
[90/106] Linking C static library esp-idf/log/liblog.a
[91/106] Linking C static library esp-idf/esp_rom/libesp_rom.a
[92/106] Linking C static library esp-idf/esp_common/libesp_common.a
[93/106] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/bootloader_start.c.obj
[94/106] Linking C static library esp-idf/esp_hw_support/libesp_hw_support.a
[95/106] Linking C static library esp-idf/esp_system/libesp_system.a
[96/106] Linking C static library esp-idf/efuse/libefuse.a
[97/106] Linking C static library esp-idf/bootloader_support/libbootloader_support.a
[98/106] Linking C static library esp-idf/esp_app_format/libesp_app_format.a
[99/106] Linking C static library esp-idf/spi_flash/libspi_flash.a
[100/106] Linking C static library esp-idf/hal/libhal.a
[101/106] Linking C static library esp-idf/micro-ecc/libmicro-ecc.a
[102/106] Linking C static library esp-idf/soc/libsoc.a
[103/106] Linking C static library esp-idf/main/libmain.a
[104/106] Linking C executable bootloader.elf
[105/106] Generating binary image from built executable
esptool.py v4.6.2
Creating esp32c6 image...
Merged 2 ELF sections
Successfully created esp32c6 image.
Generated /home/michal/project-name/build/bootloader/bootloader.bin
[106/106] cd /home/michal/project-name/build/bootloader/esp-idf/esptool_py && /home/michal/.espressif/python_env/idf5.1_py3.10_env/bin/python /home/michal/esp/esp-idf/components/partition_table/check_sizes.py --offset 0x8000 bootloader 0x0 /home/michal/project-name/build/bootloader/bootloader.bin
Bootloader binary size 0x52f0 bytes. 0x2d10 bytes (35%) free.
[903/904] Generating binary image from built executable
esptool.py v4.6.2
Creating esp32c6 image...
Merged 1 ELF section
Successfully created esp32c6 image.
Generated /home/michal/project-name/build/project-name.bin
[904/904] cd /home/michal/project-name/build/esp-id...in /home/michal/project-name/build/project-name.bin
project-name.bin binary size 0x1e2e0 bytes. Smallest app partition is 0x100000 bytes. 0xe1d20 bytes (88%) free.
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "cannot open source file \"protocol_examples_common.h\"",
"source": "C/C++",
"startLineNumber": 45,
"startColumn": 1,
"endLineNumber": 45,
"endColumn": 38
}]
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "#include errors detected. Consider updating your compile_commands.json or includePath. Squiggles are disabled for this translation unit (/home/michal/project-nam/main/esp_zigbee_gateway.c).",
"source": "C/C++",
"startLineNumber": 47,
"startColumn": 1,
"endLineNumber": 47,
"endColumn": 32
}]
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "cannot open source file \"esp_zigbee_core.h\" (dependency of \"esp_zigbee_gateway.h\")",
"source": "C/C++",
"startLineNumber": 47,
"startColumn": 1,
"endLineNumber": 47,
"endColumn": 32
}]
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "cannot open source file \"protocol_examples_common.h\"",
"source": "C/C++",
"startLineNumber": 45,
"startColumn": 1,
"endLineNumber": 45,
"endColumn": 38
}]
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "#include errors detected. Consider updating your compile_commands.json or includePath. Squiggles are disabled for this translation unit (/home/michal/project-nam/main/esp_zigbee_gateway.c).",
"source": "C/C++",
"startLineNumber": 47,
"startColumn": 1,
"endLineNumber": 47,
"endColumn": 32
}]
[{
"resource": "/home/michal/project-nam/main/esp_zigbee_gateway.c",
"owner": "C/C++: IntelliSense",
"code": "1696",
"severity": 8,
"message": "cannot open source file \"esp_zigbee_core.h\" (dependency of \"esp_zigbee_gateway.h\")",
"source": "C/C++",
"startLineNumber": 47,
"startColumn": 1,
"endLineNumber": 47,
"endColumn": 32
}]