轉化蛻變或自毀長城?ESP32新技術變革觀察

作者:陸向陽

上海樂鑫信息科技(Espressif)2014年以超平價的ESP8266 Wi-Fi晶片走紅後,2016年再推出ESP32晶片,除了保有Wi-Fi功能外也追加藍牙功能。

然筆者觀察,ESP32推出後持續精進改版,近一、二年來可看出其改版的三個趨向,以下與各位分享:

1. 安全能力

ESP32在2019年宣告推出新版,稱為ESP32-S2,這是針對安全特別強化的一版。而2020年11月再推出新版,稱為ESP32-C3,C3對安全再次精進,如開機可用RSA-3072非對稱加密;快閃記憶體上的儲存可採AES-128-XTS加密;對週邊電路可採數位簽章、雜湊訊息鑑別碼(HMAC)等機制以防止非法存取。

另外也內建一個名為世界控制器(World Controller)的週邊電路功能,簡單說即是額外設置一個隔離的執行電路,可用來支援可信任執行環境(TEE)或數位權限管理(DRM)等安全防護工作。

Espressif如此重視安全,在S2、C3上不斷強化安全能力,其實也是最初的ESP8266因過於平價而缺乏安全功能,之後維持一定的平價但積極補強安全功能。

圖1 ESP32-C3內部功能方塊圖。(圖片來源:樂鑫官網

2. 處理器核心的改換

ESP8266的執行核心是向Cadence公司取得授權的,Cadence購併Tensilica公司,Tensilica公司過往即在研發、授權Xtensa系列的可組態式處理器核心。ESP8266使用一個Xtensa L106處理器核心,ESP32則使用一個或兩個LX6處理器核心,ESP32-S2則使用一個LX7核心。

但是ESP32-C3不再使用Xtensa系列核心,首次改用RISC-V核心,估計這是Espressif期望保持ESP系列晶片平價的作法之一,因為RISC-V為開放免費授權,省去支付授權費給Cadence,同時也對核心有較高的技術自主掌握。

3. 嵌入式作業系統的改換

ESP8266、ESP32多使用FreeRTOS作業系統,但近期從Espressif官網的部落格來看似乎已有若干「異心」。因為部落格開始有專文講解示範如何改用NuttX作業系統,且會是一系列的專文。

NuttX是個硬體適用範圍很廣的嵌入式作業系統,小到8位元晶片,大到64位元晶片都可以。以技術自由度而言,FreeRTOS與NuttX都不錯,但可能跟授權細部條款有關導致Espressif開始有意靠攏NuttX,FreeRTOS採MIT授權,NuttX採Apache(阿帕契)授權,更多動機仍待了解。

圖2 樂鑫官網部落格開始連載NuttX作業系統實務文章。(圖片來源:樂鑫官網

除上述外,ESP32-C3也持續強化通訊能力,如加入BLE 5.0藍牙、藍牙長距離(Long Range, LR)傳輸等,但與前述三點相比重要性相對為小,作業系統、處理器核心、安全等為其技術強化主軸。

更重要的是,ESP8266能崛起在於可使用Arduino IDE開發環境撰寫控制程式,以及之後更多豐富的程式撰寫法,如JavaScript、Python等,這些隨著核心、作業系統的改變必須能持續相容,此為ESP32新變革能否被接受的一大關鍵,其發展仍待觀察。

(作者為MakerPRO特約專欄作者;責任編輯:林亮潔)

Author: 陸向陽

從電子科系畢業後,即以媒體人的角色繼續這段與「電子科技」的不解之緣。歷任電子技術專書作者、電子媒體記者、分析師等角色,並持續寫作不殆。近來投入Arduino、Raspberry Pi等開放硬體的研究與教程介紹。

Share This Post On

發表

跳至工具列