diff options
| author | Jun Wako <[email protected]> | 2014-12-11 01:00:32 +0900 | 
|---|---|---|
| committer | Jun Wako <[email protected]> | 2014-12-11 01:00:32 +0900 | 
| commit | b47450da9ffc1c296b3ba6ecd189fced0b7b8ed9 (patch) | |
| tree | 75f6876b9fa3baedb4970c44bed726168bf7c149 | |
| parent | f6f698dda0a1cc9e92b75927b0273205402de9e2 (diff) | |
| parent | 30864ea5e48c15796cc2e3e2ba4a9b50322d82a4 (diff) | |
| download | qmk_firmware-b47450da9ffc1c296b3ba6ecd189fced0b7b8ed9.tar.gz qmk_firmware-b47450da9ffc1c296b3ba6ecd189fced0b7b8ed9.zip | |
Merge branch 'usb_usb_hub'
| -rw-r--r-- | .gitmodules | 6 | ||||
| -rw-r--r-- | converter/usb_usb/Makefile | 2 | ||||
| -rw-r--r-- | converter/usb_usb/README | 35 | ||||
| -rw-r--r-- | converter/usb_usb/config.h | 2 | ||||
| -rw-r--r-- | converter/usb_usb/main.cpp | 14 | ||||
| -rw-r--r-- | protocol/usb_hid.mk | 1 | ||||
| m--------- | protocol/usb_hid/USB_Host_Shield_2.0 | 0 | 
7 files changed, 52 insertions, 8 deletions
| diff --git a/.gitmodules b/.gitmodules index 17a20decb7..e21f449613 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,6 +1,6 @@ -[submodule "protocol/usb_hid/USB_Host_Shield_2.0"] -	path = protocol/usb_hid/USB_Host_Shield_2.0 -	url = [email protected]:tmk/USB_Host_Shield_2.0.git  [submodule "protocol/lufa/LUFA-git"]  	path = protocol/lufa/LUFA-git  	url = https://github.com/abcminiuser/lufa.git +[submodule "protocol/usb_hid/USB_Host_Shield_2.0"] +	path = protocol/usb_hid/USB_Host_Shield_2.0 +	url = https://github.com/felis/USB_Host_Shield_2.0.git diff --git a/converter/usb_usb/Makefile b/converter/usb_usb/Makefile index 13f77ca9b7..4f983e7f68 100644 --- a/converter/usb_usb/Makefile +++ b/converter/usb_usb/Makefile @@ -120,7 +120,7 @@ VPATH += $(TOP_DIR)  # program Leonardo -PROGRAM_CMD = avrdude -p$(MCU) -cavr109 -P$(DEV) -b57600 -Uflash:w:$(TARGET).hex +PROGRAM_CMD = avrdude -p$(MCU) -cavr109 -b57600 -Uflash:w:$(TARGET).hex -P$(DEV) diff --git a/converter/usb_usb/README b/converter/usb_usb/README index a489371107..69caabb278 100644 --- a/converter/usb_usb/README +++ b/converter/usb_usb/README @@ -19,13 +19,42 @@ Build firmware      $ cd converter/usb_usb      $ make -You will get usb_usb.hex if you are lucky. -Program your Leonardo with avrdude(or easy-going Arduino IDE): +Program converter. Push reset button on Leonardo before run this command. Serial port name(COM17) depends your system. On Linux I got /dev/ttyACM0. + +    $ DEV=COM17 make program +    or +    $ avrdude -patmega32u4 -cavr109 -b57600 -Uflash:w:usb_usb.hex -PCOM17 -    $ avrdude -patmega32u4 -cavr109 -PCOM17 -b57600 -Uflash:w:usb_usb.hex  Limitation  ----------  Only supports 'HID Boot protocol'.  Not support keyboard LED yet. + + + +Update +------ +2014/12/11  Added Hub support(confirmed with HHKB pro2) + + + +Resource +-------- +USB Host Sheild 2.0 +    https://www.circuitsathome.com/products-page/arduino-shields/usb-host-shield-2-0-for-arduino +    https://www.circuitsathome.com/products-page/arduino-shields/usb-host-shield-for-arduino-pro-mini +USB Host Sheild 2.0 source +    https://github.com/felis/USB_Host_Shield_2.0 +Arduino USB Host Shield(with bootst converter) +    http://arduino.cc/en/Main/ArduinoUSBHostShield +Arduino source +    https://github.com/arduino/Arduino/hardware/arduino/{cores,variants} +Initial release of TMK USB-USB converter +    https://geekhack.org/index.php?topic=33057.msg653549#msg653549 +    http://deskthority.net/workshop-f7/is-remapping-a-usb-keyboard-using-teensy-possible-t2841-30.html#p74854 +Arduino-based hardware keyboard remapper - Colemak forum +    http://forum.colemak.com/viewtopic.php?id=1561 +Teensy + Host Shield +    http://www.pjrc.com/teensy/td_libs_USBHostShield.html diff --git a/converter/usb_usb/config.h b/converter/usb_usb/config.h index d614973f7e..bdc02868c8 100644 --- a/converter/usb_usb/config.h +++ b/converter/usb_usb/config.h @@ -20,7 +20,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  #define VENDOR_ID       0xFEED -#define PRODUCT_ID      0xCAFE +#define PRODUCT_ID      0x005B  #define DEVICE_VER      0x0814  #define MANUFACTURER    t.m.k.  #define PRODUCT         USB to USB keyboard converter diff --git a/converter/usb_usb/main.cpp b/converter/usb_usb/main.cpp index 20b7af66a2..30fd3348a3 100644 --- a/converter/usb_usb/main.cpp +++ b/converter/usb_usb/main.cpp @@ -8,11 +8,13 @@  #include "hid.h"  #include "hidboot.h"  #include "parser.h" +#include "usbhub.h"  // LUFA  #include "lufa.h"  #include "timer.h" +#include "sendchar.h"  #include "debug.h"  #include "keyboard.h" @@ -22,6 +24,15 @@  static USB     usb_host;  static HIDBoot<HID_PROTOCOL_KEYBOARD>    kbd(&usb_host);  static KBDReportParser kbd_parser; +static USBHub hub1(&usb_host);  // one hub is enough for HHKB pro2 +/* may be needed  for other device with more hub +static USBHub hub2(&usb_host); +static USBHub hub3(&usb_host); +static USBHub hub4(&usb_host); +static USBHub hub5(&usb_host); +static USBHub hub6(&usb_host); +static USBHub hub7(&usb_host); +*/  static void LUFA_setup(void)  { @@ -39,6 +50,7 @@ static void LUFA_setup(void)      // for Console_Task      USB_Device_EnableSOFEvents(); +    print_set_sendchar(sendchar);  }  static void HID_setup() @@ -60,9 +72,11 @@ int main(void)      LED_TX_ON;      debug_enable = true; +/*      debug_matrix = true;      debug_keyboard = true;      debug_mouse = true; +*/      host_set_driver(&lufa_driver);      keyboard_init(); diff --git a/protocol/usb_hid.mk b/protocol/usb_hid.mk index 6914dce809..8fda76c2e5 100644 --- a/protocol/usb_hid.mk +++ b/protocol/usb_hid.mk @@ -8,6 +8,7 @@ USB_HOST_SHIELD_DIR = $(USB_HID_DIR)/USB_Host_Shield_2.0  USB_HOST_SHIELD_SRC = \  	$(USB_HOST_SHIELD_DIR)/Usb.cpp \  	$(USB_HOST_SHIELD_DIR)/hid.cpp \ +	$(USB_HOST_SHIELD_DIR)/usbhub.cpp \  	$(USB_HOST_SHIELD_DIR)/parsetools.cpp \  	$(USB_HOST_SHIELD_DIR)/message.cpp  diff --git a/protocol/usb_hid/USB_Host_Shield_2.0 b/protocol/usb_hid/USB_Host_Shield_2.0 -Subproject 8bb790f83af298b5f3e5516259c9d8ec27efe52 +Subproject 2b4a56de3d090686f62d25ea34042759dc4352d | 
