summaryrefslogtreecommitdiffstats
path: root/main
diff options
context:
space:
mode:
Diffstat (limited to 'main')
-rw-r--r--main/CMakeLists.txt4
-rw-r--r--main/main.c52
2 files changed, 56 insertions, 0 deletions
diff --git a/main/CMakeLists.txt b/main/CMakeLists.txt
new file mode 100644
index 0000000..fe1b189
--- /dev/null
+++ b/main/CMakeLists.txt
@@ -0,0 +1,4 @@
+set(SRC "main.c")
+
+idf_component_register(SRCS ${SRC}
+ INCLUDE_DIRS ".")
diff --git a/main/main.c b/main/main.c
new file mode 100644
index 0000000..7010f3e
--- /dev/null
+++ b/main/main.c
@@ -0,0 +1,52 @@
+/*
+ * SPDX-FileCopyrightText: 2010-2022 Espressif Systems (Shanghai) CO LTD
+ *
+ * SPDX-License-Identifier: CC0-1.0
+ */
+
+#include <stdio.h>
+#include <inttypes.h>
+#include "sdkconfig.h"
+#include "freertos/FreeRTOS.h"
+#include "freertos/task.h"
+#include "esp_chip_info.h"
+#include "esp_flash.h"
+#include "esp_system.h"
+
+void app_main(void)
+{
+ printf("Hello world!\n");
+
+ /* Print chip information */
+ esp_chip_info_t chip_info;
+ uint32_t flash_size;
+ esp_chip_info(&chip_info);
+ printf("This is %s chip with %d CPU core(s), %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 (Zigbee/Thread)" : "");
+
+ unsigned major_rev = chip_info.revision / 100;
+ unsigned minor_rev = chip_info.revision % 100;
+ printf("silicon revision v%d.%d, ", major_rev, minor_rev);
+ if(esp_flash_get_size(NULL, &flash_size) != ESP_OK) {
+ printf("Get flash size failed");
+ return;
+ }
+
+ printf("%" PRIu32 "MB %s flash\n", flash_size / (uint32_t)(1024 * 1024),
+ (chip_info.features & CHIP_FEATURE_EMB_FLASH) ? "embedded" : "external");
+
+ printf("Minimum free heap size: %" PRIu32 " bytes\n", esp_get_minimum_free_heap_size());
+
+ for (int i = 10; i >= 0; i--) {
+ printf("Restarting in %d seconds...\n", i);
+ vTaskDelay(1000 / portTICK_PERIOD_MS);
+ }
+ printf("Restarting now.\n");
+ fflush(stdout);
+ esp_restart();
+}