Hi everybody,
I'm using the winc1500-mr210pb with an STM32F103, where the final goal is to make file tranfer over WiFi.
I'd like to know if someone here can tell me the throughput i should expect with TCP packets, or at least if my testing process is good.
At this time, i use the Atmel WINC1500 in this configuration (This correspond to the final configuration) :
- STM32F103 running at 72MHz, SPI bus is at 18MHz (maximum) with DMA enable
- WINC1500 configuring as an Access Point (AP)
- WINC1500 TCP packet size set to 1400 ( maximum from the source code)
- Compile with optimization -02 (i use Em:Blocks or Keil IDE)
The testing protocol is the following :
1. The PC connect to the Winc1500 AP, a TCP erver is running on the PC and waiting for connection.
2. When PC is connected, the WINC1500 open a TCP socket with the PC, and is waiting for a character
3. When winc1500 receives a character, it keep sending a certain amount of data ( like 10 MB ). It sends always the same array from memory wich as a length of 1400 Bytes. The PC is polling for data over the socket (IT's a little program in C#, i think i can assume it should not be the bottleneck)
4. When the transfer is over, the stm32 gives the transfert duration, speed transfert, etc.
The main loop of the STM32 program is :
while(1)
{
m2m_wifi_handle_events(NULL);
if(tranferInProgress)
send(exchange_socket, txbuffer, CHUNK_SIZE, 0);
}
At this time i'm getting a thoughput of 2.48 Mbps ( 310 ko/s), which is not bad.
But i found a document from Atmel (i guess) which gives a throughput of 2.95 Mbits / sec (see attached document, page 6 ) with a SPI at 12MHz.
Moreover, i heard some other engineer saying they reach the Mo / s with the same configuration.
So i wonder if i do something bad (like not optimized) or if this is a normal throughput expected in a classic-pertubated environement (like with one Internet box, some PC's on WIFI , maybe one bluetooth device, etc...)
Thank you for taking the time to read this and if you have some research tracks for me !