Matter 與 HomeKit 二選一
以 Matter 加入 Apple 家庭、Google Home 或 Home Assistant,也能切回原廠 HomeKit。切換時保留 Wi-Fi、配對與用電紀錄。
為 Incipio CommandKit CMNDKT-004 智慧插座打造的開源預覽韌體。保留原廠核心與驅動,加入 Matter/HomeKit 切換、即時電力監測與簽章線上更新;所有管理都在家中網路完成,不需要雲端帳號。
保留原廠 bootloader、核心與無線驅動,只替換上層應用程式。原廠資料與第二槽原廠韌體都完整保留。
以 Matter 加入 Apple 家庭、Google Home 或 Home Assistant,也能切回原廠 HomeKit。切換時保留 Wi-Fi、配對與用電紀錄。
電壓、電流、功率每 2 秒更新,並估算累積用電(kWh)。Matter 平台也能讀取標準電力量測。
開啟管理頁就會檢查新版本,一鍵下載安裝。每個更新包都經 Ed25519 簽章驗證,型號或平台不符一律拒絕。
六種燈號模式、尋找插座閃燈,以及可跨午夜的夜間熄燈排程;HomeKit 與 Matter 共用設定。
訪客只能查看狀態;變更設定需要管理密碼。密碼以 PBKDF2 推導保存,不經過任何雲端服務。
只寫入第一槽檔案系統。bootloader、MAC、無線校正、原廠 HomeKit 資料與第二槽韌體都不會被覆寫。
v0.3.0 重新設計了插座的設定熱點與管理後台,手機和電腦都好用,並支援深色模式。
請依章節順序操作。符合條件的原廠插座可以直接從原廠網頁上傳,不必拆機;其他情況使用燒錄器。安裝完成後,之後的更新都能從網頁進行。
首次安裝有兩種方式。請先在原廠更新頁 http://插座IP/upload.htm 確認插座的韌體版本與設定,再選擇適合的方式。
直接在原廠更新頁上傳首次安裝檔,已在實體插座實測成功。
10219-1531、目前使用 Active Bank 2、已勾選 Enable Dual Firmware拆機並以燒錄器只寫入第一槽,適用任何原廠版本。
matter-8m-region.bin 與 .jsongit clone https://github.com/lee98064/incipio-commandkit.git cd incipio-commandkit python3 -m pip install -r tools/requirements.txt
將 matter-8m-region.bin 與 matter-8m-region.json 放到 artifacts/releases/。flashrom 的建置方式請參考建置說明。
依第 1 章選擇的方式操作。兩種方式都會保留 bootloader、MAC、無線校正、原廠 HomeKit 資料與第二槽原廠韌體。
下載 commandkit-matter-v0.3.1-public-first-install.bin。這是公開共用檔,不含任何裝置金鑰;每台插座第一次開機時會自行產生身分與 Matter 設定碼。
插座裝好外殼、接上電源、不要接負載。在路由器的裝置清單找到插座 IP,以瀏覽器開啟 http://插座IP/upload.htm,確認韌體為 10219-1531、Active Bank 2、已勾選 Enable Dual Firmware。不要變更雙韌體設定。
在頁面上方按 Select File 選擇首次安裝檔,再按 Upload。
等待頁面倒數與重新開機,期間請保持供電。不要按「Reboot Form Backup Bank Now」。第一次開機會先產生裝置身分,可能比平常久一些。
出現 CommandKit-Setup-XXXXXX 熱點後,依第 3 章完成設定。
首次安裝檔只用在原廠插座。它會初始化資料區;已安裝本韌體的插座請用管理後台更新,否則會清除配對、管理密碼與累積用電。matter.ota 與 matter-8m-region.bin 也不能在原廠更新頁使用。
工具會先讀取兩份完整備份並逐位元比對,再依備份產生這台插座專用的映像,最後只寫入第一槽檔案系統。晶片型號、備份內容或核對結果有任何不符,工具都會自動停止。
拔除插座電源並拆開外殼,以測試夾夾住 GD25Q64(注意 pin 1 方向),再連接 CH341A。
python3 tools/flash.py backup --session private/read-01 \ --mains-disconnected --voltage-3v3 --no-other-supply
三個旗標代表你已確認「已斷開市電、電壓為 3.3 V、沒有其他供電」;工具不會替你量測。備份存放在 private/read-01/,請妥善保存。
python3 tools/flash.py prepare \ --backup1 private/read-01/before-1.bin --backup2 private/read-01/before-2.bin \ --release artifacts/releases/matter-8m-region.bin \ --manifest artifacts/releases/matter-8m-region.json \ --profile private/outlet-a --output private/matter-target.bin
此步驟不會接觸硬體。--profile 資料夾保存這台插座的身分;日後重新安裝同一台插座時請沿用,Matter 設定碼才會維持不變。
python3 tools/flash.py write \ --image private/matter-target.bin --record private/matter-target.bin.json \ --session private/write-01 \ --mains-disconnected --voltage-3v3 --no-other-supply
寫入範圍固定為 0x130000–0x3BFFFF。完成後工具會完整讀回並逐位元核對;顯示 write_verified_not_boot_tested 即表示寫入與核對完成。
拆下測試夾與所有接線,裝回外殼後再插上電源。
核對結果不明時,請勿接上市電。保留 session 資料夾與原始備份,可以使用 tools/flash.py restore 取回原本的檔案系統。
接上電源後,插座會開啟設定熱點。指示燈每半秒亮滅一次,表示正在等待設定。
手機的 Wi-Fi 選擇 CommandKit-Setup-XXXXXX,不需要密碼。此時無法上網屬正常現象,請保持連線。
若設定頁沒有自動出現,請以瀏覽器開啟 http://192.168.1.254/。
點選 2.4 GHz 網路並輸入密碼;隱藏網路可手動輸入名稱。插座不支援 5 GHz 與僅限 WPA3 的網路。
至少 8 個字元,用於登入管理後台。忘記密碼時只能恢復出廠設定。
畫面會顯示這台插座專屬的 QR Code 與 11 位數設定碼,請拍照保存。設定碼在重新開機與更新後都不會改變。
插座預設使用 Matter。
插座與手機必須在同一個網路。
開啟 Apple 家庭、Google Home 或 Home Assistant,選擇「加入配件」或「新增裝置」。
使用第 3 章保存的 QR Code 或 11 位數設定碼,依 app 指示完成。
關於「未認證配件」提示:本韌體使用 Matter 開發測試憑證,家庭 app 可能顯示未認證的提示。各平台對測試裝置的要求不同,請依該平台的官方說明操作。
登入管理後台,在「配對」分頁選擇 HomeKit 並儲存,插座會重新啟動。HomeKit 使用插座原廠標籤上的配對碼。HomeKit 模式下,網頁的即時量測與 kWh 累計會暫停。
| 項目 | 說明 |
|---|---|
| 開啟管理後台 | 在路由器的裝置清單找到插座 IP,以瀏覽器開啟 http://插座IP/,會自動轉到 :18082。 |
| 訪客檢視 | 不必登入即可查看即時功率、電壓、電流、累積用電與韌體版本。 |
| 管理員 | 登入後可在總覽頁直接開關插座(Matter 模式),並可調整指示燈、切換協議、重新開啟配對視窗、變更 Wi-Fi 與管理密碼。 |
| 實體按鈕 | 短按切換插座開關;長按直到插座重新啟動,會恢復出廠設定。 |
頁面會自動檢查新版本;有新版時,總覽頁會顯示「有新版本可以安裝」。
以管理員登入後,按「下載並更新」。
畫面會依序顯示下載、上傳驗證、安裝、重新啟動,約需 1 至 4 分鐘。過程中請保持供電,完成後重新登入即可。
沒有網際網路時,可先在電腦下載 matter.ota,在「手動更新」選擇或拖放檔案。一般更新會保留裝置身分、Wi-Fi、管理密碼、家庭配對與累積用電。
插座讀取的更新索引就是本網站的 updates/index.json。插座只會安裝簽章正確、型號相符且版本較新的更新包,不會降版。
| 情況 | 處理方式 | 會清除 |
|---|---|---|
| 重新配對 | 管理後台 → 配對 → 清除目前協議的配對 | 該協議的家庭配對 |
| 累積用電歸零 | 管理後台 → 系統 → 歸零 | 累積用電 |
| 忘記管理密碼、完整重設 | 實體長按直到插座重新啟動,或管理後台 → 系統 → 恢復出廠 | 管理密碼、Wi-Fi、兩套配對、累積用電 |
| 回到原本的檔案系統 | 以燒錄器執行 tools/flash.py restore | 本韌體(還原為備份中的第一槽內容) |
恢復出廠會保留 MAC、無線校正、原廠 HomeKit 資料與這台插座的 Matter 身分。
表示插座尚未連上家中 Wi-Fi。請確認選擇的是 2.4 GHz 網路、密碼正確,且路由器沒有設定為僅限 WPA3。重新連接 CommandKit-Setup 後再設定一次。
請在路由器的「已連線裝置」或 DHCP 清單中尋找。建議在路由器為插座保留固定 IP,日後較容易開啟管理後台。
更新器會先寫入資料,最後才補回檔案系統標記並讀回核對。新版啟動失敗時,插座會保留維修入口,可以再安裝較新的修正版;若完全無法開機,需要以燒錄器復原。這不是完整的 A/B 自動回退機制。
原廠韌體為 10219-1531、目前使用 Active Bank 2 且已啟用 Dual Firmware 的插座,可以用第 2 章的方式 A 從原廠網頁上傳。其他版本請使用燒錄器(方式 B)。
不行。matter-8m-region.bin 是「部分燒錄映像」,只有第一槽檔案系統有內容,其餘區域為 0xFF。必須用工具依你的備份個別化,並只寫入指定範圍。
不會。插座的管理與量測都在家中網路內完成。只有在你開啟管理後台時,瀏覽器會向本網站讀取更新索引。
不是。本專案與 Incipio 無關,是針對自有插座的研究與預覽韌體,請自行評估風險。
已安裝本韌體的插座,直接在管理後台更新即可;以下檔案供手動更新與首次安裝使用。
matter.ota(2.6 MB),供已安裝本韌體的插座在管理後台手動更新。
下載 matter.ota原廠網頁上傳用的 first-install.bin(方式 A),以及燒錄器用的 matter-8m-region.bin/.json(方式 B,需個別化,不可整片燒錄)。
完整原始碼、逆向紀錄、建置方式與版本紀錄。
GitHub