László Monda
|
6a54944cb1
|
Make UsbCommand_JumpToModuleBootloader() more robust by not making it dependent on the state of the module driver.
|
2017-12-13 01:27:04 +01:00 |
|
László Monda
|
d2ef63184b
|
Move updateUsbReports() from main.c to usb_report_updater.c and delete main.h
|
2017-11-17 01:21:30 +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
|
ef34094004
|
Add jump to slave bootloader command.
|
2017-10-12 19:57:41 +02:00 |
|
László Monda
|
fd7f2c3b25
|
Expose the currently attached module ids via getKeyboardState()
|
2017-10-05 20:53:15 +02:00 |
|
László Monda
|
bea13f063a
|
UpperCamelCase UhkModuleStates now that it's a global.
|
2017-10-05 20:27:57 +02:00 |
|
László Monda
|
9842a6ff60
|
Merge UhkModuleVars into uhkModuleStates. Also make uhkModuleStates globally accessible because it must be accessed by other parts of the firmware, so it's unpractical to keep it private and write accessor functions for it.
|
2017-10-05 20:18:57 +02:00 |
|
László Monda
|
f8e83b139d
|
Rerequest transfer if CRC is invalid.
|
2017-10-05 20:02:12 +02:00 |
|
László Monda
|
6be45c4521
|
Add uhk_module_state_t->isEnumerated and maintain its state.
|
2017-10-05 19:56:26 +02:00 |
|
László Monda
|
96eb2ef7a3
|
Make slaves send their protocol version to the master.
|
2017-10-05 17:55:59 +02:00 |
|
László Monda
|
bd76fb44c2
|
Make slaves send their module id to the master.
|
2017-10-05 17:26:10 +02:00 |
|
László Monda
|
c707f0e408
|
Transfer a synchronization message to make I2C recovery more robust.
|
2017-10-04 02:24:34 +02:00 |
|
László Monda
|
3079d527b1
|
Add uhk_slave_t.disconnect() callback so that upon disconnecting the left keyboard half, the left LED driver IC can be marked as disconnected too, so it'll be reinitialized upon reconnect. This usually didn't happen because LED states are cached so the LED drivers are rarely spoken to.
|
2017-10-01 02:47:29 +02:00 |
|
László Monda
|
c23d327384
|
Rename uhkModuleId to uhkModuleDriverId in UhkModuleSlaveDriver_Init() and UhkModuleSlaveDriver_Update()
|
2017-09-30 00:40:13 +02:00 |
|
László Monda
|
a7b0dfef1d
|
Compute slot id based on module driver id instead of using a hardcoded value.
|
2017-09-30 00:23:34 +02:00 |
|
László Monda
|
d8de4f0b3e
|
Update variable names.
|
2017-09-30 00:18:37 +02:00 |
|
László Monda
|
01ef8f59c2
|
Create separate sections of module driver phases.
|
2017-09-30 00:14:29 +02:00 |
|
László Monda
|
04047eb128
|
Make modules send their features (key count and whether they have pointer input) to the master upon enumeration.
|
2017-09-30 00:08:28 +02:00 |
|
László Monda
|
07142c3ce2
|
Fix coding style.
|
2017-09-29 01:46:51 +02:00 |
|
László Monda
|
8136acf63c
|
Add the left add-on and right add-on to the list of slaves to be scheduled.
|
2017-09-28 21:15:01 +02:00 |
|
László Monda
|
6ec5140eca
|
Add and initialize firmwareI2cAddress and bootloaderI2cAddress to uhk_module_state_t.
|
2017-09-28 18:10:33 +02:00 |
|
László Monda
|
f80a88c419
|
RX messages are per-module by nature, so instead of using a singleton, add rxMessage to uhk_module_state_t.
|
2017-09-28 17:17:30 +02:00 |
|
László Monda
|
3fda14df27
|
Update the coding style of dereference operators.
|
2017-09-28 17:09:59 +02:00 |
|
László Monda
|
ef2c4a1e7f
|
Add uhk_module_state_t containing module variables and phase. Merge uhkModuleTargetStates and uhkModulePhases to uhkModuleStates.
|
2017-09-28 17:06:56 +02:00 |
|
László Monda
|
de21cfc07e
|
Rename uhk_module_state_t to uhk_module_vars_t.
|
2017-09-28 16:57:46 +02:00 |
|
László Monda
|
9a42123648
|
Rename kStatus_Uhk_NoOp to kStatus_Uhk_NoTransfer.
|
2017-09-28 03:30:32 +02: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
|
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
|
9dde9ee917
|
Replace SLOT_ID_* macros with SlotId_* enum values.
|
2017-09-26 20:01:18 +02:00 |
|
László Monda
|
3bd943aa85
|
Extract rx() and tx().
|
2017-09-26 19:19:44 +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
|
4d5214fdc9
|
Add I2C addresses for add-ons and touchpad modules.
|
2017-09-20 02:21:39 +02:00 |
|
László Monda
|
946d3c1451
|
Add kStatus_Uhk_IdleSlave and ditch the global IsI2cTransferScheduled. Make slave drivers return status_t and utilize that value instead.
|
2017-08-19 17:47:56 +02:00 |
|
László Monda
|
430c02f0ed
|
Remove test actions and related code.
|
2017-08-19 13:32:02 +02:00 |
|
László Monda
|
fef35bf68e
|
Rename slave_driver_uhk_module.[ch] to uhk_module_driver.[ch]
|
2017-08-06 16:06:40 +02:00 |
|