Blink1Control is the desktop application for controlling and hooking events to blink(1). It is the primary user-level application for controlling blink(1). It is an event-based system for triggering blink(1) color patterns. Those events can be on your computer or on the Net.
Blink1Control2 is the current version, written in Electron, Node.js, and React.
There are pre-built app downloads for Mac OS X, Windows, Linux, and Raspberry Pi in the releases area.
You will need a working C compiler setup for Node projects. You can find details for that here: https://github.com/node-hid/node-hid#compiling-from-source
Start a hot-reloading content server and the application:
npm install
npm run watch &
npm run startdev
Or to emulate a production run:
npm install # installs all dependencies locally
npm run webpack # packs app, there will be some warnings, ignore
npm run start # starts the packaged app
npm run dist:draft # create relocatable app and installer(s), in "dist" dir
Install udev rules file in /etc/udev/rules.d/51-blink1.rules
with contents:
SUBSYSTEM=="input", GROUP="input", MODE="0666"
SUBSYSTEM=="usb", ATTRS{idVendor}=="27b8", ATTRS{idProduct}=="01ed", MODE:="666", GROUP="plugdev"
KERNEL=="hidraw*", ATTRS{idVendor}=="27b8", ATTRS{idProduct}=="01ed", MODE="0666", GROUP="plugdev"
And install the rules with:
sudo udevadm control --reload-rules
Then unplug and replug the blink(1) device.
Install the following pre-requisites:
sudo apt install pkg-config libgnome-keyring-dev icnsutils xz-utils rpm bsdtar libusb-1.0-0-dev libudev-dev
(see: electron-userland/electron-builder#1407)
As above for Linux, with a bit extra:
sudo apt install --no-install-recommends -y ruby-full bsdtar rpm libopenjp2-tools
sudo gem install fpm -v 1.10.1
export USE_SYSTEM_FPM="true"
npm install
npm run dist:raspi
- Publishing.md for info on publishing binaries
- NOTES.md for random behind-the-scenes thoughts