跳到內容

SRGBmods QMK 韌體

感謝我們的版主團隊,QMK 支援的絕大多數鍵盤現在已作為預編譯韌體提供給社群。(需要 QMK 的 RGB Matrix 支援才能支援該鍵盤)。 創建此韌體的 GPL 原始碼可以在此處找到。

韌體檔案可以在此處找到

我們建議您先嘗試 VIA 版本,因為它允許您修復任何按鍵映射問題。

(在刷入之前確保用 VIA 備份您的當前佈局,這樣您之後可以恢復它們!)

刷入韌體的說明通常由您的鍵盤製造商提供。如果說明涉及使用 QMK Toolbox,請確保以管理員身份運行 QMK Toolbox 並在 QMK Toolbox 中安裝驅動程式!

您也可以在這個 Discord 的 QMK 頻道中尋求幫助。(請只在連結的 Discord 中提問,在主要的 QMK Discord 中提問會讓您得到「去問我們」的回覆!——這顯然很令人沮喪……)

完成刷入鍵盤後,請閱讀以下指南開始撰寫鍵盤外掛程式。


感謝 SignalRGB 2.3.20 及以上版本,QMK 外掛程式附加儲存庫預設啟用,話雖如此,此附加設定中有幾個分支可能啟用對您的鍵盤的支援。在 SignalRGB 中前往設定 / 附加設定 / QMK-Plugins:

Main 預設選中,包含已知可用的外掛程式,其餘的說明它們是什麼……如果在選擇任何分支後仍無法讓您的鍵盤工作,您可能需要創建一個使用者外掛程式。具體說明如下:

  1. 刷入鍵盤後,您需要修改以下鍵盤外掛程式以讓 SignalRGB 與您的鍵盤配合工作。
  • 範例鍵盤外掛程式可以在此下載:QMK_Keyboard_Example.js
  • 其他外掛程式範本可以下載(Full、TKL、96%、75%、65%、64%、60% 等)在此
  • 下載上述任一鍵盤外掛程式後,在文字編輯器中開啟它。
export function Name() { return "QMK Keyboard"; }
export function VendorId() { return 0x0000; }
export function ProductId() { return 0x0000; }
export function Publisher() { return "WhirlwindFX"; }
export function Size() { return [21, 6]; }
export function DefaultPosition(){return [10, 100]; }
export function DefaultScale(){return 8.0}
export function ControllableParameters() {
return [
{"property":"shutdownColor", "group":"lighting", "label":"Shutdown Color", "min":"0", "max":"360", "type":"color", "default":"009bde"},
{"property":"LightingMode", "group":"lighting", "label":"Lighting Mode", "type":"combobox", "values":["Canvas", "Forced"], "default":"Canvas"},
{"property":"forcedColor", "group":"lighting", "label":"Forced Color", "min":"0", "max":"360", "type":"color", "default":"009bde"},
];
}
  1. 開啟鍵盤外掛程式後,您將看到類似上面的畫面。
  • 您需要填寫其中一些欄位,從名稱欄位開始。
  • 名稱欄位需要填入您為其開發韌體的鍵盤名稱。
export function Name() { return "Massdrop CTRL QMK Keyboard"; }
  1. 接下來,我們需要填寫鍵盤的 VendorId。(以下截圖說明,其他兩個可以通過此連結跳過。)
  • 要找到鍵盤的 VendorId,請打開 SignalRGB。
  • 然後點擊左下角的設定齒輪。

然後,點擊裝置資訊

找到您的鍵盤並記下其 VendorID 和 ProductID。

現在用這些值填寫 VendorId 和 ProductId 欄位。

export function Name() { return "Massdrop CTRL QMK Keyboard"; }
export function VendorId() { return 0x04d8; }
export function ProductId() { return 0xEED2; }
  1. 接下來需要填寫的欄位是 Publisher 欄位。在 Publisher 欄位中,您可以填入您的名字、使用者名稱或暱稱。
export function Name() { return "Massdrop CTRL QMK Keyboard"; }
export function VendorId() { return 0x04d8; }
export function ProductId() { return 0xEED2; }
export function Publisher() { return "WhirlwindFX"; }
  1. 現在,我們完成了欄位填寫,接下來進入陣列修改。

需要修改 3 個陣列:vKeys、vKeynames 和 vKeyPositions

  • vKeys 陣列將每個鍵盤按鍵映射到發送到鍵盤的 RGB 資料中的位置。
  • vKeyNames 陣列告訴我們哪個按鍵對應每個 vKey 和 vKeyPosition。
  • vKeyPositions 陣列告訴 SignalRGB 鍵盤上每個按鍵在位置上的座標。
  • 首先,更改 vKeyNames 陣列以反映您的鍵盤。
  • 這意味著您需要重新排列 vKeyNames,使它們與您的鍵盤匹配。
    • 在我們的例子中,我們不得不刪除按鍵並重新組織其餘按鍵,因為我們的主機板是 TKL 主機板。

然後以與 vKeyNames 陣列相同的方式更新 vKeyPositions 陣列。

最後,更新 vKeys 陣列,使其與 vKeyNames 和 vKeysPositions 陣列匹配。

  1. 現在,將您的外掛程式檔案儲存到 %userprofile%/Documents/WhirlwindFX/plugins,然後重啟 SignalRGB。
  • 您的鍵盤應該開始亮起並對 SignalRGB 作出反應。

如果鍵盤不亮起或對 SignalRGB 反應不正確:

Section titled “如果鍵盤不亮起或對 SignalRGB 反應不正確:”
  1. 前往 SignalRGB 中的裝置頁面。

  1. 接下來,前往您的鍵盤,然後點擊設定齒輪。

  1. 然後,點擊「顯示主控台」切換開關。

  • 主控台中應該有一個裝置 LED 總數。將該裝置 LED 總數與您指派的 LED 數量進行比較。
    • 在我們的例子中,共有 119 個 LED。

如果 LED 數量與您的 vKeys 數量匹配:

Section titled “如果 LED 數量與您的 vKeys 數量匹配:”
  • 確保您的外掛程式的 size 欄位在每個方向上都比您最高的 LED 座標大 1:
    • 在我們的例子中,最遠的 LED 在位置 [17,6],因此我們的 Size 欄位需要是 [18,7]。
export function Size() { return [18, 7]; }

如果 LED 數量與您的 vKeys 數量不匹配:

Section titled “如果 LED 數量與您的 vKeys 數量不匹配:”
  • 您需要添加 vKeys、vKeyPositions 和 vKeyNames 以匹配 LED 總數。
    • 在我們的例子中,裝置有 119 個 LED,所以我們需要為鍵盤的底部發光添加 32 個 LED。

  • 如果 vKeys 的數量與 LED 總數匹配且裝置大小正確,但 LED 映射不正確:
  • 加入 Discord 並在 QMK 頻道中尋求幫助。