László Monda
|
ecc2d2db9a
|
Use I2C_MESSAGE_HEADER_LENGTH instead of magic number.
|
2017-10-01 22:08:38 +02:00 |
|
László Monda
|
b443b56357
|
Rename I2C_MESSAGE_MAX_LENGTH to I2C_MESSAGE_MAX_PAYLOAD_LENGTH.
|
2017-10-01 21:52:41 +02:00 |
|
László Monda
|
42e17ca1bf
|
Rename masterCallback to slaveSchedulerCallback.
|
2017-10-01 03:15:25 +02:00 |
|
László Monda
|
37cf632f2a
|
Reindent Slaves[] because its lines have gotten overly long.
|
2017-10-01 02:53:42 +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
|
320923b41c
|
Properly update uhk_slave_t.isConnected by introducing isFirstIteration.
|
2017-10-01 01:39:12 +02:00 |
|
László Monda
|
b49cb30070
|
Try to resurrect I2C not only in the watchdog but upon initialization. This may be useful when only the right half reboots after a firmware upgrade.
|
2017-09-30 22:17:44 +02:00 |
|
László Monda
|
b87042a44a
|
Resurrect the state machine of frozen IS31FL3731 ICs by toggling SCL and SDA.
|
2017-09-30 20:34:35 +02:00 |
|
László Monda
|
ea71253d6a
|
Remove KEY_STATE_SIZE in favor of the more general BOOL_BYTES_TO_BITS_COUNT() macro.
|
2017-09-30 00:57:10 +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
|
e7a1d27cde
|
Make private LED driver variables static.
|
2017-09-29 15:22:52 +02:00 |
|
László Monda
|
877cb78b0a
|
Extract LedDriverValues from LedDriverStates to make them public, and make LedDriverStates values private.
|
2017-09-29 15:18:01 +02:00 |
|
László Monda
|
0624d088b6
|
Remove unused LED driver BUFFER_SIZE.
|
2017-09-29 02:19:12 +02:00 |
|
László Monda
|
1ab984413a
|
Extract ISO key related LED driver macros.
|
2017-09-29 02:07:55 +02:00 |
|
László Monda
|
92c0da9695
|
For the sake of correctness, only initialize the LED driver control register of the ISO key for the left LED driver IC.
|
2017-09-29 01:53:08 +02:00 |
|
László Monda
|
07142c3ce2
|
Fix coding style.
|
2017-09-29 01:46:51 +02:00 |
|
László Monda
|
81de51244a
|
Leave some breathing room in dense code blocks.
|
2017-09-29 01:39:34 +02:00 |
|
László Monda
|
2b6762d3e0
|
Indent cases inside switches.
|
2017-09-29 01:35:25 +02:00 |
|
László Monda
|
28f0cdd2c0
|
Use LED_BRIGHTNESS_LEVEL in led_display.c instead of magic values.
|
2017-09-29 01:33:21 +02:00 |
|
László Monda
|
eb2d7ada3a
|
Extract LED_BRIGHTNESS_LEVEL.
|
2017-09-29 01:30:02 +02:00 |
|
László Monda
|
76a80c3090
|
Inline SetLeds()
|
2017-09-29 01:27:34 +02:00 |
|
László Monda
|
67c4b413b4
|
Remove SetLeds() from slave_scheduler.h
|
2017-09-29 01:21:49 +02:00 |
|
László Monda
|
b42fc8b3f1
|
Remove module declarations that won't be used.
|
2017-09-29 01:19:02 +02:00 |
|
László Monda
|
8909bb6a16
|
Convert MODULE_ID_* macros to ModuleId_* enum values.
|
2017-09-29 01:09:41 +02:00 |
|
László Monda
|
d6254b6903
|
Extract I2C_WATCHDOG_INTERVAL_USEC.
|
2017-09-29 01:01:29 +02:00 |
|
László Monda
|
7313d8d87e
|
Fix the grammar of watchdog interrupt related comment and don't include specific timeout as it may change later.
|
2017-09-29 00:58:52 +02:00 |
|
László Monda
|
7d1cecc2b4
|
Move macros from i2c_watchdog.c to i2c_watchdog.h
|
2017-09-29 00:54:57 +02:00 |
|
László Monda
|
1889f78b98
|
Make previousSlaveId and currentSlaveId static.
|
2017-09-29 00:52:43 +02:00 |
|
László Monda
|
827ad7e08e
|
Rename BridgeCounter to I2cSchedulerCounter and move it to the top of masterCallback.
|
2017-09-29 00:50:56 +02:00 |
|
László Monda
|
508ef870ae
|
Rename I2C_Watchdog*Counter to I2cWatchdog_*Counter.
|
2017-09-29 00:44:22 +02:00 |
|
László Monda
|
69f3c86185
|
Rename UhkModuleId_* to UhkModuleDriverId_*.
|
2017-09-28 23:26:58 +02:00 |
|
László Monda
|
8b180d94b0
|
No need to zero prevWatchdogCounter because it's zero by default.
|
2017-09-28 23:23:19 +02:00 |
|
László Monda
|
96eeb97a04
|
Remove commented out code. The scheduler checks previousStatus and acts accordingly, so things should work out fine.
|
2017-09-28 23:03:40 +02:00 |
|
László Monda
|
55e0872967
|
Add new SlaveId_* values and an explanatory comment.
|
2017-09-28 22:59:22 +02:00 |
|
László Monda
|
c04c5de504
|
Improve comment.
|
2017-09-28 22:53:24 +02:00 |
|
László Monda
|
5eb82c262a
|
Fix the scheduler by making it maintain previousSlaveId correctly.
|
2017-09-28 21:44:51 +02:00 |
|
László Monda
|
6c2e806d6d
|
Fix coding style.
|
2017-09-28 21:16:42 +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
|
4666b24c69
|
Change UsbMouseReport back to extern that I screwed up in ecf1ad2468
|
2017-09-28 14:13:24 +02:00 |
|
László Monda
|
8b5b224bf3
|
Compute KEY_STATE_SIZE the right way.
|
2017-09-28 04:05:44 +02:00 |
|
László Monda
|
8d57968575
|
Also commit slave_scheduler.c regarding the kStatus_Uhk_NoOp -> kStatus_Uhk_NoTransfer rename that I forgot to commit.
|
2017-09-28 03:35:28 +02:00 |
|