Skip to content

Commit 8f964cc

Browse files
authored
Merge pull request #29 from martymcguire/mm-chunk-socket-sends
Chunk buffer sends into 64 byte chunks
2 parents a23026d + 9cade63 commit 8f964cc

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

adafruit_esp32spi/adafruit_esp32spi.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -560,11 +560,14 @@ def socket_write(self, socket_num, buffer):
560560
if self._debug:
561561
print("Writing:", buffer)
562562
self._socknum_ll[0][0] = socket_num
563-
resp = self._send_command_get_response(_SEND_DATA_TCP_CMD,
564-
(self._socknum_ll[0], buffer),
565-
sent_param_len_16=True)
563+
sent = 0
564+
for chunk in range((len(buffer) // 64)+1):
565+
resp = self._send_command_get_response(_SEND_DATA_TCP_CMD,
566+
(self._socknum_ll[0],
567+
memoryview(buffer)[(chunk*64):((chunk+1)*64)]),
568+
sent_param_len_16=True)
569+
sent += resp[0][0]
566570

567-
sent = resp[0][0]
568571
if sent != len(buffer):
569572
raise RuntimeError("Failed to send %d bytes (sent %d)" % (len(buffer), sent))
570573

0 commit comments

Comments
 (0)