組裝完 GH60 鍵盤之後,下一步就是要自已刷鍵位囉,裝 GH60 鍵盤除了可以把鍵盤弄成自已要的風格,另外最重要的就是自定每一個按鍵的輸出值,這篇文章我會先介紹如何用軟體重刷鍵位,下次再來介紹如何修改 tmk keyboad 的鍵位設定。
如果你是使用 Mac 系統,那麼請參考我的另一篇文章 Mac 刷鍵位教學。
網路上有不少刷鍵位教學的文章,不過很多都過時了,軟體已經不能下載或安裝,不然就是技術狂人寫出來很難懂的神奇教學,我記錄下我的刷鍵位方式,希望大家都能夠輕鬆刷機,本篇文章只介紹如何在 Windows 系統刷鍵位喔! (Mac 請右轉)
刷鍵位軟體
網路上可以找到好幾種刷鍵位軟體,其中 UI 介面的有 Atmel Flip 與 Teensy , 這裡我要使用的軟體是 Atmel Flip ,我翻開看我的 GH60 PCB 板,背面黑黑的主控件上面寫著 Atmel Atmega32U4,所以我當然是選用 Atmel Flip 來刷機,其實我也試過 Teensy ,但是 Teensy 沒辦法偵側到我的板子,如果你刷鍵位軟體沒辦法載入你的板子,記得翻開背面看看大大一塊,黑色的主控件上面寫著什麼牌子。
你可以從下面這個連結下載 Atmel Flip,官方的下載連結有提供三種檔案,一個是內建 Java ,一個沒有內建 Java,最後一個是給 Linux 用的,如果你要下載無內建 Java ,那麼你要記得自已安裝 Java。
- 官方載點: http://www.atmel.com/tools/FLIP.aspx
- 本地下載 (無內建 Java 版本): https://download.puritys.me/Flip%20Installer%20-%203.4.7.112.exe
接下就我們要選 device DeviceSelectAtmega32U4 ,如下圖示 。
選好 Device 後,下一步是要選 SettingsCommunicationUSB ,這一步是指我們要選擇需要被刷鍵的鍵盤,大部份的機械式鍵盤都是用 USB 連到電腦,所以一般來說就選 USB 就可以了。
Driver 沒有安裝 libusb-win32
上一步選完 Communication ,你會得到一個錯誤訊息,說你的電腦"遺失 libusb0.dll" ,我的 Windows 是裝英文版的,錯誤訊息是說 "libusb0.dll not found" ,問題就是我們沒有安裝 libusb0.dll 這個程式庫,安裝方式可以參考下面這個網站:
- http://imgur.com/a/bnwzy 參考這裡安裝 libusb
安裝 libusb : 簡單說就是新增一個硬體,然後選擇自已驅動程式,尋找這個路徑 C:\Program Files (x86)\Atmel\Flip 3.4.7 , 硬體類型我選擇 Atmega16U4 ,這樣 Windows 就會幫你自動安裝 好 libusb0.dll 。
確認是否安裝成功,先打開裝置管理員,確定是否有 libusb-win32 devices ,如果已經有了,你會看到下面這個圖示:
下載鍵位設定檔
好了,接下來我們就可以刷鍵位了,但是我們得先有一個鍵位設定檔,可以自已編譯程式產生設定檔,或是下載別人編譯好的,這裡先用簡單的方式,就是去下載別人的設定檔,下面我提供兩個設定檔給大家下載,gh60-0.2_rc2_std_layout 這個是 geekhack https://geekhack.org/index.php?topic=37570.0 有人提供的,另一個 gh60_lufa.hex 是我自已編譯的。
- gh60-0.2_rc2_std_layout: https://geekhack.org/index.php?action=dlattach;topic=37570.0;attach=15860
- gh60_lufa : https://download.puritys.me/gh60_lufa.hex
- gh60_lufa_v2 : https://download.puritys.me/gh60_lufa_v2.hex ,加入我自已習慣的鍵盤設定, Ctrl+ FN + i = 方向鍵上, Ctrl+ FN + j = 左, Ctrl+ FN + k = 下, Ctrl+ FN + l = 右。
開始刷鍵位
先回到 Flip 軟體的畫面,記得要選 SettingsComunicationUSB
接著你要按一下 PCB 版 背面右邊的一顆按鈕,按下去聽到喀一聲, PCB 就會進入刷機模式,如果按鈕太小按不太到的話,就用攝子壓一下,在刷機模式中 Caps 鍵的燈會一直閃動,看到燈在閃就是已經進入刷機模式了。
這時點擊 Flip UI 上的 Open ,Flip 會自動載入鍵盤,這時你會看 UI 左邊的 Erase, Black Check , Program , Verify 變成可以勾選,記得全部打勾,然後再點擊 FileLoad HEX File ,選擇你剛剛下載的 Hex 鍵位設定檔,選完按左下角的 Run ,等大約 10 秒就刷機完畢了,最後再按一下 Flip 右邊按鈕的 Start Application ,新刷好的鍵位會立刻生效,不用拔 USB 插頭,打開 notepad 或是 sublime 試一下鍵盤每個按鍵是否正常輸出。
恭喜你 ! 你已經學會刷鍵盤鍵位囉,下一步就是自已產生鍵位設定檔,這個檔案的副檔名為 .hex ,只要你懂得如何產生 .hex ,那麼你就可以自定鍵盤的所有熱鍵、組合鍵囉,我自已編譯的 gh60_lua 是使用 tmk_keyboard 來編譯的。
下面這兩個是鍵盤韌體的原始碼,第一個是原創,支援 PCB 板子 Rev. A , Rec. B ,你可以翻到板子背面,看看你的板子是 Rev 多少,第二個連結是有人拿 tmk 來改的,改成支援 Rev. C ,建議使用第二個連結的檔案來編譯,問題會比較少。