Hello,
I am new to embedded IP products and working with a Texas Instruments reference 
design / example and have found or made a bug.

The hardware platform is a TIVA TM4C1294 and we are using a Launchpad as a 
starting point for our design and I have duplicated the problem on a TM4C1294XL 
Launchpad. 
We started with the Tivaware version: TivaWare_C_Series-2.1.1.71
This library has the lwip 1.4.1 rtos and an httpserver_raw for which I do not 
see a version but the files from the zip down load are dated 12/23/2015.
We started with an example project TI calls “enet_s2e” which provides a GUI on 
a web server which uses a combination of CSS and Javascrip to make a menu 
system of web pages that we have only slightly modified. 

Our modifications cause the web pages to some times load with errors breaking 
the menu system design.  The embedded server becomes messed up and starts 
serving files with the HTTP header fields duplicated in the document body. When 
this happens to for example, the index.htm file we see text “HTTP/1.0 200 
OK\r\n” in the GUI.  When the error happens to the JavaScript files the 
JavaScript functions do not work and the web page navigation dependent on them 
fails.  A processor reset clears the problem for a wile but with continued 
navigation the problem returns eventually.

I observed the duplicate information with wire shark and by pressing F12 in 
Firefox and examining the web page and the style sheet which is also some times 
messed up.  As far as I can tell the original reference example design from TI 
never serves incorrectly.

I have made a very simple change to the TI reference design example and 
reproduced the error.
There is an image of microcontroller in the upper left of the web GUI and I 
changed just enough code so that that image was a link back to the index.htm 
file of the GUI.   I tried this a couple of ways and the server still becomes 
messed up and starts serving the files in error.  I have not found an exact and 
minimal way to make the server mess up but usually after < 10 or 20 clicks on a 
link it happens.

To duplicate the problem, I made a web page file (index.htm” with this simple 
content:
  <!DOCTYPE HTML>
  <!-- Copyright (c) 2014-2015 Texas Instruments Incorporated.  All rights 
reserved. -->
  <html>
    <head>
      <meta http-equiv="Content-type" content="text/html;charset=UTF-8">
      <title>EK-TM4C1294XL Evaluation Kit</title>
      <link rel="stylesheet" type="text/css" href="styles.css"/>
      <link rel="shortcut icon" type="image/x-icon" href="favicon.ico"/>
      <script src="javascript.js" language="JavaScript1.2" 
charset="utf-8"></script>
      <script src="javascript_load.js" language="JavaScript1.2" 
charset="utf-8"></script>
    </head>
    <body>
    Some Text
    <br>
    A link <a href="index.htm" > Click here </a>
    <br>

    That is all.
    Some Text
   
    </body>
  </html>

This file also can cause the server to mess up. 
Replacing “  A link <a href="index.htm" > Click here </a>” with “  A link <a 
href="/" > Click here </a>” also messes up.

I documented my efforts with wireshark files and  screen shots at the TI E2E 
forum as I was learning the causes of the problem. See: 
https://e2e.ti.com/support/microcontrollers/other/f/908/p/799725/2961889#2961889

Any ideas what I should investigate next?  

Is there a simple way I can make a web server on my PC with out the embedded 
system where I could try to run lwip 1.4.1 and the httpd server and try to 
duplicate the problem or is there a better way in my embedded target to proceed?

Thanks for any suggestions.

+++++++++++++++
Lee Erickson
Spectrum Techniques LLC.
[email protected]

<<attachment: Lee Erickson.vcf>>

_______________________________________________
lwip-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to