IPからDMX機器を制御できるENTTEC社のODE MK2の後継機となるODE MK3が出ました。
アカリセンターさんにデモ機を貸していただきましたので、検証してみたいとおもいます。
ENTTEC(エンテック) ODE-MK3 DMXイーサネットコンバーター 512×2 POE/DC 70407 ODE アカリセンターの公式通販サイト
セットアップ
工場出荷状態ではDHCPになっているのですが、うまくIPアドレスが振られていないと、192.168.0.10になっているので、ネットワークで見つからないときはサブネットをあわせて192.168.0.10とブラウザに入力し設定画面を表示させます。
まずは、Settingsタブを開き、Network Settingをおこないます。
Port1とPort2の設定はこちら。私はどちらもDMX Outputにして、Universeを1と2,ProtocolはsACNにしました。
Firmwareはこちら。オンラインアップデートは無いようなので、ENTTECのサイトから最新のFirmWareをダウンロードします。
DMX Ethernet interface ODE MK3 | ENTTEC : ENTTEC
こちらのサイトを開き、
Firmwareをダウンロード。
ダウンロードしたファイルを選びUpdateします。
1.5にバージョンアップされました。
Node-REDでの基本操作
Node-REDでENTTEC ODE MK3にsACNを送るには、
node-red-contrib-sacn (node) – Node-RED
こちらのライブラリを使用します。
まずは、こちらのフローをつくります。
Injectノードには、数値で明るさの値を200と0をつくります。
sACNノードは、まずはServerを新しく追加します。
ここには、ODE MK3のIPアドレス(今回は192.168.1.80)を入力してUpdate(更新)。
UniverseとChannelをいれます。
今回は、Universe 1、Channel 1としました。
私はRGBWのLEDテープライトを、Ch1 赤、Ch2 緑、Ch3 青, Ch4 白としているので、
このようにCh1にある赤のテープライトが点灯したり、消灯したりします。
Node-REDでの操作 UniverseとChを指定して送る
次はこれをやります。
functionノードの中に、universe、channel、valueをいれます。
sACNノードは、UniverseとChannelを空欄にします。
[{"id":"41f8617ca7424823","type":"inject","z":"be15c556925e0f3a","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"200","payloadType":"num","x":370,"y":220,"wires":[["aaf7a87be129e96b"]]},{"id":"b5fd75148f6bf6a6","type":"sACN","z":"be15c556925e0f3a","server":"a5bfa18a617588eb","universe":"","channel":"","transition":"instant","transitionRate":50,"transitionTime":1000,"name":"","x":700,"y":360,"wires":[]},{"id":"bef4fddc663e3982","type":"inject","z":"be15c556925e0f3a","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"0","payloadType":"num","x":370,"y":320,"wires":[["aaf7a87be129e96b"]]},{"id":"aaf7a87be129e96b","type":"function","z":"be15c556925e0f3a","name":"","func":"var value = msg.payload;\n\n\nmsg.payload = {\n \"universe\": 1,\n \"channel\": 1,\n \"value\": value\n}\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":580,"y":260,"wires":[["b5fd75148f6bf6a6"]]},{"id":"a5bfa18a617588eb","type":"sacn-config","hostOrUniverse":"192.168.1.80","port":"5568"}]
Node-REDでの操作 複数CHにデータを送る
次は複数のChにデータを送ります。
200の方のfunctionノードはこのようにします。0の方は200を0にするだけです。
ちなみに、functionノードをこのように変更すれば、
このようにシンプルにできます。
[{"id":"41f8617ca7424823","type":"inject","z":"be15c556925e0f3a","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"200","payloadType":"num","x":370,"y":180,"wires":[["aaf7a87be129e96b"]]},{"id":"b5fd75148f6bf6a6","type":"sACN","z":"be15c556925e0f3a","server":"a5bfa18a617588eb","universe":"","channel":"","transition":"instant","transitionRate":50,"transitionTime":1000,"name":"","x":660,"y":280,"wires":[]},{"id":"bef4fddc663e3982","type":"inject","z":"be15c556925e0f3a","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"0","payloadType":"num","x":370,"y":260,"wires":[["aaf7a87be129e96b"]]},{"id":"aaf7a87be129e96b","type":"function","z":"be15c556925e0f3a","name":"","func":"var value = msg.payload;\n\nmsg.topic = \"1/1\";\n\n\nmsg.payload = [value,value,value];\n\n\nreturn msg;","outputs":1,"noerr":0,"initialize":"","finalize":"","libs":[],"x":540,"y":220,"wires":[["b5fd75148f6bf6a6"]]},{"id":"a5bfa18a617588eb","type":"sacn-config","hostOrUniverse":"192.168.1.80","port":"5568"}]