2

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.

sloth
  • 99,095
  • 21
  • 171
  • 219
gmmo
  • 2,577
  • 3
  • 30
  • 56
  • 1
    Can this help? https://stackoverflow.com/questions/12302155/how-to-expand-input-buffer-size-of-pyserial – Samuel Aug 30 '18 at 08:02

0 Answers0