9 years, 3 months ago.

Arduino Ethernet Shield compatible with ST Nucleo F411RE?

Hi,

the Arduino Ethernet Shield contains a WIZnet W5100 chip. I tried to use it with the ST Nucleo F411RE, but could not find libraries to get it to work. Has any one got this shield working? On the ST Nucleo F411RE The Ethernet Interface uses these connections: mosi = PA_7, miso = PA_6, sclk = PA_5, cs = PB_6, reset = PA_9

The WIZnetInterface doesn't compile (after removing the main.c in the library): It gives a compile error: Error: "/extras/mbed_4fc01daae5a5/TARGET_NUCLEO_F401RE/TOOLCHAIN_ARM_MICRO/stm32f401xe.sct", line 34 (column 9): Error: L6235E: More than one section matches selector - cannot all be FIRST/LAST.

Kind regards, Jack.

we had similar issues with the nordic semiconductor nRF51-DK - we just posted a solution/step-by-step guide online:

https://developer.mbed.org/forum/mbed/topic/4824/

Aaron Ardiri

posted by Aaron Ardiri 01 Apr 2015

1 Answer

9 years, 3 months ago.

Hi Yes - using this example http://developer.mbed.org/teams/WIZnet/code/WIZnet_Library/

In WIZnetInterface/WIZnet/W5100.cpp you must change SPI frequency - take a look: https://developer.mbed.org/questions/5055/ST-Nucleo-F411RE-support-W5100/#answer5346

and don't forget about jumpers: http://www.rechargecar.com/sites/default/files/official_ethernet.jpg

Robert

Accepted Answer

Hi Robert,

thank you! I see SPI frequency is 200000. What should it be? I'm sorry, I'm probably missing that. Thanks about the jumpers, I didn't know the shield SPI bus was only connected to the 6-pin header.

Regards, Jack.

posted by Jack Berkhout 10 Feb 2015

Try with 12000000

i don't remember now but it must be greater than 200000

Regards Robert.

posted by Robert Went 10 Feb 2015

Hi Robert, I installed the jumpers for the SPI bus, reduced the SPI frequency by a factor of 10 (just to reduce it) I selected Nucleo and W5100.

When using a static IP address, I get: Start Initialized, MAC: 00:00:00:00:00:00 IP: 0.0.0.0, MASK: 0.0.0.0, GW: 0.0.0.0

Wait for new connection...

When using DHCP, I get:

Start Initialized, MAC: 00:00:00:00:00:00 Error eth.connect() - ret = -1

All displayed zeros above should not be zeros, of course. I need to spent more time on it, but don't know how to fix this, yet. Has somebody good ideas for me to check things?

Regards, Jack.

posted by Jack Berkhout 10 Feb 2015

Hi SPI frequency must be higher about - 12 MHz

posted by Robert Went 10 Feb 2015

Also as i remember that i cut pin A0 and A1 on W5100 becouse it was 5V on this. i have eth shield ver 05 http://saber.patagoniatecnology.com/ethernet-shield-diferencia-con-varias-versiones/

i try to do some test in next few days again with this shield and i let you know.

posted by Robert Went 10 Feb 2015

Hi Robert, thanks for your quick response! Super! I have Ethernet Shield R3, as I saw from the page you linked to. So I don't know if I have to cut A0 and A1. I made the SPI working at 12Mhz (12000000), that didn't fix it, so the problem must be somewhere else, I think. I double checked the three SPI jumpers and they do allign with the Nucleo SPI bus, and used the Saleae Logic analyzer to inspect the signals of the SPI bus. They are present, and repeat in a loop. /media/uploads/JackB/screenshot.png /media/uploads/JackB/screenshot2.png Obviously, my analyzer can't keep up with the SPI frequency of 12MHz, as its sample rate is a bit limiting. To have a better view, I would need to reduce the SPI frequency by at least a factor of 4. At least we know the SPI bus has signals, whether they are good or wrong. :-) Any suggestions? BTW, I was a bit mistaken, but I'm actually using a ST Nucleo F401RE, not a F411RE, but I think that doesn't matter much. :-)

It is very nice you want to test it in the coming days! Thank you very much, Robert!

Regards, Jack.

Well, I did not get the arduino ethernet shield working with mbed. The Nucleo board can't be used for networking, right now.

At least I got the EthernetInterface Library working for on the Seeeduino-Arch-Pro. Now, find the FRDM-K64F interesting too, it has also a lot of I/O pins. :-)

posted by Jack Berkhout 10 Feb 2015