Ethernet TCP/IP Source Code Driver Project
Section 10. Troubleshooting

10. Troubleshooting

a) General Troubleshooting Tips

Some common troubleshooting tips:

Double check the IO pin definitions in the drivers nic.h header file are correct

Verify with a scope that all of the control and data pins to the nic are working correctly.

Check that no other device on a serial or parallel data bus to the network interface controller IC is outputting while the driver is trying to communicate with the nic.

Check that your microcontroller is not resetting due to a watchdog timer timeout.

See the:

‘Signal Noise Issues With MMC & SD Memory Cards (& Clocked Devices In General)’

page in the resources area of our web site for details of a common signal noise problem experienced when using clocked devices such as network interface controllers.

If you are using a 32bit device ensure that for the driver files WORD = 16 bits and DWORD = 32 bits.

If you suddenly find that you don’t get a response from a remote server or router, for instance when trying to log onto a POP3 or SMTP server or requesting a DNS response from your networks router, bear in mind that you may deliberately not be getting a response. While debugging you can easily upset servers by, for instance, break pointing code and not letting a TCP connection be properly closed at the end of an operation. Alternatively your router may have built in protection mechanisms enabled to protect against denial of service (DOS) attacks which cause it to start ignoring repeated requests for the same thing. Typically waiting a little while will solve the problem as these types of protection mechanisms are automatically reset by a timer. Alternatively you could try hard resetting your router or temporarily using an alternative POP3 or SMTP server.

b) Support

Please visit the support section of the embedded-code.com web site if you have any queries regarding this driver. Please note that our support covers the use of this driver with the reference designs in this manual. Where possible we will try to help solve any problems if the code is used with other devices or compilers, but given the huge number of devices and compilers available we are unable to guarantee ‘out of the box’ compatibility. If you plan to use the source code with a different processor, microcontroller and/or compiler you should ensure that you have sufficient programming expertise to carry out any modifications that may be required to the source code.

If you do encounter issues using the driver with other compilers or devices and are able to give us details of the issue you encountered we will try and include changes or notes across our range of drivers to help other programmers avoid similar issues in the future. Please use the contact us page of our web site to report any such issues discovered.