Keyboard firmwares for Atmel AVR and Cortex-M
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tmk 2a562a4191 Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
hhkb Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
macway Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
.gitignore add mouse function. 13 years ago
Makefile.common Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
README Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
USB_NKRO.txt Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
controller_teensy.h ADD: keymap macro for human to read easier 13 years ago
debug.h improve layer switching 13 years ago
jump_bootloader.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
jump_bootloader.h add jump_bootloader. 13 years ago
key_process.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
key_process.h hhkb: refactored 13 years ago
keymap_skel.h improve layer switching 13 years ago
layer.c tuning layer switch timing. 13 years ago
layer.h improve layer switching 13 years ago
matrix_skel.h improve layer switching 13 years ago
mousekey.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
mousekey.h Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
print.c switch debug on/off by pressing 4 keys on booting time 13 years ago
print.h switch debug on/off by pressing 4 keys on booting time 13 years ago
ps2.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
ps2.h Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
ps2_mouse.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
ps2_mouse.h Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
timer.c improve layer switching 13 years ago
timer.h improve layer switching 13 years ago
tmk.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
usb.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
usb.h add system controls(power down/wake up) from generic desktop page(HID) 13 years ago
usb_debug.c divide usb_keyboard_debug.[c|h] into usb_device, usb_keyboard, usb_debug. 13 years ago
usb_debug.h add mouse function. 13 years ago
usb_extra.c add system controls(power down/wake up) from generic desktop page(HID) 13 years ago
usb_extra.h add system controls(power down/wake up) from generic desktop page(HID) 13 years ago
usb_keyboard.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
usb_keyboard.h Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
usb_keycodes.h add audio controls from consumer page(HID) 13 years ago
usb_mouse.c Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
usb_mouse.h Add PS/2 mouse support to connect TrackPoint Unit. 13 years ago
util.c add build option: NKRO_ENABLE(remove: USB_12KRO) 13 years ago
util.h new build method for macway 13 years ago

README

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



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
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