回路も作らずプログラムも書かずにLチカしてみた

日付:2017年12月24日 日曜日
テーマIIJ 2017TECHアドベントカレンダー,研究開発
執筆者doumae

IIJ 2017TECHアドベントカレンダー 12/24(日)の記事です】

IIJ 2017TECHアドベントカレンダーも最後の記事となりました。元々アドベントカレンダーはクリスマスを楽しみに待つための行事でしたので、最後の記事はクリスマスイブの日に公開となるのは当然です。と言うことで今回の記事はクリスマスネタです。
クリスマスと言えばチカチカした電飾が思い浮かびますね。電飾と言えば、LED。LEDと言えば……もう皆さんおわかりかと思います、Lチカです。

Lチカというのは、電子工作の入門記事で定番の「LEDをチカチカさせる(だけ)」の工作のことです。多くの場合、マイコンボードにLEDと数個の部品をつなげるだけ、極簡単なプログラムを書くだけで動かせますし、チカチカと点滅するLEDを見ていると「なんか動いている」という気分になれますので、新しく購入したマイコンボードの動作確認でもよくやることがあります。今回はクリスマスの電飾に引っかけてLチカさせて見ることを考えました。

しかし時の流れは残酷です。師走のバタバタした空気に流されているうちに、気がつくと締め切り前日の深夜。さすがにLチカとはいえ、いまから何か回路を組んで記事を書くというのは少々つらいのが本音です。せめて回路を組まずにLチカさせられれば……そんなことを考えながら手元を見ていると、ふと気がつきました。そこ(キーボード)にLEDがあるじゃないかと。

LinuxではホストにつながったLEDを操作するために、LED classが用意されており、sysfsからアクセスが可能です。早速見てみましょう。

今回はその辺に落ちてたRaspberryPiを使っていますが、最近のLinuxなら大抵どれでも動くと思います。

それっぽい雰囲気です。LEDを点灯してみます。

無事、ScrollLock LEDが点灯しました。しかし単にLEDが点灯しただけではさみしく感じます。でも安心してください、そんなときはtimer triggerを使うと簡単に点滅が実現できます。

 

何なら、点滅速度も変更できます。

 

他のLEDも点滅させてみましょう。

 

デスクの片隅に、ちょっぴり華やかな電飾ができましたね……できましたよね?ですが、どうしてでしょう、なんだかすこしわびしいのは。

そこでもうちょっと電飾を盛ってみたいと思います。ジャンク箱の中からこんなものを取りだしてきました。これは、昔一瞬だけ流行った、メールの着信をLEDのランプで通知するUSBガジェットです。(今でもeBayあたりで買えます)元々はWindows用のアプリが用意されているのですが、なんとLinux Kernel 4.9以降ではこういったUSB接続のLED(制御チップが載っているものに限る)も、hid-ledとしてsysfsから同様に扱えるようになっているのです。

USB端子に接続するとさっくりと認識しました。なぜか「Riso Kagaku Webmail Notifier」として認識されていますが、これが理想科学工業(株)の製品とはとても思えないのですが、今回は細かいことは気にしないことにします。

hid-ledは「Riso Kagaku Webmail Notifier」以外にもいくつかの製品に対応しています

 

再び/sys/class/ledsを見ると、”riso_kagaku1″として認識されていました。どうやらred/green/blueの三色のLEDが内蔵されているようです。早速点灯させてみましょう。

 

 

RGB三色を混ぜて使えるようです。8色表示のデジタルRGBですね。
適当にパラメータを調整して各色が表示できるようにしてみました。

随分と華やかになった気がします。ここまでくれば、クリスマスの電飾と言い切っても差し支えはないでしょう!

クリスマスのひとときを、華やかな電飾と一緒に過ごしていただくための参考になれば幸いです。