Skip to content

Releases: GNBD/ats-mini-dualboot

ats-mini dualboot (v4.1.0 DES)

Choose a tag to compare

@GNBD GNBD released this 02 Oct 14:51

ats-mini dualboot (v4.1.0 DES) — Boot Manager (테마)

원클릭 웹 플래셔 (설치 없이): https://gnbd.github.io/ats-mini-dualboot/install.html

SI4732 (ESP32-S3 N16R8)용 부트 매니저(리커버리)입니다. 전원을 켜면 이 리커버리가 먼저 뜨고, app0 / app1 중 하나를 골라 부팅합니다.

테스트가 필요합니다. 아직 실사용 검증이 충분하지 않습니다. 크래시, 부팅 실패, 데이터 손실 등의 문제가 발생할 수 있으므로 사용 전에 반드시 백업을 권장합니다.

문제가 발생하면 재현 방법(어떤 메뉴에서 어떤 동작을 했는지, 기기 상태, 가능하면 시리얼 로그)을 함께 적어 Issues 에 자유롭게 남겨주세요. 큰 도움이 됩니다.

소스: ats-mini-dualboot/ats-mini-recovery-theme/ats-mini-recovery-theme.ino / 버전: 4.1.0

빌드 값
FQBN esp32:esp32:esp32s3 + CDCOnBoot=cdc, USBMode=hwcdc, FlashMode=qio, FlashSize=16M, PSRAM=opi, PartitionScheme=custom
리커버리 이미지 ats-mini-recovery-4.1.0.bin — 1,251,312 B
MD5 76A21DE895530215AFD118E4A7E4F374
업로드 주소 0x860000

이번 버전에서 할 수 있는 것

  • 두 슬롯(app0/app1)의 용량을 서로 조절(리사이즈) — 한쪽을 키우면 다른 쪽이 그만큼 줄어듭니다(각 1.0~6.0MB, 0.5MB 단위). Partition → Resize. 두 슬롯이 모두 비어 있을 때만 됩니다.
  • 슬롯별 설정 백업/복원 (실험적 · 일부 펌웨어 미지원) — app0과 app1은 서로 다른 저장소를 씁니다. 각 슬롯의 설정을 .nvs 파일로 내보내기(Export) 하고 다시 불러오기(Import) 합니다. Settings → Backup. (앱이 설정을 다른 곳에 저장하면 복원이 모든 설정을 되돌리지 못할 수 있습니다.)
  • LittleFS 파일 관리 — 내장메모리의 파일 목록과 남은 용량을 보고, 파일 이름을 바꾸거나 삭제합니다. Settings → LittleFS.
  • 파티션 점검/복구 — Partition → Info에서 파티션별 주소·용량·사용량을 확인하고, Repair로 파티션 테이블을 정본으로 복구합니다.
  • 웹 UI 정리 + 계정 보호 — 상단 탭(Status / Firmware / Files / Network / System), 업로드·플래싱 진행 모달, 웹 계정(ID/PW)으로 접속 보호. Settings → Network.
  • 부팅 방식 선택 — Boot App0 / Boot App1 에서 Default(길게 누른 뒤 떼면 부팅) 또는 Hold mode.

참고(DES): app0은 ENV0 저장소, app1은 ENV1 저장소를 사용해 두 앱의 설정이 섞이지 않습니다.


리커버리(부트 매니저) 플래싱 방법

리커버리는 flash의 정해진 주소에 씁니다. 이미 있는 건 그대로 두고, 바꿀 것만 쓰면 됩니다.

파일 주소 설명
ats-mini-bootloader-v4.bin 0x0 recovery-first 커스텀 부트로더
ats-mini-partitions-v4.bin 0x8000 파티션 테이블 (Table A)
ats-mini-recovery-4.1.0.bin 0x860000 부트 매니저 본체

부트 매니저만 새 버전으로 교체 (v4.0.0 → v4.1.0, 설정·앱 슬롯 유지):

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 --before default-reset --after hard-reset write-flash 0x860000 ats-mini-recovery-4.1.0.bin

처음 설치 / 전체 초기화 (부트로더부터 전부 한 번에):

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 write-flash 0x0 ats-mini-bootloader-v4.bin 0x8000 ats-mini-partitions-v4.bin 0x860000 ats-mini-recovery-4.1.0.bin
  • COM7 은 실제 포트로 바꾸세요 (Windows: 장치 관리자 → 포트).
  • 앱 펌웨어(app0/app1) 는 리커버리를 켠 뒤 웹 업로더로 올리거나, esptool로 app0=0x10000 / app1=0x390000 에 씁니다.
  • 파티션 테이블이 바뀌지 않는 업데이트는 0x860000 한 줄만 쓰면 됩니다.

자세한 내용은 저장소의 ats-mini-recovery-theme/README.md 를 참고하세요.

ats-mini dualboot (v4.0.0 DES)

Choose a tag to compare

@GNBD GNBD released this 01 Oct 14:30

ats-mini dualboot (v4.0.0 Dual Environment System) — Boot Manager Theme

One-click install(no installation required): https://gnbd.github.io/ats-mini-dualboot/install.html

SI4732 (ESP32-S3 N16R8)용 부트 매니저(리커버리) 테마 버전입니다.

전원을 켜면 부트 매니저가 먼저 실행되며, app0 또는 app1 중 하나를 선택하여 부팅할 수 있습니다.

소스: ats-mini-dualboot/ats-mini-recovery-theme/ats-mini-recovery-theme.ino
버전: RECOVERY_VERSION 4.0.0

빌드 값
FQBN esp32:esp32:esp32s3 + CDCOnBoot=cdc, USBMode=hwcdc, FlashMode=qio, FlashSize=16M, PSRAM=opi, PartitionScheme=custom
이미지 ats-mini-recovery-4.0.0.bin — 1,228,560 B
MD5 0BB79C1F2949B2C3C7C5ED1A318E8A3B
업로드 주소 0x860000

⚠️ 꼭 읽어주세요

  • 테스트가 필요합니다. 아직 실사용 검증이 충분하지 않습니다. 크래시, 부팅 실패, 데이터 손실 등의 문제가 발생할 수 있으므로 사용 전에 반드시 백업을 권장합니다.
  • 기존 사용자도 최신 릴리스로 업데이트하거나 다시 설치하는 것을 권장합니다.
  • 기존 버전(v3.x 이하)과 호환되지 않습니다. 파티션 테이블과 설정 영역이 변경되었습니다.
  • 이 버전을 설치하면 기존 설정이 초기화될 수 있습니다. 기존 Wi-Fi 등의 설정은 자동으로 이전되지 않습니다.
  • app0과 app1은 서로 독립된 펌웨어 저장 영역과 설정 영역을 사용합니다.
    • app0 → ENV0
    • app1 → ENV1
  • 두 슬롯은 서로 다른 물리적 저장 영역을 사용하므로 한 슬롯의 설정이 다른 슬롯에 섞이지 않습니다. 단, 두 영역은 동일한 ESP32의 플래시 칩 내부에 존재합니다.
  • app0과 app1에는 **앱 전용 OTA 이미지(바이너리)**만 넣을 수 있습니다.
  • 부트로더와 파티션 테이블이 포함된 merged 이미지 또는 전체 Flash 덤프를 앱 슬롯에 넣지 마세요.
  • 16MB Flash + 8MB PSRAM(N16R8) 기기 전용입니다. N8R2 등 다른 Flash 크기의 기기에는 사용하지 마세요.

파티션 구성 (v4.0.0 DES)

nvs부터 recovery까지의 주요 영역은 v3.x와 동일한 주소를 사용하며, 이후 영역이 새롭게 구성되었습니다.

파티션 Offset 크기 비고
nvs 0x009000 20K v3.x 동일
otadata 0x00E000 8K v3.x 동일
app0 0x010000 3.5M 앱 슬롯 0
app1 0x390000 3.5M 앱 슬롯 1
ffat 0x710000 1.3M FAT
recovery 0x860000 1.625M 부트 매니저
littlefs 0xA00000 5.58M 기존 6MB에서 축소
rec_settings 0xF95000 32K 리커버리 전용 NVS
settings (ENV0) 0xF9D000 128K app0 전용 설정
settings (ENV1) 0xFBD000 128K app1 전용 설정
coredump 0xFDF000 128K Core Dump
Table B 0xFFF000 4K 파티션 테이블 백업 영역

Table B는 파티션 레이아웃에 포함된 백업 영역이며, 일반적인 설치 과정에서 사용자가 별도로 플래시할 필요는 없습니다.

슬롯별 저장 영역

각 앱 슬롯은 독립적으로 동작하도록 구성되어 있습니다.

app0
 ├─ Firmware: 0x010000 ~ 0x38FFFF
 └─ Settings: ENV0 @ 0xF9D000

app1
 ├─ Firmware: 0x390000 ~ 0x70FFFF
 └─ Settings: ENV1 @ 0xFBD000

따라서 app0에서 저장한 설정은 app1에 영향을 주지 않으며, 반대로 app1의 설정도 app0에 영향을 주지 않습니다.

각 슬롯을 처음 사용하는 경우에는 해당 슬롯에서 Wi-Fi 등의 설정을 별도로 입력해야 합니다.

릴리스 파일

최신 릴리스에는 다음 파일이 포함됩니다.

파일 주소 용도
ats-mini-bootloader-v4.bin 0x000000 부트로더
ats-mini-partitions-v4.bin 0x008000 파티션 테이블
ats-mini-recovery-4.0.0.bin 0x860000 부트 매니저 / 리커버리

플래싱

1. 원본 Flash 백업 — 권장

업데이트 또는 초기 설치 전에 현재 Flash 전체를 백업하는 것을 권장합니다.

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 921600 read-flash 0x0 ALL original-flash.bin

COM7은 자신의 장치에 맞는 포트로 변경하세요.


2. 부트 매니저만 업데이트

현재 파티션과 앱 슬롯, 설정을 유지하면서 부트 매니저만 교체하려면:

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 --before default-reset --after hard-reset write-flash 0x860000 ats-mini-recovery-4.0.0.bin

이 방법은 기존 app0, app1 및 설정 영역을 건드리지 않습니다.


3. 처음 설치 / 전체 초기화

새로운 v4.0.0 환경으로 처음 설치하거나 전체 플래시를 다시 구성하는 경우:

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 write-flash 0x000000 ats-mini-bootloader-v4.bin 0x008000 ats-mini-partitions-v4.bin 0x860000 ats-mini-recovery-4.0.0.bin

이 과정에서는 부트로더, 파티션 테이블, 리커버리를 설치합니다.

기존 앱 펌웨어 및 사용자 데이터까지 완전히 초기화해야 하는 경우에는 Flash 전체를 별도로 지우는 과정이 필요할 수 있습니다.


4. v3.2.1 → v4.0.0 업그레이드

v3.2.1에서 v4.0.0으로 업데이트하는 경우:

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 --before default-reset --after hard-reset write-flash 0x008000 ats-mini-partitions-v4.bin 0x860000 ats-mini-recovery-4.0.0.bin

이 과정에서 v4.0.0 파티션 테이블과 새로운 리커버리를 적용합니다.

업데이트 후 첫 부팅 시 기존 littlefs 형식을 감지하면 리커버리가 자동으로 처리합니다.

화면에 다음과 같은 메시지가 표시될 수 있습니다.

LITTLEFS / Old format found

이 과정에는 약 20초 정도가 걸릴 수 있습니다.


5. LittleFS를 미리 초기화하는 경우

필요한 경우 littlefs 영역을 직접 지울 수 있습니다.

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 erase-region 0xA00000 0x595000

이 작업은 LittleFS에 저장된 데이터를 삭제합니다. 필요한 데이터가 있다면 먼저 백업하세요.

주의사항

  • 이 버전은 아직 개발 및 테스트가 진행 중입니다.
  • 문제가 발생할 경우 부팅 실패 또는 데이터 손실이 발생할 수 있습니다.
  • 반드시 원본 Flash 백업을 먼저 만들어 두는 것을 권장합니다.
  • app0과 app1에는 앱 전용 바이너리만 업로드하세요.
  • merged firmware, bootloader, partition table 또는 전체 Flash 이미지를 앱 슬롯에 업로드하지 마세요.
  • 다른 Flash 용량을 사용하는 기기에서는 파티션 주소가 다를 수 있으므로 사용하지 마세요.
  • 기존 v3.x 설정은 v4.0.0에서 그대로 사용할 수 없을 수 있습니다.

자세한 내용은 ats-mini-recovery-theme/README.md를 참고하세요.

ats-mini dualboot (v3.2.1)

Choose a tag to compare

@GNBD GNBD released this 30 Sep 13:55

ats-mini dualboot (v3.2.1) — Boot Manager theme

SI4732 (ESP32-S3 N16R8) 용 부트 매니저(리커버리)의 테마 UI 버전입니다.
v3.0.0 / v3.1.0 위에서 UI 구조를 타일 셸로 다시 만들고, PSRAM 스프라이트로
깜빡임을 없앴습니다.

20260930_224356

소스: ats-mini-dualboot/ats-mini-recovery-theme/ats-mini-recovery-theme.ino
버전: RECOVERY_VERSION 3.2.1

빌드 값
FQBN esp32:esp32:esp32s3 + CDCOnBoot=cdc, USBMode=hwcdc, FlashMode=qio, FlashSize=16M, PSRAM=opi, PartitionScheme=custom
이미지 ats-mini-recovery-3.2.1.bin — 1,222,464 B
MD5 21849473EB274732D7840CEBDD077EF4
플래시 주소 0x860000

호환성

  • v3.0.0 / v3.1.x 와 호환 — 파티션 테이블·부트로더가 동일. 리커버리 이미지만
    교체하면 됩니다 (0x860000). 설정(NVS/settings)과 앱 슬롯은 유지됩니다.
  • v2.0.1 이하와 비호환 — 파티션 배치가 다르므로 전체 복구 플래시가 필요합니다.
  • 16MB 전용 — N8R2 등 다른 flash 크기에 올리면 부팅되지 않습니다 (lite 사용).

변경사항

UI 구조 (타일 셸)

  • 모든 선택 화면을 타일 그리드로 재구성: 메인 메뉴, Settings, WiFi, 부팅 모드,
    펌웨어 대상·소스 선택, Erase. (WiFi 스캔 목록·파일 목록·URL 선택은 행 레이아웃 유지)
  • 공통 UiKit: 24px 헤더(제목 + 슬롯 칩 + 네트워크 아이콘 + 배터리 전압)와
    하단 힌트 바를 모든 화면에 표시.
  • 순수 검정 배경 + 세이지 그린 액센트. 남색 계열 표면색은 무채색 차콜로 교체.
  • 스플래시: 제목 크기 유지, "hold encoder" 안내 자리에 프로젝트 URL 표시.
  • About: QR / 라이브러리 / 라이선스 / 도움말 / 파티션 페이지 (9개 항목 2열 배치).

조작 규약

  • 회전=이동, 길게=선택/열기, 클릭=뒤로. (기존 Back 행 제거)
  • 길게 누르면 0.3초 도달 즉시 실행 (손을 떼지 않아도 진입), 같은 눌림은 1회만 소비.
  • 메인 메뉴에서 클릭은 무시.
  • Erase: 클릭=체크 토글, 길게=삭제 (아무것도 안 골랐으면 뒤로).
  • Boot App0/App1 의 Yes/No 확인 제거 — 길게 누르면 즉시 실행.
  • Yes/No 팝업은 버튼만 다시 그려 깜빡임 제거, 포커스는 초록, 길게=확인·클릭=취소.
  • Settings 순서: WiFi / Brightness / About. 밝기는 settings 파티션에 저장.

깜빡임 제거 (PSRAM 스프라이트)

  • 모든 화면을 오프스크린 스프라이트(PSRAM)에 그린 뒤 LCD로 한 번에 전송.
  • 화면 전환 시 검게 번쩍이던 현상 제거.

버그 수정

  • 긴 URL 마퀴가 갱신되지 않던 문제, 선택 행 텍스트가 박스 밖으로 새던 문제 수정.
  • 스프라이트 전환 후 push 가 빠져 화면이 비어 있던 5곳 수정
    (Hold mode 진행 화면, 다운로드 초기 화면, URL 미설정 안내, 다운로드 실패 안내 2곳).

플래싱 가이드

준비 — 원본 백업 (권장)

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 921600 read-flash 0x0 ALL original-flash.bin

어디에 무엇을 올리나

파일마다 정해진 주소가 있습니다. 부트 매니저만 바꾸려면 0x860000 한 줄만,
처음 설치하거나 초기화하려면 아래 표를 전부 올리면 됩니다.

파일 주소 설명
ats-mini-bootloader.bin 0x0 recovery-first 커스텀 부트로더
ats-mini-partitions.bin 0x8000 파티션 테이블
boot_app0.bin 0xe000 otadata 초기화 (부팅 슬롯 초기값)
app0.bin 0x10000 앱 슬롯 0 (앱 슬롯 1은 0x390000)
ats-mini-recovery-3.2.1.bin 0x860000 부트 매니저 (이 릴리즈)

전부 한 번에 올리기:

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 write-flash 0x0 ats-mini-bootloader.bin 0x8000 ats-mini-partitions.bin 0xe000 boot_app0.bin 0x10000 app0.bin 0x860000 ats-mini-recovery-3.2.1.bin

부트 매니저만 바꾸기 (v3.0.0 / v3.1.x 에서 업그레이드 — 설정·앱 슬롯 유지):

uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 --before default-reset --after hard-reset write-flash 0x860000 ats-mini-recovery-3.2.1.bin

flash-recovery.ps1 를 쓰면 포트·리셋을 자동으로 처리합니다:

.\flash-recovery.ps1 -Offset 0x860000 -Image .\ats-mini-recovery-3.2.1.bin -Port COM7

부트 매니저 자신은 실행 중인 슬롯을 덮어쓸 수 없으므로, 새 부트 매니저는 위처럼
0x860000 에 올립니다.

앱 올리기 (app0 / app1)

앱(라디오 펌웨어)은 app0 또는 app1 에 넣습니다. 어느 슬롯에 넣든 부트 매니저에서
그 슬롯을 Boot 하면 됩니다.

  • 부트 매니저에서 — Firmware Update → 대상 슬롯(App0/App1) → 소스(Local files /
    Network) → 파일 선택 → 플래시.
  • 웹서버에서 — WiFi 연결 후 http://<IP>/ 에서 .bin 업로드 → 슬롯 지정 → Flash.
  • esptool 로 — app0 은 0x10000, app1 은 0x390000:
uvx --from esptool esptool.py --chip esp32s3 --port COM7 --baud 460800 write-flash 0x10000 app0.bin

슬롯당 최대 3.5MB, ESP32-S3 앱 이미지(첫 바이트 0xE9)여야 합니다. 통합(merged)
이미지를 넣어도 앱 부분만 추출해 씁니다.


⚠️ 미완성 (work in progress) — 아직 완성되지 않았고, 버그나 예상치 못한 문제가
발생할 수 있습니다. 크래시, 부팅 실패, 데이터 손실 가능성이 있으니 주의해서
사용하세요. (The firmware is not finished; bugs or unexpected problems may occur —
crashes, boot failures, or data loss. Use it with caution.)

ats-mini dualboot (v3.1.0)

Choose a tag to compare

@GNBD GNBD released this 28 Sep 01:10

ats-mini dualboot (v3.1.0)

ATS Mini dual-boot (ESP32-S3 N16R8) 부트 매니저 릴리스입니다.

⚠️ The firmware may not be fully stable, and there may still be undiscovered bugs. Please use it with caution.
Please use a translator if needed.

⚠️ app0 에서 OTA 하면 app1 이 제거될 수 있음

app0 펌웨어(메인 앱) 안에서 OTA 를 하면 app1 슬롯이 덮어써져 제거될 수
있습니다.

3.0.0 사용자: 리커버리만 올리면 됩니다

파티션 테이블이 v3.0.0과 동일하므로 0x860000에 리커버리만 올리면 됩니다.
설정과 앱슬롯은 건드리지 않습니다. 부트로더·파티션 테이블 변경이 없어
전체 복구 플래시도 필요 없습니다.

.\flash-recovery.ps1 -Image .\ats-mini-recovery-3.1.0.bin

v2.0.1 이하에서는 기존과 같이 전체 복구 플래시(bootloader +
partitions + boot_app0 + app0 + recovery)가 필요합니다.

포함 파일

파일 주소 비고
ats-mini-bootloader.bin 0x0 변경 없음
ats-mini-partitions.bin 0x8000 변경 없음
ats-mini-recovery-3.1.0.bin 0x860000 1,200,496 / 1,703,936 B

⚠️주의: usb를 이용하여 0x010000또는 0x390000 주소에
직접 이미지를 업로드 할 경우 OTA 이미지만 지원합니다. Merge(통합펌웨어) 는 사용불가.

변경사항

  • 웹 서버 백그라운드 실행
  • 웹에서 WiFi 스캔·연결
  • 파티션별 사용량 표시
  • 플래시 진행바
  • 플래시 후 새 앱 자동 부팅
  • 파일 다운로드
  • LCD 메뉴 정리, Boot Manager 표기

라이선스

⚠️ 소스 누락 안내

이 릴리스의 .bin은 저장소 히스토리 재작성 이전 커밋에서 빌드했고, 해당 리비전의 소스는 현재 공개 저장소에 남아 있지 않습니다(소스 누락).
현재 ats-mini-recovery-beta/ 코드는 이 릴리스의 후속 버전이며, 이전 리비전 보관본이 확인되면 이 본문에 위치를 추가 안내하겠습니다.

ats-mini dualboot (v3.0.0)

Choose a tag to compare

@GNBD GNBD released this 26 Sep 15:03

ats-mini dualboot (v3.0.0)

ATS Mini dual-boot (ESP32-S3 N16R8) 부트 매니저 릴리스입니다.

⚠️The firmware may not be fully stable, and there may still be undiscovered bugs. Please use it with caution.

⚠️ app0 에서 OTA 하면 app1 이 제거될 수 있음

app0 펌웨어(메인 앱) 안에서 OTA 를 하면 app1 슬롯이 덮어써져 제거될 수
있습니다.

⚠️ 이전 버전과 호환되지 않습니다 (중요)

v3.0.0 은 v2.0.1 이하와 파티션 레이아웃이 완전히 다릅니다.

파티션 v2.0.1 이하 v3.0.0
app0 0x010000 2.0M 0x010000 3.5M
app1 0x210000 2.0M 0x390000 3.5M
ffat (없음) 0x710000 1.3M
recovery 0x610000 1.0M 0x860000 1.7M
littlefs 0x810000 7.75M 0xA00000 5.8M
  • 이전 릴리즈(v2.0.1 이하) 위에 이 릴리즈를 파일 일부만 덮어쓰면 동작하지
    않습니다. (특히 recovery 위치가 0x610000 → 0x860000 로 바뀜)
  • 올릴 때는 반드시 전체 복구 플래시(bootloader + partitions + boot_app0 +
    app0 + recovery)로 하세요.
  • v2.0.1 이하로 되돌릴 때도 그 버전의 전체 세트로 다시 플래시해야 하며,
    설정(nvs/settings/littlefs)이 초기화되고 앱 슬롯(app0/app1)도
    지워집니다.

포함 파일

파일 주소 설명
ats-mini-bootloader.bin 0x0 커스텀 부트로더 (recovery 우선 부팅)
ats-mini-partitions.bin 0x8000 파티션 테이블 (ffat 포함)
ats-mini-recovery-3.0.0.bin 0x860000 부트 매니저 v3.0.0 (hwcdc)

ats-mini-recovery-3.0.0.bin 변경사항

  • Boot App0/App1 → 모드 선택 서브메뉴
    • Default boot : 기존과 동일하게 바로 앱으로 부팅
    • Hold mode : 버튼을 누르고 있으라는 안내 화면 후 앱 부팅
      • PRESS NOW → 누르고 있는 동안 진행바 + KEEP HOLDING 안내
      • 안내/진행 중에는 버튼 입력을 아예 읽지 않으므로
        길게 눌러도 재부팅되지 않고 리커버리에 다시 진입하지 않습니다
      • 화면이 켜질 때까지 인코더 홀드를 유지해야 합니다
  • 화면 정리
    • Flash Help: 파티션 테이블을 런타임에 조회(esp_partition_find)해
      주소+이름을 2열로 표시 — 파티션 구성이 바뀌어도 자동 반영
  • v3.0.0

라이선스

⚠️ 소스 누락 안내

이 릴리스의 .bin은 저장소 히스토리 재작성 이전 커밋에서 빌드했고, 해당 리비전의 소스는 현재 공개 저장소에 남아 있지 않습니다(소스 누락).
현재 ats-mini-recovery-beta/ 코드는 이 릴리스의 후속 버전이며, 이전 리비전 보관본이 확인되면 이 본문에 위치를 추가 안내하겠습니다.

Boot Manager Lite v1.0.0 no test

Pre-release

Choose a tag to compare

@GNBD GNBD released this 28 Sep 03:12

Boot Manager Lite v1.0.0 QSPI

테스트 안됨 — 정상 작동하지 않을 수 있습니다.
ESP32-S3 N8R2 실기기에서 아직 테스트하지 않았습니다. 아래 "검증 현황"은 전부
미검증 항목입니다.

이 세트가 N8R2에서 그대로 작동한다고 보장할 수 없습니다.
부팅이 안 될 수 있고, 부팅되더라도 메인 앱이 PSRAM/파일시스템 문제로 멈추거나
일부 기능이 정상 동작하지 않을 수 있습니다. 그대로 쓰기 전에 반드시 실제 기기에서
확인하고, 문제가 있으면 원래 펌웨어로 복구하세요.

⚠️ 내부에서 업데이트할 수 없습니다 — 외부에서 전부 올려야 합니다

Boot Manager Lite는 웹·OTA가 제거되어 있어 기기 내부에서 펌웨어를 업데이트할 수 없습니다.
N8R2 세트는 또한 내부 앱 갱신 경로를 보장하지 않으므로(미검증 상태), 앱을 포함한 펌웨어 전체를
외부(Windows PC + esptool)에서 직접 플래시해야 합니다.
일부만 올리면 부팅 순서나 파티션이 어긋납니다.

수동 플래시라면 아래 5개를 전부 플래시해야 합니다 (하나라도 누락 시 부팅 불가):

offset 파일 설명
0x000000 ats-mini-recovery-lite-1.0.0-bootloader.bin 커스텀 부트로더 (8MB, recovery-first)
0x008000 ats-mini-recovery-lite-1.0.0-partitions-8MB.bin 8MB 파티션 테이블
0x00E000 boot_app0.bin OTA 데이터 부트로더
0x010000 ats-mini-app0.ota.bin 메인 앱 app0 (QSPI/8MB, 자산 미포함 — 별도 보유)
0x0290000 ats-mini-app1.ota.bin (선택) 메인 앱 app1 슬롯 — 선택, 예비 슬롯
0x0660000 ats-mini-recovery-lite-1.0.0.bin 리커버리 (Boot Manager Lite)

부분 갱신(예: 메인 앱만 덮어쓰기)은 지원하지 않습니다.

파티션 (8MB, N8R2 전용 — 16MB 테이블과 절대 혼용 금지)

nvs 0x9000 / otadata 0xE000 / app0 0x10000 / app1 0x290000 / ffat 0x510000 / recovery 0x660000 / littlefs 0x6D0000 / settings 0x7C0000 / coredump 0x7D0000
→ 0x800000 정확히 종료.

검증 현황

전부 미검증입니다 (N8R2 실기기 부재):

  • N8R2 하드웨어(8MB flash, QSPI 2MB PSRAM)에서의 전체 동작
  • 메인 앱의 PSRAM/littlefs 동작

참고: N8R2에 OPI 빌드를 올리면 메인 앱이 PSRAM not detected에서 정지합니다.
반드시 이 세트의 QSPI 이미지를 사용하세요.

라이선스