NefryBTでフルカラーテープLEDを動かすメモ

ようやく私もテープLEDをしっかり使う機会ができまして、NefryBTでテープLEDをひとまず光らせたメモです。

こちらを購入しました。

フルカラーシリアルLEDテープ(1m) – スイッチサイエンス

スイッチサイエンス マガジンのフルカラーシリアルLEDテープを光らせてみた。記事を参考に、進めていきました。

工作してつなげる

image

ハンダづけはそれほど得意ではないですが、目的のためならやむを得ません。

刻印されている矢印で電気の流れる方向をよく見ながらIN側にコードと役割を色に合わせてハンダ付けをします。とりつけたものは、NefryBTのピンヘッダに刺さるようオスピンです。

image

今回はD2で信号を流すようにします。このように、D2・GND・3.3Vにつなぎました。5Vじゃないとダメかと思ったんですが、3.3Vで無事動きました。

このあたりは、以前、明星和楽2016の制作で、篠原さんが、WEB情報で色を変えられる光るネコミミカチューシャをESP8266の段階で作られていた一部始終を、間近で見てたので安心して作ることが出来ました。

ありがとうございます。

Arduinoプログラム

adafruit/Adafruit_NeoPixel: Neo Pixels! からzipダウンロードして、Arduinoにライブラリを読み込みました。

ソースコードはシンプルなものだったので、Arduino IDEのNeoPixelサンプルのsimpleというものを調整して使用しました。

image

ソースコードは以下です。

#include <Nefry.h>
#include <Adafruit_NeoPixel.h>

// 動かすPIN
#define PIN            D2

// 光らせるLEDの数
#define NUMPIXELS      59  // 100cmで60個

// NeoPixel設定
Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int delayval = 50; // 点灯していく秒数

void setup() {
  pixels.begin();
}

void loop() {
  for(int i=0;i<NUMPIXELS;i++){
    pixels.setPixelColor(i, pixels.Color(0,0,255));
    pixels.show();
    delay(delayval);
  }
}

動かしてみる

モバイルバッテリーをつないでコンパクトにしてスイッチをONにします!

無事動きました。50msecごとに次々と点灯するアクションよいですね。

ハマリポイント:ピン挿しD1・D0でどうも光らなかった

実は、デジタルピンのどこでも大丈夫かと思ったんですが、相性が悪いピンで最初テストしてしまってうまく動かなかったです。

image

こんな感じで光りっぱなしになっている現象。指示は通っているのかな???

おそらくNefryBTが悪いわけでなく、ESP32のピンごとの特性にあっていない感じなので、試行錯誤の末、D2にしました。

また、途中、ESP32: NeoPixel: WS2812 カラーLEDの利用という先行してESP32で試された方の記事を参考に27番ピンで動かすことがわかったので、NefryBTで読み替えてA4ピンでも動かすことを確認しています。

なお、D0はもっとおもしろヤバい光り方をするのですが、本来の用途でない動きなので、公開は控えておきますw

余談:1m 60個のを買ったのになぜ59の指定なのか

また、ソースコードで気づいたかと思いますが、1m 60個のLEDがついているものを買ったのに、なぜ59の指定なのか。

image

これは、矢印をしっかり確認せず、はじめは逆にくっつけてたからですね。一切点灯しなかったために、1個だけムダにしてしまったんですね・・・。ごめんなさい。

ということで「刻印されている矢印で電気の流れる方向をよく見ながらIN側にコードと役割を色に合わせてハンダ付け」することを繰り返しお伝えしておきます!

これができると、ネットワークと連動した明かりのインタラクションが作れたり、とにもかくにも、視覚的に眩しいくらいのインパクトがあるので、いろいろと応用できそうです。

なにより、NefryBTで、素直に動きますし、Raspberry PiやArduino UNOの仕組みと比べてコンパクトになるのがとてもいいですね。

それでは、よき テープLED & NefryBT Life を!