I have a USB driver on an embedded system and I am pushing into the port 32k of data. However, when I read the data using pyserial it splits the data into 4k packets. It is a usb 2.0 and I don't want to recompose the data.
here's how I am reading the data:
data = serial.read(1)
data += serial.read(serial.inWaiting())
if (len(data) > 32):
header_size = int(32)
data_header = data[:header_size]
#just show the first 32 characters of the data
print("Packet size = " + str(len(data)) + "\n")
print(str(data_header) + "\n")
output:
Packet size = 4096
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
Packet size = 4096
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
Packet size = 4096
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
Packet size = 4096
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
Packet size = 4096
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
Packet size = 4096
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Packet size = 4096
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Packet size = 4096
GGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG
It is a driver limitation or pyserial is splitting the data? Can this be configured?
thank you.