]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
added HHKB/README and clean some codes.
authortmk <nobody@nowhere>
Wed, 25 May 2011 01:37:58 +0000 (10:37 +0900)
committertmk <nobody@nowhere>
Wed, 25 May 2011 02:30:14 +0000 (11:30 +0900)
24 files changed:
adb.c [changed mode: 0755->0644]
adb_usb/Makefile [changed mode: 0755->0644]
adb_usb/matrix.c [changed mode: 0755->0644]
command.c [changed mode: 0755->0644]
hhkb/Makefile [changed mode: 0755->0644]
hhkb/Makefile.vusb
hhkb/README [new file with mode: 0644]
hhkb/config.h [deleted file]
hhkb/config_pjrc.h [new file with mode: 0644]
hhkb/config_vusb.h
hhkb/doc/HHKB_TP1684.jpg [changed mode: 0755->0644]
hhkb/doc/HHKB_chart1.jpg [changed mode: 0755->0644]
hhkb/doc/HHKB_chart2.jpg [changed mode: 0755->0644]
hhkb/doc/HHKB_connector.jpg [changed mode: 0755->0644]
hhkb/doc/HHKB_controller.jpg [changed mode: 0755->0644]
hhkb/doc/HHKB_keyswitch.jpg [changed mode: 0755->0644]
hhkb/doc/connector_contact.jpg [changed mode: 0755->0644]
hhkb/doc/logic_analyzer.jpg [changed mode: 0755->0644]
hhkb/doc/probe_contact.jpg [changed mode: 0755->0644]
hhkb/doc/teensy_install.jpg [changed mode: 0755->0644]
hhkb/doc/teensy_wiring.jpg [changed mode: 0755->0644]
macway/Makefile
ps2_usb/Makefile [changed mode: 0755->0644]
ps2_usb/Makefile.vusb

diff --git a/adb.c b/adb.c
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 92b9ba1..802b424
@@ -38,7 +38,7 @@ F_CPU = 16000000
 #
 MOUSEKEY_ENABLE = yes  # Mouse keys
 #PS2_MOUSE_ENABLE = yes        # PS/2 mouse(TrackPoint) support
-USB_EXTRA_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 #USB_NKRO_ENABLE = yes # USB Nkey Rollover
 
 
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index 4a0af1c..e1cc2f2
@@ -1,5 +1,10 @@
+#
+# Makefile for PJRC Teensy
+#
+
+
 # Target file name (without extension).
-TARGET = hhkb
+TARGET = hhkb_pjrc
 
 # Directory common source filess exist
 COMMON_DIR = ..
@@ -13,7 +18,7 @@ TARGET_SRC =  main_pjrc.c \
                matrix.c \
                led.c
 
-CONFIG_H = config.h
+CONFIG_H = config_pjrc.h
 
 
 # MCU name, you MUST set this to match the board you are using
@@ -36,7 +41,7 @@ F_CPU = 16000000
 #   comment out to disable the options.
 MOUSEKEY_ENABLE = yes  # Mouse keys
 #PS2_MOUSE_ENABLE = yes        # PS/2 mouse(TrackPoint) support
-USB_EXTRA_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 USB_NKRO_ENABLE = yes  # USB Nkey Rollover
 
 
index 7826ffd02574c8c459c831953ab9e3c5975521ca..77841b824cb97e0a3aacbcf43848899aef028fde 100644 (file)
@@ -1,3 +1,8 @@
+#
+# Makefile for V-USB
+#
+
+
 # Target file name (without extension).
 TARGET = hhkb_vusb
 
@@ -23,10 +28,6 @@ OPT_DEFS = -DDEBUG_LEVEL=0
 
 # MCU name, you MUST set this to match the board you are using
 # type "make clean" after changing this, so all files will be rebuilt
-#MCU = at90usb162       # Teensy 1.0
-#MCU = atmega32u4       # Teensy 2.0
-#MCU = at90usb646       # Teensy++ 1.0
-#MCU = at90usb1286      # Teensy++ 2.0
 MCU = atmega168
 
 
@@ -42,7 +43,7 @@ F_CPU = 20000000
 #   comment out to disable the options.
 #
 MOUSEKEY_ENABLE = yes  # Mouse keys
-USB_EXTRA_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 #USB_NKRO_ENABLE = yes # USB Nkey Rollover
 
 
diff --git a/hhkb/README b/hhkb/README
new file mode 100644 (file)
index 0000000..2a44181
--- /dev/null
@@ -0,0 +1,80 @@
+Alternative Controller for HHKB
+===============================
+
+Feature
+-------
+- Mouse Keys
+- NKRO on USB
+- Keymap Layers
+
+
+Customize Keymap
+----------------
+see keymap.c.
+
+
+Build for Teensy
+----------------
+0. Edit matrix.c.
+    adjust scan code to your pin configuration.(see doc/HHKB.txt for pinouts)
+1. Define macros in config_pjrc.h.(Optional)
+    VENDOR_ID, PRODUCT_ID and string descriptor.
+    IS_COMMAND
+2. Edit Makefile for MCU setting and build options.
+    MCU, F_CPU
+    MOUSEKEY_ENABLE, USB_EXTRA_ENABLE, USB_NKRO_ENABLE
+3. Build hex file.
+    $ make
+4. Program MCU.
+    $  make program
+
+
+Build for V-USB
+---------------
+0. Edit matrix.c and usbconfig.h.
+    adjust scan code to your pin configuration.(see doc/HHKB.txt for pinouts)
+    define macros for V-USB in usbconfig.h.
+1. Define macros in config_vusb.h.(Optional)
+    IS_COMMAND
+2. Edit Makefile.vusb for MCU setting and build options.
+    MCU, F_CPU
+    MOUSEKEY_ENABLE, USB_EXTRA_ENABLE, USB_NKRO_ENABLE
+3. Build hex file.
+    $ make -f Makefile.vusb
+4. Program MCU.
+    $  make -f Makefile.vusb program
+
+    Using a bootloader to program for convenience is recommended.
+    Once program this V-USB bootloader at first, you can program MCU without
+    extra programmer. You should have reset switch to start up as bootloader
+    mode in this case.
+    USBaspLoader:
+    http://www.obdev.at/products/vusb/usbasploader.html
+
+
+V-USB Circuit
+-------------
+                +---+   +---------------+
+USB            GND  |   |   ATmega168   |
+===                 C3  |               |
+5V <-------+--------+---|Vcc,AVCC       |        HHKB
+           R1           |               |        ====
+D- <----+--+-----R2-----|INT1      PB0-2|------->ROW
+D+ <----|---+----R3-----|INT0      PB3-5|------->COL
+        Z1  Z2          |            PB6|------->ENABLE
+GND<----+---+--+--+-----|GND         PE6|------->KEY
+               |  |     |            PE7|------->PREV
+               |  C2-+--|XTAL1          |        (see doc/HHKB.txt for pinouts)
+               |     X1 |               |
+               +--C3-+--|XTAL2       RST|---SW--+GND
+                        +---------------+
+R1:     1.5K Ohm
+R2,R3:  68 Ohm
+Z1,Z2:  Zener 3.6V
+C1,C2:  22pF
+C3:     0.1uF
+X1:     Crystal 20MHz(16MHz/12MHz)
+SW:     Push Switch(Optional for bootloader)
+
+
+EOF
diff --git a/hhkb/config.h b/hhkb/config.h
deleted file mode 100644 (file)
index 886eef9..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef CONFIG_H
-#define CONFIG_H
-
-/* controller configuration */
-#include "controller_teensy.h"
-
-#define VENDOR_ID       0xFEED
-#define PRODUCT_ID      0xCAFE
-#define MANUFACTURER    t.m.k.
-#define PRODUCT         HHKB mod
-#define DESCRIPTION     t.m.k. keyboard firmware for HHKB mod
-
-
-/* matrix size */
-#define MATRIX_ROWS 8
-#define MATRIX_COLS 8
-/* define if matrix has ghost */
-//#define MATRIX_HAS_GHOST
-
-
-/* key combination for command */
-#define IS_COMMAND() ( \
-    keyboard_report->mods == (BIT_LSHIFT | BIT_RSHIFT) || \
-    keyboard_report->mods == (BIT_LCTRL | BIT_RSHIFT) \
-)
-
-
-/* mouse keys */
-#ifdef MOUSEKEY_ENABLE
-#   define MOUSEKEY_DELAY_TIME 192
-#endif
-
-
-/* PS/2 mouse */
-#ifdef PS2_MOUSE_ENABLE
-/*
-#   define PS2_CLOCK_PORT  PORTF
-#   define PS2_CLOCK_PIN   PINF
-#   define PS2_CLOCK_DDR   DDRF
-#   define PS2_CLOCK_BIT   0
-#   define PS2_DATA_PORT   PORTF
-#   define PS2_DATA_PIN    PINF
-#   define PS2_DATA_DDR    DDRF
-#   define PS2_DATA_BIT    1
-*/
-#endif
-
-#endif
diff --git a/hhkb/config_pjrc.h b/hhkb/config_pjrc.h
new file mode 100644 (file)
index 0000000..886eef9
--- /dev/null
@@ -0,0 +1,48 @@
+#ifndef CONFIG_H
+#define CONFIG_H
+
+/* controller configuration */
+#include "controller_teensy.h"
+
+#define VENDOR_ID       0xFEED
+#define PRODUCT_ID      0xCAFE
+#define MANUFACTURER    t.m.k.
+#define PRODUCT         HHKB mod
+#define DESCRIPTION     t.m.k. keyboard firmware for HHKB mod
+
+
+/* matrix size */
+#define MATRIX_ROWS 8
+#define MATRIX_COLS 8
+/* define if matrix has ghost */
+//#define MATRIX_HAS_GHOST
+
+
+/* key combination for command */
+#define IS_COMMAND() ( \
+    keyboard_report->mods == (BIT_LSHIFT | BIT_RSHIFT) || \
+    keyboard_report->mods == (BIT_LCTRL | BIT_RSHIFT) \
+)
+
+
+/* mouse keys */
+#ifdef MOUSEKEY_ENABLE
+#   define MOUSEKEY_DELAY_TIME 192
+#endif
+
+
+/* PS/2 mouse */
+#ifdef PS2_MOUSE_ENABLE
+/*
+#   define PS2_CLOCK_PORT  PORTF
+#   define PS2_CLOCK_PIN   PINF
+#   define PS2_CLOCK_DDR   DDRF
+#   define PS2_CLOCK_BIT   0
+#   define PS2_DATA_PORT   PORTF
+#   define PS2_DATA_PIN    PINF
+#   define PS2_DATA_DDR    DDRF
+#   define PS2_DATA_BIT    1
+*/
+#endif
+
+#endif
index 3b44b94a310a0eac71f54dcd83167032f88c8f84..7c4291a2139fa87411eba259634f7a3d666de094 100644 (file)
 #endif
 
 
-/* PS/2 lines */
-#ifdef PS2_MOUSE_ENABLE
-
-#define PS2_CLOCK_PORT  PORTD
-#define PS2_CLOCK_PIN   PIND
-#define PS2_CLOCK_DDR   DDRD
-#define PS2_CLOCK_BIT   4
-#define PS2_DATA_PORT   PORTD
-#define PS2_DATA_PIN    PIND
-#define PS2_DATA_DDR    DDRD
-#define PS2_DATA_BIT    0
-
-
-// Synchronous USART is used to receive data from keyboard.
-// Use RXD pin for PS/2 DATA line and XCK for PS/2 CLOCK.
-// NOTE: This is recomended strongly if you use V-USB library.
-#define PS2_USE_USART
-
-// External or Pin Change Interrupt is used to receive data from keyboard.
-// Use INT1 or PCINTxx for PS/2 CLOCK line. see below.
-//#define PS2_USE_INT
-
-
-#ifdef PS2_USE_USART
-// synchronous, odd parity, 1-bit stop, 8-bit data, sample at falling edge
-// set DDR of CLOCK as input to be slave
-#define PS2_USART_INIT() do {   \
-    PS2_CLOCK_DDR &= ~(1<<PS2_CLOCK_BIT);   \
-    PS2_DATA_DDR &= ~(1<<PS2_DATA_BIT);     \
-    UCSR0C = ((1 << UMSEL00) |  \
-              (3 << UPM00)   |  \
-              (0 << USBS0)   |  \
-              (3 << UCSZ00)  |  \
-              (0 << UCPOL0));   \
-    UCSR0A = 0;                 \
-    UBRR0H = 0;                 \
-    UBRR0L = 0;                 \
-} while (0)
-#define PS2_USART_RX_INT_ON() do {  \
-    UCSR0B = ((1 << RXCIE0) |       \
-              (1 << RXEN0));        \
-} while (0)
-#define PS2_USART_RX_POLL_ON() do { \
-    UCSR0B = (1 << RXEN0);          \
-} while (0)
-#define PS2_USART_OFF() do {    \
-    UCSR0C = 0;                 \
-    UCSR0B &= ~((1 << RXEN0) |  \
-                (1 << TXEN0));  \
-} while (0)
-#define PS2_USART_RX_READY      (UCSR0A & (1<<RXC0))
-#define PS2_USART_RX_DATA       UDR0
-#define PS2_USART_ERROR         (UCSR0A & ((1<<FE0) | (1<<DOR0) | (1<<UPE0)))
-#define PS2_USART_RX_VECT       USART_RX_vect
-#endif
-
-
-#ifdef PS2_USE_INT
-/* INT1
-#define PS2_INT_INIT()  do {    \
-    EICRA |= ((1<<ISC11) |      \
-              (0<<ISC10));      \
-} while (0)
-#define PS2_INT_ON()  do {      \
-    EIMSK |= (1<<INT1);         \
-} while (0)
-#define PS2_INT_OFF() do {      \
-    EIMSK &= ~(1<<INT1);        \
-} while (0)
-#define PS2_INT_VECT    INT1_vect
-*/
-
-/* PCINT20 */
-#define PS2_INT_INIT()  do {    \
-    PCICR  |= (1<<PCIE2);       \
-} while (0)
-#define PS2_INT_ON()  do {      \
-    PCMSK2 |= (1<<PCINT20);     \
-} while (0)
-#define PS2_INT_OFF() do {      \
-    PCMSK2 &= ~(1<<PCINT20);    \
-    PCICR  &= ~(1<<PCIE2);      \
-} while (0)
-#define PS2_INT_VECT    PCINT2_vect
-#endif
-
-#endif
-
 #endif
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
old mode 100755 (executable)
new mode 100644 (file)
index c603ca7b98540d30520347b4d8146749240fe854..6e7fa7fd9f3c6c028be7b5d1b2641bc0dd26a36a 100644 (file)
@@ -37,13 +37,13 @@ F_CPU = 16000000
 #
 MOUSEKEY_ENABLE = yes  # Mouse keys
 #PS2_MOUSE_ENABLE = yes        # PS/2 mouse(TrackPoint) support
-USB_EXTRA_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 #USB_NKRO_ENABLE = yes # USB Nkey Rollover
 
 
 
 #---------------- Programming Options --------------------------
-PROGRAM_CMD = teensy_loader_cli.exe -mmcu=$(MCU) -w -v $(TARGET).hex
+PROGRAM_CMD = teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex
 
 
 
old mode 100755 (executable)
new mode 100644 (file)
index 6059629..a548b56
@@ -1,5 +1,10 @@
+#
+# Makefile for PJRC Teensy
+#
+
+
 # Target file name (without extension).
-TARGET = ps2_usb
+TARGET = ps2_usb_pjrc
 
 # Directory common source filess exist
 COMMON_DIR = ..
@@ -37,7 +42,7 @@ F_CPU = 16000000
 #   comment out to disable the options.
 #
 MOUSEKEY_ENABLE = yes  # Mouse keys
-USB_EXTRA_ENABLE = yes # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 USB_NKRO_ENABLE = yes  # USB Nkey Rollover
 
 
index 6e49fc44ddd4248716b988a6407666984a9208c9..ff86d7998ad642d1c56f98939aed78185103511d 100644 (file)
@@ -1,5 +1,10 @@
+#
+# Makefile for V-USB
+#
+
+
 # Target file name (without extension).
-TARGET = ps2_vusb
+TARGET = ps2_usb_vusb
 
 # Directory common source filess exist
 COMMON_DIR = ..
@@ -43,7 +48,7 @@ F_CPU = 20000000
 #   comment out to disable the options.
 #
 MOUSEKEY_ENABLE = yes  # Mouse keys
-#USB_EXTRA_ENABLE = yes        # Enhanced feature for Windows(Audio control and System control)
+USB_EXTRA_ENABLE = yes # Audio control and System control
 #USB_NKRO_ENABLE = yes # USB Nkey Rollover