天天看點

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

文章目錄

  • 前言
  • 一、編譯前的準備
  • 二、編譯ESP32-AT工程
  • 三、遇到的問題
  • 四、總結
  • 五、參考文檔

前言

由于最近需要往ESP32 AT固件裡面新增一個小功能,需要重新編譯ESP32的AT固件。是以記錄一下在Windows系統下編譯ESP32 AT固件的方法和在編譯過程中遇到的問題。

一、編譯前的準備

1.在https://dl.espressif.cn/dl/esp-idf/?idf=4.3 下載下傳window版本下的裡面ESP-IDF,這裡我選擇的版本V4.3.2

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

2.一路下一步,最後點安裝,安裝完成後,桌面會有相關的快捷方式。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

3.點選桌面上的快捷方式,顯示如下,則安裝離線的ESP-IDF成功,可以進行相關的編譯ESP-AT工程了。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

二、編譯ESP32-AT工程

1.點選桌面的ESP-IDF快捷方式,運作ESP-IDF,選一個合适的目錄,輸入"git clone --recursive https://gitee.com/EspressiftSystems/esp-at.git"下載下傳ESP32-AT固件,這裡直接使用根目錄進行示範。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

2.使用"cd esp-at"指令進入剛下載下傳的ESP-AT工程,ESP-AT工程的目錄如下。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

3.輸入"python build.py install"指令更新編譯工程需要用到的工具,如下圖。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

4.根據實際的使用的ESP32型号進行選擇,這裡我選擇的是

Platform name:PLATFORM_ESP32;

Module name:WROOM-32;

Enable silence mode to remove some logs and reduce the firmware size:No

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

相關編譯工具安裝完成,如下圖。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

5.運作"python build.py menuconfig"指令進行相關配置,如果無需配置,這步可以跳過。如下圖。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

6.輸入"python build.py build"指令對工程進行編譯。如下圖。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

7.編譯完成後,使用flash-download-tools或者輸入"python build.py -p (PORT) flash"将編譯好的固件下載下傳到ESP32上。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

8.下載下傳完成後,打開序列槽調試助手,連接配接序列槽,重新開機ESP32,看到序列槽螢幕上面列印的固件版本為V2.4.0(以實際編譯為準),則說明編譯ESP-AT固件成功。

ESP32 編譯AT固件前言一、編譯前的準備二、編譯ESP32-AT工程三、遇到的問題四、總結五、參考文檔

三、遇到的問題

1.由于網絡問題,在執行’‘build.py install’'指令後,不能安裝esp32的相關編譯工具,是以使用迅雷下載下傳的方法将下載下傳失敗的編譯工具,放到對應的檔案夾内。再執行build.py install指令。

四、總結

通過參考ESP32的文檔,最終實作了ESP32 AT固件的編譯。

五、參考文檔

https://docs.espressif.com/projects/esp-at/zh_CN/latest/esp32/Compile_and_Develop/How_to_clone_project_and_compile_it.html