Skip to content

Commit 12789b8

Browse files
authored
Merge branch 'espressif:master' into master
2 parents b88fb47 + 2fecc48 commit 12789b8

File tree

10 files changed

+327
-14
lines changed

10 files changed

+327
-14
lines changed

boards.txt

Lines changed: 178 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35211,6 +35211,184 @@ XIAO_ESP32S3.menu.EraseFlash.all.upload.erase_cmd=-e
3521135211

3521235212
##############################################################
3521335213

35214+
XIAO_ESP32S3_Plus.name=XIAO_ESP32S3_PLUS
35215+
XIAO_ESP32S3_Plus.vid.0=0x2886
35216+
XIAO_ESP32S3_Plus.pid.0=0x0063
35217+
XIAO_ESP32S3_Plus.vid.1=0x2886
35218+
XIAO_ESP32S3_Plus.pid.1=0x8063
35219+
35220+
XIAO_ESP32S3_Plus.bootloader.tool=esptool_py
35221+
XIAO_ESP32S3_Plus.bootloader.tool.default=esptool_py
35222+
35223+
XIAO_ESP32S3_Plus.upload.tool=esptool_py
35224+
XIAO_ESP32S3_Plus.upload.tool.default=esptool_py
35225+
XIAO_ESP32S3_Plus.upload.tool.network=esp_ota
35226+
35227+
XIAO_ESP32S3_Plus.upload.maximum_size=1310720
35228+
XIAO_ESP32S3_Plus.upload.maximum_data_size=327680
35229+
XIAO_ESP32S3_Plus.upload.flags=
35230+
XIAO_ESP32S3_Plus.upload.extra_flags=
35231+
XIAO_ESP32S3_Plus.upload.use_1200bps_touch=false
35232+
XIAO_ESP32S3_Plus.upload.wait_for_upload_port=false
35233+
35234+
XIAO_ESP32S3_Plus.serial.disableDTR=false
35235+
XIAO_ESP32S3_Plus.serial.disableRTS=false
35236+
35237+
XIAO_ESP32S3_Plus.build.tarch=xtensa
35238+
XIAO_ESP32S3_Plus.build.bootloader_addr=0x0
35239+
XIAO_ESP32S3_Plus.build.target=esp32s3
35240+
XIAO_ESP32S3_Plus.build.mcu=esp32s3
35241+
XIAO_ESP32S3_Plus.build.core=esp32
35242+
XIAO_ESP32S3_Plus.build.variant=XIAO_ESP32S3_Plus
35243+
XIAO_ESP32S3_Plus.build.board=XIAO_ESP32S3_PLUS
35244+
35245+
XIAO_ESP32S3_Plus.build.usb_mode=0
35246+
XIAO_ESP32S3_Plus.build.cdc_on_boot=1
35247+
XIAO_ESP32S3_Plus.build.msc_on_boot=0
35248+
XIAO_ESP32S3_Plus.build.dfu_on_boot=0
35249+
XIAO_ESP32S3_Plus.build.f_cpu=240000000L
35250+
XIAO_ESP32S3_Plus.build.flash_size=8MB
35251+
XIAO_ESP32S3_Plus.build.flash_freq=80m
35252+
XIAO_ESP32S3_Plus.build.flash_mode=dio
35253+
XIAO_ESP32S3_Plus.build.boot=qio
35254+
XIAO_ESP32S3_Plus.build.boot_freq=80m
35255+
XIAO_ESP32S3_Plus.build.partitions=default_8MB
35256+
XIAO_ESP32S3_Plus.build.defines=
35257+
XIAO_ESP32S3_Plus.build.loop_core=
35258+
XIAO_ESP32S3_Plus.build.event_core=
35259+
XIAO_ESP32S3_Plus.build.psram_type=qspi
35260+
XIAO_ESP32S3_Plus.build.memory_type={build.boot}_{build.psram_type}
35261+
35262+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.default=Disabled
35263+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.default.build.copy_jtag_files=0
35264+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.builtin=Integrated USB JTAG
35265+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.builtin.build.openocdscript=esp32s3-builtin.cfg
35266+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.builtin.build.copy_jtag_files=1
35267+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.external=FTDI Adapter
35268+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.external.build.openocdscript=esp32s3-ftdi.cfg
35269+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.external.build.copy_jtag_files=1
35270+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.bridge=ESP USB Bridge
35271+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.bridge.build.openocdscript=esp32s3-bridge.cfg
35272+
XIAO_ESP32S3_Plus.menu.JTAGAdapter.bridge.build.copy_jtag_files=1
35273+
35274+
XIAO_ESP32S3_Plus.menu.PSRAM.disabled=Disabled
35275+
XIAO_ESP32S3_Plus.menu.PSRAM.disabled.build.defines=
35276+
XIAO_ESP32S3_Plus.menu.PSRAM.disabled.build.psram_type=qspi
35277+
XIAO_ESP32S3_Plus.menu.PSRAM.opi=OPI PSRAM
35278+
XIAO_ESP32S3_Plus.menu.PSRAM.opi.build.defines=-DBOARD_HAS_PSRAM
35279+
XIAO_ESP32S3_Plus.menu.PSRAM.opi.build.psram_type=opi
35280+
35281+
XIAO_ESP32S3_Plus.menu.FlashMode.qio=QIO 80MHz
35282+
XIAO_ESP32S3_Plus.menu.FlashMode.qio.build.flash_mode=dio
35283+
XIAO_ESP32S3_Plus.menu.FlashMode.qio.build.boot=qio
35284+
XIAO_ESP32S3_Plus.menu.FlashMode.qio.build.boot_freq=80m
35285+
XIAO_ESP32S3_Plus.menu.FlashMode.qio.build.flash_freq=80m
35286+
XIAO_ESP32S3_Plus.menu.FlashMode.dio=DIO 80MHz
35287+
XIAO_ESP32S3_Plus.menu.FlashMode.dio.build.flash_mode=dio
35288+
XIAO_ESP32S3_Plus.menu.FlashMode.dio.build.boot=dio
35289+
XIAO_ESP32S3_Plus.menu.FlashMode.dio.build.boot_freq=80m
35290+
XIAO_ESP32S3_Plus.menu.FlashMode.dio.build.flash_freq=80m
35291+
35292+
XIAO_ESP32S3_Plus.menu.FlashSize.8M=8MB (64Mb)
35293+
XIAO_ESP32S3_Plus.menu.FlashSize.8M.build.flash_size=8MB
35294+
35295+
XIAO_ESP32S3_Plus.menu.LoopCore.1=Core 1
35296+
XIAO_ESP32S3_Plus.menu.LoopCore.1.build.loop_core=-DARDUINO_RUNNING_CORE=1
35297+
XIAO_ESP32S3_Plus.menu.LoopCore.0=Core 0
35298+
XIAO_ESP32S3_Plus.menu.LoopCore.0.build.loop_core=-DARDUINO_RUNNING_CORE=0
35299+
35300+
XIAO_ESP32S3_Plus.menu.EventsCore.1=Core 1
35301+
XIAO_ESP32S3_Plus.menu.EventsCore.1.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=1
35302+
XIAO_ESP32S3_Plus.menu.EventsCore.0=Core 0
35303+
XIAO_ESP32S3_Plus.menu.EventsCore.0.build.event_core=-DARDUINO_EVENT_RUNNING_CORE=0
35304+
35305+
XIAO_ESP32S3_Plus.menu.USBMode.hwcdc=Hardware CDC and JTAG
35306+
XIAO_ESP32S3_Plus.menu.USBMode.hwcdc.build.usb_mode=1
35307+
XIAO_ESP32S3_Plus.menu.USBMode.default=USB-OTG (TinyUSB)
35308+
XIAO_ESP32S3_Plus.menu.USBMode.default.build.usb_mode=0
35309+
35310+
XIAO_ESP32S3_Plus.menu.CDCOnBoot.default=Enabled
35311+
XIAO_ESP32S3_Plus.menu.CDCOnBoot.default.build.cdc_on_boot=1
35312+
XIAO_ESP32S3_Plus.menu.CDCOnBoot.cdc=Disabled
35313+
XIAO_ESP32S3_Plus.menu.CDCOnBoot.cdc.build.cdc_on_boot=0
35314+
35315+
XIAO_ESP32S3_Plus.menu.MSCOnBoot.default=Disabled
35316+
XIAO_ESP32S3_Plus.menu.MSCOnBoot.default.build.msc_on_boot=0
35317+
XIAO_ESP32S3_Plus.menu.MSCOnBoot.msc=Enabled (Requires USB-OTG Mode)
35318+
XIAO_ESP32S3_Plus.menu.MSCOnBoot.msc.build.msc_on_boot=1
35319+
35320+
XIAO_ESP32S3_Plus.menu.DFUOnBoot.default=Disabled
35321+
XIAO_ESP32S3_Plus.menu.DFUOnBoot.default.build.dfu_on_boot=0
35322+
XIAO_ESP32S3_Plus.menu.DFUOnBoot.dfu=Enabled (Requires USB-OTG Mode)
35323+
XIAO_ESP32S3_Plus.menu.DFUOnBoot.dfu.build.dfu_on_boot=1
35324+
35325+
XIAO_ESP32S3_Plus.menu.UploadMode.default=UART0 / Hardware CDC
35326+
XIAO_ESP32S3_Plus.menu.UploadMode.default.upload.use_1200bps_touch=false
35327+
XIAO_ESP32S3_Plus.menu.UploadMode.default.upload.wait_for_upload_port=false
35328+
XIAO_ESP32S3_Plus.menu.UploadMode.cdc=USB-OTG CDC (TinyUSB)
35329+
XIAO_ESP32S3_Plus.menu.UploadMode.cdc.upload.use_1200bps_touch=true
35330+
XIAO_ESP32S3_Plus.menu.UploadMode.cdc.upload.wait_for_upload_port=true
35331+
35332+
XIAO_ESP32S3_Plus.menu.PartitionScheme.default_8MB=Default with spiffs (3MB APP/1.5MB SPIFFS)
35333+
XIAO_ESP32S3_Plus.menu.PartitionScheme.default_8MB.build.partitions=default_8MB
35334+
XIAO_ESP32S3_Plus.menu.PartitionScheme.default_8MB.upload.maximum_size=3342336
35335+
XIAO_ESP32S3_Plus.menu.PartitionScheme.max_app_8MB=Maximum APP (7.9MB APP No OTA/No FS)
35336+
XIAO_ESP32S3_Plus.menu.PartitionScheme.max_app_8MB.build.partitions=max_app_8MB
35337+
XIAO_ESP32S3_Plus.menu.PartitionScheme.max_app_8MB.upload.maximum_size=8257536
35338+
XIAO_ESP32S3_Plus.menu.PartitionScheme.tinyuf2=TinyUF2 8MB (2MB APP/3.7MB FFAT)
35339+
XIAO_ESP32S3_Plus.menu.PartitionScheme.tinyuf2.build.custom_bootloader=bootloader-tinyuf2
35340+
XIAO_ESP32S3_Plus.menu.PartitionScheme.tinyuf2.build.custom_partitions=partitions-8MB
35341+
XIAO_ESP32S3_Plus.menu.PartitionScheme.tinyuf2.upload.maximum_size=2097152
35342+
XIAO_ESP32S3_Plus.menu.PartitionScheme.tinyuf2.upload.extra_flags=0x410000 "{runtime.platform.path}/variants/{build.variant}/tinyuf2.bin"
35343+
35344+
XIAO_ESP32S3_Plus.menu.CPUFreq.240=240MHz (WiFi)
35345+
XIAO_ESP32S3_Plus.menu.CPUFreq.240.build.f_cpu=240000000L
35346+
XIAO_ESP32S3_Plus.menu.CPUFreq.160=160MHz (WiFi)
35347+
XIAO_ESP32S3_Plus.menu.CPUFreq.160.build.f_cpu=160000000L
35348+
XIAO_ESP32S3_Plus.menu.CPUFreq.80=80MHz (WiFi)
35349+
XIAO_ESP32S3_Plus.menu.CPUFreq.80.build.f_cpu=80000000L
35350+
XIAO_ESP32S3_Plus.menu.CPUFreq.40=40MHz
35351+
XIAO_ESP32S3_Plus.menu.CPUFreq.40.build.f_cpu=40000000L
35352+
XIAO_ESP32S3_Plus.menu.CPUFreq.20=20MHz
35353+
XIAO_ESP32S3_Plus.menu.CPUFreq.20.build.f_cpu=20000000L
35354+
XIAO_ESP32S3_Plus.menu.CPUFreq.10=10MHz
35355+
XIAO_ESP32S3_Plus.menu.CPUFreq.10.build.f_cpu=10000000L
35356+
35357+
XIAO_ESP32S3_Plus.menu.UploadSpeed.921600=921600
35358+
XIAO_ESP32S3_Plus.menu.UploadSpeed.921600.upload.speed=921600
35359+
XIAO_ESP32S3_Plus.menu.UploadSpeed.115200=115200
35360+
XIAO_ESP32S3_Plus.menu.UploadSpeed.115200.upload.speed=115200
35361+
XIAO_ESP32S3_Plus.menu.UploadSpeed.256000.windows=256000
35362+
XIAO_ESP32S3_Plus.menu.UploadSpeed.256000.upload.speed=256000
35363+
XIAO_ESP32S3_Plus.menu.UploadSpeed.230400.windows.upload.speed=256000
35364+
XIAO_ESP32S3_Plus.menu.UploadSpeed.230400=230400
35365+
XIAO_ESP32S3_Plus.menu.UploadSpeed.230400.upload.speed=230400
35366+
XIAO_ESP32S3_Plus.menu.UploadSpeed.460800.linux=460800
35367+
XIAO_ESP32S3_Plus.menu.UploadSpeed.460800.macosx=460800
35368+
XIAO_ESP32S3_Plus.menu.UploadSpeed.460800.upload.speed=460800
35369+
XIAO_ESP32S3_Plus.menu.UploadSpeed.512000.windows=512000
35370+
XIAO_ESP32S3_Plus.menu.UploadSpeed.512000.upload.speed=512000
35371+
35372+
XIAO_ESP32S3_Plus.menu.DebugLevel.none=None
35373+
XIAO_ESP32S3_Plus.menu.DebugLevel.none.build.code_debug=0
35374+
XIAO_ESP32S3_Plus.menu.DebugLevel.error=Error
35375+
XIAO_ESP32S3_Plus.menu.DebugLevel.error.build.code_debug=1
35376+
XIAO_ESP32S3_Plus.menu.DebugLevel.warn=Warn
35377+
XIAO_ESP32S3_Plus.menu.DebugLevel.warn.build.code_debug=2
35378+
XIAO_ESP32S3_Plus.menu.DebugLevel.info=Info
35379+
XIAO_ESP32S3_Plus.menu.DebugLevel.info.build.code_debug=3
35380+
XIAO_ESP32S3_Plus.menu.DebugLevel.debug=Debug
35381+
XIAO_ESP32S3_Plus.menu.DebugLevel.debug.build.code_debug=4
35382+
XIAO_ESP32S3_Plus.menu.DebugLevel.verbose=Verbose
35383+
XIAO_ESP32S3_Plus.menu.DebugLevel.verbose.build.code_debug=5
35384+
35385+
XIAO_ESP32S3_Plus.menu.EraseFlash.none=Disabled
35386+
XIAO_ESP32S3_Plus.menu.EraseFlash.none.upload.erase_cmd=
35387+
XIAO_ESP32S3_Plus.menu.EraseFlash.all=Enabled
35388+
XIAO_ESP32S3_Plus.menu.EraseFlash.all.upload.erase_cmd=-e
35389+
35390+
##############################################################
35391+
3521435392
connaxio_espoir.name=Connaxio's Espoir
3521535393
connaxio_espoir.vid.0=0x10C4
3521635394
connaxio_espoir.pid.0=0x8D9A

cores/esp32/esp32-hal-misc.c

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,11 +156,13 @@ void enableCore0WDT() {
156156
}
157157
}
158158

159-
void disableCore0WDT() {
159+
bool disableCore0WDT() {
160160
TaskHandle_t idle_0 = xTaskGetIdleTaskHandleForCore(0);
161-
if (idle_0 == NULL || esp_task_wdt_delete(idle_0) != ESP_OK) {
161+
if (idle_0 == NULL || esp_task_wdt_status(idle_0) || esp_task_wdt_delete(idle_0) != ESP_OK) {
162162
log_e("Failed to remove Core 0 IDLE task from WDT");
163+
return false;
163164
}
165+
return true;
164166
}
165167

166168
#ifndef CONFIG_FREERTOS_UNICORE
@@ -171,11 +173,13 @@ void enableCore1WDT() {
171173
}
172174
}
173175

174-
void disableCore1WDT() {
176+
bool disableCore1WDT() {
175177
TaskHandle_t idle_1 = xTaskGetIdleTaskHandleForCore(1);
176-
if (idle_1 == NULL || esp_task_wdt_delete(idle_1) != ESP_OK) {
178+
if (idle_1 == NULL || esp_task_wdt_status(idle_1) || esp_task_wdt_delete(idle_1) != ESP_OK) {
177179
log_e("Failed to remove Core 1 IDLE task from WDT");
180+
return false;
178181
}
182+
return true;
179183
}
180184
#endif
181185

cores/esp32/esp32-hal.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -121,11 +121,11 @@ void feedLoopWDT();
121121

122122
//enable/disable WDT for the IDLE task on Core 0 (SYSTEM)
123123
void enableCore0WDT();
124-
void disableCore0WDT();
124+
bool disableCore0WDT();
125125
#ifndef CONFIG_FREERTOS_UNICORE
126126
//enable/disable WDT for the IDLE task on Core 1 (Arduino)
127127
void enableCore1WDT();
128-
void disableCore1WDT();
128+
bool disableCore1WDT();
129129
#endif
130130

131131
//if xCoreID < 0 or CPU is unicore, it will use xTaskCreate, else xTaskCreatePinnedToCore

libraries/LittleFS/src/LittleFS.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,11 @@ void LittleFSFS::end() {
9595
}
9696

9797
bool LittleFSFS::format() {
98-
disableCore0WDT();
98+
bool wdt_active = disableCore0WDT();
9999
esp_err_t err = esp_littlefs_format(partitionLabel_);
100-
enableCore0WDT();
100+
if (wdt_active) {
101+
enableCore0WDT();
102+
}
101103
if (err) {
102104
log_e("Formatting LittleFS failed! Error: %d", err);
103105
return false;

libraries/Zigbee/src/ZigbeeEP.h

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,13 @@ class ZigbeeEP {
105105
virtual void zbReadBasicCluster(const esp_zb_zcl_attribute_t *attribute); //already implemented
106106
virtual void zbIdentify(const esp_zb_zcl_set_attr_value_message_t *message);
107107

108+
virtual void zbIASZoneStatusChangeNotification(const esp_zb_zcl_ias_zone_status_change_notification_message_t *message) {};
109+
110+
virtual void addBoundDevice(zb_device_params_t *device) {
111+
_bound_devices.push_back(device);
112+
_is_bound = true;
113+
}
114+
108115
void onIdentify(void (*callback)(uint16_t)) {
109116
_on_identify = callback;
110117
}
@@ -125,10 +132,6 @@ class ZigbeeEP {
125132
SemaphoreHandle_t lock;
126133
zb_power_source_t _power_source;
127134

128-
void addBoundDevice(zb_device_params_t *device) {
129-
_bound_devices.push_back(device);
130-
_is_bound = true;
131-
}
132135
friend class ZigbeeCore;
133136
};
134137

libraries/Zigbee/src/ZigbeeHandlers.cpp

Lines changed: 28 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ static esp_err_t zb_attribute_set_handler(const esp_zb_zcl_set_attr_value_messag
99
static esp_err_t zb_attribute_reporting_handler(const esp_zb_zcl_report_attr_message_t *message);
1010
static esp_err_t zb_cmd_read_attr_resp_handler(const esp_zb_zcl_cmd_read_attr_resp_message_t *message);
1111
static esp_err_t zb_configure_report_resp_handler(const esp_zb_zcl_cmd_config_report_resp_message_t *message);
12+
static esp_err_t zb_cmd_ias_zone_status_change_handler(const esp_zb_zcl_ias_zone_status_change_notification_message_t *message);
1213
static esp_err_t zb_cmd_default_resp_handler(const esp_zb_zcl_cmd_default_resp_message_t *message);
1314

1415
// Zigbee action handlers
@@ -20,8 +21,11 @@ static esp_err_t zb_action_handler(esp_zb_core_action_callback_id_t callback_id,
2021
case ESP_ZB_CORE_REPORT_ATTR_CB_ID: ret = zb_attribute_reporting_handler((esp_zb_zcl_report_attr_message_t *)message); break;
2122
case ESP_ZB_CORE_CMD_READ_ATTR_RESP_CB_ID: ret = zb_cmd_read_attr_resp_handler((esp_zb_zcl_cmd_read_attr_resp_message_t *)message); break;
2223
case ESP_ZB_CORE_CMD_REPORT_CONFIG_RESP_CB_ID: ret = zb_configure_report_resp_handler((esp_zb_zcl_cmd_config_report_resp_message_t *)message); break;
23-
case ESP_ZB_CORE_CMD_DEFAULT_RESP_CB_ID: ret = zb_cmd_default_resp_handler((esp_zb_zcl_cmd_default_resp_message_t *)message); break;
24-
default: log_w("Receive unhandled Zigbee action(0x%x) callback", callback_id); break;
24+
case ESP_ZB_CORE_CMD_IAS_ZONE_ZONE_STATUS_CHANGE_NOT_ID:
25+
ret = zb_cmd_ias_zone_status_change_handler((esp_zb_zcl_ias_zone_status_change_notification_message_t *)message);
26+
break;
27+
case ESP_ZB_CORE_CMD_DEFAULT_RESP_CB_ID: ret = zb_cmd_default_resp_handler((esp_zb_zcl_cmd_default_resp_message_t *)message); break;
28+
default: log_w("Receive unhandled Zigbee action(0x%x) callback", callback_id); break;
2529
}
2630
return ret;
2731
}
@@ -132,6 +136,28 @@ static esp_err_t zb_configure_report_resp_handler(const esp_zb_zcl_cmd_config_re
132136
return ESP_OK;
133137
}
134138

139+
static esp_err_t zb_cmd_ias_zone_status_change_handler(const esp_zb_zcl_ias_zone_status_change_notification_message_t *message) {
140+
if (!message) {
141+
log_e("Empty message");
142+
return ESP_FAIL;
143+
}
144+
if (message->info.status != ESP_ZB_ZCL_STATUS_SUCCESS) {
145+
log_e("Received message: error status(%d)", message->info.status);
146+
return ESP_ERR_INVALID_ARG;
147+
}
148+
log_v(
149+
"IAS Zone Status Notification: from address(0x%x) src endpoint(%d) to dst endpoint(%d) cluster(0x%x)", message->info.src_address.u.short_addr,
150+
message->info.src_endpoint, message->info.dst_endpoint, message->info.cluster
151+
);
152+
153+
for (std::list<ZigbeeEP *>::iterator it = Zigbee.ep_objects.begin(); it != Zigbee.ep_objects.end(); ++it) {
154+
if (message->info.dst_endpoint == (*it)->getEndpoint()) {
155+
(*it)->zbIASZoneStatusChangeNotification(message);
156+
}
157+
}
158+
return ESP_OK;
159+
}
160+
135161
static esp_err_t zb_cmd_default_resp_handler(const esp_zb_zcl_cmd_default_resp_message_t *message) {
136162
if (!message) {
137163
log_e("Empty message");
Binary file not shown.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# ESP-IDF Partition Table
2+
# Name, Type, SubType, Offset, Size, Flags
3+
# bootloader.bin,, 0x1000, 32K
4+
# partition table,, 0x8000, 4K
5+
nvs, data, nvs, 0x9000, 20K,
6+
otadata, data, ota, 0xe000, 8K,
7+
ota_0, 0, ota_0, 0x10000, 2048K,
8+
ota_1, 0, ota_1, 0x210000, 2048K,
9+
uf2, app, factory,0x410000, 256K,
10+
ffat, data, fat, 0x450000, 3776K,

0 commit comments

Comments
 (0)