這篇文章將介紹如何在 Mac 系統中,對 GH60 PCB 板刷鍵位 ,我們要使用的軟體是 dfu-programmer,如何你有安裝 Mac package brew 管理工具,那麼你可以用 "brew install dfu-programmer
" 一鍵安裝,安裝完成的話,你就往下直接跳到刷鍵位的部分,我個人是習慣直接下載原始碼回來安裝,如果你沒有 brew,或是 brew 安裝失敗 ,那麼請參考下文的安裝方式。
手動編譯安裝 dfu-programmer
dfu-programmer 會用到 libusb 這個軟體,所以我們得先安裝 libusb ,而要安裝 libusb ,就會用到 autoconf, automake, libtool ,這三個軟體都是 c 語言編譯程式專用的,最後我們總共要安裝下面這五個 Package:
- autoconf
- automake
- libtool
- libusb
- dfu-programmer
下面這些連結是這五個軟體的載點,每個都要下 載喔:
- ftp://ftp.gnu.org/gnu/autoconf/
- 我是下載 2.69 版: ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
- http://ftp.gnu.org/gnu/automake/
- 我是下載 1.15 版: http://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz
- https://ftp.gnu.org/gnu/libtool/
- https://sourceforge.net/projects/dfu-programmer/files/dfu-programmer/0.7.0/
- https://sourceforge.net/projects/libusb/files/
以下是手動編譯的安裝方式:
autoconf
- tar -zxvf autoconf-2.69.tar.gz && cd autoconf-2.69
- ./configure
- make
- sudo make install
automake
- tar -zxvf automake-1.15.tar.gz && cd automake-1.15
- ./configure
- make
- sudo make install
libtool
- tar -zxvf libtool-2.4.tar.gz && cd libtool-2.4
- ./configure
- make
- sudo make install
libusb
- tar -zxvf libusb-1.0.21.tar.gz && cd libusb-1.0.21
- sh bootstrap.sh
- ./configure
- make
- sudo make install
- sudo update_dyld_shared_cache
- export CFLAGS="$CFLAGS -L/usr/local/lib/"
update_dyld_shared_cache 這個指令是為了更新 libusb-1.0 compiler library linker,另外 "export CFLAGS="$CFLAGS -L/usr/local/lib/" 也是為了更新 library linker 的目錄。
dfu-programmer
- tar -zxvf dfu-programmer-0.7.0.tar.gz && cd dfu-programmer-0.7.0
- ./configure
- make
- sudo make install
我安裝 dfu-programmer 的過程中有發生 "ld: library not found for -lusb-1.0 clang: error: linker command failed with exit code 1 (use -v to see invocation)" 的錯誤,而執行好幾次 update_dyld_shared_cache 跟 設定 CFLAGS 後還是無效,後來我就重新安裝 libusb : sudo make install ,結果 dfu-programmer compile 就過了!! 現在還是不知道為什麼,可能是 Mac library 的 linker cache 沒有成功清除吧。
開始刷鍵位
dfu-programmer 安裝完成後,就可以開始準備刷機啦,我們要先下載 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
下載好 hex 檔後,我們要翻到 GH60 PCB 板背面,背面有個按鈕,用攝子輕輕的按下去, PCB 的 CAPS 鍵的燈就會開始閃,這樣就進去刷機模式囉,接著你要使用筆電的鍵盤,輸入下列三個指令:
- dfu-programmer atmega32u4 erase --force
- dfu-programmer atmega32u4 flash gh60_lufa.hex
- dfu-programmer atmega32u4 reset
刷機完成畫面