ESP32 아두이노 개발시 양산 펌웨어 릴리즈 방법

ESPRESSIF|2022. 7. 27. 17:11

아두이노로 개발시 양산 펌웨어를 릴리즈 하는 방법입니다.

일반적으로 파티션 테이블을 수정하지 않는 경우, 총 4개의 bin파일이 필요합니다.

 

메인 유져 bin 내보내기의 함정 (주의 사항)

 

빌드를 하고, 바이너리 내보내기를 하면, 프로젝트 폴더에, Bin파일이 생성 됩니다.

이 방법은 메인 유져bin만 내보내기 때문에, 이렇게 해서는 전체 Bin파일이 생성이 안됩니다. 

 

실제 bin파일 전체 찾기

 

1>> 환경설정에서, 자세한 출력 보이기(Verbose)를 체크를 합니다. 

2>> Flash(업로드)를 하면 로그 창에 esptool.exe로 시작되는 부분이 있습니다. 

이 부분을 복사해서 에디터로 보면 각 파일 별로 폴더 위치가 있습니다.

3>> 정리하여 보면 아래와 같습니다. 

 

C:\Users\UserName\AppData\Local\Arduino15\packages\esp32\tools\esptool_py\3.3.0/esptool.exe 
--chip esp32c3 --port COM41 --baud 921600 
--before default_reset --after hard_reset write_flash -z 
--flash_mode dio --flash_freq 80m --flash_size 4MB 
0x0 C:\Users\UserName\AppData\Local\Temp\arduino_build_128734/test-uart.ino.bootloader.bin 
0x8000 C:\Users\UserName\AppData\Local\Temp\arduino_build_128734/test-uart.ino.partitions.bin 
0xe000 C:\Users\UserName\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.3/tools/partitions/boot_app0.bin 
0x10000 C:\Users\UserName\AppData\Local\Temp\arduino_build_128734/test-uart.ino.bin

 

4>> 결국, 아래와 같이 offset address에 맞도록 4개의 Bin파일을 라이팅 해야 정상 동작을 합니다. 

Offset address        Bin파일

===========        ======================  

0x0                         test-uart.ino.bootloader.bin 
0x8000                   test-uart.ino.partitions.bin 
0xe000                   boot_app0.bin 
0x10000                 test-uart.ino.bin 

 

 

IDK support team : Support@idktech.co.kr