Kristian Sloth Lauszus
b9b5eb2c76
Make sure the device is attached before sending the report
2018-06-30 17:06:59 +02:00
Kristian Sloth Lauszus
11a8ffbaf5
Make sure the composite device is attached before setting the kStatus_USB_Success flag
2018-06-30 17:06:59 +02:00
Kristian Sloth Lauszus
e3773fd5c0
Removed some unused code
2018-06-24 19:47:28 +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
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
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
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
Kristian Sloth Lauszus
e12e219b4e
Various fixes and improvements ( #96 )
...
* Global variables shared between an interrupt and the main code should be volatile
See: https://www.embedded.com/electronics-blogs/beginner-s-corner/4023801/Introduction-to-the-Volatile-Keyword
* There is no reason to change the active report if it has not changed
* Declare local functions and variables static
This both helps the compiler and the programmer
2018-03-11 19:19:15 +01:00
László Monda
a5ce90779c
Merge all the substructures of UsbDeviceCompositeConfigList across different files to a single structure.
2017-12-04 20:41:22 +01:00
László Monda
8cb8654459
Merge the substructures of UsbMouseClass into a single structure.
2017-12-04 19:57:43 +01:00
László Monda
6780c8177c
Expose per-interface count values for debugging purposes via USB.
2017-12-04 17:38:31 +01:00
László Monda
f4de0df149
Replace SET_DEBUG_BUFFER_UINT* macros with SetDebugBufferUint* functions for improved type safety and readability.
2017-11-11 03:52:39 +01:00
László Monda
3ac94684e2
Dump mouse related variables via the debug buffer to figure out the cause of occasional mouse freezes.
2017-11-06 18:28:23 +01:00
László Monda
3f52819c0e
Move UsbDebugInfo into usb_command_get_debug_info.[ch] and remove external UsbDebugInfo references.
2017-11-05 19:07:12 +01:00
László Monda
00dfd96d55
Instead of scanning the keyboard matrix from the main loop and utilizing busy loops, try to use a PIT interrupt handler to do the same thing, scanning one row per interrupt call without busy loops.
...
For some reason, this makes the movement of the mouse pointer very slow and makes it jump from time to time, so I ended up adding INTERRUPT_KEY_SCANNER and disabling the timer interrupt.
Also double bufferred the mouse report just like the others. Unfortunately this does not affect this issue.
2017-11-02 01:11:41 +01:00
László Monda
751810ec4c
Explicitly add void to the argument list of zero argument functions.
2017-09-28 03:03:11 +02:00
László Monda
237ef3c34a
Rename action.h to key_action.h
2017-06-15 19:27:44 +02:00
László Monda
cca1e49d18
Rename the misspelled peripherials directory to peripherals.
2017-04-15 01:00:55 +02:00
László Monda
6e415696d7
Move merge_sensor.[ch], reset_button.[ch] and test_led.[ch] into the newly created peripherials directory.
2017-02-26 02:50:21 +01:00
László Monda
6f6d116351
Move usb_interface_*.[ch] files to the newly created usb_interfaces directory.
2017-02-26 02:45:43 +01:00