Arduino CLI ESP32-S3-WROOM-1 N16N8 ota update 파티션 설정하는 방법.


파티션 설정 방법.
파티션 테이블 확인 방법.

==================================
파티션 설정 방법.
==================================

esp32의 오프셋 규칙이 있어, 맞춰서 설정해야 함.

ESP32-S3-WROOM-1 N16N8 ota update 
app는 5m, nvs는 512KB 로 설정함.
저는 필요성이 있어 nvs를 많이 크게 잡았습니다. 

partitions.csv
# Name,   Type, SubType, Offset,     Size,       Flags
otadata,  data, ota,     0x9000,     0x2000,
app0,     app,  ota_0,   0x10000,    0x500000,
app1,     app,  ota_1,   0x510000,   0x500000,
nvs,      data, nvs,     0xA10000,   0x80000,
spiffs,   data, spiffs,  0xA90000,   0x570000,

partitions.csv 파일을 프로젝트 폴더의 filename.ino 와 같은 폴더에 위치 합니다.
이러기만 해도 다른 설정을 무시하고 자동으로 적용되는 거 같습니다.

하지만 더 정확히 하기 위해 sketch.yaml 의 설정을 다음과 같이 합니다.
fqbn: esp32:esp32:esp32s3:PartitionScheme=custom,FlashSize=16M
(예제를 위해 다른 설정을 지웠습니다.) 

sketch.yaml 을 사용하지 않는다면 다음과 같습니다.
arduino-cli compile --fqbn esp32:esp32:esp32s3:PartitionScheme=custom,FlashSize=16M "sketchbook\test" 


==================================
파티션 테이블 확인 방법.
==================================

- 파티션 정보 읽어오기.
아래 명령어를 이용해 partition_table.bin 를 만듭니다.
arduino-cli_1.3.1_Windows_64bit\data\packages\esp32\tools\esptool_py\5.1.0
esptool.exe --port COM4 read_flash 0x8000 0xC00 partition_table.bin

- 파티션 정보 출력하기.
partition_table.bin 을 파싱해 사람이 읽을 수 있도록 합니다.
arduino-cli_1.3.1_Windows_64bit\data\packages\esp32\hardware\esp32\3.3.2\tools
gen_esp32part.exe partition_table.bin

Parsing binary partition input...
Verifying table...
# ESP-IDF Partition Table
# Name, Type, SubType, Offset, Size, Flags
otadata,data,ota,0x9000,8K,
app0,app,ota_0,0x10000,5M,
app1,app,ota_1,0x510000,5M,
nvs,data,nvs,0xa10000,512K,
spiffs,data,spiffs,0xa90000,5568K,
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ValueError: I/O operation on closed file.

댓글

이 블로그의 인기 게시물

콘탁 Kontakt, KOMPLETE 저렴한 구입 방법.

대성 산업 탁상 시계 DS-173 메뉴얼

샤오신 패드 12.7 2025 사용기, 충전기에 대해.