Gergely Nagy
e758e088a7
Rework the keyboard layout handling
...
We now use a 32-bit structure to describe each key, and an `uhk_key_t` type that
wraps all the supported things into a union. But this is not the only change: to
be able to move the Fn/Mod keys anywhere, instead of hardcoding their location,
they are now proper layer keys. To make it easier to handle turning a layer off,
key releases can be handled explicitly, too.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org >
2016-12-11 19:22:31 +01:00
Gergely Nagy
5ee11c2f8f
LEDs: Add a method to set all LEDs to a given brightness
...
Mostly for testing purposes, but can be used later for backlight up/down stuff,
too.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org >
2016-12-11 09:57:48 +01:00
Robert Csordas
f2c750cdf9
Refactoring
2016-11-14 22:41:39 +01:00
Robert Csordas
5cf1da0cfe
Fixes the bug of additional characters when mod key is released before the other key
2016-11-14 22:09:33 +01:00
Robert Csordas
fc434c7857
Remove keyboard scanning from USB interrupt. Fix initial blink of LEDs when initializing. Coding style fixes.
2016-11-13 15:50:49 +01:00
Robert Csordas
f2d3963b14
Remove eclipse's bullshit.
2016-11-13 11:29:02 +01:00
Robert Csordas
190d555221
Refactoring and bugfixes.
2016-11-13 11:25:29 +01:00
Robert Csordas
b3bc436bbb
Fix typo+basic power management
2016-11-12 20:31:59 +01:00
Robert Csordas
d232e774b7
Fixes+mod keys
2016-11-12 20:25:15 +01:00
Robert Csordas
6dc6c43238
Able to type.
2016-11-12 19:07:39 +01:00
László Monda
f961260443
Expose ISO jumper state over USB.
2016-10-20 00:14:01 +02:00
László Monda
7a6e5523fb
Make bidirectional communication work between the keyboard halves. Make the set test LED USB command set the test LED of the left half, too.
2016-10-19 19:39:00 +02:00
László Monda
5a32ff743c
Expose the LED jumper via USB.
2016-10-18 18:58:00 +02:00
László Monda
0ed30b4591
Expose the merge sensor via USB.
2016-10-17 23:21:37 +02:00
László Monda
2d31c3e5ce
Add API for the merge sensor.
2016-10-17 23:06:09 +02:00
László Monda
cb7c4d68dd
Fix indentation.
2016-10-17 22:54:06 +02:00
László Monda
3bd2c7f18e
Extract RESET_BUTTON_IS_PRESSED
2016-10-17 22:51:17 +02:00
László Monda
ab3d8b92f0
Remove commented out code.
2016-10-17 22:47:45 +02:00
László Monda
32b5484b31
Fix TEST_LED_{ON,OFF} macros to function as they should. Enable the test LEDs of both halves by default.
2016-10-15 00:41:37 +02:00
László Monda
9436be444c
Implement read EEPROM and write EEPROM USB commands.
2016-10-12 12:51:22 +02:00
László Monda
80ddf397fd
Make the left keyboard half send the state of the keys to the right half via I2C and make the right half send the relevant scancodes to the host via USB.
2016-10-12 03:03:59 +02:00
László Monda
cbe8c953a0
Remove unused variable.
2016-10-12 00:27:58 +02:00
László Monda
2dd260e84b
Fix and use KeyMatrix_Scan()
2016-10-11 21:56:24 +02:00
László Monda
7d3abdffef
Don't send erroneous scancodes to the host by including delays for the pins to stabilize. Thanks @santiagogf89 for the idea!
2016-10-11 20:47:56 +02:00
László Monda
c8284fcd6f
Add KeyMatrix_Scan() although don't use it yet. Send every detected scancode to the host of which there are false positives for some reason.
2016-10-10 22:39:22 +02:00
László Monda
56b8609187
Let KDS update org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR
2016-10-10 17:39:38 +02:00
László Monda
5588aecb78
Extract KeyMatrix_Init() and create related typedefs.
2016-10-10 17:33:11 +02:00
László Monda
188faacdb2
Replace the KSDK_2.0_FRDM-K22F submodule with KSDK_2.0_MK22FN512xxx12.
2016-10-06 21:47:24 +02:00
László Monda
4742a0c661
Initialize clocks where they're actually needed.
2016-10-05 23:12:22 +02:00
László Monda
4830c98d50
Initialize the I2C bus of the EEPROM. Organize related macros neatly.
2016-10-05 21:27:49 +02:00
László Monda
f0b63a6f7b
Add reset_button.c and test_led.c. Clean up init_peripherials.c
2016-10-05 02:05:05 +02:00
László Monda
5936129ebc
Remove the include directory. Add init_clock.[ch]
2016-10-04 18:36:01 +02:00
László Monda
f4f7fd72d9
Move the lufa directory one level upwards.
2016-10-04 17:29:06 +02:00
László Monda
db8f1ff691
Rename include/usb to ksdk_usb.
2016-10-04 17:12:34 +02:00
László Monda
5f1c85147b
Remove pin_mux.[ch], add init_peripherials.[ch], add reset_button.h which I forgot to add previously.
2016-10-04 17:02:46 +02:00
László Monda
0550c19cf5
Delete board.[ch]. Add reset_button.h
2016-10-04 16:44:16 +02:00
László Monda
9172493642
Rename TEST_RED_* to TEST_LED_*
2016-10-04 16:21:19 +02:00
László Monda
e2944663bf
Scan the keyboard matrix and output scan codes over USB accordingly.
2016-10-03 23:34:38 +02:00
László Monda
2ed34073fc
Add rows and columns for the right keyboard matrix.
2016-10-03 23:03:36 +02:00
László Monda
ab22637f1e
Key scanning fixed by @santiagogf89
2016-10-01 02:32:25 +02:00
László Monda
f92cf981dc
Trying to scan SW11 of the keyboard matrix.
2016-10-01 01:06:14 +02:00
László Monda
77f41c1655
Make WriteLedDriver() only send the payload to the target LED driver.
2016-09-27 22:55:01 +02:00
László Monda
b519cd412d
Implement the write LED driver protocol command.
2016-09-27 02:03:43 +02:00
László Monda
7855fa3f87
Add system properties.
2016-09-27 01:42:28 +02:00
László Monda
13a71ea826
Extract dedicated protocol handler functions per command.
2016-09-27 00:11:26 +02:00
László Monda
9e29018ff7
Move the USB protocol handler into its own file.
2016-09-26 23:49:50 +02:00
László Monda
d2b810a3cf
Explode GenericHidBuffer[2] as GenericHidInBuffer and GenericHidOutBuffer.
2016-09-26 23:32:13 +02:00
László Monda
7b3178a10a
Generalize LED driver functions by adding I2C address parameters.
2016-09-26 21:37:29 +02:00
László Monda
7b1f6a37ff
Add LED driver related macros instead of using magic numbers.
2016-09-26 21:19:35 +02:00
László Monda
36bb5fabba
Rename the toplevel include directory to shared. Add it to the project workspace. Include led_driver.h from main.c
2016-09-26 20:36:49 +02:00