http://forum.xda-developers.com/showthread.php?t=1209567
위의 링크에서 퍼온 겁니다.
보통 OTG로 마우스는 잘되는데 키보드가 동작하지 않는 모델이 많더라구요.
드디어, 방법을 찾았습니다.
특별한 기능은 아니지만, 블루투스 키보드가 비싸서 해봤습니다 ㅠ.ㅠ
!!! OTG를 지원해야 합니다 !!!
갤럭시S2 SHW-M250S로 실험했습니다.
다른 기기들도 테스트 해 보세요.
1. 루트 권한이 있어야 합니다.
시스템쪽에 파일 생성을 해야하기 때문에, 필요합니다.
2. OTG케이블이 필요합니다.
검색해 보시면, OTG케이블이 뭔지 아실겁니다. 제작방법도 나와있구요. 자신 없으시면 하나 구매하셔도 됩니다.
3. 자신의 키보드 모델을 찾아봅시다.
아래의 표에서 찾아보시고, 없으면 인터넷 검색이나 'linux나 본인의 스마트폰에서 lsusb로 찾으셔야 합니다'
리눅스화면
사진과 같이 리눅스 터미널에서 lsusb를 치면
usb기기의 정보가 나옵니다.
Bus ### Device ###:ID <기기번호>:
4번째 줄의 것이 제 usb키보드 입니다.
055d가 제 기기번호이죠.
외워 둡시다.
안드로이드 터미널
키보드 연결 전 lsusb
키보드 연결 후 lsusb
여기서도 055d가 보이시죠?
http://developer.android.com/guide/developing/device.html
기기 목록: (제껀 삼성전기라서 저 목록의 삼성과 다르더군요.)
Company | USB Vendor ID |
---|---|
Acer | 0502 |
ASUS | 0B05 |
Dell | 413C |
Foxconn | 0489 |
Fujitsu | 04C5 |
Fujitsu Toshiba | 04C5 |
Garmin-Asus | 091E |
18D1 | |
Hisense | 109B |
HTC | 0BB4 |
Huawei | 12D1 |
K-Touch | 24E3 |
KT Tech | 2116 |
Kyocera | 0482 |
Lenevo | 17EF |
LG | 1004 |
Motorola | 22B8 |
NEC | 0409 |
Nook | 2080 |
Nvidia | 0955 |
OTGV | 2257 |
Pantech | 10A9 |
Pegatron | 1D4D |
Philips | 0471 |
PMC-Sierra | 04DA |
Qualcomm | 05C6 |
SK Telesys | 1F53 |
Samsung | 04E8 |
Sharp | 04DD |
Sony | 054C |
Sony Ericsson | 0FCE |
Teleepoch | 2340 |
Toshiba | 0930 |
ZTE | 19D2 |
4. 루트 권한으로 /etc/udev/rules.d/51-android.rules파일을 만들어 줍니다.
디렉토리는 만드시면 됩니다.
루트 익스플로러로 하셔도 되고, adb나 터미널에서 하셔도 됩니다.
51-android.rules 파일을 에디터로 열어서
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="기기번호", MODE "0666", NAME=="제조사"
위의 내용을 추가해 줍니다.
예를 들면 제 것은
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="055d", MODE "0666", NAME=="samsung"
이렇게 되죠.
저장하고 나옵니다.
5. 리부팅하시고 사용하시면 됩니다.
* 모델에 따라서 키보드의 NumLock이 안될 수 있습니다.
OTG케이블에 전원을 따로 공급해주시거나, 전원이 들어가는 USB HUB를 사용하라고 나와있네요.
* 제 키보드는 한/영 전환이 Shift+Ctrl+Space Bar로 됩니다.