ed0b51dbff
Restore the original I2c{Read,Write}() implementations to make the communication between keyboard halves fully functional again. Fixes#8.
László Monda2016-12-09 22:24:15 +01:00
71e0ae79d7
Merge branch 'master' of github.com:UltimateHackingKeyboard/firmware
László Monda2016-12-09 21:44:31 +01:00
c47105afd3
Change I2cRead() and I2cWrite() to more closely resemble I2C_MasterReadBlocking() and I2C_MasterWriteBlocking() respectively. This way, we should be able to figure out the root cause of the communication error regarding the blink script more easily.
László Monda2016-12-09 21:44:03 +01:00
fc434c7857
Remove keyboard scanning from USB interrupt. Fix initial blink of LEDs when initializing. Coding style fixes.
Robert Csordas2016-11-13 15:50:49 +01:00
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.
László Monda2016-10-19 19:39:00 +02:00
32b5484b31
Fix TEST_LED_{ON,OFF} macros to function as they should. Enable the test LEDs of both halves by default.
László Monda2016-10-15 00:41:37 +02:00
4929e38dce
Pull up the SDB of the left LED driver.
László Monda2016-10-14 19:04:00 +02:00
9436be444c
Implement read EEPROM and write EEPROM USB commands.
László Monda2016-10-12 12:51:22 +02:00
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.
László Monda2016-10-12 03:03:59 +02:00
7d3abdffef
Don't send erroneous scancodes to the host by including delays for the pins to stabilize. Thanks @santiagogf89 for the idea!
László Monda2016-10-11 20:47:56 +02:00
6885bf0449
Extract test LED specific code to test_led.[ch]
László Monda2016-10-11 03:00:24 +02:00
09e6314770
Replace clock_config.[ch] with the much shorter init_clock.[ch]
László Monda2016-10-11 02:41:29 +02:00
4771b80817
Add "shared" include path and let Eclipse make some other changes to its files.
László Monda2016-10-11 02:23:38 +02:00
fbfb744fa4
Reduce the number of false positive keystroke registrations by setting output logic right... Hopefully.
László Monda2016-10-10 23:26:55 +02:00
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.
László Monda2016-10-10 22:39:22 +02:00
56b8609187
Let KDS update org.eclipse.cdt.launch.PROJECT_BUILD_CONFIG_ID_ATTR
László Monda2016-10-10 17:39:38 +02:00
5588aecb78
Extract KeyMatrix_Init() and create related typedefs.
László Monda2016-10-10 17:33:11 +02:00
188faacdb2
Replace the KSDK_2.0_FRDM-K22F submodule with KSDK_2.0_MK22FN512xxx12.
László Monda2016-10-06 21:47:24 +02:00
0ca817e4b5
Let Eclipse slightly update the launch configuration.
László Monda2016-10-06 20:35:57 +02:00
89c7f8f5d9
Set the multiplexing of the LED pin properly. Mad props to @santiagogf89 for the fix!
László Monda2016-10-06 20:31:52 +02:00
dd7b38b38f
Remove the now unused KSDK_1.3_FRDM-KL03Z submodule.
László Monda2016-10-06 18:12:08 +02:00
5f131eb599
Loosely port the firmware of the left keyboard half to KSDK 2.0
László Monda2016-10-06 18:00:05 +02:00
4742a0c661
Initialize clocks where they're actually needed.
László Monda2016-10-05 23:12:22 +02:00
4830c98d50
Initialize the I2C bus of the EEPROM. Organize related macros neatly.
László Monda2016-10-05 21:27:49 +02:00
f0b63a6f7b
Add reset_button.c and test_led.c. Clean up init_peripherials.c
László Monda2016-10-05 02:05:05 +02:00
5936129ebc
Remove the include directory. Add init_clock.[ch]
László Monda2016-10-04 18:36:01 +02:00
f4f7fd72d9
Move the lufa directory one level upwards.
László Monda2016-10-04 17:29:06 +02:00
5f1c85147b
Remove pin_mux.[ch], add init_peripherials.[ch], add reset_button.h which I forgot to add previously.
László Monda2016-10-04 17:02:46 +02:00
13a71ea826
Extract dedicated protocol handler functions per command.
László Monda2016-09-27 00:11:26 +02:00
9e29018ff7
Move the USB protocol handler into its own file.
László Monda2016-09-26 23:49:50 +02:00
d2b810a3cf
Explode GenericHidBuffer[2] as GenericHidInBuffer and GenericHidOutBuffer.
László Monda2016-09-26 23:32:13 +02:00
7b3178a10a
Generalize LED driver functions by adding I2C address parameters.
László Monda2016-09-26 21:37:29 +02:00
7b1f6a37ff
Add LED driver related macros instead of using magic numbers.
László Monda2016-09-26 21:19:35 +02:00
36bb5fabba
Rename the toplevel include directory to shared. Add it to the project workspace. Include led_driver.h from main.c
László Monda2016-09-26 20:36:49 +02:00
2dd9aa87b0
Name a couple of I2C related variables more intuitively.
László Monda2016-09-26 20:33:03 +02:00
b280fde8a5
Extract LED driver related functions to led_driver.[ch]
László Monda2016-09-26 20:28:12 +02:00
9e3d512e89
Put the files that contain the usb descriptors into the newly created usb_descriptors directory.
László Monda2016-09-26 18:54:16 +02:00
77f956d5bb
Put usb_device_{dci,khci}.[ch] directly under the newly created usb virtual folder.
László Monda2016-09-26 18:46:37 +02:00
8a396446a6
Unlink even more USB related redundant files.
László Monda2016-09-26 08:57:48 +02:00
11401a6448
Make less use of linked files and folders for better long-term maintainability by moving the source files under the newly created src directory and only linking that directory to the workspace.
László Monda2016-09-26 08:45:59 +02:00
d055e0411f
Expose the test LED via generic HID. Update USB VID and PID. Remove the macros of green and blue LEDs.
László Monda2016-09-25 01:49:27 +02:00
124c88afed
Update USB manufacturer name, product name, and VID.
László Monda2016-09-24 23:16:13 +02:00