更新HC-05與HC-06藍牙模組韌體(二)

本文將說明:

  • 安裝燒錄HC-05/HC-06模組的工具軟體
  • 備份HC-05/HC-06模組的韌體
  • 燒入HID(人機介面)韌體,讓HC-05/HC-06模組變成無線藍牙鍵盤介面。

安裝燒錄HC-05/HC-06模組的工具軟體

參考instructables.com網站的“Upgrade Your $3 Bluetooth Module to Have HID Firmware”這篇教學說明,燒錄HC-05和HC-06韌體需要下列軟體:

  • Blue Suite:這是藍牙通訊晶片設計公司CSR (Cambridge Silicon Radio) 提供的軟體開發套件,但是在CSR被高通(Qualcomm)併購之後,就中止開發這套軟體,也無法在原先的CSR網站下載了。

    我在這個github討論串提供的Google雲端硬碟網址下載Blue Suite 2.6.6版。在Windows 11安裝執行沒問題,但也許是客製化的FTDI驅動程式不相容,無法在Win11系統中成功燒錄HC-06和HC-05韌體,後來改用Windows 10系統的舊筆電,燒錄成功。
  • FTDI序列通訊模組驅動程式:內含一個usbspi.dll軟體元件,用它替換Blue Suite軟體預設的同名元件,讓Blue Suite識別並操控採用FT232系列晶片的USB轉TTL序列通訊模組。
  • Zadig驅動程式安裝軟體:用它安裝、取代Windows系統預設的FTDI序列通訊晶片的驅動程式,才能透過FT232序列通訊模組燒錄HC-05和HC-06。

安裝Blue Suite套件

安裝Blue Suite 2.6.6,只需要一路按“Next”(下一步),用預設選項安裝即可。預設安裝路徑是C:\Program Files (x86)\CSR\BlueSuite 2.6.6。

安裝完畢後,解壓縮之前下載的「FTDI序列通訊模組驅動程式」csr-spi-ftdi-0.5.3.zip,把其中的usbspi.dll檔拖入Blue Suite 2.6.6的安裝路徑,覆蓋舊檔。

usbspi.dll檔

取代Windows系統預設的FT232驅動程式

先把FT232 USB轉TTL序列通訊模組(以下簡稱「FT232板」)插入電腦USB。

然後執行Zadig軟體,選擇主功能表的Options→List All Devices(選項→列舉所有裝置)指令:

List All Devices(選項→列舉所有裝置)

「裝置」選項選擇FT232 USB UART

FT232 USB UART

「替換的驅動程式」選擇libusbK,最後按下Replace Driver(替換驅動程式)鈕。完成後就可以關閉這個軟體。

libusbK Replace Driver(替換驅動程式)

備份HC-06或HC-05模組的韌體

FT232板按照上一篇貼文連接HC-06或HC05藍牙模組的SPI介面,然後從Windows系統「開始」選單的「所有應用程式」中,開啟「CSR BlueSuite 2.6.6→BlueFlash」燒錄工具軟體。

首先從「燒錄器」下拉式選單選擇FT232板,然後按一下Stop Processor(停止處理器),這個處理器指的是HC-5/HC-06模組。

op Processor(停止處理器)

我在Windows 11系統,按下Stop Processor(停止處理器)之後,BlueFlash軟體始終沒有回應,電腦重新開機再嘗試數次,都是這樣,後來改用Windows 10就解決了。

按下Dump(傾印)鈕,取出HC-05/HC-06模組的韌體,它會詢問你要把檔案儲存在哪裡。

Dump(傾印)

然後它就開始取出藍牙模組的韌體,完成之後,會在本機磁碟儲存dump.xpv 和dump.xdv兩個檔案。日後若需要恢復HC-05/HC-06的功能,可藉由這個工具軟體的Download(下載)鈕,把備份下來的韌體檔寫回藍牙模組。

取出藍牙模組的韌體

備份HC-06或HC-05藍牙模組的預設參數設置

除了韌體,CSR藍牙晶片會在快閃記憶體儲存一些參數,像是無線傳輸最大功率值和UART序列埠的傳輸速率,這些數據都存在叫做Persistent Store(持久儲存區,簡稱PS)快閃記憶體分區中,詳細說明請參閱CSR BC417系列晶片的技術文件

藍牙模組的參數資料可以透過PSTool工具程式讀取、寫入和備份。

開啟「CSR BlueSuite 2.6.6→PSTool」工具程式,畫面將出現如下的Choose Transport(選擇通訊介面)對話方塊,請依照下圖選擇FT232板。

Choose Transport(選擇通訊介面)

接著選擇File→Dump(檔案→傾印)指令:

File→Dump(檔案→傾印)

再選擇存檔路徑,即可備份參數資料(副檔名是.psr的純文字檔)。

dump

最終完成的備份有三個檔案。

dump flash

根據我的測試,上一節備份的韌體檔(.xpv和.xdv)裡面已經整合了參數設置,我在同一個HC-06模組燒錄HC-05韌體(Google雲端硬碟的下載連結)和下一節的HID韌體,最後寫回備份的韌體檔,使用PSTool工具觀察,PS參數各自都有變化,也有復原。

燒錄HID(人機介面)規範的韌體

HC-05和HC-06都是藍牙SPP序列傳輸規範的模組;有個採用相同藍牙晶片的RN-42模組,具有SPP序列通訊和HID人機介面兩種韌體,HID韌體可以讓該模組被電腦和手機識別成藍牙鍵盤裝置。

把RN-42模組的韌體燒錄(刷入)到HC-06或HC-05,它也會變成支援HID規範的藍牙模組。

我在網路上找到RN-42模組的HID韌體檔,將它解壓縮備用。

再次開啟BlueFlash燒錄工具,按下Choose File(選擇檔案)鈕,選取RN-42的韌體檔(rn-42.xpv)、按下Download(下載)鈕開始燒錄。燒錄完畢後,可按下Verify(驗證)鈕驗證是否燒錄內容是否完整。

燒錄HID(人機介面)規範的韌體

如此,這個HC-05/HC-06模組就變成藍牙鍵盤通訊介面了。

Posts created 470

4 thoughts on “更新HC-05與HC-06藍牙模組韌體(二)

    1. 請嘗試:
      1. 更換BlueFlash版本
      2. 更換FT232序列通訊板,也許非原廠FT232晶片會造成影響。

  1. 之前使用BlueFlash時,可以成功Stop Processor
    但最近又再次使用,可是按下後,就會卡住,之後變\”應用程式沒有回應\”
    請問該如何解決呢?

    謝謝

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

Related Posts

Begin typing your search term above and press enter to search. Press ESC to cancel.

Back To Top