geekhack Projects > Making Stuff Together!

TMK keyboard firmware

(1/404) > >>

I hope that this thread become a place to get bug report, feedback and suggestion from the community.

Source code repository

You are using QMK?
QMK has already great and helpful community and will help you. You can ask there.



Read wiki pages first.

Use this if you have problem on building firmware.

Your keyboard/converter doesn't work?
Frist, post schematics or pics of your hardware and wriring this really saves our time. Don't save your time by omitting this.

If you edit code
Post your code. Don't hesitate to show your dirty code!

And other infos you can provide
- Which OS are you using?

2013/07  NKRO on LUFA is supported
2014/03  FAQ and Keymap Editor are added
2014/12  updated USB to USB converter
2015/01  Added Infinity support(mbed based)
2015/03  Updated for Infinity 'production' model
2015/04  Changed location of core library to 'tmk_core' directory. MoreUpdate your Makefile to change variable name TOP_DIR to TMK_DIR and location of core library.

--- Code: ---TMK_DIR = ../../tmk_core

--- End code ---

2015/09  NeXT converter LED control fix
2016/02  flabbergast's Chibios protocol was merged
2016/06  Added XT to USB converter. Thank you, @papodaca.
2017/05  Fixed Modifier/Layer key stuck problem.



Customize Keymap


Keymap Editor

TMK own projects
You can find under:

Alternative controller for HHKB
Alps64 - PCB for Alps SKCM/L
Happy Buckling Keyboard(Model M 60% mod)
PCB cut 60% mod(retired)
Infinity Ergodox(unofficial)
Infinity 60chibios mbed(unofficial)

PS/2(Code Set 2)
ADB(Apple Desktop Bus)
M0110(Apple Machintosh 128K/512K/Plus)
NEWS(Sony workstation)
X68K(Sharp X68000)
IBM 4704
Sun(Sun Microsystems)
NeXT(Non ADB) pic contribution from bcg(
XT(Code Set 1) contribution from papodaca(

TMK Products
HHKB Alt Controller

TMK Converters


Previously Asked Questions

NKRO doesn't work

What is the meaning of "TMK"?

Do you have any instruction on how to make a Fn layer toggle on and off, rather than only switching layers while a Fn key is pressed?

I really like your FW!


--- Quote from: jdcarpe on Wed, 03 April 2013, 20:43:14 ---Do you have any instruction on how to make a Fn layer toggle on and off, rather than only switching layers while a Fn key is pressed?

--- End quote ---
Look at doc/ All layer actions are documented there.

As Iíve said before in the gh60 thread, that code is plain awesome and understandable. I really like your how you implement the keymap and how easy it is to make it fit your own needs.

Iíve already forked your repo here and started toying around a bit ;D

Hi Hasu, thanks very much for this opportunity to learn more about your firmware
and thanks very much for sharing it!

--- Quote from: hasu date=2013-04-03 ---You'll have to write a 'host side protocol' module to add support for BT HID.

--- End quote ---
I didn't understood why we will need a "host" side module. It wouldn't be one simple slave? (according to what I saw at the Bluetooth HID Lite documentation).

--- Quote from: hasu date=2013-04-03 ---My firmware has a module using Bluegiga iWRAP4 for BT(and V-USB for USB), you can find this under protocol/iwrap/ directory. But it is very old code and not supported actively now. I don't know even whether it works with new updated firmware base. Though, I think it is still a good start point for BT module. Also LUFA 'host side protocol' module will be worth looking into. It is located on protocol/lufa/.

--- End quote ---
Yup I saw both of these folders there. I'll have to buy this BlueGiga module to test it further - just waiting for the best day of my credit card. I were already planning to get one of these and the RN-42 anyway.

-> Reference papers for those willing to touch Hasu's code:
    TMK keyboard firmware collection
         Hasu's deskthority previous topic.
    Bluetooth HID Lite
         HID Lite = HID Keyboard Boot mode, could it be one easier option to our GH60 Bluetooth keyboard?
    Human Interface Device Profile 1.1
         Official HID 1.1 profile documentation
    HID Profile, Bluetooth HID Tutorial
         Awesome tutorial

-> For discussion:
    LUFA BT HID not 100% done
         See the last message, by Dean Camera.
    "LUFA has bluetooth hid support" (unknow guy)
         "... you can port OSS host stack - maybe BlueZ(the linux stack) or lwBT (the latter designed for low memory usage for embedded systems)."
    Btstack AVR on google code
         Seems to be one Bluetooth HID stack but I'm not sure of it - it's complete? Too little code there.

-> Reference code:
    Dean Camera Bluetooth Explorer bot (LUFA based, with a partial HID/L2CAP/SDP layers)
         This project acts as a Bluetooth host receiving joystick movements and as a device, sending sensor data to one PC. This PC has one USB HID driver installed to parse the bot messages.

Gosh, too much stuff to read and learn!!!


[0] Message Index

[#] Next page

Go to full version