control a blinkstick via http requests
Find a file
2022-02-24 10:42:06 +01:00
libs reject with error object 2022-02-24 10:42:06 +01:00
public initial commit 2021-04-06 16:41:49 +02:00
scripts fixed type environment variable 2021-04-14 23:11:15 +02:00
.gitignore code optimization 2022-02-21 11:56:49 +01:00
.nvmrc add '.nvmrc' 2022-02-21 11:57:18 +01:00
blinky.js replaced some more promises with async/await 2022-02-24 10:41:50 +01:00
blinky.service added systemd-service and updated readme 2022-02-21 12:04:37 +01:00
config.json reworked almost the whole project - everything should work now as expected 2022-02-23 17:08:41 +01:00
LICENSE initial commit 2021-04-06 16:41:49 +02:00
package.json initial commit 2021-04-06 16:41:49 +02:00
README.md added new line 2022-02-21 12:08:26 +01:00

blinky

control your blinkstick via http requests

requirements

  • nodejs
  • yarn / npm
  • nvm

the node-hid module is a bit picky about node.js's version - use node.js 8.x or 15.x

setup

  • clone the project (to '/opt/blinky')
    git clone https://git.velvettear.de/velvettear/blinky.git /opt/blinky

  • enter the cloned directory
    cd /opt/blinky

  • install and switch to a supported node.js version (automatically done via .nvmrc file) nvm install

  • install the required modules
    npm install

  • switch back to your system's default node.js version nvm deactivate

  • execute blinky
    nvm run 15 blinky.js

systemd

for security reasons it is highly recommended to not run blinky with root permissions!

  • create a new system user
    useradd -r -s /usr/bin/nologin blinky

  • symlink the provided systemd-service file and modify it according to your needs
    ln -s /opt/blinky/blinky.service /etc/systemd/system/blinky.service

  • reload systemd-services
    systemctl daemon-reload

  • enable and start blinky as a systemd-service
    systemctl enable --now blinky

scripts

  • blinky-feed.sh
    • gathers various system information (currently temperature only) then converts it to color values and sends it to blinky
    • requirements: bash, bc