László Monda
|
c46dcad490
|
Use reenumerate.js instead of jump-to-bootloader.js and make left/blhost-unix.sh handle argument related errors.
|
2017-10-23 16:52:15 +02:00 |
|
László Monda
|
ab807cd0c8
|
Make sendKbootCommand() accept various command types, not only reset.
|
2017-10-23 01:19:19 +02:00 |
|
László Monda
|
92ee3b5606
|
Add KBOOT I2C slave driver, its related USB command, and make the firmware updater script of the left half successfully reset the left half after firmware update.
|
2017-10-22 02:17:43 +02:00 |
|
László Monda
|
e57d199b40
|
Move FIXED_BUSPAL_BOOTLOADER to buspal/command.c
|
2017-10-21 03:53:01 +02:00 |
|
László Monda
|
95faf64b76
|
Remove the now unused FORCE_BUSPAL macro.
|
2017-10-21 03:50:07 +02:00 |
|
László Monda
|
89fef3d933
|
Upon receiving the reset BusPal command, reset the MCU and reenumerate in normal keyboard mode.
|
2017-10-21 01:29:05 +02:00 |
|
László Monda
|
25f8017879
|
Get rid of the now obsoleted bootloader_config.h
|
2017-10-20 00:52:32 +02:00 |
|
László Monda
|
968c6c0416
|
Call NVIC_SystemReset() instead of custom code.
|
2017-10-20 00:34:01 +02:00 |
|
László Monda
|
3d46584b79
|
Don't try to npm install the dependencies of jump-to-bootloader.js but rather display instructions.
|
2017-10-20 00:31:06 +02:00 |
|
László Monda
|
37c90cc4a7
|
Fix indentation.
|
2017-10-17 00:30:03 +02:00 |
|
László Monda
|
b3e025f443
|
Make reenumerate() set Wormhole.timeoutMs based on GenericHidInBuffer+2
|
2017-10-16 23:26:37 +02:00 |
|
László Monda
|
53cb8aa129
|
Delete armgcc build scripts because they aren't planned to be used anymore.
|
2017-10-14 13:04:39 +02:00 |
|
László Monda
|
0b120a3286
|
Fix generic HID descriptor enumeration error by making UsbGenericHidReportDescriptor extern.
|
2017-10-13 22:49:09 +02:00 |
|
László Monda
|
d4200524d7
|
Make the firmware depend of the wormhole.[ch] files of the bootloader. Remove local wormhole.[ch] files.
|
2017-10-13 22:09:52 +02:00 |
|
László Monda
|
ef34094004
|
Add jump to slave bootloader command.
|
2017-10-12 19:57:41 +02:00 |
|
László Monda
|
302a750621
|
Improve file according to our coding standards.
|
2017-10-07 16:37:20 +02:00 |
|
László Monda
|
9f411dc1d4
|
Throw ParserError_InvalidKeymapCount if keymapCount == 0.
|
2017-10-06 23:37:05 +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
|
8c067b9190
|
Use UhkModuleDriverId_* enum values instead of magic numbers wherever possible.
|
2017-10-05 20:36:29 +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
|
a9ba8a1907
|
Remove redundant module members.
|
2017-10-05 19:51:15 +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
|
21beb59cb6
|
Add merge sensor state to getKeyboardState()
|
2017-10-05 14:21:37 +02:00 |
|
László Monda
|
3ed3272fa3
|
Write the validated user config area to the EEPROM, not the staging area.
|
2017-10-05 09:12:50 +02:00 |
|
László Monda
|
377fe4a2b2
|
Make EEPROM transfers receive an operation and a buffer id parameter. This allows reading and writing both staging and validated user configurations which will aid future debugging. This API is also cleaner.
|
2017-10-05 02:45:22 +02:00 |
|
László Monda
|
259f4d3299
|
Add config_buffer_id_t.
|
2017-10-04 23:57:43 +02:00 |
|
László Monda
|
8e420f8592
|
Rename and rearrange some variables in config_globals.c for better readability.
|
2017-10-04 22:39:40 +02:00 |
|
László Monda
|
63674e02b7
|
Now rename the other guard macro, too. I thought it was renamed by the IDE.
|
2017-10-04 22:36:27 +02:00 |
|
László Monda
|
e27fb83693
|
Rename guard macro according to the filename.
|
2017-10-04 22:35:17 +02:00 |
|
László Monda
|
4295793fb9
|
Add ATTR_* macros in the newly created attributes.h and use them wherever possible for improved readability.
|
2017-10-04 22:26:48 +02:00 |
|
László Monda
|
f348aec97a
|
Rename UserConfigBuffer to ValidatedUserConfigBuffer.
|
2017-10-04 22:10:55 +02:00 |
|
László Monda
|
9ecdfc0b71
|
Improve the readability of ApplyConfig()
|
2017-10-04 22:06:45 +02:00 |
|
László Monda
|
af52c017d8
|
No need to assign a value to I2C_WATCHDOG. Just define it.
|
2017-10-04 13:02:40 +02:00 |
|
László Monda
|
316602bb02
|
Rename the obsoleted LED_DRIVER_FORCE_UPDATE macro to LED_DRIVER_STRESS_TEST.
|
2017-10-04 12:59:05 +02:00 |
|
László Monda
|
6658d62805
|
Group module phases.
|
2017-10-04 02:52:53 +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
|
efb0f982d2
|
Only try to recover I2C if SDA is low.
|
2017-10-04 01:22:22 +02:00 |
|
László Monda
|
2027940b4c
|
Use the correct I2C_MAIN_BUS_{SDA,SCL}{PORT,PIN} macros at the right spots.
|
2017-10-04 01:04:56 +02:00 |
|
László Monda
|
e5595bc757
|
Extract I2C recovery code to recoverI2c()
|
2017-10-03 23:59:27 +02:00 |
|
László Monda
|
72812724ef
|
Now do send a STOP condition at the end of the I2C recovery which might make it more robust.
|
2017-10-03 23:37:16 +02:00 |
|
László Monda
|
1daf43b751
|
Set SDA as GPIO upon trying to recovering I2C, not just SDL.
|
2017-10-03 23:23:26 +02:00 |
|
László Monda
|
2804d3e447
|
Don't cycle SDA just before initialzing I2C. Merely pull it high to generate a STOP condition.
|
2017-10-03 22:05:42 +02:00 |
|
László Monda
|
ff1d5dffaa
|
Cycle through the I2C clock by using 20 cycles instead of 16. Should be a bit more reliable, although I can't see a definite improvement.
|
2017-10-03 21:56:08 +02:00 |
|
László Monda
|
5de396bb68
|
Don't mess around with SDA and SCL before cycling through the clock because it seems redundant.
|
2017-10-03 21:37:35 +02:00 |
|
László Monda
|
7af8042c93
|
Fine tune delay to match the I2C peripheral driven at 100kHz.
|
2017-10-03 21:06:04 +02:00 |
|
László Monda
|
51a9acbb68
|
Extract delay() from InitI2cMainBus()
|
2017-10-03 20:54:05 +02:00 |
|