2017
Jan
09

這篇文章將介紹如何在 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

下面這些連結是這五個軟體的載點,每個都要下 載喔:

以下是手動編譯的安裝方式:

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 鍵位設定檔,或是你自已產生鍵位設定檔,這裡我只說明如何刷鍵位。

下載好 hex 檔後,我們要翻到 GH60 PCB 板背面,背面有個按鈕,用攝子輕輕的按下去, PCB 的 CAPS 鍵的燈就會開始閃,這樣就進去刷機模式囉,接著你要使用筆電的鍵盤,輸入下列三個指令:

  • dfu-programmer atmega32u4 erase --force
  • dfu-programmer atmega32u4 flash gh60_lufa.hex
  • dfu-programmer atmega32u4 reset

刷機完成畫面

Mac PCB 刷機



回應 (Leave a comment)