Commit Graph
154 Commits
Author SHA1 Message Date
László Monda 6153d54f59 Merge pull request #144 from UltimateHackingKeyboard/sleep-wake
Make some improvements to the sleep/wake code
2018-07-26 22:47:40 +02:00
Eric Tang 0a6ebe2903 Remove the old code for detecting new keypresses 2018-07-25 15:16:15 -07:00
Eric Tang 0e5ec29433 Tweak the logic of the USB stack test 2018-07-22 21:22:48 -07:00
Eric Tang 2d7cd68459 Make some improvements to the sleep/wake code 2018-07-22 13:13:29 -07:00
László Monda 5ac10fabcb Add back simulateKeypresses. 2018-07-22 16:24:05 +02:00
Eric Tang a2866feb77 Temporarily allow the USB stack test to be activated through USB 2018-07-20 17:23:44 -07:00
Eric Tang d722b3d173 Make debounce times configurable on the fly 2018-07-05 14:41:19 -07:00
Eric Tang 27d12ea31f Remove the debouncing interrupt 2018-07-05 12:33:55 -07:00
László Monda 4562a17155 Make the test code exercise the media and mouse interfaces too. 2018-07-03 00:34:39 +02:00
Eric Tang 950843ca2c Use return instead of break 2018-07-01 17:17:42 -07:00
László Monda 9600f46f83 Merge branch 'waking-on-keypress' 2018-07-01 22:34:35 +02:00
Eric Tang ef7589d83a Fix the mouse scrolling issue 2018-07-01 08:34:59 -07:00
Eric Tang 84f48ed055 Wake up the host when a new keypress is detected 2018-07-01 08:34:17 -07:00
Kristian Sloth Lauszus 372151848a Just define the usb_status_t variable inside the if-statements 2018-06-30 23:44:58 +02:00
Kristian Sloth Lauszus 5b32c0da43 Disable the key press test code 2018-06-30 23:42:39 +02:00
Kristian Sloth Lauszus 9fe73233af Fix merge issue 2018-06-30 22:36:48 +02:00
Kristian Sloth Lauszus c69f664e85 Merge branch 'master' into dev
# Conflicts:
#	right/src/timer.c
#	right/src/timer.h
#	right/src/usb_report_updater.c
2018-06-30 22:27:52 +02:00
Kristian Sloth Lauszus 6c895988de Merge branch 'Lauszus-dev' into dev
# Conflicts:
#	right/src/usb_interfaces/usb_interface_basic_keyboard.c
#	right/src/usb_interfaces/usb_interface_media_keyboard.c
#	right/src/usb_interfaces/usb_interface_mouse.c
#	right/src/usb_interfaces/usb_interface_system_keyboard.c
#	right/src/usb_report_updater.c
2018-06-30 22:23:32 +02:00
Kristian Sloth Lauszus b6f59563c7 Revert cancelling a transfer, as the USB endpoint is still locked up 2018-06-30 18:25:03 +02:00
Kristian Sloth Lauszus 217259ba63 Cancel the ongoing transfer if it is still in progress 2018-06-30 17:06:58 +02:00
Eric Tang e5afa33b79 Allow scanning to continue if the host is asleep 2018-06-29 23:06: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
László Monda d72ea4dde5 Merge pull request #131 from UltimateHackingKeyboard/macro-engine
Implement the macro engine
2018-06-27 23:02:09 +02: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
Eric Tang cdfabaec42 Make the debounce counters count down 2018-06-26 21:58:48 -07:00
Eric Tang 314eb0d771 Stop macros from repeating 2018-06-26 18:39:41 -07:00
Eric Tang c1f5a96e1b Correctly pass pointers to the active reports to memcpy 2018-06-26 18:39:41 -07:00
Eric Tang 6e11c0b8af Handle macro actions and make the macro engine preempt normal behavior 2018-06-26 18:34:38 -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 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 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 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 4d483e7896 Limit the update frequency for reading the keyboard 2018-06-15 14:03:59 +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
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 14b6e49692 Don't suppress modifiers upon releasing a layer. Fixes #82. 2018-05-02 14:49:56 +02:00