-Keyboard Firmware
-=================
-2010/08/23 noname
-
-
-VERSION
--------
-0.1 2010/08/23
- implemented for macway modified.
- It works as normal keyboard now.
-
-
-TODO
-----
-modulization
- clean source
-debouncing
- will be coded when bouncing occurs.
- bouncing doesnt occur on my alps switch so far.
- scan rate is too slow?(to be measure)
-anti-ghost
- 2010/09/13 done
-sleep&wakeup
-boot keyboard support
-mouse key
-keymap layer
- 2010/09/16 simple layer(HHKB/vi cursor)
- key combination switch
- toggle siwtch
-setting menu(wizard)
- debug console
- keymap setting
- matrix display
-PS/2 keyboard mode
-HHKB support
-Trackpoint(PS/2) support
- Thinkpad keyboard support
-
-
-target board
-------------
-Teensy 2.0
+t.m.k. Keyboard Firmware
+========================
+http://github.com/tmk/tmk_keyboard
+
+This is keyboard firmware for AVR USB MCUs or Teensy/Teensy++ 2.0.
+
+The project is heavily based on PJRC USB Keyboard/Mouse Example and
+owes a debt to preceding keyboard firmware projects.
+
http://www.pjrc.com/teensy
-projects based on/related to
-----------------------------
-PJRC USB Keyboard Example
+
+Functions
+---------
+Mouse key
+System Control Key
+ Power Down, Sleep, Wake Up & USB Remote Wake up
+Media Control Key
+ Volume Down/Up, Mute
+USB NKRO
+
+
+Build
+-----
+Compiling sources need AVR GCC, AVR Libc and GNU make.(You can use WinAVR on Windows.)
+
+$ cd <target> (hhkb or macway)
+$ make
+
+http://winavr.sourceforge.net/
+
+
+Build Options
+-------------
+Makefile:
+Comment out to disable the option
+ # USB NKey Rollover
+ USB_NKRO_ENABLE = yes
+
+ # mouse keys
+ MOUSEKEY_ENABLE = yes
+
+ # PS/2 mouse support
+ PS2_MOUSE_ENABLE = yes
+
+config.h:
+ /* USB ID */
+ #define VENDOR_ID 0xFEED
+ #define PRODUCT_ID 0xBEEF
+ /* device description */
+ #define MANUFACTURER t.m.k.
+ #define PRODUCT Macway mod
+ #define DESCRIPTION t.m.k. keyboard firmware for Macway mod
+ /* matrix size */
+ #define MATRIX_ROWS 8
+ #define MATRIX_COLS 8
+ /* mouse keys repeat delay */
+ #define MOUSEKEY_DELAY_TIME 192
+ /* PS/2 lines */
+ #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
+
+
+Configuration
+-------------
+
+
+Debuging & Rescue
+-----------------
+Use PJRC's hid_listen.exe to see debug messages.
+Press right Control + Shift + Alt + GUI + H to debug menu.
+
+Pressing any 3 keys when connected enables debug output.
+Pressing any 4 keys when connected makes bootloader comes up.
+
+
+Projects related
+----------------
+PJRC USB Keyboard/Mouse Example
http://www.pjrc.com/teensy/usb_keyboard.html
+ http://www.pjrc.com/teensy/usb_mouse.html
kbupgrade
http://github.com/rhomann/kbupgrade
http://geekhack.org/showwiki.php?title=Island:8406