geekhack Projects > Making Stuff Together!

Easy AVR USB Keyboard Firmware and Keymapper

(1/509) > >>

metalliqaz:
Info page at DT wiki
Source at Github

I'm breaking this out from my old Epsilon thread because this software has really outgrown it's original scope.

This is a keyboard firmware and keymapping GUI for custom keyboards based on USB AVRs.  It's powerful but also really easy to use.



Some of the supported boards

* Epsilon  ***
* Qazpad (Tau)  ***
* CompactTKL (Zeta)  ***
* Phantom  ***
* HID Liberation Device (custom controller for the Filco MJ2)  ***
* Kitten Paw (custom controller for the Filco fullsize)  ***
* Pegasus Hoof (V1/V2) (custom controller for the Filco MJ2)  ***
* Black Petal (custom controller for the Rosewill RK-9000)  ***
* Frosty Flake (v1/v2) (custom controller for the Quickfire Rapid)  ***
* Ghost Squid (custom controller for the Quickfire XT)  *
* GH60  *
* GH36  *
* GHpad  *
* KMAC (OG KMAC / KMAC 1.2 / KMAC 2)  ***
* JD40  ***
* JD45  **
* Techkeys Card **
* Orion ***
* LightSaver *
* Octagon *
* Atreus *
* Planck PCB ***
* SixShooter (custom controller for CM Switch Tester) *
Want more?  Make a request.

Maturity Ratings: *** = Tested and working completely     ** = Probably working     * = No testing, might not work

Features

* Fully programmable (of course)
* 10 layers
* key actuation can be configured for normal mode, toggle on/off, rapid-fire repeat, or dual-use (tap keys)
* 14 firmware macros
* 1 RAM macro, recordable on the fly
* N-Key Rollover (NKRO)
* 1kHz polling rate
* Media keys
* Mouse keys
* Programmable LEDs
* Backlighting effects
* LED dimming
* Advanced special features such as...
* Virtual Numpad
* Win Lock on Scroll Lock
* Default layer selection
* Customizable debounce algorithms and timing
* Unlink Num Lock
* Embedded password generator
* Supports ATmega32U4, ATmega32U2, and ATmega16U2 ...so far
Download

Moved to Github

Directions

See the official documentation

Source code

See Github

FAQ

Moved to the wiki

Not finding what you're looking for?
You can try Hasu's firmware or Soarer's firmware

metalliqaz:
HOWTOs go here.

metalliqaz:
Changelog

Discontinued.  For changes, follow the project on Github


old changelog:

2015-06-25: Quick update

* Fix basic LED config
2015-06-20: New beta release

* Advanced LED config
2015-05-16: Quick update

* Fix LEDs on GH36 and JD45
* Sigma support
2015-05-10: New release

* Add new \HINT() macro
* Extend macro buffer to 2kB
* Fix broken LED behavior in Zeta and possibly others
2015-04-20: New release

* Improvements to handwire matrix
* fix bugs in autokey
2015-04-19: New beta release

* Fix rapidfire bug
* Fix broken handmod matrix
* Internal optimizations
2015-04-16: New beta release

* Actions and tapkeys can be assigned to any key on any layer, instead of just mods/fn
* Any key on any layer can be sent with any combination of mods, instead of just shift on mods/fn
* Allow use of MX Lock on caps/scroll/num lock instead of just caps
* New rapid fire key mode
* Fix SCANCODE_BOOT not working
* Many internal optimizations and bugfixes
* Zeta support
2015-03-26: Quick update

* Planck PCB support
* Pegasus Hoof v2 support
* Sixshooter support
2015-03-14: Quick update

* Tweak Techcard and Lightsaver
* Initial Octagon support
* Make the picker tool MUCH less annoying to use
2015-03-07: New release

* Add ANY_FN_ACTIVE LED assignment
* Improve documentation
2015-03-04: New release

* Internal optimizations
* Bump USB keyboard polling interval to 1ms
2015-03-02: New release
Note!  This release bumps the EEPROM format version so all settings will be cleared when it is loaded for the first time.

* Lightsaver support
* New setting: default LED dimmer level
2015-03-01: New release

* Remove FN_LOCK and replace with FN_ACTIVE through FN9_ACTIVE
* Internal optimizations and bugfixes
* Allow an LED indicator to be set to backlight on boards with backlighting
* Add new backlight mode: Erosion
2015-02-23: New release

* Allow NKRO disable without disabling mouse and media keys
* Add the ability to use the rare Mac-only scancodes if desired
* Add "search" media key
* Extend the number of firmware macros from 12 to 14
2015-02-21: New release

* Rename Smallfry to JD40.  Smallfry != JD40 and the former isn't currently supported. (though it could be)
* Correct the USB device descriptors to identify hardware
* More robust on KMAC and Orion
* Fix LED backlighting dynamic modes and allow LED dimmer to go lower
* Internal optimizations
* Update Atreus
2015-02-15: New release

* Add Shifted mode for mods and Fn keys
* Add \WAIT() macro function
2015-02-13: Quick update

* Atreus Support
* Fix invalid .hex files
* Fix parsing of ALT codes in macros
2015-02-01: Beta version updated

* JD45 Support
* Ghost Squid Support
2014-09-02: Beta version updated

* Fix GH36 support
* Add F13-F24
2014-08-25: Beta version updated

* Add support for GH36
* Add support for Frosty Flake v2
2014-07-03: Beta version updated

* Add support for Duck Orion
* Fix bug in KMAC Caps Lock
2014-06-15: Beta version updated

* Fix improperly built HID Liberation Device binary
2014-06-15: Beta version updated

* Extended ability to perform ALT+codes with hex
* Small bugfix for running on Linux/Mac systems
* Add new feature: embedded password generator
2014-05-25: Beta version updated

* Added ability to perform ALT+codes in macros.
2014-04-20: Beta version updated

* Add new "scancode picker" to allow easier selection of key assignments.
2014-04-18: Beta version updated

* Add new config options for keyboard and mouse timing.
2014-04-14: Beta version updated

* A few minor GUI improvements.
* Add SCANCODE_MOUSE3.
2014-04-10: Release version updated and Beta version updated

* Last beta version upgraded to release version.
* Add support for Techkeys card.
* Add new feature: programmable LEDs.
2014-04-03: Beta version updated

* Add more media keys such as Browser, Mail, Media Player, Calculator, NavForward, and NavBack
2014-04-01: Beta version updated

* Change timing of the matrix scan to fix problems with Flake/Paw/Hoof/Petal
2014-03-30: Beta version updated

* Added option to disable NKRO and act like a vanilla USB HID keyboard
* Clean up 6KRO behavior
2014-03-29: Beta version updated

* Fix RAM Macro bug
* Add LED dimming
* Add option to set default backlight mode
2014-03-25: Beta version updated

* Several bugfixes
2014-03-24: Beta version updated

* Make the core of the firmware understand NKRO, instead of merely superficially supporting NKRO
* Optimize for internal efficiency
* Debounce setting now allows user to select up to 99 ms
* Fix nasty memory corruptions from stack overflow on ATmega32U2 devices
* Rename Debug Console to Config Console, and remove the cryptic debug functions
2014-03-16: Beta version updated

* NKRO
2014-03-13: Release version updated

* Various small fixes
* Support Python 3
2014-03-12: Beta version updated

* Add more ISO configs for Phantom
* Add Locking Capslock, for keyboards with MX Lock switches on Caps
* Add option to build debug firmwares
2014-03-10: Beta version updated

* Fix Phantom right-shift
2014-01-27: Beta version updated

* Add ISO layouts for Costar boards.
2014-01-26: Beta version updated

* Fix WinLock LED
2014-01-15: Beta version updated

* Add ESCGRAVE key for 60% boards.  Acts like ~ when shift is pressed, otherwise Esc.
2013-12-29: Beta version updated

* Overhaul the configuration of layouts.  Users can now configure any layouts they want.
* Internal version is now v.7 -- This one is unfortunately not backwards-compatible with older versions
* Fix the 7bit layout on Phantom
2013-12-26: Release version updated

* Slight modification to GHpad support to add Fn Lock LED
* Debounce algorithm was too tight, fixed it to reduce chattering
2013-12-08: Release version updated and Beta version updated

* Last beta version upgraded to release version.
* Add prototype Smallfry keyboard support.
2013-12-04: Beta version updated

* Fix Pegasus Hoof LEDs again.
2013-11-26: Beta version updated

* Invert Pegasus Hoof LEDs.
2013-11-25: Beta version updated

* Change debounce algorithm.  New version is zero delay.
2013-11-24: First release version

* Bugfixes
2013-11-23: Update to beta release

* Add KMAC support
* Make RAM macro easier to use
* Mods can now be given toggle modes like Fn keys
2013-11-21: Initial beta release

tjweir:

--- Quote from: metalliqaz on Wed, 20 November 2013, 21:50:29 ---Want more?  Make a request.

--- End quote ---

Aikon MX-MINI support?  Its an ATMEGA32.
Here's a link to the GH page on programming an Aikon-based board - http://geekhack.org/index.php?topic=38406.0

Thanks!!

lcs:
Amazing work!

Navigation

[0] Message Index

[#] Next page

Go to full version