Archived
1
0
Commit Graph

51 Commits

Author SHA1 Message Date
Jacob Alexander
df82ffeff7 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)
2014-09-16 17:04:59 -07:00
Jacob Alexander
dd9c018378 Adding support to Macro support to DPH
- Added layout files for 50 key and kishsaver
- Not yet working (some USB issues on AVR to debug)
- Fixed an OSX issue when building AVR
- Cleanup
2014-09-14 19:27:22 -07:00
Jacob Alexander
e0a2a4806b 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
2014-09-14 15:51:36 -07:00
Jacob Alexander
cb37c82330 Updating PartialLayer code to support varying counter widths.
- For both uC architecture differences and RAM saving
2014-09-11 11:17:17 -07:00
Jacob Alexander
c7934c7224 Adding variable width state variable width.
- Allows for RAM space savings on small microcontrollers at the expense of macro length and number of macros/key assignments
2014-09-11 10:54:50 -07:00
Jacob Alexander
c169097ccf 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
2014-09-10 20:53:30 -07:00
Jacob Alexander
2a6c2a9c78 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
2014-09-07 21:10:49 -07:00
Jacob Alexander
121525e2cb Splitting out structures and macros from the generated keymap.
- Preparation to integrating the compiler
2014-08-23 11:32:46 -07:00
Jacob Alexander
b2eaf0c893 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
2014-08-23 10:49:13 -07:00
Jacob Alexander
31a2d75116 Basic Trigger and Result Macros are now working.
- More complex macro not yet tested (long Trigger to long Result)
- Long Trigger Macros not tested yet
2014-08-20 10:53:22 -07:00
Jacob Alexander
d6d792fdf9 Changing decToInt to numToInt (adds support for Hex number interpreter)
- CLI now works with hex or decimal numbers
- Hex requires 0x (technically just x would work too)
2014-08-16 12:07:25 -07:00
Jacob Alexander
eabb1c546a 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
2014-08-15 10:49:44 -07:00
Jacob Alexander
2f7e3cb117 Adding generic layerToggle and USB Key Output capabilities.
- Macros and Layers are, code-wise, feature complete
2014-08-07 20:03:39 -07:00
Jacob Alexander
51e715f785 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
2014-08-06 12:18:06 -07:00
Jacob Alexander
34198635b9 Adding TriggerMacro processing.
- Not tested, but basic features should be complete
2014-08-05 11:33:55 -07:00
Jacob Alexander
d6345c307f Initial MatrixARM implementation
- Cleaned up Macro and USB callback naming
- Added security jumper for automated reload (MCHCK based only)
- Added additional LED position
2014-08-01 01:26:25 -07:00
Jacob Alexander
c1f8a2c545 Macro cleanup.
- Preparation for KLL support
2014-07-27 23:15:41 -07:00
Jacob Alexander
4e79452860 Adding layer fall-through lookup
- Updated the Scan module API functions (LED and Analog)
2014-07-26 14:06:19 -07:00
Jacob Alexander
8193687d29 Added layerList and layerState functions
- Added LayerIndex data structure
2014-07-26 12:20:59 -07:00
Jacob Alexander
e8e9bb6c44 Added capSelect function that can arbitrary run a keyboard capability
- Made changes to the capabities/macro data structure to specify the capability arg count in the capability list
- Remove the arg count from the result macro struct (as it is redundant)
2014-07-25 10:53:33 -07:00
Jacob Alexander
e42ae810a3 Adding macroList debug function
- Fixed TriggerMacroNum and ResultMacroNum
2014-07-24 23:42:38 -07:00
Jacob Alexander
f7bacebb26 Added capabilities list debug option
- Changed macro/capabilities data structure to index capabilities rather than specify function pointers
- Used an 8 bit array, this reduced the max number of capabities to 255
	* Shouldn't be an issue, but this can be addressed if the limit is hit...unlikely though
2014-07-24 23:18:38 -07:00
Jacob Alexander
ff05e1ccb7 Basic debug trigger/result macro viewer
- Moderate changes to the trigger and result macro data structures
- The debug macro viewers are nearly equivalent to what the main macro processors will do
2014-07-24 22:22:35 -07:00
Jacob Alexander
8eba0ae354 Adding McHCK flash reload function and some cleanup.
- Requires special string to be compared with the bootloader and VBAT register file
2014-07-19 09:21:35 -07:00
Jacob Alexander
1fd777815b Initial work for partial layers and macros. 2014-07-15 21:29:56 -07:00
Jacob Alexander
89193f807e Initial work for KLL macro support 2014-06-14 11:00:29 -07:00
Jacob Alexander
366f6c9276 Kishsaver is fully working with DPH!
- More keyboard layouts and enhancements to come :D
2014-04-26 01:29:09 -07:00
Jacob Alexander
4c76357912 CLI Formatting cleanup. 2014-04-19 11:31:43 -07:00
Jacob Alexander
8ee8e3cb55 Adding analog.c lib from teensyduino.
- Mostly for reference, you shouldn't include it verbatim in your module.
2014-04-12 21:13:37 -07:00
Jacob Alexander
97308d3749 Added CLI DefaultMap lookup command.
- Initial work on capSelect command
- Toggling for macroDebug (only basic functionality right now)
- Cleanup
2014-04-06 13:12:31 -07:00
Jacob Alexander
9d423a64a8 Major code cleanup and preparation for PartialMap Macro Module
- Code should be working, but much is untested
- All of the old modules will need to update and use the new DefaultMap keymap
- There might still be some naming conflicts with some Scan Modules
2014-04-06 11:49:27 -07:00
Jacob Alexander
b2e237f368 Preparing Teensy 3.1 and CLI merge for DPH controller code. 2014-03-22 14:32:06 -07:00
Jacob Alexander
fc7998d605 Adding module compatibility check to CMake build scripts.
- All modules have a default avr compatibilty right now (since that is what they were developed on)
- As modules get tested and added, arm support has to be turned on in the respective setup.cmake file
2013-01-30 18:13:49 -05:00
Jacob Alexander
6da1558b78 Updating AVR abstraction to be compatible with ARM, nearly ready for ARM files
- Very small updates to files, mostly modifying to remove name duplications
2013-01-26 22:30:36 -05:00
Jacob Alexander
14158009b2 Preparing for Teensy 3 (ARM) integration, abstracting code hierarchy
- Abstracted USB Module
- Abstracted compiler specific includes for Scan, Macro, Debug, and USB modules
- Updated CMake build files to support changes
- Added abstractions necessary to main.c as well as a compiler specific include file
2013-01-26 15:05:28 -05:00
Jacob Alexander
65b4489884 Fixing slow key issues with the FACOM converter
- Required some small API changes, shouldn't affect any other Scan modules (addition of a parameter)
- Still have the latching annoyances for some of the modifiers
- Swapped Esc and Tilde for convenience
- Removed the old Esc key from the latch list (no one needs 13 latches anyways...)
- Added the control cluster mappings (Insert, Delete, Home, End, PgUp, PgDn)
- All other misc keys are currently un-assigned if a keycap legend doesn't map to anything known
  (e.g. blank keys, 000 and 00 are mapped, but your OS probably doesn't know what they mean :P)
2013-01-20 22:23:28 -05:00
Jacob Alexander
59e443552c Completing the HP150 converter. 2012-11-17 02:13:06 -08:00
Jacob Alexander
0ac4251e16 Adding test macros and basic "clicker" choose support
- Better macros are still needed for the clicker
- Current macros should be separated as a sub-module
- No LEDs implement yet
- Caps Lock LED seems to be burnt out...
2012-03-27 21:56:54 -04:00
Jacob Alexander
1877dcfa01 Completing the BETKB support
- Keyboard is fully functional
- LED, Beeper, and keyboard input not yet implemented
2012-03-27 00:04:43 -04:00
Jacob Alexander
ea284c03f0 Fixing the macro section for the Bud Keypad 2012-02-13 14:04:53 -05:00
Jacob Alexander
e3fc873cba Final SonyNEWS commit before sending device back 2011-12-19 17:48:47 -08:00
Jacob Alexander
d85c8b56eb Adding bootloader jump macro into buffered keypress module 2011-12-18 19:21:19 -08:00
Jacob Alexander
8f8de985c5 Initial commit of the Epson QX-10 Keyboard module
- LEDs are working
- Reset command is working
- Basic typing is working (USB side drops some characters)
- Changing repeat rate is working
- Querying modifiers and LEDs is working
- Initial layouts are complete
- Modifiers are not fully working yet
2011-12-10 22:48:53 -08:00
Jacob Alexander
6bf2607872 Small macro update for debugging the Sony NEWS 2011-12-06 23:49:56 -08:00
Jacob Alexander
0c562995c7 Adding support for the Micro Switch 8304 Hall Effect Keyboard
- Full support (NKRO, provided the USB module can handle it)
- Full LED support (available to the macro modules per input signals)
- Reset/Hold line support
- Handles repeat rate issues (keyboard does not send key updates as most
  keyboards do...)
2011-11-13 02:04:44 -08:00
Jacob Alexander
0516e82a71 Adding soft entry bootloader via key sequence.
- Fixed up basic Macro module (still not to my liking)
- Added the bootloader entry bits
- Added logic for key sequence tracking
2011-10-16 00:45:10 -07:00
Jacob Alexander
6557022f20 Basic matrix module for the hall effect keypad now working.
- Includes new "table pinning" setup (much easier to understand)
- Matrix layouts will be split into their own dependent modules later
- Changed the HID Raw view id (too many teensy devices on this
  computer...)
- Moved the macro processing outside of the usb timer signal
  (this will be slower overall, but will result in more consistant
  behaviour)
2011-10-15 20:01:46 -07:00
Jacob Alexander
46916defa5 Tandy 1000 Converter, basicly works, except for packet mismatches
- Caused by too much processing in the converter...
- Easy to fix if I remove the macro engine...
2011-10-01 00:54:18 -07:00
Jacob Alexander
05c20112e9 Cleaning up main.c
- main.c is now mostly complete
- Required fixes to matrix.c (some are temporary)
2011-09-30 01:30:34 -07:00
Jacob Alexander
c01efa2d53 Formalizing code module structure and inheritance (Large Commit)
- Commenting cleaned up
- usb_keyboard_debug is not finished yet in terms of cleanup (needs DEBUB_PRINT #ifdef's)
- Added LoadFile script generation
- Formalized KeyIndex and USBKeys data containers
- Split parts of scan_loop into Macro, USB, and main.c
- Added interface to USB modules
- Added interface to Macro modules
- Added proper Debug module enable/disable
2011-09-29 22:22:19 -07:00