Files
agent/packages/usb/set-led-values.js
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

37 lines
1.0 KiB
JavaScript
Executable File

#!/usr/bin/env node
let uhk = require('./uhk');
let programName = process.argv[1];
if (process.argv.length !== 6) {
console.log(`Usage: ${programName} [display 0-255] [left keys 0-255] [unused 0-255] [right keys 0-255]`);
process.exit(1);
}
let pwmOffset = 0;
let ledDriverAddresses = [uhk.leftLedDriverAddress, uhk.rightLedDriverAddress];
let ledDriverAddress;
const FRAME_REGISTER_PWM_FIRST = 0x24;
uhk.sendUsbPacketsByCallback(() => {
if (pwmOffset === 0) {
ledDriverAddress = ledDriverAddresses.shift();
}
if (!ledDriverAddress) {
return;
}
let isMatrixA = pwmOffset % 16;
let argIndex = 2 + (ledDriverAddress == uhk.leftLedDriverAddress ? 0 : 2) + (isMatrixA ? 0 : 1);
let val = +process.argv[argIndex];
let buffer = new Buffer([uhk.usbCommands.writeLedDriver, ledDriverAddress,
9, FRAME_REGISTER_PWM_FIRST+pwmOffset, val, val, val, val, val, val, val, val]);
pwmOffset += 8;
if (pwmOffset >= 144) {
pwmOffset = 0;
}
return buffer;
});