ItsyBitsy M4 Express with Ethernet FeatherWing failing to connect

Please tell us which board you are using.
For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
ssworks
 
Posts: 18
Joined: Fri Apr 13, 2018 2:58 pm

ItsyBitsy M4 Express with Ethernet FeatherWing failing to connect

Post by ssworks »

I have an ItsyBitsy M4 Express connected to an Ethernet FeatherWing and an OLED screen. The Ethernet FeatherWing's 3V, GND, SCK, MOSI, MISO, and 10 pins are all connected to the ItsyBitsy M4 Express. The OLED's 3V, GND, SCL, and SDA pins are all connected to the the ItsyBitsy M4 Express.

About half of the time, things work great. The ItsyBitsy and Ethernet FeatherWing successfully connect to the local network at the reserved IP address that I configured on my router. When it all works, I have the ItsyBitsy display the IP address on the OLED. I can communicate from my laptop with the ItsyBitsy successfully across the network. It is great.

The other half of the time, the ItsyBitsy gets stuck during setup trying to connect to the local network through the Ethernet FeatherWing. I display status updates on the OLED and it seems that connecting to the local network is getting stuck on the following line. It just never finishes executing.

Code: Select all

Ethernet.init(10);
Just in case the Ethernet FeatherWing wasn't always ready, I put a 5 second delay before the init call and that didn't solve the issue.

What could cause this occasional connection issue? I dug in the source code of the Ethernet library (version 2.0.1) and it looks like the init function is quite short but I can't figure out what it is doing.

Is there an inherent issue that I don't know about when using an ItsyBitsy M4 Express with an Ethernet FeatherWing? Do I need to switch to the Feather M4 Express?

Any help or clues appreciated.

Thanks!

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: ItsyBitsy M4 Express with Ethernet FeatherWing failing to connect

Post by mikeysklar »

When the ItsyBitsy gets hung on Ethernet.init(10) what do you see on the ethernet hub/switch it is connected to? Are the LEDs different than when the connection fails? I'm wondering if it is auto-negotiation or ethernet firmware rather than the Arduino code.

Can you post a photo of the connections / soldering for the ItsyBitsy M4 and Ethernet Featherwing?

User avatar
ssworks
 
Posts: 18
Joined: Fri Apr 13, 2018 2:58 pm

Re: ItsyBitsy M4 Express with Ethernet FeatherWing failing to connect

Post by ssworks »

I don't know why it was appearing to be stuck on Ethernet.init. It was really stuck on Ethernet.begin which makes more sense anyway.

It seems the WIZ5500 comes up in a failed state very frequently and the ItsyBitsy M4 cannot communicate with the WIZ5500 to initialize it.

The solution was to connect the Ethernet FeatherWing's RST pin to a GPIO pin on the ItsyBitsy. In code, I set the GPIO pin low, wait for 500 ms, set the GPIO pin high, wait for 500 ms, and finally call Ethernet.begin. This seems to always work. I now see other posts on the internet about the WIZ5500 and strategies like this.

The Ethernet FeatherWing documentation says the RST pin is "there for advanced usage." I think anyone wanting reliable success with the Ethernet FeatherWing will need to use the RST pin as part of the normal startup process. I think it would be a great improvement in the documentation to say so with a code example.

User avatar
mikeysklar
 
Posts: 13936
Joined: Mon Aug 01, 2016 8:10 pm

Re: ItsyBitsy M4 Express with Ethernet FeatherWing failing to connect

Post by mikeysklar »

Thank you for the work around suggestion using the RST pin.

Locked
Please be positive and constructive with your questions and comments.

Return to “Itsy Bitsy Boards”