Open JoseAntonioMG opened 3 months ago
The log from the Border Router border shows that the ESP32-S3 uses up the memory. Do you disable the SRAM of ESP32-S3? you can run this command matter esp diagnostics mem-dump
to see the memory usage.
matter esp diagnostics mem-dump
Description Internal SPIRAM Current Free Memory 23760 0 Largest Free Block 7680 0 Min. Ever Free Size 14724 0 Done
Esp32s3 device has 16Mb SRAM
Logs for Esp32S3 at boot:
I (26) boot: ESP-IDF v5.2.2-dirty 2nd stage bootloader
I (27) boot: compile time Aug 20 2024 14:15:09
I (27) boot: Multicore bootloader
I (30) boot: chip revision: v0.1
I (34) boot.esp32s3: Boot SPI Speed : 80MHz
I (39) boot.esp32s3: SPI Mode : DIO
I (44) boot.esp32s3: SPI Flash Size : 16MB
I (48) boot: Enabling RNG early entropy source...
I (54) boot: Partition Table:
I (57) boot: ## Label Usage Type ST Offset Length
I (65) boot: 0 nvs WiFi data 01 02 00009000 00006000
I (72) boot: 1 phy_init RF data 01 01 0000f000 00001000
I (80) boot: 2 factory factory app 00 00 00010000 002ee000
I (87) boot: End of partition table
I (91) esp_image: segment 0: paddr=00010020 vaddr=3c1b0020 size=57108h (356616) map
I (164) esp_image: segment 1: paddr=00067130 vaddr=3fc9c100 size=05264h ( 21092) load
I (168) esp_image: segment 2: paddr=0006c39c vaddr=40374000 size=03c7ch ( 15484) load
I (173) esp_image: segment 3: paddr=00070020 vaddr=42000020 size=1a1d6ch (1711468) map
I (485) esp_image: segment 4: paddr=00211d94 vaddr=40377c7c size=14468h ( 83048) load
I (513) boot: Loaded app from partition at offset 0x10000
I (514) boot: Disabling RNG early entropy source...
I (515) cpu_start: Multicore app
I (527) cpu_start: Pro cpu start user code
I (528) cpu_start: cpu freq: 160000000 Hz
I (528) cpu_start: Application information:
I (528) cpu_start: Project name: controller
I (528) cpu_start: App version: d57af86-dirty
I (528) cpu_start: Compile time: Aug 20 2024 14:15:03
I (529) cpu_start: ELF file SHA256: e23498a34...
I (529) cpu_start: ESP-IDF: v5.2.2-dirty
I (529) cpu_start: Min chip rev: v0.0
I (529) cpu_start: Max chip rev: v0.99
I (529) cpu_start: Chip rev: v0.1
I (529) heap_init: Initializing. RAM available for dynamic allocation:
I (530) heap_init: At 3FCC1040 len 000286D0 (161 KiB): RAM
I (530) heap_init: At 3FCE9710 len 00005724 (21 KiB): RAM
I (530) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
I (530) heap_init: At 600FE010 len 00001FD8 (7 KiB): RTCRAM
I (532) spi_flash: detected chip: gd
I (532) spi_flash: flash io: dio
I (533) sleep: Configure to isolate all GPIO pins in sleep state
I (533) sleep: Enable automatic switching of GPIO sleep configuration
I (534) coexist: coex firmware version: d96c1e51f
I (534) coexist: coexist rom version e7ae62f
I (535) main_task: Started on CPU0
I (545) main_task: Calling app_main()
I (635) pp: pp rom version: e7ae62f
I (635) net80211: net80211 rom version: e7ae62f
matter esp diagnostics mem-dump
Description Internal SPIRAM Current Free Memory 23760 0 Largest Free Block 7680 0 Min. Ever Free Size 14724 0 Done
Looks like there SPIRAM is not enabled in your device so that there will be error of no-memory.
Esp32s3 device has 16Mb SRAM
But from you log I didn't see the 16MB SRAM only 16MB flash.
correct, it's 16MB flash memory. The esp32s3, as I understand it, has 512KB SRAM, isn't that enough for this type of applications?
How can I expand the SRAM without having to buy a new esp32s3 device?
isn't that enough for this type of applications?
Yes, we would suggest that you should use PSRAM for controller+thread-br example.
How can I expand the SRAM without having to buy a new esp32s3 device?
If you are using a Thread Border Router board, I remember that there is a 2MB SRAM on ESP32-S3 of that board, and you need to follow the instruction to configure the SRAM https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/api-guides/external-ram.html#configuring-external-ram
Describe the bug I have a matter esp32c6 device with the compiled firmware of light_switch example. I have commissioned this firmware with chip-tool on linux and it works perfectly. Then I have uncommissioned it from chip-tool. I have compiled the "esp matter controller" example using the border router options and the "ESP Thread Border Router Board" hardware. I followed the instructions for the OTBR:
->matter esp ot_cli dataset init new ->matter esp ot_cli dataset commit active I get the TLV: ->matter esp ot_cli dataset active -x I start the border router: ->matter esp ot_cli ifconfig up ->matter esp ot_cli thread start
To provision the device I entered the command: ->matter esp controller pairing ble-thread 1234 20202021 3840
where I put the TLV obtained previously.
Environment
Logs for Esp32C6:
Logs for "ESP Thread Border Router Board":