* chore(kboot): add more logging * fix: add uncaughtException handler * fix: wait to prevent race condition * fix: don't close device after success left keyboard connection * revert: remove extra delay * revert: add back the waiting * fix: always initialize new KBoot instance when try to configure I2C * fix: increase the wait time between 2 IC2 reconnection * fix: timing and usb reconnection * fix: dont close kboot device * feat: append the WithKboot to the firmware upgrade methods * feat: revert back the blhost functionality
27 lines
874 B
TypeScript
27 lines
874 B
TypeScript
import * as path from 'path';
|
|
import { LogService } from 'uhk-common';
|
|
import { UhkHidDevice, UhkOperations } from 'uhk-usb';
|
|
|
|
const logService = new LogService();
|
|
const rootDir = path.join(__dirname, '../../tmp');
|
|
const uhkHidDevice = new UhkHidDevice(logService, {}, rootDir);
|
|
const uhkOperations = new UhkOperations(logService, uhkHidDevice, rootDir);
|
|
|
|
process.on('uncaughtException', error => {
|
|
console.error('uncaughtException', error);
|
|
process.exit(1);
|
|
});
|
|
|
|
process.on('unhandledRejection', (reason: any, promise: Promise<any>): void => {
|
|
console.error('unhandledRejection', { reason, promise });
|
|
});
|
|
|
|
uhkOperations
|
|
.updateRightFirmwareWithKboot()
|
|
.then(() => uhkOperations.updateLeftModuleWithKboot())
|
|
.then(() => console.log('Firmware upgrade finished'))
|
|
.catch(error => {
|
|
console.error(error);
|
|
process.exit(-1);
|
|
});
|