NeoPixelをesp32のボードを使って、artnet wifiにてtouch designerから制御し、ピクセルマッピングにて動作するように制作。
■準備
・LED NEO Pixel ws2812b
http://akizukidenshi.com/catalog/g/gI-07915/
今回は60粒のws2812bを使用。
・ESP32ボード
HiLetgo ESP32 ESP-32S NodeMCU開発ボード2.4GHz WiFi + Bluetoothデュアルモード
https://www.amazon.co.jp/gp/product/B0718T232Z/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1
・Aruduinoをインストール
https://www.arduino.cc
・Touch desingnerをインストール
https://derivative.ca
■環境
macOS Catalina 10.15.5
MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports)
2 GHz クアッドコアIntel Core i5
6 GB 3733 MHz LPDDR4
■手順
esp32にarduino IDEにて書き込み
1・ESP32をAruduinoIDEでの開発するためのセットアップ
VOUT(5V)、GND、IO4(GPIO4) を使用。
2・arduino IDEからライブラリマネージャーでartnet wifiとfastledを検索し、ライブリをダウンロード。
3・ボードマネージャーでESP32 Dev Moduleをダウンロード。
4・USBドライバをインストール
USB – UART ブリッジ VCP ドライバ|Silicon Labs
https://jp.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
5・arduinoのボードはESP32 Dev Moduleを選択し、シリアルポートは USBUARTとする。
6・サンプルコードを編集
Aruduinoのスケッチ例 ArtnetWifiFastLEDを開く。
下記のssidとpasswordを使用するwifiのものに変更。
// Wifi settings
const char* ssid = "ssid";
const char* password = "pAsSwOrD";
LED settingsを変更。dataPinを4に変更。
numLedsを使用するLEDの粒数に変更。今回は60粒に変更。
// LED settings
const int numLeds = 60; // CHANGE FOR YOUR SETUP
const int numberOfChannels = numLeds * 3; // Total number of channels you want to receive (1 led = 3 channels)
const byte dataPin = 4;
CRGB leds[numLeds];
7・AruduinoIDEでESP32に書き込み。
書き込みの際にはIODのボタンを押しENボタンを押して離す。転送始まったらIODのボタンを離す。
ここで、ハマった。。。これをやらないと書き込みエラー起こります。
参考:ESP32+Arduino 手動書き込み
http://systechw.com/blog_develop/blog_dev_20180415_1.html
8・touchdesigner のサンプルファイルを編集
下記からサンプルファイルを取得。
Intro to TouchDesigner for Pixel Mapping - Ben Voigt and Markus Heckmann
https://www.youtube.com/watch?v=ShYYcr30vJw
サンプルファイル
https://www.dropbox.com/sh/028zsv9zllj13oc/AACi0ZneUL42L8t99L1jkw_Sa?dl=0
DMXアウトをArtnetとし、マルチキャスト 255.255.255.255とする。
参考;ArtNet DMX で Lチカしてみた。(ESP8266/ESP32 + NeoPixel LED)
https://qiita.com/kitazaki/items/fb3f6e6f5b007b8c3b54
参考;touchdesigner
Intro to TouchDesigner for Pixel Mapping - Ben Voigt and Markus Heckmann
https://www.youtube.com/watch?v=ShYYcr30vJw
サンプルファイル
https://www.dropbox.com/sh/028zsv9zllj13oc/AACi0ZneUL42L8t99L1jkw_Sa?dl=0