Blake Burkhart [Mon, 23 May 2016 23:52:09 +0000 (18:52 -0500)]
Ignore BuildPath directories
Ignore all the default BuildPath directories created by the bash scripts
via cmake.bash.
Jacob Alexander [Tue, 17 May 2016 08:35:23 +0000 (01:35 -0700)]
Merge pull request #118 from cryham/ghostfix
Fixed ghosting matrix check (ok now)
CryHam [Tue, 17 May 2016 08:19:38 +0000 (10:19 +0200)]
fix ghost vars, ifdef
CryHam [Sun, 8 May 2016 07:31:48 +0000 (09:31 +0200)]
Fixed ghosting matrix check (did send bad keys on release), now using also ghost_old state
Jacob Alexander [Tue, 17 May 2016 08:18:14 +0000 (01:18 -0700)]
Adding proper remote wake-up support
- Maintains a sleep state variable (may be able to use as a signal in the future)
- On the first keypress, hold the RESUME signal for 10 ms (spec says between 1 and 15 ms)
- Removed some messages that were affecting sleep state
Jacob Alexander [Tue, 17 May 2016 06:25:08 +0000 (23:25 -0700)]
Adding missing GET_PROTOCOL handling
- Odd that this went unnoticed for sooooo long
- Fixes Mac OSX issue where keyboard freezes/hangs on a reboot
- Also adding missing code for usbMuxUart
Jacob Alexander [Fri, 13 May 2016 21:38:46 +0000 (14:38 -0700)]
Merge pull request #114 from kiibohd/revert-113-ghost_fix
Revert "Fixed ghosting matrix check (did send bad keys on release), now using…"
Jacob Alexander [Fri, 13 May 2016 21:38:05 +0000 (14:38 -0700)]
Revert "Fixed ghosting matrix check (did send bad keys on release), now using…"
Jacob Alexander [Fri, 13 May 2016 18:37:39 +0000 (11:37 -0700)]
Merge pull request #113 from cryham/ghost_fix
Fixed ghosting matrix check (did send bad keys on release), now using…
Jacob Alexander [Mon, 9 May 2016 01:50:28 +0000 (18:50 -0700)]
Initial refactoring of PartialMap for supporting custom Triggers
- Requires a recent KLL
- Functionality wise, nothing has changed
CryHam [Sun, 8 May 2016 07:31:48 +0000 (09:31 +0200)]
Fixed ghosting matrix check (did send bad keys on release), now using also ghost_old state
Jacob Alexander [Thu, 5 May 2016 19:57:30 +0000 (12:57 -0700)]
Disable command list when using configurator
Jacob Alexander [Wed, 23 Mar 2016 02:51:43 +0000 (19:51 -0700)]
Move matrix information to a cli command
Jacob Alexander [Tue, 22 Mar 2016 05:23:57 +0000 (22:23 -0700)]
Adding relative movement mouse key support
- Still very basic (lots of room for improvement)
- Capability format will likely change at some point
- 16 bit movement control, however repeat rate limits usability (will need KLL 0.4 to make better)
Jacob Alexander [Mon, 21 Mar 2016 07:43:19 +0000 (00:43 -0700)]
Adding basic mouse button support
- Full Mouse support will have to wait for KLL 0.6
* This will include dynamic HID descriptor generation for many wheels and axis depending on the KLL needs
- HID descriptor is currently limited to 8 buttons
- Technically mouse movement also works (tested by accident), but it's disable for now (needs some API thought)
- Adding additional udev rules
- Added KRO mode default define
Jacob Alexander [Fri, 4 Mar 2016 08:23:48 +0000 (00:23 -0800)]
Fixing clang compilation and supporting clang-tidy
- clang.c includes necessary functions to make clang compiler work (tested on teensy 3.1)
- Added support code to generate a compile_commands.json for clang-tidy
* Updates the symlink whenever cmake or make is called (Unix OSs only)
Jacob Alexander [Fri, 4 Mar 2016 04:40:01 +0000 (20:40 -0800)]
Adding convenience symlinks to the udev rules
Jacob Alexander [Wed, 2 Mar 2016 19:07:10 +0000 (11:07 -0800)]
Merge pull request #95 from cryham/master
Fixes in CK3 (ghosting matrix), working version on full keyboard.
Jacob Alexander [Wed, 2 Mar 2016 03:35:21 +0000 (19:35 -0800)]
Fixing potential WF LED issue
- Added fix for USB Current Change
* If called during interrupt, could hang the I2C bus
* Delaying I2C writes till scan loop
CryHam [Tue, 1 Mar 2016 20:00:23 +0000 (21:00 +0100)]
Updated CK3 with Scan_currentChange (copy from MD1).
CryHam [Tue, 1 Mar 2016 18:40:00 +0000 (19:40 +0100)]
Merge branch 'master' of github.com:kiibohd/controller
CryHam [Tue, 1 Mar 2016 18:38:43 +0000 (19:38 +0100)]
Changed CK3 matrix scan to Config_Pullup, inverted rows and columns
Added STROBE_DELAY define in matrix.h
All keys scan codes now in defaultMap.kll
Jacob Alexander [Tue, 23 Feb 2016 22:35:08 +0000 (14:35 -0800)]
As per request of original author, updating license to MIT
Jacob Alexander [Mon, 22 Feb 2016 03:56:52 +0000 (19:56 -0800)]
Adding dynamic USB power support
- Each scan module now has a current change callback which passes the available current as a parameter
- No longer attempts to use the max 500 mA immediately, starts with 100 mA then goes to 500 mA after enumeration
- If enumeration fails due to bMaxPower of 500 mA, then attempt again at 100 mA (might also be possible to go even lower to 20 mA in certain cases)
- Now working with the Apple Ipad (no over-power messages)
- Fixed Wake-up behaviour on Apple Ipad (and likely other iOS devices)
- More effecient set_feature/clear_feature handling (device handler)
- Initial power handling via Interconnect (still needs work to get it more dynamic)
Jacob Alexander [Sun, 21 Feb 2016 22:19:52 +0000 (14:19 -0800)]
Setting bootloader max power to 100 mA
- This amount of current is guaranteed by the USB spec before enumeration
- Generally the bootloader doesn't need nearly this much, but to be safe
Jacob Alexander [Sat, 20 Feb 2016 21:28:16 +0000 (13:28 -0800)]
Merge branch 'master' of github.com:kiibohd/controller
Jacob Alexander [Sat, 20 Feb 2016 21:27:49 +0000 (13:27 -0800)]
Debug code for interconnect cable debugging
Jacob Alexander [Sat, 20 Feb 2016 20:13:02 +0000 (12:13 -0800)]
Merge pull request #93 from cryham/master
Added support for ghosting matrices and code for elimination.
CryHam [Sat, 20 Feb 2016 07:33:39 +0000 (08:33 +0100)]
Minor styling fixes.
Renamed define to GHOSTING_MATRIX.
Deleted unused files from CK3.
CryHam [Fri, 19 Feb 2016 17:10:25 +0000 (18:10 +0100)]
Added support for ghosting matrices and code for elimination.
To use define GHOST in matrix.h, see example in Scan/CK3
Jacob Alexander [Fri, 12 Feb 2016 06:56:25 +0000 (22:56 -0800)]
Changed name from MD1_1 to MD1.1
Jacob Alexander [Mon, 8 Feb 2016 16:28:38 +0000 (08:28 -0800)]
Update README.markdown
Jacob Alexander [Sun, 7 Feb 2016 02:23:34 +0000 (18:23 -0800)]
Merge pull request #78 from kevinfrei/infiniteLoops
Fix a handful of infinite loops that occur with more than 254 macros
Jacob Alexander [Sun, 7 Feb 2016 02:21:17 +0000 (18:21 -0800)]
Merge pull request #90 from ryansb/fix/specialCharDirectories
Ensure directories can only be made with printable characters
Jacob Alexander [Sun, 7 Feb 2016 02:06:37 +0000 (18:06 -0800)]
Initial code for MD1_1
- IC60 /w Single color LEDs
- Requires a different matrix configuration so it's incompatible with the old IC60 layout
Ryan S. Brown [Sun, 7 Feb 2016 02:06:08 +0000 (21:06 -0500)]
Ensure directories can only be made with printable characters
In situations where `ls` colors directories incorrectly, the `$module`
variable contains unprintable characters. This causes directories to be
impossible to `cd` into normally, and is generally a pain.
Jacob Alexander [Thu, 28 Jan 2016 04:41:15 +0000 (20:41 -0800)]
Setting WhiteFox LEDs as defaulting to on
Jacob Alexander [Wed, 13 Jan 2016 23:04:45 +0000 (15:04 -0800)]
Updating README for Teensy 3.2 support
Jacob Alexander [Wed, 13 Jan 2016 23:03:50 +0000 (15:03 -0800)]
Merge branch 'master' of github.com:kiibohd/controller
Jacob Alexander [Wed, 13 Jan 2016 23:03:29 +0000 (15:03 -0800)]
Adding comment for the Teensy 3.2
Jacob Alexander [Tue, 5 Jan 2016 18:31:36 +0000 (10:31 -0800)]
Merge pull request #81 from dankm/not-linux
Get build working on FreeBSD
Dan McGregor [Tue, 5 Jan 2016 16:08:14 +0000 (10:08 -0600)]
Merge remote-tracking branch 'github/master' into not-linux
Kevin Frei [Sun, 3 Jan 2016 01:43:05 +0000 (17:43 -0800)]
Fix a handful of infinite loops that occur if you have more than 254 macros
Jacob Alexander [Tue, 10 Nov 2015 19:24:03 +0000 (11:24 -0800)]
Merge pull request #73 from joshuaflanagan/example_script_variables
Stop requiring editing of example scripts
Joshua Flanagan [Tue, 10 Nov 2015 16:32:06 +0000 (10:32 -0600)]
Stop requiring editing of example scripts
The example scripts include hardcoded values that
do not work for everyone. Instead of requiring the
files to be edited (and dirtying the git tree),
allow them to take command-line arguments.
Also adds better guidance for Mac OSX virtual
serial ports.
Jacob Alexander [Mon, 2 Nov 2015 01:19:09 +0000 (17:19 -0800)]
Adding comment about using Pillow instead of PIL
Jacob Alexander [Tue, 27 Oct 2015 01:06:40 +0000 (18:06 -0700)]
Merge pull request #71 from glguy/pr-cli-history
Write whole debug cli command to history
Eric Mertens [Tue, 27 Oct 2015 00:55:41 +0000 (17:55 -0700)]
Write whole debug cli command to history
Previously the command was being modified in place in order
to find the command name. This was happening before saving
to the history.
Fixes #70
Dan McGregor [Mon, 10 Aug 2015 20:49:46 +0000 (14:49 -0600)]
Start removing select Linux-isms
bash might not be in /bin. Don't expect it there.
Jacob Alexander [Mon, 19 Oct 2015 00:54:41 +0000 (17:54 -0700)]
Merge pull request #65 from r4v5/exit-quickly-on-script-error
Exit quickly when cmake or make fail
Mason Donahue [Sun, 18 Oct 2015 19:40:18 +0000 (14:40 -0500)]
Exit quickly when cmake or make fail
The compilation process itself doesn't take very long, but it's weird to
let it continue trying to build when we've encountered an error worthy
of changing cmake/make's return codes. This gives clear indication of a
failed build as the last line of the script's output.
Jacob Alexander [Sun, 18 Oct 2015 04:03:07 +0000 (21:03 -0700)]
Typo from the last commit.
Jacob Alexander [Sat, 17 Oct 2015 22:03:21 +0000 (15:03 -0700)]
Adding support for kll 0.3d
- Requires kll compiler update
- Includes descriptor update to handle new consumer control codes
Jacob Alexander [Fri, 16 Oct 2015 17:02:01 +0000 (10:02 -0700)]
Adding remote capability LED control
- Works for all nodes in chain
- Synchronized to 30 ms update rate (required for ISSI chip)
* Interconnect cannot handle full update speed from Scan module
* Though it should be able to handle quite a bit more than 30 ms updates
Jacob Alexander [Thu, 15 Oct 2015 07:16:36 +0000 (00:16 -0700)]
Adding basic remote capabilities + UART Rx DMA buffers
- Rx buffers weren't fast enough, had to use DMA :D
- Basic LCD remote capabilities are working, single node
- Multi-node broadcast seems to have a bug still
- DMA ring buffer allowed for significant processing simplification
* There is an overrun risk, but the buffer is large and generally there isn't too much data being sent (just very quickly)
- Split out LCD layer stack capability into itself and an "exact" version used for updating remote nodes
Jacob Alexander [Mon, 12 Oct 2015 21:47:13 +0000 (14:47 -0700)]
Merge pull request #63 from jvhaarst/patch-1
Fixed typo
Jan van Haarst [Mon, 12 Oct 2015 20:11:21 +0000 (22:11 +0200)]
Fixed typo
Jacob Alexander [Mon, 12 Oct 2015 06:23:20 +0000 (23:23 -0700)]
More compatible name
Jacob Alexander [Mon, 12 Oct 2015 05:07:11 +0000 (22:07 -0700)]
Adding jump to bootloader key
- Now enabled by default
- Added protection around remote jumps
Jacob Alexander [Sat, 10 Oct 2015 05:28:31 +0000 (22:28 -0700)]
Adding basic ISSI led brightness control capabilities
- 6 modes
* Single led: decrease, increase, set
* All leds: decrease, increase, set
- Currently update speed limited to once every 30 ms
* Likely an I2C driver or ISSI limitation preventing even faster updates
Jacob Alexander [Sat, 10 Oct 2015 01:18:07 +0000 (18:18 -0700)]
Fixing long-standing SET_REPORT bug
- Implementation was completely wrong (has never worked properly)
- Now working in both NKRO and 6KRO modes
- Added more debugging code if things go wrong again
Jacob Alexander [Thu, 8 Oct 2015 03:06:41 +0000 (20:06 -0700)]
Fixing very old bad naming convention (BRACE to BRACKET)
Jacob Alexander [Tue, 6 Oct 2015 07:24:04 +0000 (00:24 -0700)]
Cleaning up CLEAR_FEATURE (endpoint)
- Reverting old fix that no longer seems relevant after numerous recent USB fixes
Jacob Alexander [Sun, 4 Oct 2015 23:19:20 +0000 (16:19 -0700)]
Fix Latching bug (introduced when fixing shift and lock recently)
- Also conditionally refresh the lcd screen if enabled /w interconnect
(Not the ideal way to update, but the only way with the current KLL version)
Jacob Alexander [Wed, 30 Sep 2015 03:21:29 +0000 (20:21 -0700)]
Updating KType layout to work more nicely with KiiConf
Jacob Alexander [Wed, 30 Sep 2015 02:29:27 +0000 (19:29 -0700)]
Initial code for KType TKL
Jacob Alexander [Tue, 29 Sep 2015 02:58:39 +0000 (19:58 -0700)]
Adding layer rotation (next/prev) capability
- Requires kll update
- Including udev id update
Jacob Alexander [Mon, 21 Sep 2015 01:47:10 +0000 (18:47 -0700)]
Prep for mouse support
Jacob Alexander [Tue, 15 Sep 2015 06:37:32 +0000 (23:37 -0700)]
Adding example API scripts
Jacob Alexander [Mon, 14 Sep 2015 07:48:48 +0000 (00:48 -0700)]
Single MDErgo1 layout used for KiiConf initial layout setup
Jacob Alexander [Sat, 22 Aug 2015 06:23:52 +0000 (23:23 -0700)]
Updating convenience build scripts to build Left and Right sides
- Includes minor fix for MD1
Jacob Alexander [Sat, 22 Aug 2015 05:59:11 +0000 (22:59 -0700)]
Bootloader fix
Jacob Alexander [Sat, 22 Aug 2015 03:33:47 +0000 (20:33 -0700)]
Fixing layer stack evaluation
- Layers were stacked correctly, but evaluated backwards
Jacob Alexander [Sat, 22 Aug 2015 02:43:45 +0000 (19:43 -0700)]
Fixing default ErgoDox layout and adding FlashMode button
- Adds proper flashMode support for all keyboards and microcontrollers (usb and serial)
- flashModeEnabled must be set to 1 otherwise it will only show an error
* This is on purpose (somewhat dangerous feature as it allows remote flashing)
- Capability cleanup
Jacob Alexander [Sat, 22 Aug 2015 01:26:46 +0000 (18:26 -0700)]
Forgot to add these files in an earlier commit
Jacob Alexander [Wed, 19 Aug 2015 07:01:15 +0000 (00:01 -0700)]
FIxing Media Keys and general USB compatibilty
- Media keys tested working on Linux/Windows/Mac (use Consumer control)
- Fixed enumeration delays
- Fixed virtual serial port configuration issues
- Fixed GET_REPORT and SET_REPORT
- Added intial descriptors and endpoints for Mouse and Joystick devices
- Split out the consumer and system control endpoint
- Added more fault debugging messages
- Added interface names to endpoints (visible in Windows Device Manager)
- Added KLL define for keyboard locale
Jacob Alexander [Tue, 18 Aug 2015 17:46:55 +0000 (10:46 -0700)]
Adding color association to layers
Jacob Alexander [Tue, 18 Aug 2015 08:10:44 +0000 (01:10 -0700)]
Adding basic support for LCDLayerDisplay using capabilities
- Requires lcdFuncMap.kll instead of stdFuncMap.kll
Jacob Alexander [Sun, 16 Aug 2015 06:45:23 +0000 (23:45 -0700)]
Updating convenience scripts
Jacob Alexander [Sun, 16 Aug 2015 22:53:07 +0000 (15:53 -0700)]
Fixing typo on range check for MDErgo1
Jacob Alexander [Sun, 16 Aug 2015 21:46:26 +0000 (14:46 -0700)]
Adding examples of custom action/capabilties
- See md1Action.kll for usage
- Includes Block/Unblock
Jacob Alexander [Sun, 16 Aug 2015 19:27:12 +0000 (12:27 -0700)]
Adding initial WhiteFox support.
- Includes fix for over-range ScanCodes (would cause hard faults)
- Updated some documentation
- Requires recent kll compiler for the layout
Jacob Alexander [Sun, 16 Aug 2015 04:53:59 +0000 (21:53 -0700)]
Working support for Interconnect
- Supports up to 255 slave nodes (you'll run into ScanCode limitations before then)
- Requires most recent kll compiler update
- Additional debugging output and stats counters
- Noise and parity checking
- Fixed TxFIFO issue when sending buffers larger than the FIFO
- Cleaned up defaultMap.kll
- Added ScanCode caching (reduces interconnect traffic significantly)
- Interconnect module code is conditionally compiled into PartialMap module if required
Jacob Alexander [Sun, 9 Aug 2015 07:20:41 +0000 (00:20 -0700)]
Initial UARTConnect scancode support
- Still some issues
- Will require some changes to MatrixARM and PartialMap
* Currently state information is passed around too frequently
* Needs to be reduced to state changes only
Jacob Alexander [Thu, 6 Aug 2015 07:36:37 +0000 (00:36 -0700)]
Adding preliminary MDErgo keymap
- Required updates to CMake in order to handle the multi-layer BaseMaps
Jacob Alexander [Wed, 5 Aug 2015 17:18:35 +0000 (10:18 -0700)]
Add Unique Id to version information
Jacob Alexander [Tue, 4 Aug 2015 04:42:01 +0000 (21:42 -0700)]
Fixing CMake dependency checking for kll_defs.h
Jacob Alexander [Sun, 2 Aug 2015 23:28:21 +0000 (16:28 -0700)]
Adding ISSILed API calls and default brightness
- Adds override functionality in main module
Jacob Alexander [Sun, 2 Aug 2015 20:43:28 +0000 (13:43 -0700)]
Using multi-line define support (requires latest kll compiler)
Jacob Alexander [Sun, 2 Aug 2015 07:00:11 +0000 (00:00 -0700)]
Adding API to set pixels on LCD screen
Jacob Alexander [Sun, 2 Aug 2015 06:13:19 +0000 (23:13 -0700)]
Adding capability to set default image on LCD
Jacob Alexander [Sun, 2 Aug 2015 05:47:34 +0000 (22:47 -0700)]
Adding cli API call to set LCD backlight brightness (16 bit per channel)
Jacob Alexander [Sun, 2 Aug 2015 04:59:43 +0000 (21:59 -0700)]
Adding 16-bit brightness control to LCD backlight
Jacob Alexander [Sun, 2 Aug 2015 01:26:04 +0000 (18:26 -0700)]
Setting ICED bootloader to turn LCD backlight red
Jacob Alexander [Sat, 25 Jul 2015 22:06:19 +0000 (15:06 -0700)]
Initial commit of MDErgo1
Jacob Alexander [Sat, 25 Jul 2015 21:54:36 +0000 (14:54 -0700)]
Adding connection type list
Jacob Alexander [Sun, 19 Jul 2015 01:53:21 +0000 (18:53 -0700)]
UARTConnect enumeration working!
- Fixed cli reflash mode set
- Cleaned up debugging code
- 4 500 000 baud seems to be reliable
- Fixed master selection (assumes slave node unless USB enumerates)
Jacob Alexander [Tue, 23 Jun 2015 15:00:16 +0000 (08:00 -0700)]
Revert "Merge pull request #27 from smasher816/wakeup-devel"
This reverts commit
622ea5d85f94be4b1694fdf08e30fa76eeb18fe4, reversing
changes made to
c21439cb48daec7514da4250c41962205fa96624.
Jacob Alexander [Tue, 23 Jun 2015 14:58:31 +0000 (07:58 -0700)]
Fixing order of layer debug stack display
- Adding NL's for fault messages
Jacob Alexander [Sat, 20 Jun 2015 03:14:37 +0000 (20:14 -0700)]
Adding layerDebug cli command
- Useful when trying to report layer stacking bugs
- Or at least getting unconfused about what's happening with the layers