Commit Graph

1175 Commits

Author SHA1 Message Date
Eric Tang
d3dfc9bd2c Revert "Simplify logic"
This reverts commit 994e2f6b79.
2018-06-29 23:01:31 -07:00
Eric Tang
8f6251bc4d Only set the semaphore if the report is successfully requested 2018-06-29 23:01:20 -07:00
Eric Tang
b93f211502 Don't retry sending a report if it fails 2018-06-29 22:44:42 -07:00
Eric Tang
69411e53e9 Rename usbMouseAction to UsbMouseAction 2018-06-29 17:23:15 -07:00
Eric Tang
39819e6058 Type Backspace instead of b 2018-06-29 13:29:40 -07:00
Eric Tang
bd97bba4b5 Wake up the host before attempting to send reports 2018-06-29 13:19:49 -07:00
Eric Tang
4214f3e0b6 Use a semaphore to control the rate at which reports are updated 2018-06-29 13:08:24 -07:00
Eric Tang
6eceb6ad30 Default to kStatus_USB_Success 2018-06-29 12:54:06 -07:00
Eric Tang
994e2f6b79 Simplify logic 2018-06-29 12:43:59 -07:00
Eric Tang
baa5e8f037 Remove redundant guard clauses 2018-06-29 12:37:53 -07:00
Eric Tang
cbd5f1b500 Redefine USB_CONFIGURATION_DESCRIPTOR_TOTAL_LENGTH 2018-06-28 17:25:14 -07:00
Eric Tang
c1dc4be8c8 Fix USB_DeviceGetHidDescriptor 2018-06-28 17:25:09 -07:00
Eric Tang
1bd8c7dca8 Use a switch statement 2018-06-28 16:10:26 -07:00
Eric Tang
5d621880ec Merge branch 'dev' of https://github.com/Lauszus/firmware into Lauszus-dev 2018-06-27 13:44:17 -07:00
László Monda
5c3e2966c4 Restore the logic of the key debouncer. Make it only debounce keypresses and set its timeout to 100ms. 2018-06-27 21:42:15 +02:00
Kristian Sloth Lauszus
8c02f3db53 Merge branch 'master' into dev
# Conflicts:
#	right/src/usb_interfaces/usb_interface_basic_keyboard.c
#	right/src/usb_interfaces/usb_interface_basic_keyboard.h
#	right/src/usb_interfaces/usb_interface_media_keyboard.c
#	right/src/usb_interfaces/usb_interface_media_keyboard.h
#	right/src/usb_interfaces/usb_interface_mouse.c
#	right/src/usb_interfaces/usb_interface_mouse.h
#	right/src/usb_interfaces/usb_interface_system_keyboard.c
#	right/src/usb_interfaces/usb_interface_system_keyboard.h
#	right/src/usb_report_updater.c
2018-06-27 10:12:40 +02:00
Eric Tang
cdfabaec42 Make the debounce counters count down 2018-06-26 21:58:48 -07:00
Eric Tang
ff99c2e734 Change KEY_DEBOUNCER_TIMEOUT_MSEC to match keyswitch datasheets 2018-06-26 18:27:01 -07:00
Eric Tang
6d356114a8 Debounce key releases 2018-06-26 18:24:30 -07:00
Eric Tang
2877773cac Revert "The UHK now only sends out data when it changes" 2018-06-26 17:59:57 -07:00
Kristian Sloth Lauszus
a061febd01 Merge test code 2018-06-24 23:57:49 +02:00
Kristian Sloth Lauszus
e3773fd5c0 Removed some unused code 2018-06-24 19:47:28 +02:00
Kristian Sloth Lauszus
a92835454d Make sure the keyboard is not read if any of the endpoints are busy sending data 2018-06-24 18:43:21 +02:00
Kristian Sloth Lauszus
64e5fa7ecb Just read the interruptInPipeBusy flag instead of storing the transfer state in a separate variable and switch the active report back if the HID Send command fails 2018-06-24 18:43:21 +02:00
Kristian Sloth Lauszus
d1894fb62a Removed call to UpdateUsbReports() before usb has been initialised 2018-06-24 18:43:21 +02:00
Kristian Sloth Lauszus
fe7065be4a Select the "MK22FN512xxx12" under MCU settings 2018-06-23 18:47:26 +02:00
Kristian Sloth Lauszus
e7b3127af1 Send out the mouse position and wheel values continuously if the report is not zeros, but only send the mouse button states when they change 2018-06-23 18:20:09 +02:00
Kristian Sloth Lauszus
724378cf6c Make sure we do not try to send another report before the old one has finished sending 2018-06-23 17:33:20 +02:00
Kristian Sloth Lauszus
14eb9c6ec0 Merge branch 'timer' into dev 2018-06-22 21:50:31 +02:00
Kristian Sloth Lauszus
9a8b1ef8b9 The PIT timer is counting downward, so we need to subtract the count from the period value 2018-06-22 21:50:14 +02:00
Kristian Sloth Lauszus
2cc94bd1fc The BL_APP_VECTOR_TABLE_ADDRESS should be overridable 2018-06-22 18:26:51 +02:00
Kristian Sloth Lauszus
ad8de4dd56 Increase the resolution of the elapsed timer when reading the keyboard 2018-06-22 18:03:27 +02:00
Kristian Sloth Lauszus
5e97ad1b3c Just compare the active report with the inactive report stored in each interface driver 2018-06-22 17:55:21 +02:00
Kristian Sloth Lauszus
fe06ed0a4b Merge branch 'timer' into dev 2018-06-22 17:48:53 +02:00
Kristian Sloth Lauszus
d449123fab Fix PIT timer period and added functions for getting the current time in microseconds 2018-06-22 17:39:22 +02:00
Kristian Sloth Lauszus
4d483e7896 Limit the update frequency for reading the keyboard 2018-06-15 14:03:59 +02:00
László Monda
b1cbeefa28 Add base layer key mappings for the left and right modules for testing purposes. 2018-06-13 02:41:01 +02:00
Kristian Sloth Lauszus
9be3cf4865 Invalidate the stored report if the command fails
Fixes #122
2018-06-08 20:23:58 +02:00
László Monda
fc01b29823 Lowercase isLayerDoubleTapToggled. 2018-06-07 15:25:39 +02:00
László Monda
462595ef03 Extract handleSwitchLayerAction() 2018-06-07 14:50:49 +02:00
László Monda
b0d85795f4 Make the double tap to lock feature behave well. 2018-06-07 14:42:23 +02:00
László Monda
2c91ef51db Make releasing locked layers possible again. 2018-06-07 04:10:48 +02:00
László Monda
a54e7ac0a8 Set toggledLayers[action.switchLayer.layer] = true 2018-06-07 04:03:45 +02:00
László Monda
64f54c268b Clean up the layer toggle code a bit. 2018-06-07 03:55:40 +02:00
Kristian Sloth Lauszus
b284e9fa58 Make sure we send out a all zero report once when the a mouse report has been sent 2018-06-07 02:10:27 +02:00
Kristian Sloth Lauszus
1a0da7971a Send out the mouse report continuously if the report is not zeros 2018-06-07 01:56:16 +02:00
Kristian Sloth Lauszus
53a82a5f57 Removed unused variables, as the actions are no longer sent from within the interrupts 2018-06-07 01:50:12 +02:00
Kristian Sloth Lauszus
10985abcdb The UHK now only sends out data when it changes
Fixes #72, fixes #84 and fixes #85
2018-06-07 00:18:40 +02:00
László Monda
a691b16ebe Make the serializer handle SwitchLayerMode_Hold, not only SwitchLayerMode_HoldAndDoubleTapToggle and SwitchLayerMode_Toggle. 2018-06-03 14:24:42 +02:00
László Monda
c38114648a Set key debounce timeout from 80ms to 100ms. This should further reduce key chattering. 2018-05-29 01:31:14 +02:00