์๋
,
PCB๋ฅผ ์ฑ์ฐ๊ธฐ ์ ์ ๋ง์ดํฌ๋ก์ปจํธ๋กค๋ฌ๋ฅผ ํ๋์ํ๋ ค๊ณ ํ๋๋ฐ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค. Ubuntu์์ qmk ํ๊ฒฝ์ ์ค์ ํ๊ณ qmk ํ์จ์ด์ ํฌํฌ๋ฅผ ๋ณต์ ํ๊ณ ๋ช
๋ น์ ์
๋ ฅํ์ต๋๋ค.
make yampad:default
๊ทธ๋ฌ๋ ๋ค์ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
make: * ๋์์ ' yampad:default '๋ก ์ง์ ํ๋ ๊ท์น์ด ์์ต๋๋ค. ์ค์ง.
๋์์ฃผ์ธ์? keyboards ํ์ ํด๋๋ฅผ ๋ณด๋ฉด ์ต๊ทผ ์ปค๋ฐ์ yampad ํด๋๊ฐ ์์ต๋๋ค.
yampad ํด๋๋ ๋ณต์ ์ ๋ง์คํฐ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ yampad๋ผ๋ ์ง์ ์ ์์ต๋๋ค. Github์์ ๋ณผ ๋ yampad ๋ถ๊ธฐ๊ฐ ๊ธฐ๋ณธ๊ฐ์ด๊ณ ๋ณต์ ํ ๋ ๋ง์คํฐ๊ฐ ๊ธฐ๋ณธ๊ฐ์ธ๊ฐ์?
git์ ๋ชจ๋ฅด๋ ์ฌ๋์๊ฒ๋ ๋งค์ฐ ํผ๋์ค๋ฝ์ต๋๋ค! yampad ๋ถ๊ธฐ๋ก ์ ํํด๋ ์ค๋ฅ ๋ฉ์์ง๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค.
์๋
,
์, yampad ํ์จ์ด๋ ํ์ฌ ๋ด ํฌํฌ์๋ง ์์ต๋๋ค. ์์ง QMK ๊ธฐ๋ณธ ๋ฆฌํฌ์งํ ๋ฆฌ๋ก ํธ์๋์ง ์์์ต๋๋ค.
์ค๋ฅ์ ๊ด๋ จํ์ฌ yampad ๋ถ๊ธฐ ๋ก ์ ํํ ํ ๋ชจ๋ ๊ฒ์ด ์๋ํด์ผ ํฉ๋๋ค.
Github์์ ๋ณผ ๋ yampad ๋ถ๊ธฐ๊ฐ ๊ธฐ๋ณธ๊ฐ์ด๊ณ ๋ณต์ ํ ๋ ๋ง์คํฐ๊ฐ ๊ธฐ๋ณธ๊ฐ์ธ๊ฐ์?
๋ง์คํฐ ๋ถ๊ธฐ๋ ํญ์ ๊ธฐ๋ณธ ๋ถ๊ธฐ์ ๋๋ค.
yampad ๋ถ๊ธฐ๋ก ์ ํํด๋ ์ค๋ฅ ๋ฉ์์ง๋ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค.
keyboards/yampad
ํด๋๊ฐ ๋ํ๋ฌ์ต๋๊น?
๋ถ๊ธฐ ๋ฐ ๊ฑด๋ฌผ ์ ํ์ ์ํด ์คํํ ๋ช ๋ น์ ์ฌ๊ธฐ์ ๋ถ์ฌ๋ฃ์ ์ ์์ต๋๊น(๋น๋ ๋ช ๋ น์ ์คํํ ๋ ์ฌ๋ฐ๋ฅธ ํด๋์ ์์๋์ง ํ์ธํ๊ธฐ ์ํจ)?
ํ ๊ฐ์ง ๋ ์ํ๊ณ QMK ํ์จ์ด ๋ฆฌํฌ์งํ ๋ฆฌ์ ๋ณํฉ ์์ฒญ์ ๋ฐํํ ์ ์์ต๋๊น? ๋๋ ์ต์ ๋ฒ์ ์ ํฌํฌํ์ฌ ๋๋ฌด ์ด๋ ต์ง ์์ ๊ฒ์ ๋๋ค. ๊ทธ๋์ ๋ด๊ฐ ์ทจํ ๋จ๊ณ๋ ์๋์ ๋จ์ํ๋์์ต๋๋ค.
https://docs.qmk.fm/#/newbs_getting_started ์ ๋ฐ๋ผ Linux์์ ๋ด QMK ํ๊ฒฝ์ ์ค์ ํฉ๋๋ค.
์์ ํด๋์์ ํฐ๋ฏธ๋ ์ ํ์ ์ฌ์ฉํ์ฌ git clone https://github.com/mattdibi/qmk_firmware
. ์๋ฃ๋๋ฉด ์ญ์ ํ ์ ์์ต๋๋ค.
์์ ํด๋์ cd qmk_firmware
๋ฅผ ์
๋ ฅํ์ฌ ๋๋ ํ ๋ฆฌ๋ฅผ qmk_firmware๋ก ๋ณ๊ฒฝํ์ญ์์ค.
๊ทธ๋ผ git checkout yampad
./keyboards/yampad๋ฅผ ~/qmk_firmware/keyboards์ ๋ณต์ฌํฉ๋๋ค(1๋จ๊ณ์์ qmk๋ฅผ ์ค์ ํ ๋ ๊ธฐ๋ณธ ์์น).
cd ~/qmk_firmware
๋ฅผ ์
๋ ฅํ์ฌ ๋๋ ํ ๋ฆฌ๋ฅผ ๋ณ๊ฒฝํ์ญ์์ค.
qmk compile -kb yampad -km default
์
๋ ฅ
make yampad:default:avrdude
์
๋ ฅ
์์ ๋จ๊ณ๋ฅผ ํตํด ํ๋ก ๋ง์ดํฌ๋ก ํ๋์๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ํ๋์ํ ์ ์์์ต๋๋ค. ์์ง ์ซ์ ํจ๋์์ ํ ์คํธํ์ง ์์์ต๋๋ค. ์๋ qmk_firmware์ ๋ณํฉํ ์ ์๋ค๋ฉด ๋ค๋ฅธ ๋ชจ๋ ์ฌ์ฉ์๋ ๋ง์ง๋ง ์ธ ๋จ๊ณ๋ง ์ํํ๋ฉด ๋ฉ๋๋ค.
pull ์์ฒญ์ ์ฌ๊ธฐ https://github.com/qmk/qmk_firmware/pull/10112 ์ ๋๋ค.
์์ ๋จ๊ณ๋ ์ค์ ์ซ์ ํคํจ๋์์ ์๋ํ๋ ๊ฒ์ผ๋ก ํ์ธ๋์์ต๋๋ค.
์ฌ๋ณด์ธ์!
@Daveyr ์ ์ง์์ ๋ฐ๋ผ ์ปดํ์ผํ ์ ์์์ง๋ง ํ๋ก๊ทธ๋๋จธ์ ์ฐ๊ฒฐํ๋ ๋ฐ ๋ฌธ์ ๊ฐ ์์ต๋๋ค... ํฐ๋ฏธ๋ ์ถ๋ ฅ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
nckmlb<strong i="8">@xpso</strong>:~/qmk_firmware$ make yampad:default:avrdude
QMK Firmware 0.11.68
Making yampad with keymap default and target avrdude
avr-gcc (GCC) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Size before:
text data bss dec hex filename
0 25244 0 25244 629c .build/yampad_default.hex
Copying yampad_default.hex to qmk_firmware folder [OK]
Checking file size of yampad_default.hex [OK]
* The firmware size is fine - 25244/28672 (88%, 3428 bytes free)
Detecting USB port, reset your controller now.....................................................................................................................
Device /dev/ttyACM0 has appeared; assuming it is the controller.
Waiting for /dev/ttyACM0 to become writable..
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
^Cmake[1]: *** [tmk_core/avr.mk:193: avrdude] Interrupt
make: *** [Makefile:522: yampad:default:avrdude] Interrupt
์ฌ๋ฐ๋ฅธ ํฌํธ์ ์ฐ๊ฒฐ๋์ด ์๊ณ ๋ฌธ์ ์์ด arduino ์ค์ผ์น๋ฅผ ์ ๋ก๋ํ ์ ์๋์ง ํ์ธํ์ต๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค..
@nbaptist16 ์ด๊ฒ ๋ฌธ์ ์ผ๊น์? (ํ์จ์ด ๊ด๋ จ BTW ์๋)
USB ํฌํธ ๊ฐ์ง, ์ง๊ธ ์ปจํธ๋กค๋ฌ ์ฌ์ค์ ........................................................... ........................................................................... ...........................
/dev/ttyACM0 ์ฅ์น๊ฐ ๋ํ๋ฌ์ต๋๋ค. ์ปจํธ๋กค๋ฌ๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค.
/dev/ttyACM0์ด ์ฐ๊ธฐ ๊ฐ๋ฅ ์ํ๊ฐ ๋๊ธฐ๋ฅผ ๊ธฐ๋ค๋ฆฌ๋ ์ค์ ๋๋ค.ํ๋ก๊ทธ๋๋จธ์ ์ฐ๊ฒฐ ์ค: .avrdude: butterfly_recv(): ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋ตํ์ง ์์
avrdude: butterfly_recv(): ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋ตํ์ง ์์ต๋๋ค
avrdude: butterfly_recv(): ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋ตํ์ง ์์ต๋๋ค
avrdude: butterfly_recv(): ํ๋ก๊ทธ๋๋จธ๊ฐ ์๋ตํ์ง ์์ต๋๋ค
^Cmake[1]: * [tmk_core/avr.mk:193: avrdude] ์ธํฐ๋ฝํธmake: * [ Makefile:522 : yampad:default :avrdude] ์ธํฐ๋ฝํธ
```
ํจ๊ณผ๊ฐ ์๋ ๊ฒ์ ์ฐพ์์ต๋๋ค!
์ ํฐ๋ฏธ๋์์ ๋ค์ ๋ ๋ช ๋ น์ ์คํํ์ง๋ง ๋ ๋ฒ์งธ ๋ช ๋ น๋ง์ด ์์ ์ ์ํํ๋ค๊ณ ํ์ ํฉ๋๋ค.
echo 'ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"' | sudo tee /etc/udev/rules.d/77-arduino.rules
sudo udevadm trigger
์๋ํ ์ด์ ๋ ํ์คํ์ง ์์ง๋ง ํค๋ณด๋๋ฅผ ๊น๋ฐ์ผ ์ ์์์ต๋๋ค.
avrdude: verifying ...
avrdude: 25244 bytes of flash verified
avrdude: safemode: Fuses OK (E:CB, H:D8, L:DE)
avrdude done. Thank you.
๊ทธ๋ฆฌ๊ณ @mattdibi ๊ฐ์ฌํฉ๋๋ค! :)