WIZnet Developer Forum

Wizfi210 에서 UDP Boardcast 와 tcp 동시 사용에 대한 문의입니다

Wizfi210 에서 UDP Boardcast 를 사용하고 있습니다.
멀티커넥션으로 TCP 도 사용하고 싶은데 문서를 보면
멀티커넥션 상태에서의 통신은 Command 모드에서만 가능하다고 하는데
Command 모드에서 UDP Boardcast + TCP Server 혹은 UDP Boardcast + TCP Client 가 가능한가요??

테스트 해 본 결과로는 UDP Boardcast 가 AT+NAUTO=0,0,192.168.0.255,5000 과 같이
AT+NAUTO 명령어를 사용하여 Data 모드에서만 되는것 같았습니다.
AT+NCUDP 명령어로는 Boardcast 가 되지 않는 것 같았는데 테스트결과가 맞는지도 궁금합니다.

답변 부탁드립니다!!

Command mode상에서 와 모두 운용이 가능합니다.

at+nstcp, at+nsudp를 이용하여 소켓을 연결하시고,
TCP는 SE 를 이용하여 데이터를 전송하고,
UDP는 U::E 를 이용하여 데이터를 전송하시기 바랍니다.

즉, UDP CID가 2이고, 보낼 데이터가 "Hello"라고 하면,
U2192.168.1.255:4000:HelloE
라고 데이터를 보내시면 됩니다.

UDP 브로드 캐스트를 사용하려면 at+nsudp 가 아니라 at+ncudp 를 사용해야되지 않나요??
현재 연결된 AP 의 IP 주소가 192.168.0.4 라고 하면 브로드캐스트 IP 는 192.168.0.255 가 될텐대요
at+nsudp 로는 IP 지정을 하지 못하고 포트지정만 할 수 있어서 브로드캐스트로 사용할 수 없을 것 같은대요
위와 같은 방법으로 ncudp 를 사용하는 것인지 nsudp로 해야되는 것인지 궁금합니다.

at+nsudp 로 UDP 브로드캐스트가 가능하다면
할 수 있는 AT Command Set 을 알려주시면 감사드리겠습니다.
현재 사용하고 있는 AT Command Set 은 다음과 같습니다.
DHCP 를 사용해야 되는 환경에서 AP 접속한 후 브로드캐스팅을 설정하고 있습니다.

at
at+wd
at+wm=0
at+ndhcp=1
at+wwpa=xxxxxxxx
at+wa=genes007
at+nauto=0,0,192.168.0.255,5000
ata2

특정 IP와의 Connection이 이루어지지 않는 UDP 특성상 UDP로 전송할 때에는 Destination IP/Port를 지정할 수 있습니다.
즉, AT+NSUDP로 소켓을 만들고, 데이터를 전송할 때마다 <192.168.1.255:4000> 형태로 매번 Destination을 지정할 수 있습니다.

단, 이 때에는 (at+nauto 명령을 이용하는) Auto connection(data mode)를 사용하실 수는 없습니다.

udp broadcast를 사용하는 예를 말씀 드리면, 아래와 같습니다.

(1) udp broadcast socket 하나만 이용하는 경우
at+wd
at+wm=0
at+ndhcp=1
at+wwpa=xxxxxxxx
at+wa=genes007
at+nsudp=4000

  • 같은 subnet의 PC에 UDP program을 띄움
    U0192.168.1.255:4000:HelloE (UDP Socket ID : 0)
  • 이 때, UDP program에서 "Hello"를 수신하게 됨


(2) tcp server와 udp broadcast socket 두 개를 이용하는 경우
at+wd
at+wm=0
at+ndhcp=1
at+wwpa=xxxxxxxx
at+wa=genes007
at+nstcp=4000
at+nsudp=4000

  • 같은 subnet의 PC에 UDP program을 띄움
    U1192.168.1.255:4000:HelloE (UDP Socket ID : 1)

(2)의 예제에서도, UDP Socket ID(CID)가 1이라는 점을 제외하고는 (1)의 예제와 동일합니다.

를 이용한 데이터 전송은 매뉴얼 등을 참조하시기 바랍니다.

답변 감사드립니다!! 확인해보도록 하겠습니다.

하나 더 질문 드리도록 하겠습니다.
at+nsudp 로 열어서 브로드캐스트 메세지를 송신할 수 있는 건 알겠는데
브로드 캐스트 메세지를 수신할수도 있는건가요??

UDP 브로드캐스트 사용 시 송수신이 전부 되어야하는 형태로 작업 중이라서
수신 부분도 중요한데요, 다른 기기에서 192.168.0.255 형태로 브로드캐스트로 메세지를
날리는 걸 wizfi210 에서 받을수 있어야 합니다.

해당 내용에 대한 답변 부탁드립니다.

네. 가능합니다.

PC의 UDP Program이 Broadcast로 패킷을 보내면 WizFi210에서 수신이 가능합니다.
아래의 그림은 PC의 UDP Program이 "ZZZZZ"라는 데이터를 Broadcast로 전송하고, WizFi210이 이를 수신하는 모습입니다.


답변 감사드립니다!!

Copyright © 2017 WIZnet Co., Ltd. All Rights Reserved.