2010-10-02 02:51:42 +00:00
|
|
|
t.m.k. Keyboard Firmware
|
|
|
|
========================
|
2010-10-02 17:37:06 +00:00
|
|
|
http://github.com/tmk/tmk_keyboard
|
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
This is keyboard firmware for AVR USB MCUs or Teensy/Teensy++ 2.0.
|
2010-10-02 02:51:42 +00:00
|
|
|
|
|
|
|
The project is heavily based on PJRC USB Keyboard/Mouse Example and
|
|
|
|
owes a debt to preceding keyboard firmware projects.
|
2010-08-23 06:46:24 +00:00
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
http://www.pjrc.com/teensy
|
2010-08-23 06:46:24 +00:00
|
|
|
|
|
|
|
|
2010-10-08 11:03:16 +00:00
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
Functions
|
|
|
|
---------
|
|
|
|
Mouse key
|
|
|
|
System Control Key
|
|
|
|
Power Down, Sleep, Wake Up & USB Remote Wake up
|
|
|
|
Media Control Key
|
|
|
|
Volume Down/Up, Mute
|
|
|
|
USB NKRO
|
2010-10-27 14:01:37 +00:00
|
|
|
|
2010-10-14 08:36:00 +00:00
|
|
|
|
|
|
|
Build
|
|
|
|
-----
|
|
|
|
Compiling sources need AVR GCC, AVR Libc and GNU make.(You can use WinAVR on Windows.)
|
|
|
|
|
|
|
|
$ cd <target> (hhkb or macway)
|
|
|
|
$ make
|
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
http://winavr.sourceforge.net/
|
2010-10-14 08:36:00 +00:00
|
|
|
|
2010-10-23 18:27:43 +00:00
|
|
|
|
2011-01-02 14:52:13 +00:00
|
|
|
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
|
|
|
|
-------------
|
|
|
|
|
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
Debuging & Rescue
|
|
|
|
-----------------
|
|
|
|
Use PJRC's hid_listen.exe to see debug messages.
|
|
|
|
Press right Control + Shift + Alt + GUI + H to debug menu.
|
2010-10-23 18:27:43 +00:00
|
|
|
|
2010-12-07 16:47:57 +00:00
|
|
|
Pressing any 3 keys when connected enables debug output.
|
|
|
|
Pressing any 4 keys when connected makes bootloader comes up.
|
2010-08-23 06:46:24 +00:00
|
|
|
|
|
|
|
|
2010-10-08 11:03:16 +00:00
|
|
|
Projects related
|
2010-10-02 02:51:42 +00:00
|
|
|
----------------
|
|
|
|
PJRC USB Keyboard/Mouse Example
|
2010-08-23 06:46:24 +00:00
|
|
|
http://www.pjrc.com/teensy/usb_keyboard.html
|
2010-10-02 02:51:42 +00:00
|
|
|
http://www.pjrc.com/teensy/usb_mouse.html
|
2010-08-23 06:46:24 +00:00
|
|
|
kbupgrade
|
|
|
|
http://github.com/rhomann/kbupgrade
|
|
|
|
http://geekhack.org/showwiki.php?title=Island:8406
|
|
|
|
c64key
|
|
|
|
http://symlink.dk/projects/c64key/
|
|
|
|
rump
|
|
|
|
http://mg8.org/rump/
|
|
|
|
http://github.com/clee/rump
|
|
|
|
dulcimer
|
|
|
|
http://www.schatenseite.de/dulcimer.html
|
|
|
|
humblehacker-keyboard
|
|
|
|
http://github.com/humblehacker
|
|
|
|
http://www.humblehacker.com/keyboard/
|
|
|
|
http://geekhack.org/showwiki.php?title=Island:6292
|
|
|
|
ps2avr
|
|
|
|
http://sourceforge.net/projects/ps2avr/
|
|
|
|
|
|
|
|
|
|
|
|
EOF
|