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
|
ecf1ad2468
|
Don't use the extern keyword for functions because it's redundant.
|
2017-09-28 02:37:55 +02:00 |
|
László Monda
|
41c2556386
|
Use the static keyword wherever it's valid inside of uhk_module_driver.c
|
2017-09-28 02:26:56 +02:00 |
|
László Monda
|
5473c102ec
|
Add per-module UHK module phases.
|
2017-09-28 02:24:28 +02:00 |
|
László Monda
|
d43bbbbf51
|
Not being an extern function, lowerCamelCase uhkModuleTargetStates.
|
2017-09-28 02:14:40 +02:00 |
|
László Monda
|
9a4c49e9a6
|
Extract MAX_PWM_BRIGHTNESS.
|
2017-09-28 01:35:04 +02:00 |
|
László Monda
|
d4124d8331
|
Cache UHK module state variables and only tranfer them when changed.
|
2017-09-28 01:30:27 +02:00 |
|
László Monda
|
5769f66994
|
Introduce currentSlave when initializing the slaves.
|
2017-09-27 00:27:14 +02:00 |
|
László Monda
|
8f830f7d9f
|
Make sure that all slaves are initialized upon startup.
|
2017-09-27 00:22:28 +02:00 |
|
László Monda
|
145443c65c
|
Fix the computation of KEY_STATE_SIZE and the byte count to memset in BoolBytesToBits()
|
2017-09-26 20:18:26 +02:00 |
|
László Monda
|
1839be81b6
|
Improve the description of slots.
|
2017-09-26 20:08:57 +02:00 |
|
László Monda
|
9dde9ee917
|
Replace SLOT_ID_* macros with SlotId_* enum values.
|
2017-09-26 20:01:18 +02:00 |
|
László Monda
|
065a19fdc8
|
Remove redundant SLOT_I2C_* macros from slot.h because they're present in i2c_addresses.h
|
2017-09-26 19:40:53 +02:00 |
|
László Monda
|
3bd943aa85
|
Extract rx() and tx().
|
2017-09-26 19:19:44 +02:00 |
|
László Monda
|
3b3e40af83
|
Pass i2c_message_t messages not only from the left half to the right, but vice versa.
|
2017-09-26 04:12:05 +02:00 |
|
László Monda
|
b88c6e4291
|
Add i2c_message_t and use it all across the codebase. This will allow handling variable-length I2C messages and validation with minimal effort. The test LED and brightness PWM update features got temporarily broken and will fix them soon.
|
2017-09-25 03:03:14 +02:00 |
|
László Monda
|
ef9d9ee9a7
|
Add kStatus_Uhk_NoOp and make the scheduler handle it.
|
2017-09-22 14:32:43 +02:00 |
|
László Monda
|
2aa74853b5
|
Add UhkModulePhase_ProcessKeystates and extract relevant code into its section.
|
2017-09-22 03:13:53 +02:00 |
|
László Monda
|
cc57daa674
|
Rename UhkModulePhase_SendTestLedCommand to UhkModulePhase_SetTestLed
|
2017-09-22 02:59:12 +02:00 |
|
László Monda
|
2e33a83e29
|
Rename UhkModulePhase_SendPwmBrightnessCommand to UhkModulePhase_SetLedPwmBrightness
|
2017-09-22 02:55:00 +02:00 |
|
László Monda
|
43c07dde21
|
Rename UhkModulePhase_SendKeystatesRequestCommand to UhkModulePhase_RequestKeyStates
|
2017-09-22 02:51:01 +02:00 |
|
László Monda
|
ac138d2da6
|
Rename SlaveCommand_GetKeyStates to SlaveCommand_RequestKeyStates
|
2017-09-22 02:47:05 +02:00 |
|
László Monda
|
2227508130
|
Use __WFI() instead of asm("wfi") for better readability.
|
2017-09-22 02:19:16 +02:00 |
|
László Monda
|
962705a017
|
Remove DisableKeyMatrixScanState
|
2017-09-22 02:13:53 +02:00 |
|
László Monda
|
92647b36a9
|
Move DEFINE_BOOTLOADER_CONFIG_AREA(I2C_ADDRESS_LEFT_KEYBOARD_HALF_BOOTLOADER) from bootloader_config.c to main.c and delete bootloader_config.c
|
2017-09-22 02:02:23 +02:00 |
|
László Monda
|
d210f46983
|
Update guard macro name.
|
2017-09-22 02:00:40 +02:00 |
|
László Monda
|
dbada9dd5d
|
Extract DEFINE_BOOTLOADER_CONFIG_AREA()
|
2017-09-22 02:00:00 +02:00 |
|
László Monda
|
50207a288d
|
Add CLOCK_FLAG_HIGH_SPEED_MODE and negate .clockDivider value according to the spec, so that the actual value is easier to read.
|
2017-09-22 01:52:44 +02:00 |
|
László Monda
|
444e9d58d0
|
Rename ENABLE_PERIPHERAL_* macros to EnabledBootloaderPeripherial_* enums.
|
2017-09-22 01:31:03 +02:00 |
|
László Monda
|
4e665b5701
|
Rename JumpToKboot() to JumpToBootloader()
|
2017-09-22 01:25:20 +02:00 |
|
László Monda
|
ccc93f48cc
|
Extract BOOTLOADER_TIMEOUT_MS and set it to 100 ms.
|
2017-09-22 01:22:03 +02:00 |
|
László Monda
|
228bebcd59
|
Rename kboot.[ch] to bootloader.[ch] to improve clarity.
|
2017-09-22 01:20:00 +02:00 |
|
László Monda
|
5dd3b8e0be
|
Handle SlaveCommand_JumpToBootloader
|
2017-09-22 01:17:58 +02:00 |
|
László Monda
|
cc3208a947
|
Add BOOTLOADER_TAG
|
2017-09-22 01:17:41 +02:00 |
|
László Monda
|
e7362a057c
|
Rename bootloader.c to bootloader_config.c
|
2017-09-22 01:14:14 +02:00 |
|
László Monda
|
97ee339827
|
Don't reference bootloader.h anymore because it has been removed.
|
2017-09-22 01:13:07 +02:00 |
|
László Monda
|
11d9e85cb7
|
Move kboot related code to shared/kboot.[ch] because it'll be reused by the firmwares of the add-ons.
|
2017-09-22 01:10:29 +02:00 |
|
László Monda
|
36be965db9
|
Use I2C_ADDRESS_LEFT_KEYBOARD_HALF_BOOTLOADER and remove redundant comments.
|
2017-09-22 00:56:48 +02:00 |
|
László Monda
|
8924c36cb3
|
Implement I2C watchdog for the left half. Disable the watchdog because it causes a hard fault. Don't update the test LED inside of SlaveCommand_SetTestLed due to testing purposes until the watchdog issue gets resolved.
|
2017-09-21 23:40:49 +02:00 |
|
László Monda
|
e7330f5d61
|
Extend the description of the I2C address allocation strategy.
|
2017-09-20 13:24:39 +02:00 |
|
László Monda
|
02ae123acc
|
Rename IS_IS31FL3731_I2C_ADDRESS macro to IS_I2C_ADDRESS_IS31FL3731
|
2017-09-20 13:17:36 +02:00 |
|
László Monda
|
2086138d9c
|
Use hex address for EEPROM.
|
2017-09-20 13:16:07 +02:00 |
|
László Monda
|
5c8138f123
|
Be more specific by using IC names instead of generic names like LED driver or touchpad.
|
2017-09-20 13:13:57 +02:00 |
|
László Monda
|
4d5214fdc9
|
Add I2C addresses for add-ons and touchpad modules.
|
2017-09-20 02:21:39 +02:00 |
|
László Monda
|
d7b3aee50e
|
Elaborate on the UHK I2C address allocation strategy. Use hex numbers instead of binary for I2C addresses.
|
2017-09-19 16:52:58 +02:00 |
|
László Monda
|
57e6a6c067
|
Link Adafrut I2C address list. Feature the EEPROM separately as it's not on the main bus, so its address won't clash with other addresses.
|
2017-09-19 16:00:11 +02:00 |
|
László Monda
|
e3d407e14d
|
Assign the I2C and USB interrupts a lower interrupt priority than the PIT interrupt. This should make the I2C watchdog always recover within the PIT interrupt.
|
2017-09-18 04:05:41 +02:00 |
|
László Monda
|
2f90e40c92
|
Set chip type, so that EmbSys Register View can show the content of MCU-specific registers in debug mode.
|
2017-09-14 10:44:31 +02:00 |
|
László Monda
|
aea07f8605
|
Merge branch 'master' of github.com:UltimateHackingKeyboard/firmware
|
2017-09-14 09:58:36 +02:00 |
|
László Monda
|
e6b5b3b3a5
|
Read the hardware configuration area and the user configuration area of the EEPROM into the RAM and try to apply it.
|
2017-09-14 09:55:29 +02:00 |
|