Archived
1
0
Commit Graph

157 Commits

Author SHA1 Message Date
Jacob Alexander
b30f8f5e97 Initial (non-kll) pixel mappings for KType
- Includes pixel testing functions
2016-01-03 18:37:22 -08:00
Jacob Alexander
9ed526deb6 Adding PixelMap
- Includes basic (led) channel testing tools
- Currently hard-coded, needs kll integration before this can be used in general
2016-01-03 16:16:41 -08:00
Jacob Alexander
1e47c7abc2 Initial LED Animiation Support
- Added port swapping to KType
- Added initial KType default keymappings
- Initial PixelMap animiation framework
- Swapped in new i2c library for ISSILed
2016-01-03 10:21:10 -08:00
Jacob Alexander
f501a0e196 Adding support for 4 ISSI chips 2015-12-21 15:15:20 -08:00
Jacob Alexander
415a0aab52 Adding automatic port swapping to ICPad
- Works the same as the bootloader variant, waits 1000 ms before attempting to swap
  Only swaps if USB not already intialized
  If USB never initializes, will swap forever

TODO
- Stop swapping if UARTConnect detected and initialized
2015-12-12 15:16:57 -08:00
Jacob Alexander
808e617f9f Merge branch 'master' into ICPad 2015-11-12 22:35:27 +13:00
Jacob Alexander
a25aa84513 Initial support for the ICPad
- Basic support for up to 4 ISSI chips (and partial support for 16 chip configurations)
- Initial USB mux support
  * Required USB re-init procedure
- Initial interconnect mux support
  * Required some state reset commands
2015-11-12 22:33:29 +13:00
Jacob Alexander
38516d5342 Merge pull request #73 from joshuaflanagan/example_script_variables
Stop requiring editing of example scripts
2015-11-10 11:24:03 -08:00
Joshua Flanagan
cd01bfe0ed 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.
2015-11-10 10:32:06 -06:00
Jacob Alexander
11a44f0ea1 Adding comment about using Pillow instead of PIL 2015-11-01 17:19:09 -08:00
Jacob Alexander
a10afbcc6a 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
2015-10-16 10:02:01 -07:00
Jacob Alexander
7e68e81f47 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
2015-10-15 00:21:54 -07:00
Jacob Alexander
425ee67331 More compatible name 2015-10-11 23:23:20 -07:00
Jacob Alexander
d9ba60b34e 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
2015-10-09 22:28:31 -07:00
Jacob Alexander
8311f1b083 Updating KType layout to work more nicely with KiiConf 2015-09-29 20:21:29 -07:00
Jacob Alexander
0501e1dfd0 Initial code for KType TKL 2015-09-29 19:29:27 -07:00
Jacob Alexander
893231b355 Adding layer rotation (next/prev) capability
- Requires kll update
- Including udev id update
2015-09-28 19:58:39 -07:00
Jacob Alexander
df7d0be00d Adding example API scripts 2015-09-14 23:37:32 -07:00
Jacob Alexander
2c25f085b6 Single MDErgo1 layout used for KiiConf initial layout setup 2015-09-14 00:48:48 -07:00
Jacob Alexander
85586c574a Updating convenience build scripts to build Left and Right sides
- Includes minor fix for MD1
2015-08-21 23:23:52 -07:00
Jacob Alexander
9c52fb32fa 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
2015-08-21 19:43:45 -07:00
Jacob Alexander
ef7da32d12 Adding color association to layers 2015-08-18 23:52:48 -07:00
Jacob Alexander
c0fb084eb4 Adding basic support for LCDLayerDisplay using capabilities
- Requires lcdFuncMap.kll instead of stdFuncMap.kll
2015-08-18 23:52:48 -07:00
Jacob Alexander
398018ecf8 Adding examples of custom action/capabilties
- See md1Action.kll for usage
- Includes Block/Unblock
2015-08-16 14:46:26 -07:00
Jacob Alexander
59c14fcdea Adding initial WhiteFox support.
- Includes fix for over-range ScanCodes (would cause hard faults)
- Updated some documentation
- Requires recent kll compiler for the layout
2015-08-16 12:27:12 -07:00
Jacob Alexander
a8caf6e515 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
2015-08-15 21:53:59 -07:00
Jacob Alexander
ecd9923926 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
2015-08-09 00:20:41 -07:00
Jacob Alexander
1c0f94c4ea Adding preliminary MDErgo keymap
- Required updates to CMake in order to handle the multi-layer BaseMaps
2015-08-06 00:36:37 -07:00
Jacob Alexander
0013d7a4f3 Fixing CMake dependency checking for kll_defs.h 2015-08-03 21:42:01 -07:00
Jacob Alexander
d3eaa7a798 Adding ISSILed API calls and default brightness
- Adds override functionality in main module
2015-08-02 16:29:19 -07:00
Jacob Alexander
61cb913833 Using multi-line define support (requires latest kll compiler) 2015-08-02 13:43:28 -07:00
Jacob Alexander
d7b7d31cc2 Adding API to set pixels on LCD screen 2015-08-02 00:00:11 -07:00
Jacob Alexander
9a96c4635d Adding capability to set default image on LCD 2015-08-01 23:13:19 -07:00
Jacob Alexander
5ca169abd7 Adding cli API call to set LCD backlight brightness (16 bit per channel) 2015-08-01 22:47:34 -07:00
Jacob Alexander
64b232c878 Adding 16-bit brightness control to LCD backlight 2015-08-01 21:59:43 -07:00
Jacob Alexander
865be6145f Initial commit of MDErgo1 2015-07-25 15:06:19 -07:00
Jacob Alexander
b6e2f0ebf0 Adding connection type list 2015-07-25 14:54:36 -07:00
Jacob Alexander
55d03f448e 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)
2015-07-18 18:53:21 -07:00
Jacob Alexander
98f796d4df Adding timing based debounce code
- Uses expiry timer to decide on when to allow a state change
- Initial state transitions are unaffected
- Use MinDebounceTime define in kll to configure
- ms granularity
2015-06-19 01:57:16 -07:00
Jacob Alexander
5f262ea4b6 Code cleanup
- Changing header file ifndef define to pragma once's
- Removed duplicate output_com.h's
2015-06-14 14:33:40 -07:00
Jacob Alexander
a6657c8aed Adding example logo to the lcdtest and bmp conversion script. 2015-06-14 14:33:39 -07:00
Jacob Alexander
8942ab63d5 Initial STLcd code.
- Basic screen initialization and clear is working
- Currently SPI is set to a low speed for easy logic analyzer debugging
2015-06-14 14:33:39 -07:00
Jacob Alexander
e41444304b Some initial bringup of the dfu bootloader on the mk20dx256vlh7 2015-06-14 14:33:39 -07:00
Jacob Alexander
c21439cb48 Fixing none parameter. 2015-05-13 21:58:43 -07:00
Jacob Alexander
1acc89e2bd Initial LED support for ISSI IS31FL3731C
- Not ready for advanced support yet
- Basic register and page writing support complete
2015-03-21 17:12:41 -07:00
Jacob Alexander
96e785b571 Merge branch 'master' of https://github.com/smasher816/controller into smasher816-master 2015-03-15 18:27:35 -07:00
Jacob Alexander
ed71f7fad5 Initial commit for UARTConnect module
* Keyboard interconnect using two uarts
* Supports daisy chain addressing using a master/slave direction communication scheme

- Still needs more testing
- Functions have been tested alone to be generally working
2015-03-15 16:58:01 -07:00
Rowan Decker
2922fce0f7 Merge remote-tracking branch 'upstream/master' 2015-03-08 20:17:39 -07:00
Rowan Decker
1392571bd7 Fix whitespace
Use a consistent standard - Tabs in front for indenting, spaces after for anything else. This way everything stays nice and lined up while also letting users change there prefered indent level. Most of the new files from Haata where already in this format.
2015-03-08 18:40:01 -07:00
Jacob Alexander
ae6daa0e5c Adding DebounceThrottleDiv define to slow down the debounce rate.
By default:
DebounceThrottleDiv = 0;
This is the default infinity behaviour right now (may be changed in the future).

Increasing DebounceThrottleDiv will increase the scan rate divider.
DebounceThrottleDiv = 1; # Scans half as much
DebounceThrottleDiv = 2; # Scans a quarter as much
DebounceThrottleDiv = 3; # Scans an eigth as much
etc.

For ARM based uCs (like the Infinity) the maximum divider is 32.
2015-03-06 22:18:15 -08:00