GH60 刷刷刷 by Mac - 鍵盤
![Suhail Hany avatar](/img/elephant.jpg)
By Suhail Hany
at 2015-05-07T11:56
at 2015-05-07T11:56
Table of Contents
拿了這板子有段時間了
一開始有試著用 Windows 刷 layout 進去, 但一直失敗(應該跟 Windows 不合吧
但直到前一陣子有人分享用 Mac 刷, 這真是太好了, 終於可以開工了
Day 1
http://2.bp.blogspot.com/-KXV9LQ1YeJ8/VSxx46QVmpI/AAAAAAAAMnY/OEIXgwKdb2Y/s1600/P1030578.JPG
先上衛星軸, 但沒有空白鍵長度的連動桿子...
問金鍵盤說沒賣 7x 衛星軸
只好打開淘寶, 結果運費比買的東西還貴, 虧我買了 7x 衛星軸 4 個加 6.25x 衛星軸 3 個...
不過最後我是用 6.25x
Day 2
先排一下完成時的 layout
http://1.bp.blogspot.com/-boE1YAIVkE0/VTNYrFe3MoI/AAAAAAAAMss/RobJpI5N8W8/s1600/2015-04-14%2B00.00.27.jpg
Day 3
先上第一顆
http://4.bp.blogspot.com/-AA5wW3Gggpw/VTNYyjfKhpI/AAAAAAAAMs0/b1QEZEdp05w/s1600/2015-04-16%2B01.14.32.jpg
http://2.bp.blogspot.com/-eZM3Z6lksKo/VTNY-0wkIHI/AAAAAAAAMtA/9m15a5rdwiA/s1600/2015-04-18%2B13.59.01.jpg
Day 4
太久沒用烙鐵了, 慢慢焊, 而且還要一直調正軸的位置
http://4.bp.blogspot.com/-sOzujhEe7mI/VTNY-zLiLDI/AAAAAAAAMtE/Ir1jfYCgI9E/s1600/2015-04-19%2B14.28.41.jpg
Day 5
空白鍵的衛星軸總算來了
http://2.bp.blogspot.com/-dnTCt27HggI/VUSrf8UOVRI/AAAAAAAAMyw/ojKyPf8Jc8g/s1600/2015-04-26%2B16.34.46.jpg
Day 6
All Finish, 綠灰紅混軸
http://1.bp.blogspot.com/-5KKgGqaq9fQ/VUSrqfDzPJI/AAAAAAAAMy8/qCoOlcAV630/s1600/2015-05-02%2B12.45.32.jpg
上鍵帽
http://2.bp.blogspot.com/-Iw7EUjHA-Yc/VUSrqITJimI/AAAAAAAAMzA/JfOwRobYgUI/s1600/2015-05-02%2B18.45.33.jpg
http://2.bp.blogspot.com/-Wf8dqQJ236Q/VUSrp_F5_CI/AAAAAAAAMy4/v3gKx-QLbZc/s1600/2015-05-02%2B18.45.54.jpg
開始刷分位
沒裝 homebrew 先裝 homebrew
http://brew.sh/
利用 homebrew 安裝
brew install Caskroom/cask/crosspack-avr
brew install dfu-programmer
沒裝 git 先裝 git
brew install git
clone 客製的 tmk repository 這是 for GH60 RevCHN 版的
git clone https://github.com/kairyu/tmk_keyboard_custom.git
進到拉下來的 tmk_keyboard_custom 目錄, 再進到 gh60 的目錄
cd keyboard/gh60
vim config.h
找到 #define CONFIG_H
在底下加上 #define GH60_REV_CHN
然後
vim Makefile
註解或刪掉下面的
KEYMAP_IN_EEPROM_ENABLE = yes # Read keymap from eeprom
接上 gh60
輸入下列指令
system_profiler SPUSBDataType
會顯示
...
GH60:
Product ID: 0x6060
Vendor ID: 0xfeed
Version: 0.01
Speed: Up to 12 Mb/sec
Manufacturer: geekhack
Location ID: 0x14100000 / 14
Current Available (mA): 500
Current Required (mA): 100
...
然後按一下背面的按鈕後, 在下一次
system_profiler SPUSBDataType
會抓到
...
ATm32U4DFU:
Product ID: 0x2ff4
Vendor ID: 0x03eb (Atmel Corporation)
Version: 0.00
Serial Number: 1.0.0
Speed: Up to 12 Mb/sec
Manufacturer: ATMEL
Location ID: 0x14100000 / 15
Current Available (mA): 500
Current Required (mA): Unknown (Device has not been configured)
...
要是這個狀態才能刷分位進去
先刷 poker layout 試試
在 gh60 的目錄下下指令
make dfu
開始刷到下列訊息出現代表成功
...
Creating load file for Flash: gh60_lufa.hex
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature gh60_lufa.elf gh60_lufa.hex
dfu-programmer atmega32u4 erase --force
Erasing flash... Success
Checking memory from 0x0 to 0x6FFF... Empty.
dfu-programmer atmega32u4 erase
Checking memory from 0x0 to 0x6FFF... Empty.
Chip already blank, to force erase use --force.
dfu-programmer atmega32u4 flash gh60_lufa.hex
Checking memory from 0x0 to 0x6A7F... Empty.
0% 100% Programming 0x6A80 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
0% 100% Reading 0x7000 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
Validating... Success
0x6A80 bytes written into 0x7000 bytes memory (95.09%).
dfu-programmer atmega32u4 reset
如果出現
avr-gcc: command not found
代表 AVR 的環境變數沒加進去
到家目錄開 .zshrc 或 .bashrc
cd ~
vim .zshrc
或
vim .bashrc
加入
#AVR
PATH="/usr/local/CrossPack-AVR/bin:$PATH"
再重啟 terminal 後重刷
測試鍵盤 layout 輸入
http://tedshd.github.io/keyboard_test_page/
客製 Layout
需要兩個 tool
http://www.keyboard-layout-editor.com/
http://www.enjoyclick.org/tkg/
layout editor 產生 keymap raw data 再丟到 keymap generator 產生 .c
以下為我設計的 layout
預設
http://www.keyboard-layout-editor.com/#/layouts/f5090521ca5239e85d1f2663c18fd9b5
fn 組合鍵
http://www.keyboard-layout-editor.com/#/layouts/cdb94b80ee1a27a733b98b06aeda4c94
Function layer 是 fn 組合鍵用的
keymap generator 的設定
Keyboard - GH60 (RevCHN)
Layer Mode - Normal
Number of Layers - 2
Layer0 - Default
Layer1 - Function layer
Fn - Layer action > Momentary layer 1
Fn Momentary layer 1 的意思就是當 fn 按下時是 layer 1 的 keymap
但不按 fn 時就關掉 layer1
這試了好久...
下載 .c 檔後, 把名字改成 keymap_tkg.c
丟到 gh60 目錄後執行
make KEYMAP=tkg dfu
就 ok 了
如果用我的 fn 組合鍵記得把多餘 fn 去掉
不然 .c 檔編譯會出錯
因為沒定義多的 fn 功能
前前後後快一個月的時間...
其實這過程最難的部分就是焊接了
因為不像一般焊電子零件
只要電路通了就好
因為是焊軸
只要用鍵盤就一定會一直敲它
而且拔鍵帽又會對軸施力
所以焊點要很堅固
這中間一直做使用的測試
不 ok 的軸要重焊
超累的
--
一開始有試著用 Windows 刷 layout 進去, 但一直失敗(應該跟 Windows 不合吧
但直到前一陣子有人分享用 Mac 刷, 這真是太好了, 終於可以開工了
Day 1
http://2.bp.blogspot.com/-KXV9LQ1YeJ8/VSxx46QVmpI/AAAAAAAAMnY/OEIXgwKdb2Y/s1600/P1030578.JPG
先上衛星軸, 但沒有空白鍵長度的連動桿子...
問金鍵盤說沒賣 7x 衛星軸
只好打開淘寶, 結果運費比買的東西還貴, 虧我買了 7x 衛星軸 4 個加 6.25x 衛星軸 3 個...
不過最後我是用 6.25x
Day 2
先排一下完成時的 layout
http://1.bp.blogspot.com/-boE1YAIVkE0/VTNYrFe3MoI/AAAAAAAAMss/RobJpI5N8W8/s1600/2015-04-14%2B00.00.27.jpg
![](https://1.bp.blogspot.com/-boE1YAIVkE0/VTNYrFe3MoI/AAAAAAAAMss/RobJpI5N8W8/s1600/2015-04-14%2B00.00.27.jpg)
Day 3
先上第一顆
http://4.bp.blogspot.com/-AA5wW3Gggpw/VTNYyjfKhpI/AAAAAAAAMs0/b1QEZEdp05w/s1600/2015-04-16%2B01.14.32.jpg
![](https://4.bp.blogspot.com/-AA5wW3Gggpw/VTNYyjfKhpI/AAAAAAAAMs0/b1QEZEdp05w/s1600/2015-04-16%2B01.14.32.jpg)
http://2.bp.blogspot.com/-eZM3Z6lksKo/VTNY-0wkIHI/AAAAAAAAMtA/9m15a5rdwiA/s1600/2015-04-18%2B13.59.01.jpg
![](https://2.bp.blogspot.com/-eZM3Z6lksKo/VTNY-0wkIHI/AAAAAAAAMtA/9m15a5rdwiA/s1600/2015-04-18%2B13.59.01.jpg)
Day 4
太久沒用烙鐵了, 慢慢焊, 而且還要一直調正軸的位置
http://4.bp.blogspot.com/-sOzujhEe7mI/VTNY-zLiLDI/AAAAAAAAMtE/Ir1jfYCgI9E/s1600/2015-04-19%2B14.28.41.jpg
![](https://4.bp.blogspot.com/-sOzujhEe7mI/VTNY-zLiLDI/AAAAAAAAMtE/Ir1jfYCgI9E/s1600/2015-04-19%2B14.28.41.jpg)
Day 5
空白鍵的衛星軸總算來了
http://2.bp.blogspot.com/-dnTCt27HggI/VUSrf8UOVRI/AAAAAAAAMyw/ojKyPf8Jc8g/s1600/2015-04-26%2B16.34.46.jpg
![](https://2.bp.blogspot.com/-dnTCt27HggI/VUSrf8UOVRI/AAAAAAAAMyw/ojKyPf8Jc8g/s1600/2015-04-26%2B16.34.46.jpg)
Day 6
All Finish, 綠灰紅混軸
http://1.bp.blogspot.com/-5KKgGqaq9fQ/VUSrqfDzPJI/AAAAAAAAMy8/qCoOlcAV630/s1600/2015-05-02%2B12.45.32.jpg
![](https://1.bp.blogspot.com/-5KKgGqaq9fQ/VUSrqfDzPJI/AAAAAAAAMy8/qCoOlcAV630/s1600/2015-05-02%2B12.45.32.jpg)
上鍵帽
http://2.bp.blogspot.com/-Iw7EUjHA-Yc/VUSrqITJimI/AAAAAAAAMzA/JfOwRobYgUI/s1600/2015-05-02%2B18.45.33.jpg
![](https://2.bp.blogspot.com/-Iw7EUjHA-Yc/VUSrqITJimI/AAAAAAAAMzA/JfOwRobYgUI/s1600/2015-05-02%2B18.45.33.jpg)
http://2.bp.blogspot.com/-Wf8dqQJ236Q/VUSrp_F5_CI/AAAAAAAAMy4/v3gKx-QLbZc/s1600/2015-05-02%2B18.45.54.jpg
![](https://2.bp.blogspot.com/-Wf8dqQJ236Q/VUSrp_F5_CI/AAAAAAAAMy4/v3gKx-QLbZc/s1600/2015-05-02%2B18.45.54.jpg)
開始刷分位
沒裝 homebrew 先裝 homebrew
http://brew.sh/
利用 homebrew 安裝
brew install Caskroom/cask/crosspack-avr
brew install dfu-programmer
沒裝 git 先裝 git
brew install git
clone 客製的 tmk repository 這是 for GH60 RevCHN 版的
git clone https://github.com/kairyu/tmk_keyboard_custom.git
進到拉下來的 tmk_keyboard_custom 目錄, 再進到 gh60 的目錄
cd keyboard/gh60
vim config.h
找到 #define CONFIG_H
在底下加上 #define GH60_REV_CHN
然後
vim Makefile
註解或刪掉下面的
KEYMAP_IN_EEPROM_ENABLE = yes # Read keymap from eeprom
接上 gh60
輸入下列指令
system_profiler SPUSBDataType
會顯示
...
GH60:
Product ID: 0x6060
Vendor ID: 0xfeed
Version: 0.01
Speed: Up to 12 Mb/sec
Manufacturer: geekhack
Location ID: 0x14100000 / 14
Current Available (mA): 500
Current Required (mA): 100
...
然後按一下背面的按鈕後, 在下一次
system_profiler SPUSBDataType
會抓到
...
ATm32U4DFU:
Product ID: 0x2ff4
Vendor ID: 0x03eb (Atmel Corporation)
Version: 0.00
Serial Number: 1.0.0
Speed: Up to 12 Mb/sec
Manufacturer: ATMEL
Location ID: 0x14100000 / 15
Current Available (mA): 500
Current Required (mA): Unknown (Device has not been configured)
...
要是這個狀態才能刷分位進去
先刷 poker layout 試試
在 gh60 的目錄下下指令
make dfu
開始刷到下列訊息出現代表成功
...
Creating load file for Flash: gh60_lufa.hex
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature gh60_lufa.elf gh60_lufa.hex
dfu-programmer atmega32u4 erase --force
Erasing flash... Success
Checking memory from 0x0 to 0x6FFF... Empty.
dfu-programmer atmega32u4 erase
Checking memory from 0x0 to 0x6FFF... Empty.
Chip already blank, to force erase use --force.
dfu-programmer atmega32u4 flash gh60_lufa.hex
Checking memory from 0x0 to 0x6A7F... Empty.
0% 100% Programming 0x6A80 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
0% 100% Reading 0x7000 bytes...
[>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>] Success
Validating... Success
0x6A80 bytes written into 0x7000 bytes memory (95.09%).
dfu-programmer atmega32u4 reset
如果出現
avr-gcc: command not found
代表 AVR 的環境變數沒加進去
到家目錄開 .zshrc 或 .bashrc
cd ~
vim .zshrc
或
vim .bashrc
加入
#AVR
PATH="/usr/local/CrossPack-AVR/bin:$PATH"
再重啟 terminal 後重刷
測試鍵盤 layout 輸入
http://tedshd.github.io/keyboard_test_page/
客製 Layout
需要兩個 tool
http://www.keyboard-layout-editor.com/
http://www.enjoyclick.org/tkg/
layout editor 產生 keymap raw data 再丟到 keymap generator 產生 .c
以下為我設計的 layout
預設
http://www.keyboard-layout-editor.com/#/layouts/f5090521ca5239e85d1f2663c18fd9b5
fn 組合鍵
http://www.keyboard-layout-editor.com/#/layouts/cdb94b80ee1a27a733b98b06aeda4c94
Function layer 是 fn 組合鍵用的
keymap generator 的設定
Keyboard - GH60 (RevCHN)
Layer Mode - Normal
Number of Layers - 2
Layer0 - Default
Layer1 - Function layer
Fn - Layer action > Momentary layer 1
Fn Momentary layer 1 的意思就是當 fn 按下時是 layer 1 的 keymap
但不按 fn 時就關掉 layer1
這試了好久...
下載 .c 檔後, 把名字改成 keymap_tkg.c
丟到 gh60 目錄後執行
make KEYMAP=tkg dfu
就 ok 了
如果用我的 fn 組合鍵記得把多餘 fn 去掉
不然 .c 檔編譯會出錯
因為沒定義多的 fn 功能
前前後後快一個月的時間...
其實這過程最難的部分就是焊接了
因為不像一般焊電子零件
只要電路通了就好
因為是焊軸
只要用鍵盤就一定會一直敲它
而且拔鍵帽又會對軸施力
所以焊點要很堅固
這中間一直做使用的測試
不 ok 的軸要重焊
超累的
--
Tags:
鍵盤
All Comments
![Hamiltion avatar](/img/beaver.jpg)
By Hamiltion
at 2015-05-12T01:45
at 2015-05-12T01:45
![Edwina avatar](/img/girl4.jpg)
By Edwina
at 2015-05-14T20:07
at 2015-05-14T20:07
![Dora avatar](/img/girl5.jpg)
By Dora
at 2015-05-14T23:19
at 2015-05-14T23:19
![Skylar DavisLinda avatar](/img/bee.jpg)
By Skylar DavisLinda
at 2015-05-18T16:42
at 2015-05-18T16:42
![Catherine avatar](/img/woman.jpg)
By Catherine
at 2015-05-21T17:06
at 2015-05-21T17:06
![Necoo avatar](/img/woman-biz.jpg)
By Necoo
at 2015-05-26T01:28
at 2015-05-26T01:28
Related Posts
請求推薦電競鍵盤
![Dinah avatar](/img/woman.jpg)
By Dinah
at 2015-05-07T10:44
at 2015-05-07T10:44
GH-60 + GATERON青 + 太豪二色PBT黑橘
![Heather avatar](/img/woman.jpg)
By Heather
at 2015-05-07T01:19
at 2015-05-07T01:19
Massdrop Rapid 綠軸
![Linda avatar](/img/cat2.jpg)
By Linda
at 2015-05-06T23:24
at 2015-05-06T23:24
GH60刷入成功打字不能 求救
![Poppy avatar](/img/cat5.jpg)
By Poppy
at 2015-05-06T22:23
at 2015-05-06T22:23
GH-60 + GATERON青 + 太豪二色PBT黑橘
![Leila avatar](/img/woman-glasses.jpg)
By Leila
at 2015-05-06T21:36
at 2015-05-06T21:36