[WIZ550S2E] 관련 문의
Serial-to-Ethernet & ConfigTool
No replies yet. Be the first to reply.
Join the discussion.
Serial-to-Ethernet & ConfigTool
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: [WIZ550S2E] 관련 문의
by Kei ·
안녕하세요.
각 질문에 대해 답변 드립니다.
Client는 주기적으로 Server에 연결을 시도하는 것이 일반적입니다.
만약 특정 외부 인터럽트(버튼 등)에 의해서만 연결을 시도하시길 원하시거나
최초 부팅 후 일정 시간이 흐른 뒤에 연결 시도하기를 원하신다면, 펌웨어를 직접 수정하셔야 합니다.
최대 Data길이라는 것이 어떤것을 말씀하시는 건가요?
한번에 보낼 수 있는 최대 패킷의 길이를 말씀하시는 거라면, 표준 Protocol에 의하여 Ethernet Packet 기준 1500바이트입니다.
버퍼 자체는 1Kbyte이며, 링버퍼로 동작하고 있습니다.
추가로, Socket Size를 어떻게 설정하시느냐에 따라 한번에 최대로 받거나 보낼 수 있는 데이터 크기가 정해집니다.
이 경우 역시 펌웨어를 직접 수정하셔야 합니다. (기본 소켓 사이즈는 2Kbyte)
AT Command로는 해당 명령이 없습니다.
ConfigTool을 사용하여 변경할 수 있습니다.
즉, +++ 전후 500ms 시간 안에 데이터가 있다면 일반 데이터로 인식합니다.
예를 들어, “++++++++++++++++++++++++++++++” 라는 데이터를 한번에 전송하면 데이터로 인식하고
“abcd+++” 라고 한번에 전송해도 데이터로 인식합니다.
앞뒤(500ms 안으로) 전송 없이 "+++(3byte)"만 단독으로 보낼 시 커맨드모드 트리거로 인식합니다
혹은 ConfigTool을 사용하여 AT Command를 Disable시킨 상태로 사용하여야 합니다.
감사합니다.
RE: [WIZ550S2E] 관련 문의
by thkim ·
답변 감사합니다.
추가로 문의 드립니다.
AT Mode에서 Data Mode로 전환 후 바로 Data를 전송할 경우 서버 측에서 Data를 수신하지 못하는 경우가 있습니다.
그래서 delay를 500ms 정도 주면 어느 정도 개선이 되는 것 같은데요.
AT Mode에서 Data Mode로 전환시 Delay를 최소 얼마 이상 줘야 하는지요?
반대로 Data Mode에서 AT Mode로 전환시에도 Delay가 필요한지요?
답변 부탁드리겠습니다.
RE: [WIZ550S2E] 관련 문의
by Kei ·
먼저, AT Mode에서 "AT+MDATA"명령어로 Data Mode로 전환시에 걸리는 시간은 <1ms 입니다.
500ms 딜레이의 경우, 문의주신 분께서 모듈을 Client로 사용하고 있기때문에 발생하는 시간이며,
이는 네트워크 상황마다 다릅니다.
만약 데이터를 바로 전송해야 하는 경우라면, 소켓 상태가 Establish인지 체크하고 진행하는 것이 일반적입니다.
마찬가지로, Data Mode에서 AT Mode로 전환하는 경우에도 <1ms 시간이 소요됩니다.
다만 이 경우는 AT Command가 정상적으로 인식되어 Trigger로써 인식되었을 때에 걸리는 시간입니다.
감사합니다.
RE: [WIZ550S2E] 관련 문의
by thkim ·
네 답변 감사드립니다.
말씀하신대로 Client 로 동작을 하고 있는데요, 말씀하신 Establish 체크는 어떻게 하는 건지요?
저희가 AT Command 를 통해서만 제어를 해야 하기에 AT Command로 Establish 체크 하는 방법을 알려 주시면 감사하겠습니다.
RE: RE: [WIZ550S2E] 관련 문의
by Kei ·
포럼 이전 시, 메일로 답변 드린 내용을 아래와 같이 기록합니다.
우선 사용하시면 되는 AT커맨드는 AT+NSOCK? 입니다.
간단한 예시를 보여드리기 위해 아래와 같이 화면 첨부하였으며,
상이한 차이점을 통해 Establish를 상태를 확인할 수 있습니다.
위에서 볼드체 부분은 각각 목적지(서버) IP, Port번호입니다.
즉, AT+NOPEN 명령을 통해 지정한 정보가 출력되어야 합니다.
Establish가 안되었다면 NOPEN명령을 주었더라도 아래와 같이 목적지 네트워크 정보를 반환하지 못합니다.
다만, 연결된 상태에서 서버가 Listen상태를 해제한 뒤 바로 체크할 경우에는 Establish되어 있다고 판단할 수 있으므로 이점 유의하여 사용하시길 바랍니다.
( 상호 Disconnect 하는 상황에서 발생하는 정상적인 현상입니다 – TCP/IP )
RE: [WIZ550S2E] 관련 문의
by Kei ·
추가로,
만약, 코드 수정이 가능하시다면, 레지스터를 통해 Establish상태를 확인할 수 있습니다.
바로 아래의 함수를 사용하시면 해당소켓(sock)의 상태(SO_STATUS)를 특정 변수(&sock_state)에 받아올 수 있습니다.
그리고 아래와 같은 방식으로 비교하여 Established 상태를 확인할 수 있습니다.
이 방식은 S2E.c 에서 그 용례를 확인하실 수 있습니다.
( Github 코드 기준 620라인부터~ )
위 함수 내부로 들어가시면 레지스터값을 직접 읽어오는 내용이 있으니,
함수를 사용하고 싶지 않으시다면 참조하시길 바랍니다.