Hi, RoSchmi. XMODEM is a rather old and slow protocol, and the overhead is related to the chosen data packet size. The official standard accommodates packet sizes of 128 or 1024 bytes. You can override this by specifying a custom value for “Packet128NominalSize” (if using XModem-Classic or XModem-CRC) or “Packet1024NominalSize” (if using XModem-1K). Theoretically, larger packet sizes should reduce the overhead and result in higher throughput.
Here’s some performance data I collected by transferring a file between a PC and a G120 and measuring the time required to finish the file at 115200 baud. You will notice that the file transmission from the G120 to the PC does not improve much with increasing packet sizes and actually gets worse later on. I think this might be due to memory limitations on the G120. The PC to G120 times also hit a wall, likely due to the bottleneck imposed by a 115200 serial baud rate. Using a higher baud rate will likely improve those times.
File Size = 331776 Bytes
“XModem-1K” Packet Size = 1024 Data Bytes
PC to G120 = 42.6705599 sec
G120 to PC = 69.5956203 sec
“XModem-1K” Packet Size = 4096 Data Bytes
PC to G120 = 38.2124109 sec
G120 to PC = 62.2301480 sec
“XModem-1K” Packet Size = 8192 Data Bytes
PC to G120 = 38.8360436 sec
G120 to PC = 78.7747362 sec
“XModem-1K” Packet Size = 16384 Data Bytes
PC to G120 = 38.2297193 sec
G120 to PC = 87.9607345 sec