<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Problem with TCP socket on board based on imx6q. in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/Problem-with-TCP-socket-on-board-based-on-imx6q/m-p/298368#M37303</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN title="Nous avons développé une carte à base de processeur IMX6Q qui s'intégre dans nos analyseur de signaux."&gt;We have developed a card -based IMX6Q processor that is integrated in our signal analyzer. &lt;SPAN lang="en"&gt;&lt;SPAN title="Nous utilisons Linux 3.0.35 comme système d'exploitation."&gt;We use Linux 3.0.35 as the operating system . &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN title="Nous avons porté sur cette carte une application de type serveur qui permet à un PC hôte de piloter notre analyseur."&gt;We have on this board a server application that enables a host PC to control our analyzer through a GigaBit Ethernet connection. &lt;/SPAN&gt;&lt;SPAN title="Nous avons constaté des délais de plusieurs centaines de millisecondes entre l'envoie d'une commande par le PC et son acquitement par la carte IMX6."&gt;We found delays of several hundred milliseconds between sending a command from the PC and his acquittal by IMX6 card. &lt;/SPAN&gt;&lt;SPAN title="Pour mettre hors de cause notre application nous avons écrit un scripte python qui simule le fonctionnement de notre application client/serveur."&gt;To hold harmless our application we wrote a python script that simulates the operation of our client / server application. &lt;/SPAN&gt;&lt;SPAN title="Le fonctionnement est le suivant : "&gt;The operation is as follows :&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="- le client se connecte au serveur via un socket TCP-IP et dans une boucle infinie :    "&gt;- The client connects to the server via a TCP -IP socket and in an infinite loop :&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN title="- envoie une commande de lecture d'un tableau de données sur le serveur (taille spécifiée dans la commande)    "&gt;- Sends a command to read a data table on the server (the size is specified in the command)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN title="- lecture des données envoyées par le serveur "&gt;- Reading data sent by the server&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="- le serveur attend une connexion d'un client, puis, après qu'un client soit connecté, attend en boucle une commande de lecture de donnée et envoie au client le nombre de données demandées.  "&gt;- The server waits for a connection from a client, then, after a client is connected, wait loop playback control data and sends to the client the amount of data requested.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Avec notre carte nous constatons le problème suivant : &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Avec notre carte nous constatons le problème suivant : &amp;lt;br&amp;gt;"&gt;With our board we find the following problem: &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Si la taille des données demandées par le client est inférieure à la charge utile d'une trame TCP-IP il n'y a pas de problème."&gt;If the size of data requested by the client is less than the payload of a TCP-IP frame there is no problem. &lt;/SPAN&gt;&lt;SPAN title="Dés que la taille des données nécéssite l'envoie de 2 trames TCP-IP alors périodiquement le serveur envoie 2 fois la deuxième partie des données."&gt;As soon as the data size requires the server sending 2 frames TCP-IP then periodically the server application sends 2 times the second part of the data. &lt;/SPAN&gt;&lt;SPAN title="Avec WireShark (sur le PC hôte) on observe le déroulement suivant : &amp;lt;br&amp;gt;"&gt;With WireShark (on the host PC) we observe the following procedure: &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="a) fonctionnement normal &amp;lt;br&amp;gt;"&gt;a) Normal operation &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le client sur le PC envoie la trame de commande de lecture de 1604 octets (taille de la trame= 66 octets) &amp;lt;br&amp;gt;"&gt;The client on the PC sends the command frame reading 1604 bytes (frame size = 66 bytes) &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The server on IMX6 card sends 2 data frames ~150us after the command (1514 bytes for the first and 198 for the second). &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le PC acquitte la deuxième trame de données envoyée par la carte IMX6. &amp;lt;br&amp;gt;"&gt;The PC performs the second data frame sent by the IMX6 card. &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="b) fonctionnement défectueux &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;"&gt;b) malfunction &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="b) fonctionnement défectueux &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le client sur le PC envoie la trame de commande de lecture de 1604 octets (taille de la trame= 66 octets) &amp;lt;br&amp;gt;"&gt;The client on the PC sends the command frame reading 1604 bytes (frame size = 66 bytes) &lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The server on IMX6 card sends 1 data frames ~150us after the command (1514 bytes).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client acknowledge the last server frame after ~200 ms&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client receive the second data frame (198 bytes) &lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;after ~200 ms&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client receive again the second data frame (198 bytes) &lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;after less than ~10 us&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client acknowledge the last received frame&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;If the server is running on the PC and the client on the IMX6 board there are far more less problems (some times the client need to retransmit the command).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;We have reproduce almost the same problem on 2 SABRE-LITE evaluation board (one board equipped with a silicon revision 1.0 IMX6 processor and the other with a revision 1.2).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;The python script "pcomor3x.py" can be used to reproduce the problem.&lt;/P&gt;&lt;P&gt;On the server side enter :&lt;/P&gt;&lt;P&gt;python pcomor3x.py serveur 3000&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;where 3000 is the port number&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the client side enter :&lt;/P&gt;&lt;P&gt;python pcomor3x.py tcp-ip-server-adress 3000 1604&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;where 3000 is the port number and 1604 is the requested data size (in number of bytes).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN class="ita-kd-inputtools-div"&gt;&lt;/SPAN&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P class="almost_half_cell"&gt;&lt;SPAN class="long_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Someone has&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;already&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;encountered this&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;kind of problem?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-336962"&gt;pcomor3x.py.txt.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 18 Mar 2014 13:13:50 GMT</pubDate>
    <dc:creator>philippeverdier</dc:creator>
    <dc:date>2014-03-18T13:13:50Z</dc:date>
    <item>
      <title>Problem with TCP socket on board based on imx6q.</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/Problem-with-TCP-socket-on-board-based-on-imx6q/m-p/298368#M37303</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN lang="en"&gt;&lt;SPAN title="Nous avons développé une carte à base de processeur IMX6Q qui s'intégre dans nos analyseur de signaux."&gt;We have developed a card -based IMX6Q processor that is integrated in our signal analyzer. &lt;SPAN lang="en"&gt;&lt;SPAN title="Nous utilisons Linux 3.0.35 comme système d'exploitation."&gt;We use Linux 3.0.35 as the operating system . &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN title="Nous avons porté sur cette carte une application de type serveur qui permet à un PC hôte de piloter notre analyseur."&gt;We have on this board a server application that enables a host PC to control our analyzer through a GigaBit Ethernet connection. &lt;/SPAN&gt;&lt;SPAN title="Nous avons constaté des délais de plusieurs centaines de millisecondes entre l'envoie d'une commande par le PC et son acquitement par la carte IMX6."&gt;We found delays of several hundred milliseconds between sending a command from the PC and his acquittal by IMX6 card. &lt;/SPAN&gt;&lt;SPAN title="Pour mettre hors de cause notre application nous avons écrit un scripte python qui simule le fonctionnement de notre application client/serveur."&gt;To hold harmless our application we wrote a python script that simulates the operation of our client / server application. &lt;/SPAN&gt;&lt;SPAN title="Le fonctionnement est le suivant : "&gt;The operation is as follows :&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="- le client se connecte au serveur via un socket TCP-IP et dans une boucle infinie :    "&gt;- The client connects to the server via a TCP -IP socket and in an infinite loop :&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN title="- envoie une commande de lecture d'un tableau de données sur le serveur (taille spécifiée dans la commande)    "&gt;- Sends a command to read a data table on the server (the size is specified in the command)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN title="- lecture des données envoyées par le serveur "&gt;- Reading data sent by the server&lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="- le serveur attend une connexion d'un client, puis, après qu'un client soit connecté, attend en boucle une commande de lecture de donnée et envoie au client le nombre de données demandées.  "&gt;- The server waits for a connection from a client, then, after a client is connected, wait loop playback control data and sends to the client the amount of data requested.&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Avec notre carte nous constatons le problème suivant : &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Avec notre carte nous constatons le problème suivant : &amp;lt;br&amp;gt;"&gt;With our board we find the following problem: &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Si la taille des données demandées par le client est inférieure à la charge utile d'une trame TCP-IP il n'y a pas de problème."&gt;If the size of data requested by the client is less than the payload of a TCP-IP frame there is no problem. &lt;/SPAN&gt;&lt;SPAN title="Dés que la taille des données nécéssite l'envoie de 2 trames TCP-IP alors périodiquement le serveur envoie 2 fois la deuxième partie des données."&gt;As soon as the data size requires the server sending 2 frames TCP-IP then periodically the server application sends 2 times the second part of the data. &lt;/SPAN&gt;&lt;SPAN title="Avec WireShark (sur le PC hôte) on observe le déroulement suivant : &amp;lt;br&amp;gt;"&gt;With WireShark (on the host PC) we observe the following procedure: &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="a) fonctionnement normal &amp;lt;br&amp;gt;"&gt;a) Normal operation &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le client sur le PC envoie la trame de commande de lecture de 1604 octets (taille de la trame= 66 octets) &amp;lt;br&amp;gt;"&gt;The client on the PC sends the command frame reading 1604 bytes (frame size = 66 bytes) &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The server on IMX6 card sends 2 data frames ~150us after the command (1514 bytes for the first and 198 for the second). &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="Le PC acquitte la deuxième trame de données envoyée par la carte IMX6. &amp;lt;br&amp;gt;"&gt;The PC performs the second data frame sent by the IMX6 card. &lt;BR /&gt;&lt;/SPAN&gt;&lt;SPAN title="b) fonctionnement défectueux &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;"&gt;b) malfunction &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="b) fonctionnement défectueux &amp;lt;br&amp;gt; &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le client sur le PC envoie la trame de commande de lecture de 1604 octets (taille de la trame= 66 octets) &amp;lt;br&amp;gt;"&gt;The client on the PC sends the command frame reading 1604 bytes (frame size = 66 bytes) &lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The server on IMX6 card sends 1 data frames ~150us after the command (1514 bytes).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client acknowledge the last server frame after ~200 ms&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client receive the second data frame (198 bytes) &lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;after ~200 ms&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client receive again the second data frame (198 bytes) &lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;after less than ~10 us&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;The client acknowledge the last received frame&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;If the server is running on the PC and the client on the IMX6 board there are far more less problems (some times the client need to retransmit the command).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;&lt;SPAN class="long_text"&gt;&lt;SPAN title="Le serveur sur la carte IMX6 envoie 2 trames de données (1514 octets pour la première et 198 pour la deuxiéme). &amp;lt;br&amp;gt;"&gt;We have reproduce almost the same problem on 2 SABRE-LITE evaluation board (one board equipped with a silicon revision 1.0 IMX6 processor and the other with a revision 1.2).&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;The python script "pcomor3x.py" can be used to reproduce the problem.&lt;/P&gt;&lt;P&gt;On the server side enter :&lt;/P&gt;&lt;P&gt;python pcomor3x.py serveur 3000&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;where 3000 is the port number&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;On the client side enter :&lt;/P&gt;&lt;P&gt;python pcomor3x.py tcp-ip-server-adress 3000 1604&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;where 3000 is the port number and 1604 is the requested data size (in number of bytes).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;&lt;SPAN class="ita-kd-inputtools-div"&gt;&lt;/SPAN&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;P class="almost_half_cell"&gt;&lt;SPAN class="long_text" lang="en"&gt;&lt;SPAN class="hps"&gt;Someone has&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;already&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;encountered this&lt;/SPAN&gt; &lt;SPAN class="hps"&gt;kind of problem?&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Original Attachment has been moved to: &lt;A _jive_internal="true" href="https://community.nxp.com/docs/DOC-336962"&gt;pcomor3x.py.txt.zip&lt;/A&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 18 Mar 2014 13:13:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/Problem-with-TCP-socket-on-board-based-on-imx6q/m-p/298368#M37303</guid>
      <dc:creator>philippeverdier</dc:creator>
      <dc:date>2014-03-18T13:13:50Z</dc:date>
    </item>
  </channel>
</rss>

