keyboard controller firmware for Atmel AVR and ARM USB families
You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
tmk 82637ded27 add horizontal mouse wheel 14 years ago
HHKB make input ports(PE6,7) *with pullup*. 14 years ago
.gitignore add mouse function. 14 years ago
Makefile.hhkb HHKB support. 14 years ago
Makefile.macway HHKB support. 14 years ago
README change matrix pinouts. 14 years ago
jump_bootloader.c some fixes. LED flush for debug. 14 years ago
jump_bootloader.h add jump_bootloader. 14 years ago
keymap.c add layer diagrams. 14 years ago
keymap.h add mouse function. 14 years ago
keymap_hhkb.c ';' for Fn key: send ';' when key realease without using the layer 14 years ago
keymap_hhkb.h ';' for Fn key: send ';' when key realease without using the layer 14 years ago
matrix.c change matrix pinouts. 14 years ago
matrix.h add mouse function. 14 years ago
matrix_hhkb.c make input ports(PE6,7) *with pullup*. 14 years ago
print.c add mouse function. 14 years ago
print.h add mouse function. 14 years ago
tmk.c add horizontal mouse wheel 14 years ago
usb.c add horizontal mouse wheel 14 years ago
usb.h add mouse wheel function. 14 years ago
usb_debug.c divide usb_keyboard_debug.[c|h] into usb_device, usb_keyboard, usb_debug. 14 years ago
usb_debug.h add mouse function. 14 years ago
usb_keyboard.c divide usb_keyboard_debug.[c|h] into usb_device, usb_keyboard, usb_debug. 14 years ago
usb_keyboard.h add mouse function. 14 years ago
usb_keycodes.h version 1.0. 14 years ago
usb_mouse.c add horizontal mouse wheel 14 years ago
usb_mouse.h add mouse wheel function. 14 years ago

README

t.m.k. Keyboard Firmware
========================
http://github.com/tmk/tmk_keyboard

This is keyboard firmware for PFU HHKB style keyboard and teensy 2.0.
OS see this as composite device which has keyboard and mouse.

The project is heavily based on PJRC USB Keyboard/Mouse Example and
owes a debt to preceding keyboard firmware projects.


Version
-------
0.1     2010/08/23
        It works as normal keyboard.
        It is for modified Macway keyboard(TP-999KB-E).

1.0     2010/10/02
        keyboard has mouse key now.
        keyboard with layers.(see keymap.c)
            FN_1(right cmd):
                vi style layer
            FN_2(next to right shift):
                HHKB style layer
            FN_3(left bottom):
                h j k l:   mouse move
                a s d spc: mouse buttons
                m ,:       mouse wheel

1.1     2010/10/08
        Matrix wiring changed for casing.
        (and my Teensy PD3 seems to be latchuped and unusable. :<)


Target board
------------
Teensy 2.0
http://www.pjrc.com/teensy


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/


TODO & ideas
------------
licensing notes(GPL)
    I think GPL is not infringement of PJRC license.
souce code cleaning
sleep&wakeup
debouncing logic
    will be coded when bouncing occurs.
    bouncing doesnt occur on my ALPS switch so far.
    scan rate is too slow?(to be measure)

support for HHKB pro matrix signal
    exchange controller board with teensy
Trackpoint(PS/2)
    receive PS/2 signal from TrackPoint
    send USB HID report
Thinkpad keyboard support
    turn keyboard to USB keyboard/mouse composite device
mouse horizontal wheel
    http://www.microchip.com/forums/tm.aspx?high=&m=391435&mpage=1#391521
    http://www.keil.com/forum/15671/
    http://www.microsoft.com/whdc/device/input/wheel.mspx
setting menu(configure without changing firmware)
    console for display
    keymap/layer setting
    mouse speed/acceleration
    matrix display
PS/2 keyboard mode
    with USB to PS/2 dumb adapter(possible?)


EOF