Commit Graph

  • a0803875c4 Make UsbCommand_GetModuleProperty() branch based on modulePropertyId László Monda 2018-01-15 00:04:22 +01:00
  • f5716bdadc Rename some private functions in init_peripherals.c from upper to lower camel case. László Monda 2018-01-14 20:30:46 +01:00
  • b76b3c0e4f Slow down main bus I2C baud rate to 30kHz when BusPal is on to make firmware transfer more robust. László Monda 2018-01-14 20:27:17 +01:00
  • 2661c3d909 Implement DevicePropertyId_Uptime László Monda 2018-01-14 18:32:18 +01:00
  • c854e98d84 Implement DevicePropertyId_I2cMainBusBaudRate László Monda 2018-01-14 18:10:04 +01:00
  • 72d8e49717 Make UsbProtocolHandler() invoke UsbCommand_SetI2cBaudRate() when requested. László Monda 2018-01-13 19:54:48 +01:00
  • 0fd95b71b2 Add usb_command_set_i2c_baud_rate.[ch] László Monda 2018-01-13 03:54:06 +01:00
  • 4d83bc2e75 Add I2cMainBusBaudRateBps László Monda 2018-01-13 03:29:01 +01:00
  • cf7b05ab72 Make InitI2cMainBus() private. László Monda 2018-01-13 03:21:12 +01:00
  • 055f1945d0 Include slave_scheduler.h from init_peripherals.c instead of i2c_watchdog.c which I forgot to do in the previous commit. László Monda 2018-01-13 03:19:24 +01:00
  • fa4a3abf84 Extract ReinitI2cMainBus() László Monda 2018-01-13 03:14:42 +01:00
  • 96c7ccd758 Remove some dead code from PIT_I2C_WATCHDOG_HANDLER László Monda 2018-01-13 03:03:42 +01:00
  • 76d319ec19 Remove comment that says that 100 kHz works with a 20 meter long bridge cable. It was true for UART, not so much for I2C. László Monda 2018-01-11 23:44:59 +01:00
  • aab0e8473f Enable left half I2C watchdog in reinit mode because it seems to improve things. László Monda 2018-01-11 23:43:34 +01:00
  • 4a4c471b9e Implement DevicePropertyId_CurrentKbootCommand László Monda 2018-01-10 02:58:31 +01:00
  • fcd75b2af2 Use identifiers instead of the magic numbers of kboot_driver.[ch] László Monda 2018-01-06 21:21:36 +01:00
  • f318c6872e Move the definition of previousSlave within the if (isFirstCycle) block. László Monda 2018-01-06 17:25:07 +01:00
  • ae1240c103 Rename isFirstIteration to isFirstCycle and kStatus_Uhk_NoTransfer to kStatus_Uhk_IdleCycle. László Monda 2018-01-06 17:05:37 +01:00
  • e75d366245 Update and log previous I2C status within the if (isFirstIteration) block. László Monda 2018-01-06 17:00:59 +01:00
  • da20cdacc4 Only check currentSlaveId overrun after incrementing it. László Monda 2018-01-06 16:36:57 +01:00
  • 5a986d367e Only call LogI2cError() if the passed status is an actual I2C error, otherwise it slows the mouse pointer down. László Monda 2018-01-06 02:04:47 +01:00
  • f6b66283a7 Only count I2C errors. László Monda 2018-01-06 01:37:58 +01:00
  • 6ad425cbf9 Log I2C error counts on a per slave and per error type basis and expose them via USB. László Monda 2018-01-05 03:23:48 +01:00
  • 33e501cd83 Add SLAVE_COUNT László Monda 2018-01-04 23:16:48 +01:00
  • fa558abef3 Add LED_DRIVERS_ENABLED László Monda 2017-12-28 00:08:29 +01:00
  • 25a2b3af93 Convert tabs to spaces. László Monda 2017-12-27 17:21:28 +01:00
  • 43587c2e1f Define I2C_WATCHDOG_VALUE_REINIT and I2C_WATCHDOG_VALUE_REBOOT and make them work when assigned to I2C_WATCHDOG. László Monda 2017-12-27 17:07:04 +01:00
  • c51542795f Bump version to 8.0.1 v8.0.1 8.0.1 László Monda 2017-12-25 23:16:27 +01:00
  • 7eb83173ed changed I2C watchdog timer implementation, as LPTMR was already used by key scanner Erich Styger 2017-12-25 17:15:41 +01:00
  • 5581dd26b5 fixed and enabled software watchdog timer Erich Styger 2017-12-24 12:06:46 +01:00
  • 1ac637af0f Rename the GetProperty command to GetDeviceProperty. László Monda 2017-12-23 16:11:47 +01:00
  • 36951d1a34 Minor cleanups regarding the previous rename. László Monda 2017-12-23 16:08:45 +01:00
  • 5190265a2c Rename get_module_properties.[ch] to get_module_property.[ch]. It seems that the header wasn't included in usb_protocol_handler.c possibly causing issues when using these commands. László Monda 2017-12-23 16:06:24 +01:00
  • 40bf252852 Bump version to 8.0.0. Update version numbers. Update changelog. v8.0.0 8.0.0 László Monda 2017-12-15 04:03:51 +01:00
  • 85e92d21b4 Add new UsbCommand_GetModuleProperties() device protocol command. László Monda 2017-12-15 02:46:30 +01:00
  • fd43e81e46 Query module key count and pointer count in separate messages instead of a combined message for better clarity. László Monda 2017-12-15 02:13:58 +01:00
  • c994a97d03 Make the modules transfer their firmware version to the device. Fix the message length of the module protocol version. László Monda 2017-12-15 01:42:58 +01:00
  • d59ba83d99 Make the modules transfer a module protocol version composed of a major, a minor and a patch number. László Monda 2017-12-15 01:28:13 +01:00
  • c1b887cea8 Rename UhkModulePhase_*ProtocolVersion to UhkModulePhase_*ModuleProtocolVersion. László Monda 2017-12-15 01:16:27 +01:00
  • bd53b73685 Rename usb_command_get_keyboard_state.[ch] to usb_command_get_device_state.[ch] László Monda 2017-12-14 23:10:13 +01:00
  • beb7c3d4ee Forgot to update versions.h for the previous release. Updating now. László Monda 2017-12-14 23:08:34 +01:00
  • 17571a5feb Bump version to 7.0.0. Update changelog and package.json v7.0.0 7.0.0 László Monda 2017-12-14 21:51:07 +01:00
  • 83e782d74a Remove DevicePropertyId_HardwareConfigSize and DevicePropertyId_UserConfigSize László Monda 2017-12-14 21:49:15 +01:00
  • 312f56048b Add DevicePropertyId_ConfigSizes. László Monda 2017-12-14 16:40:44 +01:00
  • 494621a841 Expose version numbers via the get property interface. László Monda 2017-12-14 16:16:11 +01:00
  • 94af52892c Add generate-versions-h.js and versions.h. Execute generate-versions-h.js from make-release.js László Monda 2017-12-14 15:41:20 +01:00
  • 5862a34f18 Use const instead of let wherever possible in make-release.js László Monda 2017-12-14 04:01:13 +01:00
  • 9b9e5ed1b5 Rename the version property to firmwareVersion in package.json László Monda 2017-12-14 03:52:56 +01:00
  • 4393377365 Rename version properties in package.json László Monda 2017-12-14 03:48:59 +01:00
  • 1570364741 Add hardware config versions to releases. László Monda 2017-12-14 03:38:24 +01:00
  • 738a240860 Rename slave protocol to module protocol. László Monda 2017-12-14 03:36:29 +01:00
  • 43b48aa643 Rename USB protocol to device protocol. László Monda 2017-12-14 03:25:47 +01:00
  • 61a0540007 Rename data model to user config. László Monda 2017-12-14 03:24:29 +01:00
  • f2e313dd0a Put the data model version as the last element of the version list. László Monda 2017-12-14 03:22:04 +01:00
  • b239d0da50 Mark bumped version numbers by making them bold. László Monda 2017-12-14 03:14:41 +01:00
  • 23459e3791 Don't make horizontal scrolling and vertical scrolling affect each other. László Monda 2017-12-14 01:30:06 +01:00
  • 6a54944cb1 Make UsbCommand_JumpToModuleBootloader() more robust by not making it dependent on the state of the module driver. László Monda 2017-12-13 01:27:04 +01:00
  • a52df9da7e Bump version to 6.0.0, update changelog and package.json v6.0.0 6.0.0 László Monda 2017-12-12 18:44:12 +01:00
  • 28f98f179a Change the value of UsbCommandId_{GetDeviceState,SetTestLed,GetDebugBuffer,GetAdcValue,SetLedPwmBrightness}. László Monda 2017-12-12 18:38:01 +01:00
  • 5798f9e4fb Refactor UsbCommandId_LaunchEepromTransfer, change its arguments, and change its ID to 0x08. László Monda 2017-12-12 03:24:34 +01:00
  • 4fe5ce45ac Change UsbCommandId_ApplyConfig to 0x07. László Monda 2017-12-12 02:15:20 +01:00
  • a212c254a9 Change UsbCommandId_WriteHardwareConfig and UsbCommandId_WriteUserConfig to 0x05 and 0x06. László Monda 2017-12-12 01:59:53 +01:00
  • 235e18d706 Fix UsbCommandId_WriteHardwareConfig that I previously screwed up. László Monda 2017-12-12 01:29:49 +01:00
  • 7c91f8f6d1 Replace UsbCommandId_ReadHardwareConfig and UsbCommandId_ReadUserConfig with UsbCommandId_ReadConfig. László Monda 2017-12-12 01:22:26 +01:00
  • c8cfe53136 Change UsbCommandId_SendKbootCommandToModule from 0x13 to 0x03. László Monda 2017-12-11 22:15:46 +01:00
  • f1f47ece14 Change UsbCommandId_JumpToModuleBootloader from 0x12 to 0x02. László Monda 2017-12-11 21:44:35 +01:00
  • a0dba2fa66 Change UsbCommandId_SetTestLed from 0x02 to 0x14. László Monda 2017-12-11 21:21:41 +01:00
  • 0f34b01189 Update LED brightness levels upon applying the configuration. László Monda 2017-12-10 20:48:26 +01:00
  • 5a449ad5c5 Disable LED display icons by default. László Monda 2017-12-10 15:35:03 +01:00
  • 0d6a5ae902 Bump firmware version number to 5.0.1 and update changelog. v5.0.1 5.0.1 László Monda 2017-12-09 16:44:11 +01:00
  • 2f7f7b1cd2 Make scrolling immediately react to keypresses regardless of the previous internal scroll state. László Monda 2017-12-07 04:44:45 +01:00
  • 2eb25ce05c Make UpdateUsbReports() not exit prematurely even if a previously active USB interface is not polled anymore by the host. Tweak the Timer API to not set the current time automatically. László Monda 2017-12-07 03:24:53 +01:00
  • 6e47707037 Rename the misleadingly named error variable of usbDeviceCallback() to status. Clean up InitUsb() a bit. László Monda 2017-12-05 00:56:52 +01:00
  • 0932c14a2c Lowercamelcase UsbDeviceCallback because it's local. László Monda 2017-12-04 22:51:04 +01:00
  • e57c2c21ca Don't define the NULL members of UsbDeviceCompositeConfigList. László Monda 2017-12-04 20:43:57 +01:00
  • a5ce90779c Merge all the substructures of UsbDeviceCompositeConfigList across different files to a single structure. László Monda 2017-12-04 20:41:22 +01:00
  • e9bf3dc355 Expand UsbDeviceCompositeClassConfig and UsbDeviceCompositeConfigList using structure member names. László Monda 2017-12-04 20:05:28 +01:00
  • 8cb8654459 Merge the substructures of UsbMouseClass into a single structure. László Monda 2017-12-04 19:57:43 +01:00
  • 745e8e1cf0 Merge the substructures of UsbSystemKeyboardClass into a single structure. László Monda 2017-12-04 19:50:39 +01:00
  • 5341109845 Merge the substructures of UsbMediaKeyboardClass into a single structure. László Monda 2017-12-04 19:41:51 +01:00
  • ff0e5b0aa3 Merge the structs of UsbBasicKeyboardClass into a single structure. László Monda 2017-12-04 19:33:53 +01:00
  • c4e79d8ed2 Merge the all the structures of UsbGenericHidClass into a single structure. László Monda 2017-12-04 19:16:04 +01:00
  • 6780c8177c Expose per-interface count values for debugging purposes via USB. László Monda 2017-12-04 17:38:31 +01:00
  • 71d6db0f35 Update CHANGELOG.md and package.json for version 5.0.0 v5.0.0 5.0.0 László Monda 2017-12-04 00:40:07 +01:00
  • 9b9bdbc03d Rename baseLayerPointerFunction to modLayerPointerFunction and modLayerPointerFunction to fnLayerPointerFunction. Suppress unused variable compilation warnings. László Monda 2017-12-03 23:53:32 +01:00
  • bb5c118e97 Move pointerRole from keymaps to module configurations as pointerMode. Add angularShift, baseLayerPointerFunction, modLayerPointerFunction, and mouseLayerPointerFunction to module configurations. László Monda 2017-12-03 23:25:55 +01:00
  • b3cbb8ea97 Bump version to 4.0.0 v4.0.0 4.0.0 László Monda 2017-11-30 20:31:09 +01:00
  • f76780ec48 Make the parser parse mouse properties, LED brightness values, and double tap switch layer timeout. Rename pointer config properties. László Monda 2017-11-30 18:20:00 +01:00
  • b7e73b7b38 Clean up the debug lines of processMouseAction() László Monda 2017-11-28 22:45:51 +01:00
  • 7318175ce7 Tweak scroll kinetic properties. László Monda 2017-11-28 22:39:37 +01:00
  • 420078449d Finish the fine-tuning of default mouse movement kinetic settings. László Monda 2017-11-28 20:12:01 +01:00
  • dda3799877 Don't make the pointer jump when accelerating from zero while the decelerate key is pressed. László Monda 2017-11-28 19:10:13 +01:00
  • 712b87182a Double timer interval that wasn't right for an unknown reason. Adjust mouse kinetic values accordingly. Reprioritize interrupts to make mouse pointer movement as smooth as possible. László Monda 2017-11-28 18:52:39 +01:00
  • 46126e1e78 Tweak kinetic mouse values further. Temporarily maximize / minimize the acceleratedSpeed / deceleratedSpeed values for testing purposes. László Monda 2017-11-28 17:25:46 +01:00
  • 2ac9ca5d67 Make the initialSpeed, acceleration, deceleratedSpeed, baseSpeed, and acceleratedSpeed kinetic properties uint8_t and multiply them by intMultiplier to provide a fixed set of steps to choose from. László Monda 2017-11-28 03:23:09 +01:00
  • 729e0be0ad Make scrolling utilize mouse_kinetic_state_t, just like mouse movements. Fix scrolling issue by making distance float. Add new debug functions for ints and float. László Monda 2017-11-28 02:01:26 +01:00
  • 0867132ba3 Adjust the distance divisor from 10 to 1000 and other kinetic values accordingly. László Monda 2017-11-27 02:09:45 +01:00
  • 1b9273a5e5 Make processMouseKineticState() work with float x,y offsets to accumulate fractions. László Monda 2017-11-27 01:24:03 +01:00
  • ebbd74407d Extract code into processMouseKineticState() and add mouse_kinetic_state_t László Monda 2017-11-26 21:35:50 +01:00
  • 5df6220ab7 Slightly reorder mouse movement related variables. László Monda 2017-11-26 02:32:53 +01:00