STM32-H405 USB FS only <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
  69 - throughput min/avg/max [kBs]: 542.7/576.4/583.2
 392 - throughput min/avg/max [kBs]: 486.3/576.4/583.2
 914 - throughput min/avg/max [kBs]: 485.9/576.2/583.2
1108 - throughput min/avg/max [kBs]: 485.9/576.3/583.2

485,9	576,3	583,2



STM32-H405 USB HS only + ULPI PHY HS (USB3300) <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
  61 - throughput min/avg/max [kBs]: 434.1/561.2/584.2
 119 - throughput min/avg/max [kBs]: 434.1/566.5/584.2
 251 - throughput min/avg/max [kBs]: 434.1/569.5/584.2
 534 - throughput min/avg/max [kBs]: 431.8/568.6/584.2
 
431,8	568,6	584,2


STM32-H405 USB FS / HS + ULPI PHY HS (USB3300) <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
  72 - throughput min/avg/max [kBs]: 447.4/573.4/584.1
 126 - throughput min/avg/max [kBs]: 432.1/570.6/584.2
 307 - throughput min/avg/max [kBs]: 432.1/565.6/584.2
 515 - throughput min/avg/max [kBs]: 431.6/565.1/584.2

431,6	565,1	584,2


STM32-H405 USB FS only <-->
i7-3770 @ 3.5GHz Windows 7, USB HS, Eclipse/Terminal Serial
 173 - throughput min/avg/max [kBs]: 582.0/582.7/584.6
 279 - throughput min/avg/max [kBs]: 582.0/582.7/584.6
 
582,0	582,7	584,6


STM32-H405 USB HS only + ULPI PHY HS (USB3300) <-->
i7-3770 @ 3.5GHz Windows 7, USB HS, Eclipse/Terminal Serial 
  35 - throughput min/avg/max [kBs]: 584.1/584.1/586.1
 110 - throughput min/avg/max [kBs]: 580.1/584.0/586.1
 171 - throughput min/avg/max [kBs]: 580.1/584.0/586.1

580,1	584,0	586,1

 
STM32-H405 USB FS / HS + ULPI PHY HS (USB3300) <-->
i7-3770 @ 3.5GHz Windows 7, USB HS, Eclipse/Terminal Serial 
  90 - throughput min/avg/max [kBs]: 580.0/583.9/586.1
 176 - throughput min/avg/max [kBs]: 580.0/583.9/586.1
 233 - throughput min/avg/max [kBs]: 580.0/583.9/586.1
 
580,0	583,9	586,1

changed
from: count += chSequentialStreamWrite(chp, buf, sizeof buf);
to:   count += chSequentialStreamWrite(chp, buf, sizeof buf - 1);
  62 - throughput min/avg/max [kBs]: 581.0/583.9/586.1
 131 - throughput min/avg/max [kBs]: 581.0/584.0/586.1
 202 - throughput min/avg/max [kBs]: 581.0/584.0/586.1



STM32-H405 USB HS only + ULPI PHY HS (USB3300) <--> USB-4232-HUB <-->
i7-3770 @ 3.5GHz Windows 7, USB HS, Eclipse/Terminal Serial 
  57 - throughput min/avg/max [kBs]: 508.9/509.8/511.4
 151 - throughput min/avg/max [kBs]: 507.3/509.8/511.4
 
507,3	509,8	511,4


STM32-H405 USB HS only + ULPI PHY HS (USB3300) <--> USB-4232-HUB <-->
i7-3770 @ 3.5GHz Windows 7, USB HS, Serial <--> 
VMWare 8 Ubuntu 14.4 (LTS) screen ttyACM
 105 - throughput min/avg/max [kBs]: 293.8/438.0/514.0
 201 - throughput min/avg/max [kBs]: 82.4/431.6/514.00

  
STM32-H405 USB HS only + ULPI PHY HS (USB3300) <-->
MacBook Pro 15", Core 2 Duo @ 2.4GHz, OSX 10.9.5, CoolTerm
 196 - throughput min/avg/max [kBs]: 27.4/45.1/63.8
 277 - throughput min/avg/max [kBs]: 27.4/45.1/63.8
 315 - throughput min/avg/max [kBs]: 27.4/45.1/63.8



STM32-H405 USB FS / HS + ULPI PHY HS (USB3300) <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0 > /dev/null &
  61 - throughput min/avg/max [kBs]: 584.1/584.1/585.5
 114 - throughput min/avg/max [kBs]: 584.1/584.1/585.5
 
 584,1	584,1	585,5
 
use & to detach from console and stop it:
	echo -ne '\r' > /dev/ttyACM0
	killall -9 cat
 


STM32-H405 USB FS only <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0 > /dev/null &
  26 - throughput min/avg/max [kBs]: 582.5/583.1/584.5
  74 - throughput min/avg/max [kBs]: 582.0/583.0/584.5

 220 - throughput min/avg/max [kBs]: 382.5/552.2/583.0 ??????????????????????


582,0	583,0	584,5


STM32-H405 USB HS only + ULPI PHY HS (USB3300) <-->
a20-Lime2-SOM Linux 3.4.79+, USB HS/1GB Eth, screen/sshd <--> 
i7-3770 @ 3.5GHz Windows 7, 1GB Eth, Eclipse/Terminal ssh
echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0 > /dev/null &
  30 - throughput min/avg/max [kBs]: 584.1/584.1/585.5
  70 - throughput min/avg/max [kBs]: 584.1/584.1/585.5

584,1	584,1	585,5


to start test without echo
	echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0 > /dev/null &
	echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM1 | cat /dev/ttyACM1 > /dev/null &
 
use & to detach from console and stop it:
	echo -ne '\r' > /dev/ttyACM0
	echo -ne '\r' > /dev/ttyACM1
	killall -9 cat
	ps -A | grep cat

Start:
	echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0
	echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM0 | cat /dev/ttyACM0 > /dev/null &
	echo -ne '\r\n\r\nwrite\r' > /dev/ttyACM1 | cat /dev/ttyACM1 > /dev/null &
Stop:
	echo -ne '\r' > /dev/ttyACM0 | killall -9 cat
	echo -ne '\r' > /dev/ttyACM1 | killall -9 cat
	
	screen /dev/ttyACM0
	screen /dev/ttyACM1
	^a-d - to stop screen 
	^A + \ - To kill all screen session press 
	killall -9 screen
	ps -A | grep screen


ChibiOS starting ... OK.
   5:SDU1 - throughput min/avg/max [kBs]: 584.8/584.8/584.8
  10:SDU1 - throughput min/avg/max [kBs]: 584.4/584.6/584.8
  15:SDU1 - throughput min/avg/max [kBs]: 584.4/584.6/584.8





ch> info
Kernel:       3.1.0
Compiler:     GCC 4.9.3 20150529 (prerelease)
Architecture: ARMv7E-M
Core Variant: Cortex-M4
Port Info:    Advanced kernel mode
Platform:     STM32F407 High Performance with DSP and FPU
Board:        Olimex STM32-H405 with USB3300
Build time:   Nov 21 2015 - 21:12:12
ch> threads
    addr    stack prio refs     state name
20001268 2000077C   64    1  SLEEPING main
20001308 200013BC    1    1     READY idle
20002330 2000244C    2    1 SUSPENDED usb_lld_pump
20002518 20002634    2    1 SUSPENDED usb_lld_pump
20001C20 20001D2C   64    1  SLEEPING blinker
200026F8 20002E74   67    1   CURRENT shell
20002FE8 200037D4   65    1    QUEUED shell
200038D8 200040C4   66    1    QUEUED shell
ch> mem
core free memory : 114240 bytes
heap fragments   : 0
heap free total  : 0 bytes

info obtained by usb-devices

USB HS & ULPI:	
T:  Bus=02 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 36 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0483 ProdID=5740 Rev=02.00
S:  Manufacturer=STMicroelectronics
S:  Product=ChibiOS/RT Virtual COM Port
S:  SerialNumber=310B
C:  #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm

USB FS:
T:  Bus=05 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 70 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=02(commc) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=0483 ProdID=5740 Rev=02.00
S:  Manufacturer=STMicroelectronics
S:  Product=ChibiOS/RT Virtual COM Port
S:  SerialNumber=310A
C:  #Ifs= 2 Cfg#= 1 Atr=c0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=02(commc) Sub=02 Prot=01 Driver=cdc_acm
I:  If#= 1 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm
	
	
Data chain: SDU1 -> Linux -> screen -> ssh -> PuTTY (with visualization)
steady if start write command in a few seconds after running screen
after stopping write command in a few seconds shell stops to communicate
 	
ChibiOS starting ... OK.
SDU1 Throughput [kBps] vs time [sec]:
           cur     max     min     avg
     5   579.3   579.3   579.3   579.3
    10   583.7   583.7   579.3   581.5
    15   579.5   583.7   579.3   580.9
    20   583.4   583.7   579.3   581.5
    25   583.3   583.7   579.3   581.9
    30   569.8   583.7   569.8   579.8
 .....
 34741   577.6   584.7   517.8   577.5
 34746   584.5   584.7   517.8   577.5
 34751   571.6   584.7   517.8   577.5
 34756   580.9   584.7   517.8   577.5
 34761   577.0   584.7   517.8   577.5
 34766   584.2   584.7   517.8   577.5
 34771   567.1   584.7   517.8   577.5
 34776   580.2   584.7   517.8   577.5
 34781   568.7   584.7   517.8   577.5
 34786   580.1   584.7   517.8   577.5


Data chain: SDU1 -> Linux -> cat -> /dev/null (without visualization)
almost always is observed speed degradation and freezing after some time
can be restarted if cat command is killed and restarted
speed degradation and freezing after some time will occur again
only once was observed steady communication for hours after a few restart cycles 
 	
ChibiOS starting ... OK.
SDU1 Throughput [kBps] vs time [sec]:
           cur     max     min     avg
     5   582.5   582.5   582.5   582.5
    10   584.5   584.5   582.5   583.5
    15   584.5   584.5   582.5   583.9
    20   584.5   584.5   582.5   584.0
    25   584.7   584.7   582.5   584.2
    30   584.7   584.7   582.5   584.2
    35   584.7   584.7   582.5   584.3
    40   584.5   584.7   582.5   584.3
    45   584.5   584.7   582.5   584.3
    50   584.4   584.7   582.5   584.4
    55   584.5   584.7   582.5   584.4
    60   584.5   584.7   582.5   584.4
    65   584.6   584.7   582.5   584.4
    70   584.5   584.7   582.5   584.4
    75   584.5   584.7   582.5   584.4
    80   584.6   584.7   582.5   584.4
    85   584.6   584.7   582.5   584.4
    90   584.5   584.7   582.5   584.5
    95   584.7   584.7   582.5   584.5
   100   406.6   584.7   406.6   575.6
   105   383.7   584.7   383.7   566.4
   110   353.0   584.7   353.0   556.7
   115   255.8   584.7   255.8   543.6
   120   255.8   584.7   255.8   531.7
   125   255.8   584.7   255.8   520.6
   130   255.8   584.7   255.8   510.4
   135   255.8   584.7   255.8   501.0
   140   255.8   584.7   255.8   492.3
   145   255.8   584.7   255.8   484.1
   150   255.8   584.7   255.8   476.5
   155   255.8   584.7   255.8   469.4
   160   255.8   584.7   255.8   462.7
   165   255.8   584.7   255.8   456.4
   170   252.8   584.7   252.8   450.4
   175   127.9   584.7   127.9   441.2
   180   127.9   584.7   127.9   432.5



Data chain: SDU2 -> Linux -> screen -> ssh -> PuTTY (with visualization)
steady if (re-)start write command in time
	
ChibiOS starting ... OK.
SDU2 Throughput [kBps] vs time [sec]:
           cur     max     min     avg
     5   562.8   562.8   562.8   562.8
    10   584.8   584.8   562.8   573.8
    15   582.7   584.8   562.8   576.8
    20   579.4   584.8   562.8   577.4
    25   582.4   584.8   562.8   578.4
    30   564.1   584.8   562.8   576.0
    35   567.6   584.8   562.8   574.8
    40   573.1   584.8   562.8   574.6
    45   578.5   584.8   562.8   575.0
    50   583.8   584.8   562.8   575.9
    55   583.2   584.8   562.8   576.6
    60   580.7   584.8   562.8   576.9
    65   579.0   584.8   562.8   577.1
    70   573.8   584.8   562.8   576.9

	
Data chain: SDU2 -> Linux -> cat -> /dev/null (without visualization)
steady if (re-)start write command in time
 	
ChibiOS starting ... OK.
SDU2 Throughput [kBps] vs time [sec]:
           cur     max     min     avg
     5   585.8   585.8   585.8   585.8
    10   586.1   586.1   585.8   585.9
    15   586.2   586.2   585.8   586.0
    20   586.1   586.2   585.8   586.0
    25   586.1   586.2   585.8   586.0
    30   586.2   586.2   585.8   586.0
    35   586.1   586.2   585.8   586.0
    40   586.2   586.2   585.8   586.1
	