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 |
|
Kristian Sloth Lauszus
|
1742437f8b
|
Replace HID_KEYBOARD_SC_MENU scancode with HID_KEYBOARD_SC_APPLICATION (#95)
Fixes https://github.com/UltimateHackingKeyboard/agent/issues/563
|
2018-03-11 02:31:40 +01:00 |
|
László Monda
|
5093a0c0a6
|
Bump version to 8.1.4. Update changelog, package.json, and versions.h
v8.1.4
|
2018-03-05 15:57:14 +01:00 |
|
László Monda
|
7e524d97b1
|
Don't read (the default 250ms) DoubleTapSwitchLayerTimeout from the user configuration but rather set it to 150ms which feels quite optimal.
|
2018-03-05 10:16:58 +01:00 |
|
László Monda
|
2e53331a0f
|
Set KEY_DEBOUNCER_TIMEOUT_MSEC to 30. This looks like a safe bet to eliminate key chattering for every switch.
|
2018-02-27 23:01:39 +01:00 |
|
László Monda
|
c6d60780f4
|
Bump version to 8.1.3 and update package.json, versions.h and the changelog accordingly.
v8.1.3
|
2018-02-18 00:46:17 +01:00 |
|
László Monda
|
8666a495d8
|
Set KEY_DEBOUNCER_TIMEOUT_MSEC from 15 to 20 ms.
|
2018-02-17 21:37:02 +01:00 |
|
Kristian Sloth Lauszus
|
33bbf44199
|
Fix system keyboard descriptor, so it is byte-aligned (#93)
I have verified that the descriptor shows up correctly on Windows 7 and macOS
The descriptor is based on the two following pages: https://github.com/Microsoft/Windows-driver-samples/tree/master/hid/hidusbfx2 and https://docs.microsoft.com/en-us/windows-hardware/drivers/gpiobtn/hid-button-report-descriptors
Fixes #76
|
2018-02-14 00:27:53 +01:00 |
|
László Monda
|
cc49118868
|
Bump version to 8.1.2. Update changelog, package.json, versions.h and reference the latest Agent repo.
v8.1.2
|
2018-02-13 03:31:35 +01:00 |
|
László Monda
|
f8fd99f588
|
Set KEY_DEBOUNCER_TIMEOUT_MSEC from 10 to 15 msec.
|
2018-02-12 18:08:53 +01:00 |
|
Kristian Sloth Lauszus
|
fa8c9dc907
|
Logical maximum is wrongly assumed to be an unsigned integer, thus 0xFF is interpreted as -1 and not 255 (#92)
Simply setting the number of bits to 16 solves this
|
2018-02-12 04:51:59 +01:00 |
|
László Monda
|
0911e67bf6
|
Fix the coding style of usb_interface_basic_keyboard.c
|
2018-02-11 22:28:12 +01:00 |
|
László Monda
|
57a7cee62a
|
Remove debug statements from updateActiveUsbReports()
|
2018-02-11 22:25:29 +01:00 |
|
Kristian Sloth Lauszus
|
1af28a79db
|
Detect Caps Lock state and set the LED accordingly (#91)
Fixes #65
|
2018-02-11 12:45:46 +01:00 |
|
László Monda
|
6881f8e340
|
Update versions.h to 8.1.1
v8.1.1
|
2018-02-11 04:23:31 +01:00 |
|
László Monda
|
00cd1f65e8
|
Bump version to 8.1.1. Update package.json and the changelog.
|
2018-02-11 04:21:49 +01:00 |
|
László Monda
|
2c9a6c0bd2
|
Add doubleTapSwitchLayerReleaseTimeout and set it to 100ms. Resolves #79.
|
2018-02-11 04:09:15 +01:00 |
|
László Monda
|
0c94cbb256
|
Make doubleTapSwitchLayerKey and doubleTapSwitchLayerStartTime static.
|
2018-02-11 03:29:15 +01:00 |
|
László Monda
|
275bfee860
|
Merge branch 'master' of github.com:UltimateHackingKeyboard/firmware
|
2018-02-10 23:55:48 +01:00 |
|
László Monda
|
8a655e3cfd
|
Lock layers every time when double-tapping their layer switcher keys. Fixes #81.
|
2018-02-10 23:53:35 +01:00 |
|
László Monda
|
8521619783
|
Update README.md
|
2018-02-05 02:24:10 +01:00 |
|
László Monda
|
62184240df
|
Update README.md
|
2018-02-05 02:03:56 +01:00 |
|
László Monda
|
0b210ac68e
|
Update README.md
|
2018-02-01 18:39:20 +01:00 |
|
László Monda
|
56f7753afc
|
Bump firmware version to 8.1.0 and update changelog, package.json, and versions.h
v8.1.0
8.1.0
|
2018-01-15 10:35:22 +01:00 |
|
László Monda
|
a0803875c4
|
Make UsbCommand_GetModuleProperty() branch based on modulePropertyId
|
2018-01-15 00:04:22 +01:00 |
|
László Monda
|
f5716bdadc
|
Rename some private functions in init_peripherals.c from upper to lower camel case.
|
2018-01-14 20:30:46 +01:00 |
|
László Monda
|
b76b3c0e4f
|
Slow down main bus I2C baud rate to 30kHz when BusPal is on to make firmware transfer more robust.
|
2018-01-14 20:27:17 +01:00 |
|
László Monda
|
2661c3d909
|
Implement DevicePropertyId_Uptime
|
2018-01-14 18:32:18 +01:00 |
|
László Monda
|
c854e98d84
|
Implement DevicePropertyId_I2cMainBusBaudRate
|
2018-01-14 18:10:04 +01:00 |
|
László Monda
|
72d8e49717
|
Make UsbProtocolHandler() invoke UsbCommand_SetI2cBaudRate() when requested.
|
2018-01-13 19:54:48 +01:00 |
|
László Monda
|
0fd95b71b2
|
Add usb_command_set_i2c_baud_rate.[ch]
|
2018-01-13 03:54:06 +01:00 |
|
László Monda
|
4d83bc2e75
|
Add I2cMainBusBaudRateBps
|
2018-01-13 03:29:01 +01:00 |
|
László Monda
|
cf7b05ab72
|
Make InitI2cMainBus() private.
|
2018-01-13 03:21:12 +01:00 |
|
László Monda
|
055f1945d0
|
Include slave_scheduler.h from init_peripherals.c instead of i2c_watchdog.c which I forgot to do in the previous commit.
|
2018-01-13 03:19:24 +01:00 |
|
László Monda
|
fa4a3abf84
|
Extract ReinitI2cMainBus()
|
2018-01-13 03:14:42 +01:00 |
|
László Monda
|
96c7ccd758
|
Remove some dead code from PIT_I2C_WATCHDOG_HANDLER
|
2018-01-13 03:03:42 +01:00 |
|
László Monda
|
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.
|
2018-01-11 23:44:59 +01:00 |
|
László Monda
|
aab0e8473f
|
Enable left half I2C watchdog in reinit mode because it seems to improve things.
|
2018-01-11 23:43:34 +01:00 |
|
László Monda
|
4a4c471b9e
|
Implement DevicePropertyId_CurrentKbootCommand
|
2018-01-10 02:58:31 +01:00 |
|
László Monda
|
fcd75b2af2
|
Use identifiers instead of the magic numbers of kboot_driver.[ch]
|
2018-01-06 21:21:36 +01:00 |
|
László Monda
|
f318c6872e
|
Move the definition of previousSlave within the if (isFirstCycle) block.
|
2018-01-06 17:25:07 +01:00 |
|
László Monda
|
ae1240c103
|
Rename isFirstIteration to isFirstCycle and kStatus_Uhk_NoTransfer to kStatus_Uhk_IdleCycle.
|
2018-01-06 17:05:37 +01:00 |
|
László Monda
|
e75d366245
|
Update and log previous I2C status within the if (isFirstIteration) block.
|
2018-01-06 17:00:59 +01:00 |
|
László Monda
|
da20cdacc4
|
Only check currentSlaveId overrun after incrementing it.
|
2018-01-06 16:36:57 +01:00 |
|
László Monda
|
5a986d367e
|
Only call LogI2cError() if the passed status is an actual I2C error, otherwise it slows the mouse pointer down.
|
2018-01-06 02:04:47 +01:00 |
|
László Monda
|
f6b66283a7
|
Only count I2C errors.
|
2018-01-06 01:37:58 +01:00 |
|
László Monda
|
6ad425cbf9
|
Log I2C error counts on a per slave and per error type basis and expose them via USB.
|
2018-01-05 03:23:48 +01:00 |
|
László Monda
|
33e501cd83
|
Add SLAVE_COUNT
|
2018-01-04 23:16:48 +01:00 |
|
László Monda
|
fa558abef3
|
Add LED_DRIVERS_ENABLED
|
2017-12-28 00:08:29 +01:00 |
|
László Monda
|
25a2b3af93
|
Convert tabs to spaces.
|
2017-12-27 17:21:28 +01:00 |
|