arduino-esp32 read memory info (tested on YD-ESP32-S3 N16R8/Waveshare ESP32-C5-WIFI6-KIT-N16R8)


arduino-esp32 read memory info, tested on Waveshare ESP32-C5-WIFI6-KIT-N16R8 and YD-ESP32-S3 N16R8.

ESP32-xx_mem_info.ino
/*
Exercise run on Waveshare ESP32-xx
- Memory info

Tested on:
VCC-GND Studio YD-ESP32-S3 N16R8
https://github.com/vcc-gnd/YD-ESP32-S3
16MB Flash, 8MB PSRAM

WaveShare ESP32-C5-WIFI6-KIT-N16R8:
https://www.waveshare.com/wiki/ESP32-C5-WIFI6-KIT-NXRX
16MB Flash, 8MB PSRAM

*/
#include <SPIFFS.h>

void setup() {
  delay(2000);
  Serial.begin(115200);
  delay(1000);

  Serial.println("\n\n~ Start ~");
  Serial.println("--- Memory Info ---");
  Serial.println();

  Serial.println("--- Model and Revision ---");
  Serial.printf("Chip model: %s\n", ESP.getChipModel());
  Serial.printf("Chip revision: %d\n", ESP.getChipRevision());
  Serial.println();

  Serial.println("--- SRAM (internal RAM) ---");
  Serial.printf("Free heap: %d bytes\n", ESP.getFreeHeap());
  Serial.printf("Largest free block: %d bytes\n", ESP.getMaxAllocHeap());
  Serial.printf("Total internal RAM: %d bytes\n", ESP.getHeapSize());
  Serial.println();

  Serial.println("--- PSRAM (external RAM) ---");
  if (psramFound()) {
    Serial.printf("PSRAM size: %d bytes\n", ESP.getPsramSize());
    Serial.printf("Free PSRAM: %d bytes\n", ESP.getFreePsram());
  } else {
    Serial.println("No PSRAM detected");
  }
  Serial.println();

  Serial.println("--- Flash ---");
  Serial.printf("Flash chip size: %d bytes\n", ESP.getFlashChipSize());
  Serial.printf("Flash chip size: %d MB\n", ESP.getFlashChipSize() / (1024*1024));
  Serial.printf("Flash frequency: %d Hz\n", ESP.getFlashChipSpeed());
  Serial.println();

  delay(500); // 0.5 seconds
}

void loop()
{
  delay(1000); 
}




To verify, print the SPI flash memory manufacturer and device ID, using the command:
esptool --chip auto --port <COM> flash-id

Result for VCC-GND Studio YD-ESP32-S3 N16R8:

esptool output:
C:\Users\PC>esptool --chip auto --port COM7 flash-id
esptool v5.1.0
Connected to ESP32-S3 on COM7:
Chip type:          ESP32-S3 (QFN56) (revision v0.2)
Features:           Wi-Fi, BT 5 (LE), Dual Core + LP Core, 240MHz, Embedded PSRAM 8MB (AP_3v3)
Crystal frequency:  40MHz
MAC:                20:6e:f1:b2:b8:ec

Stub flasher running.

Flash Memory Information:
=========================
Manufacturer: 46
Device: 4018
Detected flash size: 16MB
Flash type set in eFuse: quad (4 data lines)
Flash voltage set by eFuse: 3.3V

Hard resetting via RTS pin...

Arduino IDE Serial Monitor output:
~ Start ~
--- Memory Info ---

--- Model and Revision ---
Chip model: ESP32-S3
Chip revision: 2

--- SRAM (internal RAM) ---
Free heap: 359748 bytes
Largest free block: 303092 bytes
Total internal RAM: 393920 bytes

--- PSRAM (external RAM) ---
PSRAM size: 8388608 bytes
Free PSRAM: 8384788 bytes

--- Flash ---
Flash chip size: 16777216 bytes
Flash chip size: 16 MB
Flash frequency: 80000000 Hz



Result for Waveshare ESP32-C5-WIFI6-KIT-N16R8:

 esptool output:
C:\Users\PC>esptool --chip auto --port COM27 flash-id
esptool v5.1.0
Connected to ESP32-C5 on COM27:
Chip type:          ESP32-C5 (revision v1.0)
Features:           Wi-Fi 6 (dual-band), BT 5 (LE), IEEE802.15.4, Single Core + LP Core, 240MHz
Crystal frequency:  48MHz
MAC:                3c:dc:75:ff:fe:99:c6:54
BASE MAC:           3c:dc:75:99:c6:54
MAC_EXT:            ff:fe

Stub flasher running.

Flash Memory Information:
=========================
Manufacturer: 46
Device: 4018
Detected flash size: 16MB

Hard resetting via RTS pin...

Arduino IDE Serial Monitor output:
~ Start ~
--- Memory Info ---

--- Model and Revision ---
Chip model: ESP32-C5
Chip revision: 100

--- SRAM (internal RAM) ---
Free heap: 304992 bytes
Largest free block: 278516 bytes
Total internal RAM: 333664 bytes

--- PSRAM (external RAM) ---
PSRAM size: 8388608 bytes
Free PSRAM: 8384272 bytes

--- Flash ---
Flash chip size: 16777216 bytes
Flash chip size: 16 MB
Flash frequency: 80000000 Hz




Comments

Popular posts from this blog

480x320 TFT/ILI9488 SPI wih EP32C3 (arduino-esp32) using Arduino_GFX Library

Drive 320x240 ILI9341 SPI TFT using ESP32-S3 (NodeMCU ESP-S3-12K-Kit) using TFT_eSPI library, in Arduino Framework.