Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/todbot/Blink1Control2
Blink1Control GUI to control blink(1) USB RGB LED devices.
https://github.com/todbot/Blink1Control2
blink1 electron nodejs react usb usb-hid
Last synced: 2 months ago
JSON representation
Blink1Control GUI to control blink(1) USB RGB LED devices.
- Host: GitHub
- URL: https://github.com/todbot/Blink1Control2
- Owner: todbot
- License: apache-2.0
- Created: 2015-09-14T00:45:55.000Z (over 9 years ago)
- Default Branch: main-es5
- Last Pushed: 2024-08-26T00:53:21.000Z (4 months ago)
- Last Synced: 2024-10-29T18:08:31.007Z (2 months ago)
- Topics: blink1, electron, nodejs, react, usb, usb-hid
- Language: JavaScript
- Homepage: http://blink1.thingm.com/
- Size: 10.8 MB
- Stars: 154
- Watchers: 23
- Forks: 24
- Open Issues: 78
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Blink1Control2
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.
### Downloads
There are pre-built app downloads for Mac OS X, Windows, Linux, and Raspberry Pi in the [releases area](https://github.com/todbot/Blink1Control2/releases).* [Download for Mac, Windows, Linux x86, and RaspberryPi](https://github.com/todbot/Blink1Control2/releases)
### Setup steps (for development)
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-sourceStart 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
```#### Linux:
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:
```sh
sudo apt install pkg-config libgnome-keyring-dev icnsutils xz-utils rpm bsdtar libusb-1.0-0-dev libudev-dev
```(see: https://github.com/electron-userland/electron-builder/issues/1407)
#### Raspberry Pi
As above for Linux, with a bit extra:
```sh
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
```### Other info
- [Publishing.md](Publishing.md) for info on publishing binaries
- [NOTES.md](NOTES.md) for random behind-the-scenes thoughts