Commit Graph

904 Commits

Author SHA1 Message Date
László Monda
a8bde4e007 Add {GET,SET}_USB_BUFFER_UINT* and use them wherever possible. Get rid of SetUsb*() functions. 2017-11-05 22:09:34 +01:00
László Monda
58778feb5b Move UsbStatusCode_JumpToSlaveBootloader_InvalidModuleDriverId to usb_command_jump_to_slave_bootloader.h 2017-11-05 19:33:08 +01:00
László Monda
d78ac1bcf0 Start USB command specific status codes from 2 since 0 and 1 are taken. 2017-11-05 19:28:40 +01:00
László Monda
6db3eb3045 Rename UsbResponse_*() to UsbStatusCode_*(), SetUsbError() to SetUsbStatusCode(), and other USB status codes consistently. 2017-11-05 19:25:13 +01:00
László Monda
eb451d6153 Set UsbResponse_InvalidCommand upon encountering with an invalid USB command. 2017-11-05 19:12:37 +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
ebd06ebbc6 Reorder includes according to USB command ids. 2017-11-05 19:02:24 +01:00
László Monda
8c42ec27dd Remove the now unused UsbCommandId_WriteLedDriver 2017-11-05 18:13:57 +01:00
László Monda
6dcfcca10f Remove unneeded includes and comments from usb_protocol_handler.c 2017-11-05 18:10:35 +01:00
László Monda
45420a348b Extract UsbCommand_SetLedPwmBrightness() into its own file. 2017-11-05 18:08:35 +01:00
László Monda
84ffe50dac Extract UsbCommand_GetAdcValue() to its own file. 2017-11-05 01:35:12 +01:00
László Monda
68f9aac883 Extract UsbCommand_SetTestLed() into its own file. 2017-11-05 01:28:15 +01:00
László Monda
d547b9b324 Remove UsbCommandId_ReadMergeSensor now that it can be queried via UsbCommandId_GetKeyboardState. 2017-11-05 01:21:23 +01:00
László Monda
e907e65751 Extract UsbCommand_Reenumerate() into its own file. 2017-11-05 01:18:37 +01:00
László Monda
fe74ea1578 Extract UsbCommand_GetDebugInfo() into its own file. 2017-11-04 10:46:04 +01:00
László Monda
67e304a787 Extract UsbCommand_GetKeyboardState() into its own file. 2017-11-04 10:30:37 +01:00
László Monda
4de340967c Extract UsbCommand_LaunchEepromTransferLegacy() into its own file. 2017-11-04 10:06:55 +01:00
László Monda
54496ca210 Extract UsbCommand_WriteConfig() 2017-11-04 08:43:27 +01:00
László Monda
232f595b41 Extract UsbCommand_SendKbootCommand() 2017-11-04 08:38:19 +01:00
László Monda
8a255aaf5f Extract UsbCommand_JumpToSlaveBootloader() 2017-11-04 08:32:54 +01:00
László Monda
ad4fe1a18d Extract system properties to usb_command_get_property.c 2017-11-04 02:38:00 +01:00
László Monda
336c2e5368 Extract UsbCommand_ReadConfig() to usb_command_read_config.c. Rename Set{Response,Error}* to SetUsb{Response,Error} 2017-11-04 02:11:49 +01:00
László Monda
c0b41b8e60 Remove the ApplyConfig() prototype because it doesn't exist anymore. 2017-11-04 01:36:55 +01:00
László Monda
457f4802d4 Rename usb_command_t to usb_command_id_t and UsbCommand_* to UsbCommandId_* 2017-11-04 01:35:31 +01:00
László Monda
ae3efce452 Extract the applyConfig USB command into usb_command_apply_config.[ch] 2017-11-04 01:32:03 +01:00
László Monda
330a899625 Make the getAdcValue and getDebugInfo USB commands utilize the first byte of the response to provide status as dictated by the UHK protocol. 2017-11-04 01:02:19 +01:00
László Monda
e7f34dcdc6 Simplify code by utilizing type casing on uint8_t arrays. 2017-11-04 00:30:40 +01:00
László Monda
c2a1a94349 Switch keymap only upon keypress. 2017-11-03 22:39:18 +01:00
László Monda
35b8f0084b Don't put a zero scancode into ActiveUsbBasicKeyboardReport->scancodes[basicScancodeIndex++] 2017-11-03 22:32:10 +01:00
László Monda
0688c1bdfc Rename keymaps.[ch] to keymap.[ch] 2017-11-03 19:01:56 +01:00
László Monda
4072a0ea33 Rename Keymap_Switch() to SwitchKeymap() 2017-11-03 18:59:58 +01:00
László Monda
e169627cde Move updateLayerStates() and getActiveLayer() into the newly created layer.c 2017-11-03 18:53:17 +01:00
László Monda
aeb325a09f Being static variables, lowercamelcase HeldLayers and PressedLayers. 2017-11-03 18:43:26 +01:00
László Monda
0df7879358 Get rid of the unused PreviousToggledLayer. 2017-11-03 18:42:04 +01:00
László Monda
bbbecb8f87 Handle layer toggle actions. 2017-11-03 18:29:17 +01:00
László Monda
05bbd28877 Maintain the states of previous key states. 2017-11-03 13:43:16 +01:00
László Monda
b18cb651ce Leave the active layer active even if another layer switcher key gets pressed while holding it. 2017-11-03 12:49:55 +01:00
László Monda
88fac5c1ff Rename key_matrix_instance.[ch] to right_key_matrix.[ch] 2017-11-03 03:30:14 +01:00
László Monda
fe2e611bb1 Update KeyStates[SlotId_RightKeyboardHalf] within usb_report_updater.c instead of main.c 2017-11-03 03:22:56 +01:00
László Monda
599b78a676 Don't expose UpdateUsbReports() anymore. 2017-11-03 03:20:08 +01:00
László Monda
a0a162ae9e Extend key states to include not only the current state but also the previous state and suppressed state. 2017-11-03 03:17:46 +01:00
László Monda
e0868ac866 Rename CurrentKeyStates to KeyStates and move it to the newly created key_states.[ch] 2017-11-03 02:46:34 +01:00
László Monda
31b7dddef4 Read the new UserConfig.userConfigLength field. 2017-11-02 23:10:22 +01:00
László Monda
ecf7f10b9c Exchange Ctrl and Alt according to the official UHK default keymap. 2017-11-02 22:03:43 +01:00
László Monda
2aaef66d85 Convert LAYER_ID_* macros to LayerId_* enum values. 2017-11-02 21:48:30 +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
ba5a49f7d1 Hoist {left,right}/build/kds/* to {left,right}/build to simplify the directory hierarchy. 2017-10-31 23:11:22 +01:00
László Monda
1d7790f74e Generate .hex files instead of .srec for the right half firmware. 2017-10-29 22:27:47 +01:00
László Monda
808d916687 Clean up .cproject and .gitignore files after the rename of the build and run configurations. 2017-10-29 22:04:48 +01:00
László Monda
52bb02bc3d Rename build and run configurations to reflect device ids. 2017-10-29 21:54:02 +01:00