AnsweredAssumed Answered

RTCS packed lost

Question asked by m68000 on Jul 11, 2017
Latest reply on Jul 12, 2017 by Daniel Chen

For data transfer i use a communiction over UDP. Inside these frames a handshake protocol are used. After start frames with 60 bytes length (payload 14 Byte) transmitted. If the real data transfer started my pc sends packages with 1060 byte length(payload 1031 Byte). Many of these packages are lost. If the target don't receive a package after 400ms, it called the tester to transmit again.

 

In a previous question i have asked for detailed RTCS Memory configuration. My configuration:

 

  _RTCSPCB_init          = 10;
  _RTCSPCB_grow          = 2;
  _RTCSPCB_max           = 80;
  _RTCS_msgpool_init     = 4;
  _RTCS_msgpool_grow     = 2;
  _RTCS_msgpool_max      = 80;
  _RTCS_socket_part_init = 4;
  _RTCS_socket_part_grow = 2;
  _RTCS_socket_part_max  = 8;
  _UDP_max_queue_size    = 10;

 

_RTCSTASK_priority = 6;

 

The reception of frames called in a separted task: (Priority 10)

 

 u16Len = recvfrom(eth_u32SocketHandle, &eth_u8Buffer[0], eth_RX_BUFF_SIZE, 0, &eth_SockAddrClient....)

   if (   (u16Len != RTCS_ERROR)
          && (u16Len > 0)
      )
      {
        // read message successful
        if (u16Len > 32)
        {
           mqxutils_tracing_trace_timestamp("ETH rx data %d Bytes\n",u16Len);
        }
    }

 

With wireshark i can see, that the pc send the packages really fast.

Outcomes