Merge branch 'support/esp32c6' into 'master'

Extended examples support to esp32c6

See merge request app-frameworks/esp-rainmaker!391
This commit is contained in:
Piyush Shah
2023-10-27 19:06:11 +08:00
31 changed files with 216 additions and 23 deletions

View File

@@ -127,7 +127,7 @@ build_idf_v5.1:
extends: .build_template
image: espressif/idf:release-v5.1
variables:
EXAMPLE_TARGETS: "esp32 esp32s2 esp32c3 esp32s3"
EXAMPLE_TARGETS: "esp32 esp32s2 esp32c3 esp32s3 esp32c6"
build_matter:
stage: build
@@ -136,7 +136,7 @@ build_matter:
- build
variables:
PEDANTIC_FLAGS: ""
EXAMPLE_TARGETS: "esp32 esp32c3 esp32s3"
EXAMPLE_TARGETS: "esp32 esp32c3 esp32s3 esp32c6"
EXAMPLES: "matter/matter_light matter/matter_switch"
CONTROLLER_EXAMPLE_TARGET: "esp32s3"
script:

View File

@@ -9,7 +9,7 @@ menu "WS2812 RGB LED"
config WS2812_LED_GPIO
int "WS2812 LED GPIO"
default 8 if IDF_TARGET_ESP32C3
default 8 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 48 if IDF_TARGET_ESP32S3
default 18
depends on WS2812_LED_ENABLE

View File

@@ -2,8 +2,8 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
5 nvs, data, nvs, 0x10000, 0x6000,
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -2,15 +2,15 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.
config EXAMPLE_OUTPUT_GPIO_RED
int "Red GPIO"
default 2
default 2
help
Control digital RGB LEDs. Need to connect this GPIO to the red pin of the LED.

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
5 nvs, data, nvs, 0x10000, 0x6000,
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -26,15 +26,15 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.
config EXAMPLE_OUTPUT_GPIO
int "Output GPIO"
default 19
default 19
help
This is an output GPIO that will be connected to a relay or other driver circuit in most cases.
If the power changes, this GPIO output level will also change.

View File

@@ -0,0 +1,10 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs, data, nvs, 0x10000, 0x6000,
5 otadata, data, ota, , 0x2000
6 phy_init, data, phy, , 0x1000,
7 ota_0, app, ota_0, 0x20000, 0x1E0000,
8 ota_1, app, ota_1, 0x200000, 0x1E0000,
9 reserved, 0x06, , 0x3E0000, 0x1A000,
10 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -2,8 +2,8 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
5 nvs, data, nvs, 0x10000, 0x6000,
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -47,7 +47,7 @@ $ ./mfg_tool.py -v 0x131B -p 0x2 -cd $RMAKER_PATH/examples/matter/mfg/cd_131B_00
This not only generates the factory nvs binary required for matter, but also embeds the RainMaker MQTT Host url into it via the master.csv file. Optionally, you can embed the MQTT host into the firmware itself by using `idf.py menuconfig -> ESP RainMaker Config -> ESP_RMAKER_READ_MQTT_HOST_FROM_CONFIG` and then skipping the --csv and --mcsv options to mfg_tool
The factory binary generated above should be flashed onto the fctry partition (default : 0x3e0000, but check your partition table for exact address)
The factory binary generated above should be flashed onto the fctry partition (default : `0x3fa000` for ESP32-C6 and `0x3e0000` for other chips. Do check your partition table for exact address).
```
$ esptool.py write_flash 0x3e0000 $ESP_MATTER_PATH/tools/mfg_tool/out/131b_2/<node-id>/<node-id>-partition.bin

View File

@@ -19,6 +19,8 @@ if(NOT DEFINED ENV{ESP_MATTER_DEVICE_PATH})
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c3_devkit_m)
elseif("${IDF_TARGET}" STREQUAL "esp32s3")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32s3_devkit_c)
elseif("${IDF_TARGET}" STREQUAL "esp32c6")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c6_devkit_c)
else()
message(FATAL_ERROR "Unsupported IDF_TARGET")
endif()

View File

@@ -19,6 +19,8 @@ if(NOT DEFINED ENV{ESP_MATTER_DEVICE_PATH})
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c3_devkit_m)
elseif("${IDF_TARGET}" STREQUAL "esp32s3")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32s3_devkit_c)
elseif("${IDF_TARGET}" STREQUAL "esp32c6")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c6_devkit_c)
else()
message(FATAL_ERROR "Unsupported IDF_TARGET")
endif()

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, ,0xd000, 0x2000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
nvs_keys, data, nvs_keys,, 0x1000, encrypted
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, ,0xd000, 0x2000, encrypted
4 nvs, data, nvs, 0x10000, 0x6000,
5 nvs_keys, data, nvs_keys,, 0x1000, encrypted
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -19,6 +19,8 @@ if(NOT DEFINED ENV{ESP_MATTER_DEVICE_PATH})
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c3_devkit_m)
elseif("${IDF_TARGET}" STREQUAL "esp32s3")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32s3_devkit_c)
elseif("${IDF_TARGET}" STREQUAL "esp32c6")
set(ENV{ESP_MATTER_DEVICE_PATH} $ENV{ESP_MATTER_PATH}/device_hal/device/esp32c6_devkit_c)
else()
message(FATAL_ERROR "Unsupported IDF_TARGET")
endif()

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, ,0xd000, 0x2000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
nvs_keys, data, nvs_keys,, 0x1000, encrypted
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, ,0xd000, 0x2000, encrypted
4 nvs, data, nvs, 0x10000, 0x6000,
5 nvs_keys, data, nvs_keys,, 0x1000, encrypted
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -2,15 +2,15 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.
config EXAMPLE_OUTPUT_GPIO
int "Output GPIO"
default 19
default 19
help
This is an output GPIO that will be connected to a relay or other driver circuit in most cases.
If the power changes, this GPIO output level will also change.

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
5 nvs, data, nvs, 0x10000, 0x6000,
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -2,8 +2,8 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.
@@ -15,10 +15,10 @@ menu "Example Configuration"
Enable this option to test mobile push notifications. When enabled, turning on the switch using
push button will trigger a parameter notification {"Switch":{"Power":true}} and turning off will
trigger an alert "Switch was turned off".
config EXAMPLE_OUTPUT_GPIO
int "Output GPIO"
default 19
default 19
help
This is an output GPIO that will be connected to a relay or other driver circuit in most cases.
If the power changes, this GPIO output level will also change.

View File

@@ -0,0 +1,11 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs_key, data, nvs_keys, 0xF000, 0x1000, encrypted
5 nvs, data, nvs, 0x10000, 0x6000,
6 otadata, data, ota, , 0x2000
7 phy_init, data, phy, , 0x1000,
8 ota_0, app, ota_0, 0x20000, 0x1E0000,
9 ota_1, app, ota_1, 0x200000, 0x1E0000,
10 reserved, 0x06, , 0x3E0000, 0x1A000,
11 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000

View File

@@ -2,8 +2,8 @@ menu "Example Configuration"
config EXAMPLE_BOARD_BUTTON_GPIO
int "Boot Button GPIO"
default 0 if !IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3
default 9 if IDF_TARGET_ESP32C3 || IDF_TARGET_ESP32C6
default 0
help
GPIO number on which the "Boot" button is connected. This is generally used
by the application for custom operations like toggling states, resetting to defaults, etc.

View File

@@ -0,0 +1,10 @@
# Name, Type, SubType, Offset, Size, Flags
# Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
nvs, data, nvs, 0x10000, 0x6000,
otadata, data, ota, , 0x2000
phy_init, data, phy, , 0x1000,
ota_0, app, ota_0, 0x20000, 0x1E0000,
ota_1, app, ota_1, 0x200000, 0x1E0000,
reserved, 0x06, , 0x3E0000, 0x1A000,
fctry, data, nvs, 0x3FA000, 0x6000
1 # Name, Type, SubType, Offset, Size, Flags
2 # Note: Firmware partition offset needs to be 64K aligned, initial 36K (9 sectors) are reserved for bootloader and partition table
3 esp_secure_cert, 0x3F, , 0xD000, 0x2000, encrypted
4 nvs, data, nvs, 0x10000, 0x6000,
5 otadata, data, ota, , 0x2000
6 phy_init, data, phy, , 0x1000,
7 ota_0, app, ota_0, 0x20000, 0x1E0000,
8 ota_1, app, ota_1, 0x200000, 0x1E0000,
9 reserved, 0x06, , 0x3E0000, 0x1A000,
10 fctry, data, nvs, 0x3FA000, 0x6000

View File

@@ -0,0 +1,10 @@
#
# Use partition table which makes use of flash to the fullest
# Can be used for other platforms as well. But please keep in mind that fctry partition address is
# different than default, and the new address needs to be specified to `rainmaker.py claim`
#
CONFIG_PARTITION_TABLE_CUSTOM=y
CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_4mb_optimised.csv"
# To accomodate security features
CONFIG_PARTITION_TABLE_OFFSET=0xc000