Skip to content

Commit 4467ffe

Browse files
author
brentru
committed
switch to wait for sncr to clear?
1 parent 406c7fb commit 4467ffe

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

adafruit_wiznet5k/adafruit_wiznet5k.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -512,17 +512,24 @@ def socket_connect(self, socket_num, dest, port, conn_mode=SNMR_TCP):
512512

513513
if conn_mode == SNMR_TCP:
514514
# TCP client - connect socket
515-
self._write_sncr(socket_num, CMD_SOCK_CONNECT)
516-
self._read_sncr(socket_num)
515+
self._send_socket_cmd(socket_num, CMD_SOCK_CONNECT)
517516
# wait for tcp connection establishment
518517
while self.socket_status(socket_num)[0] != SNSR_SOCK_ESTABLISHED:
518+
if self._debug:
519+
print("STATUS:", self.socket_status(socket_num)[0])
519520
if self.socket_status(socket_num)[0] == SNSR_SOCK_CLOSED:
520521
raise RuntimeError('Failed to establish connection.')
521522
time.sleep(1)
522523
elif conn_mode == SNMR_UDP:
523524
UDP_SOCK['bytes_remaining'] = 0
524525
return 1
525526

527+
def _send_socket_cmd(self, socket, cmd):
528+
self._write_sncr(socket, cmd)
529+
while self._read_sncr(socket) != b'\x00':
530+
if self._debug:
531+
print("waiting for sncr to clear...")
532+
526533
def get_socket(self, sockets):
527534
"""Requests, allocates and returns a socket from the W5k
528535
chip. Returned socket number may not exceed max_sockets.

0 commit comments

Comments
 (0)