45 lines
1.4 KiB
C
45 lines
1.4 KiB
C
#include <stdio.h>
|
|
#include <inttypes.h>
|
|
#include "freertos/FreeRTOS.h"
|
|
#include "freertos/task.h"
|
|
#include "esp_chip_info.h"
|
|
#include "esp_flash.h"
|
|
#include "esp_system.h"
|
|
#include "esp_log.h"
|
|
|
|
#define TAG "common"
|
|
|
|
void common_print_boot_info(void)
|
|
{
|
|
esp_chip_info_t chip_info;
|
|
uint32_t flash_size = 0;
|
|
esp_chip_info(&chip_info);
|
|
|
|
ESP_LOGI(TAG, "Chip: %s, cores: %d, features: %s%s%s%s",
|
|
CONFIG_IDF_TARGET,
|
|
chip_info.cores,
|
|
(chip_info.features & CHIP_FEATURE_WIFI_BGN) ? "WiFi/" : "",
|
|
(chip_info.features & CHIP_FEATURE_BT) ? "BT" : "",
|
|
(chip_info.features & CHIP_FEATURE_BLE) ? "BLE" : "",
|
|
(chip_info.features & CHIP_FEATURE_IEEE802154) ? ", 802.15.4" : "");
|
|
|
|
unsigned major_rev = chip_info.revision / 100;
|
|
unsigned minor_rev = chip_info.revision % 100;
|
|
ESP_LOGI(TAG, "Revision: v%u.%u", major_rev, minor_rev);
|
|
|
|
if (esp_flash_get_size(NULL, &flash_size) != ESP_OK) {
|
|
ESP_LOGW(TAG, "Cannot read flash size");
|
|
} else {
|
|
ESP_LOGI(TAG, "Flash: %" PRIu32 " MB %s",
|
|
flash_size / (uint32_t)(1024 * 1024),
|
|
(chip_info.features & CHIP_FEATURE_EMB_FLASH) ? "embedded" : "external");
|
|
}
|
|
|
|
ESP_LOGI(TAG, "Min free heap: %" PRIu32 " bytes", esp_get_minimum_free_heap_size());
|
|
|
|
for (int i = 3; i > 0; i--) {
|
|
ESP_LOGI(TAG, "Start in %d...", i);
|
|
vTaskDelay(pdMS_TO_TICKS(500));
|
|
}
|
|
}
|