Hi again, thank you for the sketch (I got it via email). No problems there, looked like a typical sketch for connecting an Uno / W5100 combo.
This ‘DHCP Failed’ error can be seen for lots of reasons, here are some things to try based on scenarios we’ve encountered in the past:
-
If you have some other device to plug into the same Ethernet cable (like a laptop or desktop computer), try that and verify it can get an IP address assigned via DHCP. If it can’t, this could be an issue with the cable or with your router assigning IP addresses via DHCP
-
We know that sometimes having a microSD card in the 5100 shield card slot can cause this error due to hardware limitations. If you have one inserted, try taking it out, power cycling the Arduino, and trying again
-
Do you have an official Arduino shield? There are some reports of Chinese cloned shields that fail in this regard due to using an incorrect resistor: Ethernet sheild(W5100) not working with Uno - Networking, Protocols, and Devices - Arduino Forum
That thread also has some test code separate from Cayenne that you can use to sanity check that your Arduino can make a network connection. -
See the picture in this post to see if perhaps your Ethernet socket and USB socket are touching and causing a short : Connecting Issue with Arduino uno and Cayenne Via Ethernet Shield W5100 - #20 by Ian
-
Verify you are connected to a network that has a router which can assign an address via DHCP, not just a switch
-
Verify you’re not on a network that requires additional authentication to log in to get an internet connection, like some corporate, university, or public networks.
-
You’ve probably tried as much in all this time, but for some users, a power cycle to the Arduino was enough to resolve this.
If none of the above does the trick, let us know a little about the network you are using. What does the ethernet cable you are plugging into the Arduino route to on the other side (router, switch, wireless bridge, etc)