[鍵盤] GH60刷韌體教學(不使用網頁工具)

看板Key_Mou_Pad作者 (追尋安身之地)時間9年前 (2015/03/15 03:28), 9年前編輯推噓6(6014)
留言20則, 9人參與, 最新討論串1/1
雖然說板上已經有先進發了教學文章 但對我來說,網頁工具總是不太適應 花了點時間研究、測試了下如何使用源碼刷韌體 做個紀錄,順便分享給有興趣拼複雜設定的板友。 關於這篇教學 對於不會用指令的板友只好說聲抱歉了 我真的不知道在windows下面要怎麼搞orz 參考資料來源為(簡體不喜勿點) http://www.v2ex.com/t/161887 測試環境是 Debian testing 所需的package如下 automake dfu-programmer gcc-avr avr-libc 首先,由git 取得源碼 git clone https://github.com/kairyu/tmk_keyboard_custom.git 這邊使用kairyu的fork是為了支援rev. CHN的PCB 台灣跟中國的GH60,應該大多是這個版本 tmk 似乎不支持這個版本,但在這邊還是一併附上連結 https://github.com/tmk/tmk_keyboard 接著,進到跟GH60相關的子資料夾進行些基本的修改 cd tmk_keyboard_custom/keyboard/gh60/ 除了共通的config.h、keymap_common.h之外 還提供了數個範例keymap layout 包含HHKB, poker, poker2等等 為了支援rev. CHN,首先在config.h加入一行 #define GH60_REV_CHN 1 關於這些範例,kairyu似乎沒有update所有的範例檔 所以需要將 tmk在 keymap_common.c中定義的KEYMAP_HHKB 複製一份貼到kairyu的版本 這是我修改好的版本 http://ppt.cc/LnZ9 poker 的範例是確定可以成功編譯的 對於還是不能編譯的範例,試著在.c檔尾部加入這一段 #ifdef KEYMAP_IN_EEPROM_ENABLE uint16_t keys_count(void) { return sizeof(keymaps) / sizeof(keymaps[0]) * MATRIX_ROWS * MATRIX_COLS; } uint16_t fn_actions_count(void) { return sizeof(fn_actions) / sizeof(fn_actions[0]); } #endif 修改配置 這部份要對照著keymap_poker.c及keymap_common.c一起看 在keymap_poker.c中能清楚理解一份配置的結構 首先定義ANSI配置下每一層各個按鍵的詳細行為 再於PROGMEM fn_actions[]裡陳述層之間怎麼切換 由此可知,如果要做特殊的配置方式 需視情況先在 keymap_common.c定義好配置 再於keymap_mapname.c中寫定每層中各個鍵的行為 例如基於HHKB改了個63 key的玩意出來 http://ppt.cc/rrPw 可配置鍵被列表在 tmk_keyboard_custom/common/keycode.h 層與層的行為被定義在 tmk_keyboard_custom/common/action_code.h 這些行為我還沒有摸到很熟,還請各路高手補充。 編譯與刷韌體 非常簡單,假設要編譯keymap_mymap.c,只需要輸入 make KEYMAP=mymap 接下來按下GH60背面的黑色小按鈕三秒後放開,進入刷機模式 此時若以lsusb 查看USB裝置,會看到GH60被辨識為atmel裝置 確認進入刷機模式後,輸入 make KEYMAP=mymap dfu 等待數秒後即大功告成 追加:用這個方法刷韌體,必須先把eeprom清空,否則行為會很怪 清空的方法為插入usb 前,按住 backspace與 space 講點題外話 星期五晚上,跑了一趟軍團做浸染,深色真的染好久 如果以後板友考慮要做深色的浸染 最好有奮戰兩個小時以上的心理準備.... 我整個拖到店長的下班時間,11點多才搞定orz 成品....健康蔬菜風? http://ppt.cc/fcQv 特別感謝 agong8664、bullock、cssh tex 60%鋁殼 (#1Ky7qTsB) 的品質我相當滿意 幾篇教學、推坑的文章對起步的幫助也是不小 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.161.48.43 ※ 文章網址: https://www.ptt.cc/bbs/Key_Mou_Pad/M.1426361327.A.EEB.html

03/15 09:51, , 1F
我也做一把好了…
03/15 09:51, 1F

03/15 11:04, , 2F
已確認GH60可以上衛星軸但是想知道能不能上平衡桿
03/15 11:04, 2F

03/15 11:44, , 3F
用鐵板應該可以
03/15 11:44, 3F

03/15 11:45, , 4F
Costar的都是固定在鐵板上
03/15 11:45, 4F

03/15 12:25, , 5F
想順便問五腳軸該去哪裡買,一般的好像都三腳
03/15 12:25, 5F

03/15 12:46, , 6F
問問佳傳跟金鍵盤 我是用淘的
03/15 12:46, 6F

03/15 13:05, , 7F
我原本有一堆多餘料件想組個GH60 結果發現要五腳軸才行
03/15 13:05, 7F

03/15 13:05, , 8F
上鐵板又好重orz
03/15 13:05, 8F

03/15 13:52, , 9F
有冒險精神可以玩gateron軸 它都是PCB Mounted
03/15 13:52, 9F

03/15 13:52, , 10F
不然就是去金建盤買吧 我第一把的軸是去金建盤買的
03/15 13:52, 10F

03/15 13:53, , 11F
不過好像只剩青軸 紅軸剩有二極體的 要自己一顆顆拆開
03/15 13:53, 11F

03/15 19:54, , 12F
推一個 可以寫到這種程度的完全只能仰視無法直視OAO
03/15 19:54, 12F
追加清空eeprom的方法,否則部份行為會被覆蓋掉 ※ 編輯: revorea (218.161.48.43), 03/16/2015 11:18:50

03/17 00:21, , 13F
有沒有辦法使用GH60空出來的7個pin腳呢
03/17 00:21, 13F

03/17 00:27, , 14F
硬體部份我完全不行阿orz
03/17 00:27, 14F

03/17 00:29, , 15F
照裡講應該可以,不過我不知道要從那裡切入。
03/17 00:29, 15F

03/17 00:41, , 16F
可以 我就把GH60改加小紅點模組了
03/17 00:41, 16F

03/17 00:49, , 17F
好像版上沒有看到這個東西的教學...
03/17 00:49, 17F

03/17 12:28, , 18F
求小紅點教學。。。
03/17 12:28, 18F

03/17 13:17, , 19F
問題是沒東西可講 我的PCB有預留線路 把TX RX接上即可
03/17 13:17, 19F

03/17 13:17, , 20F
TMK code base就包含有PS/2 mouse的function
03/17 13:17, 20F
文章代碼(AID): #1L18llxh (Key_Mou_Pad)