blink(1) mk2 使い方のメモ - blink1-tool 編
はじめに
初回はblink(1) mk2 の概要と写真を掲載しました
2回目はメインソフトウェアであるところの blink(1)control アプリの機能についてざっくりと分析してみました。
blink(1) mk2 紹介とunboxing - 自習室
blink(1) mk2 使い方のメモ - blink1control アプリ編 - 自習室
インストール Windows
- こちらからDLします
https://github.com/todbot/blink1#blink1-tool - 好きな場所に展開します。たとえば、
C:\myPrograms\blink1\
とか - その場所をシステム環境変数 > PATH に追加します
インストール Mac
- おなじくこちらからDLします
https://github.com/todbot/blink1#blink1-tool - PATHの通ってそうなところに
blink1-tool
を展開します。たとえば/usr/local/bin/
とか
使い方 Windows
コマンドプロンプトなりCygwinなりMacのターミナルなりで、コマンドを打ちます
blink1-tool <cmd> [options]
blink1-tool
をコマンドオプション抜きで空打ちするとヘルプが出てくるので、あとはよしなに
一つのマシンに複数のblink1を挿して使う
blink1Control アプリでは一つのblink1しか制御できなかったので、toolで二つ以上を同時にあつかってみます。
id 確認
$ blink1-tool --list blink(1) list: id:0 - serialnum:2000202D (mk2) id:1 - serialnum:2000289A (mk2) id:2 - serialnum:2000359B (mk2)
id を指定して光らせる
$ blink1-tool -d 0 --on set dev:0 to rgb:0xff,0xff,0xff over 300 msec
-d
引数で、対象のblink1を指定できます。みっつ刺さっているので、0か1か2です。
ここではシンプルに --on
指令で300msで真っ白にfadein させています。
複数同時に扱う
-d
引数に二つのidを入れることは出来なかったので、とりあえず&で指令をつなげています
$ blink1-tool -d 0 --cyan & blink1-tool -d 2 --cyan [1] 8008 set dev:0 to rgb:0xff,0xff,0xff over 300 msec set dev:2 to rgb:0xff,0xff,0xff over 300 msec [1]+ 終了 blink1-tool -d 0 --on
全部同時に、という指定はできます
$ blink1-tool -d all --magenta set dev:0 to rgb:0xff,0x00,0xff over 300 msec set dev:1 to rgb:0xff,0x00,0xff over 300 msec set dev:2 to rgb:0xff,0x00,0xff over 300 msec
ランダムで光らせる
--random=<val>
を加えると、ランダムな色で光ります。 <val>
は回数です
$ blink1-tool -d all -t 1000 --random=100
blink1-tool のそのほかの使い方
複数個使う場合に特化して書いてみましたが、基本的な光らせ方のパタンが他にもあります
blink
いわゆる明滅
$ blink1-tool --rgb=255,0,255 --blink=3 blink 3 times rgb:ff,0,ff:
glimmer
光が揺れる感じ。 mk2 は両面のLEDの位相をずらして使っている、気がする。
$ blink1-tool --rgb=100,50,200 --glimmer=10 glimmering 10 times rgb:#6432c8:
running
ちかちかいうやつ。 回数を指定しないとずーっとちかちか言います。 1回で0.5秒ほど。
$ blink1-tool --rgb=100,50,200 --running=3 running effect with 18 LEDs, color #6432c8
setpatline系
コマンドラインツールからも点滅パターンを保存して使うことが出来ます、が、どうも直感的でないので、派手なことをしたいときはControlアプリを使う方が良いかなぁ、と思います。一応メモだけ
公式トリック集(何故かwindows標準)
blink1/docs/blink1-mk2-tricks.md at master · todbot/blink1 · GitHubissuesで
setpatline
の使い方について議論された形跡
Make blink1-tool not report error on pattern save · Issue #93 · todbot/blink1 · GitHub
ハードウェア系
EEPROMを読むとか書くとかよくわかりません。
最後に
コマンドラインツールの使い方はmacでもWinでも同じなので、 Node.js で child_process.exec
で使うと使いやすいのでは、と思いました。 npm で node-blink1 も公開されてて、そっちではちゃんと linuxのhidをネイティブで叩いてたりして素敵な作りなんだけど、どうも手数が足りてない感じするので、どうせなら公式のコマンドラインツールで出来ることが全部出来るようにラップしてしまう方が便利かな、と思いました。
元気があれば、Processingのライブラリなんかも試してみたいです。ツヅク、、、かな、、、?