Jacob Alexander [Thu, 13 Nov 2014 07:04:50 +0000 (23:04 -0800)]
Fixing NKRO on Windows 8.1
- Had to re-write descriptor to support Windows 8.1 while still working with Mac OSX
- NKRO keyboard is now more bandwidth intensive as all the keys must be updated at the same time
(due to 8.1 bug in the HID spec)
Jacob Alexander [Mon, 3 Nov 2014 07:24:59 +0000 (23:24 -0800)]
Fixing Mac OSX USB NKRO
- OSX doesn't properly follow the spec when it comes to padding bits (when using bitfields)
- Everything seems to work when I don't use them
- NKRO tested working on OSX
Jacob Alexander [Fri, 3 Oct 2014 05:09:34 +0000 (22:09 -0700)]
HUGE AVR RAM optimization (~28%).
- It's possible to get even more, but this is probably as far as I'll go
- PROGMEM is really annoying to use, and makes the code look like ass
- Now the Teensy 2++ should have enough RAM to use PartialMap easily
Jacob Alexander [Sun, 21 Sep 2014 18:55:37 +0000 (11:55 -0700)]
Adding NKRO support to AVR/DPH.
- NKRO for USB Codes 4 to 164, 176 to 221 and modifiers
- Added System Control support codes 129 to 183
- Added Consumer Control support codes 32 to 668
Jacob Alexander [Wed, 17 Sep 2014 00:04:59 +0000 (17:04 -0700)]
Adding support for layer packing
- Only keep state for the scan code that are available for the layer
- Also properly implemented scan code range checking (was not done before, only worked because the KLL compiler was well behaved)
Jacob Alexander [Tue, 16 Sep 2014 03:19:40 +0000 (20:19 -0700)]
Added initial Bootloader, Mac OSX, Windows instructions
Instructions:
- Windows virtual serial port
- Mac OSX virtual serial port
- Mac OSX firmware loading instructions
- Initial Mac OSX building instructions
- Initial Bootloader make and installation instructions for Linux
Jacob Alexander [Sun, 14 Sep 2014 22:51:36 +0000 (15:51 -0700)]
Adding CMake build support for the KLL compiler
- Automatically downloads the kll compiler if not found
- Added capability files to each of the module that currently have them
- Split modules.cmake so kll.cmake could influence build targets (also needs info from modules.cmake)
- Updated .gitignore for kll compiler directory
- Added documentation on how to manipulate layouts using CMakeLists.txt
- Cleanup of old layout files
Jacob Alexander [Thu, 11 Sep 2014 03:53:30 +0000 (20:53 -0700)]
Fixing release state for keys
- Layers were not disabling because function was only called on press/hold
- Disabled layer shift function on key hold
- Fixed the press/hold/release states for other layer capabilities and USB code send
Jacob Alexander [Mon, 8 Sep 2014 04:10:49 +0000 (21:10 -0700)]
Preparing for kll compiler usage
- Split layer capability into different parts
- Convenience Shift, Latch, Lock
- Keeping the original capability because it also allows specifically turning layers off and is useful for debugging
Jacob Alexander [Sat, 23 Aug 2014 17:49:13 +0000 (10:49 -0700)]
All basic macros tested and working!
Tested
------
Single : Single
Single : Combo
Single : Sequence
Combo : Single
Combo : Combo
Combo : Sequence
Sequence : Single
Sequence : Combo
Sequence : Sequence
Jacob Alexander [Fri, 15 Aug 2014 17:53:43 +0000 (10:53 -0700)]
Adding McHCK DFU Bootloader
- Heavily modified, not compatible with McHCK images
- Uses 4k of Flash (rather than 3k)
- LED turns on when in firmware flash mode
- Changed the USB IDs
- Added CMake build system
- Updated linker script to be closer to what is used for the rest of the projects
- Removed a lot of unnecessary code
- Added a license header to each file (using the same license as the McHCK had)
- Updated the USB Vendor, Product and Serial strings
- Using the Kiibohd initialization sequence rather than the McHCK one
- Using Kiibohd interrupt vector table and other misc mk20dx setup
Jacob Alexander [Fri, 15 Aug 2014 17:42:12 +0000 (10:42 -0700)]
Fixing RAM calculator and reduced actual SRAM usage
- Changed static variables to const that should have been const
- Updated CMake files to prepare for MCHCK custom bootloader
- Changed the USB ID numbers and ID number for bootloader
- Only generate DFU or Teensy binary image, not both
- Fixed RAM and FLASH calculator
- Added missing license in delay.c/h (much of it was taken from Teensy source though I've changed a bunch of it)
- Prepared mk20dx.c for upcoming bootloader addition
- mk20dx.h cleanup
- Reduced the MCHCK based flash size for the application image (bootloader changes requires more flash space)
- Fixed bugs in macro.c
- Added keyHold cli command
- Added show pending events debug message for PartialMap macro module
Jacob Alexander [Wed, 6 Aug 2014 19:18:06 +0000 (12:18 -0700)]
Macro processing is now feature complete.
- Basic features only (there are still some extra options that can be added)
- Not tested
- ResultMacro processor is complete
- Layer enabling capability not yet complete
- USB Key output capability not yet complete