Commit Graph

  • 330a899625 Make the getAdcValue and getDebugInfo USB commands utilize the first byte of the response to provide status as dictated by the UHK protocol. László Monda 2017-11-04 01:02:19 +01:00
  • e7f34dcdc6 Simplify code by utilizing type casing on uint8_t arrays. László Monda 2017-11-04 00:30:40 +01:00
  • c2a1a94349 Switch keymap only upon keypress. László Monda 2017-11-03 22:39:18 +01:00
  • 35b8f0084b Don't put a zero scancode into ActiveUsbBasicKeyboardReport->scancodes[basicScancodeIndex++] László Monda 2017-11-03 22:32:10 +01:00
  • 0688c1bdfc Rename keymaps.[ch] to keymap.[ch] László Monda 2017-11-03 19:01:56 +01:00
  • 4072a0ea33 Rename Keymap_Switch() to SwitchKeymap() László Monda 2017-11-03 18:59:58 +01:00
  • e169627cde Move updateLayerStates() and getActiveLayer() into the newly created layer.c László Monda 2017-11-03 18:53:17 +01:00
  • aeb325a09f Being static variables, lowercamelcase HeldLayers and PressedLayers. László Monda 2017-11-03 18:43:26 +01:00
  • 0df7879358 Get rid of the unused PreviousToggledLayer. László Monda 2017-11-03 18:42:04 +01:00
  • bbbecb8f87 Handle layer toggle actions. László Monda 2017-11-03 18:29:17 +01:00
  • 05bbd28877 Maintain the states of previous key states. László Monda 2017-11-03 13:43:16 +01:00
  • b18cb651ce Leave the active layer active even if another layer switcher key gets pressed while holding it. László Monda 2017-11-03 12:49:55 +01:00
  • 88fac5c1ff Rename key_matrix_instance.[ch] to right_key_matrix.[ch] László Monda 2017-11-03 03:30:14 +01:00
  • fe2e611bb1 Update KeyStates[SlotId_RightKeyboardHalf] within usb_report_updater.c instead of main.c László Monda 2017-11-03 03:22:56 +01:00
  • 599b78a676 Don't expose UpdateUsbReports() anymore. László Monda 2017-11-03 03:20:08 +01:00
  • a0a162ae9e Extend key states to include not only the current state but also the previous state and suppressed state. László Monda 2017-11-03 03:17:46 +01:00
  • e0868ac866 Rename CurrentKeyStates to KeyStates and move it to the newly created key_states.[ch] László Monda 2017-11-03 02:46:34 +01:00
  • a7e70d0cb2 Link to the latest Agent revision. Add commented out call to user-config-json-to-bin.ts which apparently doesn't work from outer directories yet. László Monda 2017-11-03 00:57:37 +01:00
  • 31b7dddef4 Read the new UserConfig.userConfigLength field. László Monda 2017-11-02 23:10:22 +01:00
  • ecf7f10b9c Exchange Ctrl and Alt according to the official UHK default keymap. László Monda 2017-11-02 22:03:43 +01:00
  • 2aaef66d85 Convert LAYER_ID_* macros to LayerId_* enum values. László Monda 2017-11-02 21:48:30 +01:00
  • 00dfd96d55 Instead of scanning the keyboard matrix from the main loop and utilizing busy loops, try to use a PIT interrupt handler to do the same thing, scanning one row per interrupt call without busy loops. For some reason, this makes the movement of the mouse pointer very slow and makes it jump from time to time, so I ended up adding INTERRUPT_KEY_SCANNER and disabling the timer interrupt. Also double bufferred the mouse report just like the others. Unfortunately this does not affect this issue. László Monda 2017-11-02 01:11:41 +01:00
  • 024f24f489 Make make-release.js group master and slave firmwares into separate directories. László Monda 2017-11-01 02:09:22 +01:00
  • 6043651341 Rename release-firmware.js to make-release.js because it doesn't actually releases the release to GitHub. It merely creates it. László Monda 2017-11-01 00:35:33 +01:00
  • f7d775c6da Remove output files before the build process. Create the release directory in the directory of the script instead of /tmp László Monda 2017-11-01 00:33:35 +01:00
  • 1ab0885200 Fix the path of build directories in .travis.yml László Monda 2017-11-01 00:21:26 +01:00
  • 561d183840 Make release-firmware.js work when invoked from any directory. László Monda 2017-11-01 00:11:33 +01:00
  • df48f5e1be Set config.fatal to true. László Monda 2017-11-01 00:00:29 +01:00
  • b94310f57a Utilize string interpolation wherever possible. László Monda 2017-10-31 23:58:37 +01:00
  • dc82b51008 Read the current firmware version from package.json László Monda 2017-10-31 23:55:56 +01:00
  • 3aff28726f Port release-firmware to ShellJS. László Monda 2017-10-31 23:45:22 +01:00
  • 16e173140a Move package.json and release-firmware to scripts László Monda 2017-10-31 23:36:15 +01:00
  • 13dd0753ce Add package-lock.json and node_modules to .gitignore and clean up its obsolete entries. László Monda 2017-10-31 23:32:19 +01:00
  • ba5a49f7d1 Hoist {left,right}/build/kds/* to {left,right}/build to simplify the directory hierarchy. László Monda 2017-10-31 23:11:22 +01:00
  • 64b07746ee Invoke KDS in headless mode to buid the firmware before assembling the release. László Monda 2017-10-31 01:40:49 +01:00
  • d59ed73a10 Fix firmware paths. László Monda 2017-10-31 01:36:22 +01:00
  • 010b276f8b Fix XML structure. László Monda 2017-10-31 01:33:18 +01:00
  • 1d7790f74e Generate .hex files instead of .srec for the right half firmware. László Monda 2017-10-29 22:27:47 +01:00
  • 808d916687 Clean up .cproject and .gitignore files after the rename of the build and run configurations. László Monda 2017-10-29 22:04:48 +01:00
  • 52bb02bc3d Rename build and run configurations to reflect device ids. László Monda 2017-10-29 21:54:02 +01:00
  • e8ab25493e Make the firmware upgrade scripts working directory independent. László Monda 2017-10-29 19:09:32 +01:00
  • 72b279841c Port the blhost-unix.sh firmware update script of the right keyboard half to ShellJS resulting in update-master-firmware.js László Monda 2017-10-29 18:20:13 +01:00
  • 4e2d867424 Extract the USB product ID for getBlhostCmd() László Monda 2017-10-29 18:17:48 +01:00
  • a5402e7c6a Extract checkFirmwareImage() László Monda 2017-10-29 17:47:24 +01:00
  • f847cc844e Extract getBlhostCmd() to shared.js László Monda 2017-10-29 17:35:55 +01:00
  • 976e402445 Make update-slave-firmware.js extremely resilient (not a single failure out of 100 updates). Add shared.js László Monda 2017-10-29 17:17:12 +01:00
  • cf007f81bd Merge branch 'master' into add-device-name László Monda 2017-10-28 18:46:46 +02:00
  • 569493cbfa Add UsbDebugInfo to aid future debugging via USB. László Monda 2017-10-28 17:12:52 +02:00
  • f0a98eebb5 Set the initial keymap abbrivation to FTY (for factory keymap). László Monda 2017-10-26 20:32:19 +02:00
  • 55e4997ea2 Make the system keyboard descriptor play nicely with OSX. László Monda 2017-10-26 18:22:37 +02:00
  • 5642ab29a1 Reorder USB interfaces in usb_device_config.h, too. László Monda 2017-10-26 01:12:51 +02:00
  • 6bdd320ed8 Reorder USB interfaces all across the codebase in the following order: generic HID, basic keyboard, media keyboard, system keyboard, mouse. László Monda 2017-10-26 00:52:20 +02:00
  • c77286512c Reset keyboard reports just before changing them by UpdateActiveUsbReports(). This seems to completely solve the repeated media key issue. László Monda 2017-10-25 18:31:52 +02:00
  • c7b6acd838 Use the let keyword for defining variables. László Monda 2017-10-24 17:32:27 +02:00
  • 9db5c5e067 Port blhost-unix.sh as update-slave-firmware.js using ShellJS. László Monda 2017-10-24 13:59:36 +02:00
  • c370cab513 Use the renamed send-kboot-command-to-slave.js László Monda 2017-10-23 22:24:40 +02:00
  • 85b1a65ea7 Implement KbootCommand_Ping and set set left BOOTLOADER_TIMEOUT_MS back to 100 ms. László Monda 2017-10-23 21:33:08 +02:00
  • c46dcad490 Use reenumerate.js instead of jump-to-bootloader.js and make left/blhost-unix.sh handle argument related errors. László Monda 2017-10-23 16:52:15 +02:00
  • ab807cd0c8 Make sendKbootCommand() accept various command types, not only reset. László Monda 2017-10-23 01:19:19 +02:00
  • 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. László Monda 2017-10-22 02:17:43 +02:00
  • e57d199b40 Move FIXED_BUSPAL_BOOTLOADER to buspal/command.c László Monda 2017-10-21 03:53:01 +02:00
  • 95faf64b76 Remove the now unused FORCE_BUSPAL macro. László Monda 2017-10-21 03:50:07 +02:00
  • 5149e7e8ad Remove the now unused ALWAYS_ENTER_BOOTLOADER macro. László Monda 2017-10-21 03:40:10 +02:00
  • f67bcced4a Keep only one release and one debug build configuration. Add related kboot run configurations. László Monda 2017-10-21 03:35:17 +02:00
  • e9920cfebb Increase the delay from 1s to 2s and flash the firmware script argument. László Monda 2017-10-21 03:28:54 +02:00
  • 2e07627359 Temporarily increase left bootloader timeout from 100ms to 3000 ms for testing purposes. László Monda 2017-10-21 03:12:21 +02:00
  • 89fef3d933 Upon receiving the reset BusPal command, reset the MCU and reenumerate in normal keyboard mode. László Monda 2017-10-21 01:29:05 +02:00
  • a052f4f59c Add blhost script for the left firmware, too. László Monda 2017-10-21 01:27:33 +02:00
  • 25f8017879 Get rid of the now obsoleted bootloader_config.h László Monda 2017-10-20 00:52:32 +02:00
  • 5ec619532a Reference the latest version of Agent, containing the fixed uhk.js which makes jump-to-bootloader.js work. László Monda 2017-10-20 00:34:45 +02:00
  • 968c6c0416 Call NVIC_SystemReset() instead of custom code. László Monda 2017-10-20 00:34:01 +02:00
  • 0b4ca43ed6 Merge branch 'master' of github.com:UltimateHackingKeyboard/firmware László Monda 2017-10-20 00:32:37 +02:00
  • 3d46584b79 Don't try to npm install the dependencies of jump-to-bootloader.js but rather display instructions. László Monda 2017-10-20 00:31:06 +02:00
  • 8951ca992b Build linux in CI (#61) Stephen 2017-10-19 18:11:00 +01:00
  • 3230b94973 Make the left half call NVIC_SystemReset() upon receiving SlaveCommand_JumpToBootloader instead of jumping to the ROM address of the bootloader. This way the bootloader timeouts. Remove bootloader.c because it only contained JumpToBootloader() which is now unused. László Monda 2017-10-17 00:58:23 +02:00
  • 37c90cc4a7 Fix indentation. László Monda 2017-10-17 00:30:03 +02:00
  • b3e025f443 Make reenumerate() set Wormhole.timeoutMs based on GenericHidInBuffer+2 László Monda 2017-10-16 23:26:37 +02:00
  • 84b304fe02 Read (and ignore) device name. László Monda 2017-10-14 15:54:38 +02:00
  • 53cb8aa129 Delete armgcc build scripts because they aren't planned to be used anymore. add-dev-name László Monda 2017-10-14 13:04:39 +02:00
  • 7285630264 Make the release script put put package.json into the release. László Monda 2017-10-14 02:28:01 +02:00
  • 4563d26a5c Update changelog and package.json v2.1.0 2.1.0 László Monda 2017-10-13 22:58:26 +02:00
  • 0b120a3286 Fix generic HID descriptor enumeration error by making UsbGenericHidReportDescriptor extern. László Monda 2017-10-13 22:49:09 +02:00
  • d4200524d7 Make the firmware depend of the wormhole.[ch] files of the bootloader. Remove local wormhole.[ch] files. László Monda 2017-10-13 22:09:52 +02:00
  • ef34094004 Add jump to slave bootloader command. László Monda 2017-10-12 19:57:41 +02:00
  • d2fd7bc613 Add conditions that external components must satisfy in regards to version numbers in order to be interface with the UHK. László Monda 2017-10-11 15:32:57 +02:00
  • 7da33c606b Add package.json v2.0.0 2.0.0 László Monda 2017-10-11 03:14:45 +02:00
  • 0f3ceef332 Add newline. László Monda 2017-10-11 03:12:24 +02:00
  • 908102855b Uppercase Data Model. László Monda 2017-10-11 03:11:30 +02:00
  • a216d400ca Fix typo. László Monda 2017-10-11 02:29:43 +02:00
  • 8959dde107 Adhere to the newly added UHK versioning conventions. László Monda 2017-10-11 02:11:25 +02:00
  • a2e20e6b32 Create VERSIONING.md László Monda 2017-10-11 02:07:05 +02:00
  • ef7ae5dd42 Use backticks to display tags. László Monda 2017-10-10 23:57:30 +02:00
  • 24377e6778 Create CHANGELOG.md László Monda 2017-10-10 23:25:43 +02:00
  • e3958cdca6 Merge pull request #60 from stephengroat/version-pin László Monda 2017-10-10 20:46:55 +02:00
  • 9d5588a6c2 follow cask style guide Stephen 2017-10-10 10:12:37 -07:00
  • 8c42074534 try a harder pin Stephen 2017-10-10 09:18:55 -07:00
  • fce054eb9c Fix gcc-arm-embedded vesion in cask Stephen G 2017-10-10 08:38:25 -07:00
  • fb320ee4bd Merge pull request #59 from stephengroat/patch-2 László Monda 2017-10-10 16:24:23 +02:00
  • 6595884c99 fix eclipse path Stephen 2017-10-09 16:44:07 -07:00
  • 7b7af0c5bc test where brew is installing apps Stephen 2017-10-09 16:14:33 -07:00