KNX ホーム システムを制御するアプリケーションを C# で開発しています。それで、私はソフトウェア ETS3Demo を使用しました。ソフトウェア Wireshark を使用すると、ETS3 から KNX/IP インターフェイスに送信された IP データグラムを「見る」ことができました。
「Connection_Request」、「ConnectionState_Request」、および「Disconnect_Request」はすでに成功しています。つまり、リクエスト データグラムを送信すると、KNX/IP インターフェイスが応答します。
頭を悩ませている唯一のリクエストは「Tunnelling_Request」です。以前のデータグラムを送信したのとまったく同じ方法で情報を送信しましたが、これはうまくいかないようです。
次のコードでわかるように、データグラムを「バイト単位で」送信します。
byte[] byteToSend1 = { 06, 16, 04, 32, 00, 21, 04 };
string communicationChannel = ComunicationChannelNum.Text;
byte bytesnew = Convert.ToByte(communicationChannel);
byte[] byteToSend2 = { 00, 00, 17, 00, 188, 224, 00, 00, 09, 01, 01, 00, 129 };
writer.WriteBytes(byteToSend1);
writer.WriteByte(bytesnew);
writer.WriteBytes(byteToSend2);
ソースアドレスとグループアドレスに対応するバイトを「int」変数に変更しましたが、まだ機能しません。
誰かが私に提案や私が間違っているかもしれないことを教えてもらえますか.
ありがとう