ESP32 Arduino: Unity と Arduino間のUDP通信

Arduino開発

UnityとArduinoのUDP通信がうまくいかない

Windows10上のUnity(2019.1.3f1)とArduino ESP32間をUDP通信しようとしたところ,Processingなど他のアプリケーションで動作したものの,Unityのみ通信できませんでした。

結果,Windowsファイアウォール設定で接続拒否されていたことが原因でした。

以下の手順で,Unity上での通信が許可できました。

① コントロールパネル→システムとセキュリティ→WindowsDefender ファイアウォール設定→詳細設定より,インストールしたUnityのバージョンとファイアウォールの状態を確認。

② 接続がブロックされていたら,「接続を許可する」を選択してOK。

(特にファイアウォール設定を変更していないので,Unityを最新に更新したときに自動的にブロックされていたようです。)

 

・Processingによる動作確認

UDPポート(8888番)の受信のみを確認l。

import oscP5.*;
import netP5.*;

OscP5 oscP5;
int receivePort = 8888;

void setup() {
  size(100, 100);
  frameRate(60);
  oscP5 = new OscP5(this, receivePort);
}

void draw() {
  background(0);
}

void oscEvent(OscMessage theOscMessage) {
  print(" addrpattern: "+theOscMessage.addrPattern());
  println(" typetag: "+theOscMessage.typetag());
  theOscMessage.print();
}

コメント

タイトルとURLをコピーしました