Commit Graph

37 Commits

Author SHA1 Message Date
László Monda
cac6fdc190 Move updateDeviceFirmware() from update-device-firmware.js to uhk.js 2018-01-30 21:48:42 +01:00
László Monda
0d9c976eb8 Move execRetry() from shared.js to uhk.js 2018-01-30 21:37:27 +01:00
László Monda
288d4f75b6 Move getBlhostCmd() from shared.js to uhk.js 2018-01-30 21:35:35 +01:00
László Monda
73e07eae2d Move checkFirmwareImage() from shared.js to uhk.js 2018-01-30 21:28:00 +01:00
László Monda
8e620caac5 Use reenumerate() in update-device-firmware.js instead of forking reenumerate.js 2018-01-30 20:39:48 +01:00
László Monda
0d4e1acf76 Extract reenumerate() from reenumerate.js to uhk.js 2018-01-30 19:34:29 +01:00
László Monda
e0bb0bcca3 Add the async uhk.writeDevice() and use it in get-i2c-baud-rate.js 2018-01-30 17:21:50 +01:00
László Monda
2310320b8a Replace pushUint32() with uint32ToArray() and don't use it where not needed. 2018-01-30 05:30:32 +01:00
László Monda
67346b4cda Simplify getTransferData() 2018-01-30 05:10:29 +01:00
László Monda
c7baa00720 Add get-uptime.js 2018-01-14 18:33:14 +01:00
László Monda
5cdf2282f8 Add {get,set}-i2c-baud-rate.js 2018-01-14 18:15:50 +01:00
László Monda
89221faf60 Add set-i2c-baud-rate.js 2018-01-14 00:45:51 +01:00
László Monda
b6bdd1486c Make update-module-firmware.js more robust and able to recover bricked modules (including the left half) by utilizing the newly added wait-for-kboot-idle.js 2018-01-10 03:15:19 +01:00
László Monda
4c10954721 Add script which reads I2C errors. 2018-01-05 03:26:26 +01:00
László Monda
216793bbb8 Add get-{left,right}-firmware-version.js 2017-12-29 13:34:49 +01:00
László Monda
e3c65f77df Rename getProperty to getDeviceProperty and getModuleProperties to getModuleProperty. 2017-12-29 13:23:58 +01:00
László Monda
3967593c9c Add get-module-state.js and the relevant device command id. 2017-12-15 02:58:51 +01:00
László Monda
3e7a0ed81a Query the combined ConfigSizes device property. Remove the deprecated HardwareConfigSize and UserConfigSize device properties. 2017-12-14 19:40:03 +01:00
László Monda
2702a74035 Finalize usb protocol (#515)
* Change UsbCommandId_SetTestLed from 0x02 to 0x14

* Change UsbCommandId_JumpToModuleBootloader from 0x12 to 0x02.

* Change UsbCommandId_SendKbootCommandToModule from 0x13 to 0x03.

* Replace UsbCommandId_ReadHardwareConfig and UsbCommandId_ReadUserConfig with UsbCommandId_ReadConfig.

* Change UsbCommandId_WriteHardwareConfig and UsbCommandId_WriteUserConfig to 0x05 and 0x06.

* Change UsbCommandId_ApplyConfig to 0x07.

* Change the arguments of UsbCommandId_LaunchEepromTransfer and its id to 0x08.

* Change the value of UsbCommandId_{GetDeviceState,SetTestLed,GetDebugBuffer,GetAdcValue,SetLedPwmBrightness}.

* Use firmware 6.0.0
2017-12-13 01:20:23 +01:00
László Monda
353c87d71a Make uhk.js non-executable. 2017-12-04 03:07:08 +01:00
László Monda
4e8061eb63 Rename launchEepromTransfer to launchEepromTransferLegacy. 2017-11-08 23:15:47 +01:00
László Monda
f9e1d022f2 Slightly tweak USB command names. 2017-11-08 23:13:03 +01:00
László Monda
04b43896c5 Make the firmware updater scripts take module slot parameters instead of I2C addresses. Rename scripts from *slave* to *module*. 2017-11-08 18:27:45 +01:00
László Monda
9a5862b57c Make update-slave-firmware expect a module slot name, too. 2017-11-08 03:47:51 +01:00
László Monda
7661700457 Rename jump-to-bootloader.js to reenumerate.js and make it able to reenumerate as any UHK USB product ID. 2017-10-23 16:48:09 +02:00
László Monda
1b22a2e739 Rename send-kboot-reset.js to send-kboot-command.js and generalize it by allowing various KBOOT commands to be sent. 2017-10-23 01:13:36 +02:00
László Monda
1a0fa5b5ba Add send-kboot-reset.js and add the new USB command ID to uhk.js 2017-10-22 02:13:08 +02:00
László Monda
7c7fde6d30 Don't create a HID object out of the bootloader device because that makes blhost unable to connect to it for some reason even if jump-to-bootloader.js calls device.close() before it exits. 2017-10-20 00:10:08 +02:00
László Monda
f7cdbbb5e0 Make jump-to-bootloader.js able to reenumerate the UHK as BusPal proxy. 2017-10-17 01:27:01 +02:00
László Monda
75e3995276 Add jump-to-slave-bootloader.js 2017-10-17 01:10:36 +02:00
László Monda
5764189945 Delete the deprecated readMergeSensor USB command and the related read-merge-sensor.js test script. 2017-10-15 02:58:08 +02:00
Róbert Kiss
9294bede50 feat(config): Read / write hardware configuration area (#423)
* add write-hca.js

* refactor: Move config serializer into the uhk-common package

* refactor: Move getTransferBuffers into the uhk-usb package

* refactor: delete obsoleted classes

* build: add uhk-usb build command

* refactor: move eeprom transfer to uhk-usb package

* fix: Fix write-hca.js

* feat: load hardware config from the device and

* style: fix ts lint errors

* build: fix rxjs dependency resolve

* test: Add jasmine unit test framework to the tet serializer

* fix(user-config): A "type": "basic", properties to the "keystroke" action types

* feat(usb): set chmod+x on write-hca.js

* feat(usb): Create USB logger

* style: Fix type

* build: Add chalk to dependencies.

Chalk will colorize the output
2017-09-26 16:57:27 +00:00
László Monda
88a04454ae Ignore HID exception which gets thrown when the bootloader is already up. Remove noisy messages. 2017-09-06 21:57:46 +02:00
László Monda
d7e820bc1f Add comment regarding the commented out workaround for node-hid issue 187. 2017-09-06 21:37:46 +02:00
László Monda
d8bf6a70ac Make code more readable. Remove the writeLedDriver that doesn't do anything anymore. 2017-09-06 21:35:16 +02:00
Róbert Kiss
30c74c06d3 refactor(usb): Use hid-api instead of lib-usb (#404)
* refactor(usb): Rewrite jump-to-bootloder to node-hid

* refactor(usb): Rewrite the whole usb packages to HID-API

* refactor(usb): Deleted not valid usb command files

* refactor(usb): Deleted not supported usb commands

* Remove obsolete script.

* Remove obsolete script.

* Fix script.

* Fix script.

* No need to assign the silent property because it has been removed.

* This workaround may work on other platforms, but it certainly doesn't work on Linux. It makes some scripts not work, so I'm commenting it out.

* Fix bootloader VID and PID.
2017-09-06 14:32:58 +02:00
Róbert Kiss
0f558e4132 refactore: create feature modules (#387)
* add @angular/cli to the project

* increase nodejs version -> 8.2.1

* add lerna

* merge web and shared module

* move electron module into packages as uhk-agent

Electron agent functionality is not working

* delete symlinker

* convert private properties to public of component if used in html

* revert uhk-message.component

* fix component path

* fix the correct name of the uhk-message.component.scss

* building web and electron module

* delete uhk-renderer package

* handle device connect disconnect state

* add privilege detection

* fix set privilege functionality

* turn back download keymap functionality

* add bootstrap, select2 js and fix null pointer exception

* turn back upload data to keyboard

* fix send keymap

* fix test-serializer

* add missing package.json

* merging

* fix appveyor build

* fix linting

* turn back electron storage service

* commit the missing electron-datastorage-repository

* update node to 8.3.0 in .nvmrc and log node version in appveyor build

* set exact version number in appveyor build

* vertical align privilege and missing device components

* set back node version to 8 in appveyor

* move node-usb dependency from usb dir to root

maybe it is fix the appveyor build

* revert usb to root

* fix electron builder script

* fix electron builder script

* turn off electron devtools

* remove CTRL+U functionality

* fix CTRL+o

* fix lint error

* turnoff store freeze

* start process when got `Error: EPERM: operation not permitted` error

* move files from root usb dir -> packages/usb
2017-08-19 20:02:17 +02:00