W5100 with other SPI peripherals

HI !

I can use W5100 ethernet shield on DUE ; I can use NRF modules on DUE ;

but... together nrf module give me wrong datas.

I use pin 8 as CS and 9 as CE... Did I miss something in the datasheet ?

Thx

Did I miss something in the datasheet ?

Maybe, we don't know it because you failed to provide the information which hardware you're using. A link to the relevant datasheet and schematics would have been nice.

Sorry... but if you have to explore the 70 more pages of nrf24L01 and 70 of W5100 I'll feel guilty... :wink:

I just hoped for an advice from an experienced user of these circuits...

Schematics is SPI schematics... MISO/MOSI/CLK/SS (and CE for NRF)...

I found something : NRF has a max speed of 10MbpS and W5100 lib setup put it at 12MbpS.

After that I found a new issue : logic analyzer shows the MISO line stuck at high level after some seconds when the shield is in place (no moves on W5100 CS pin 10). I checked it with 2 shields from different manufacturers ; same result.

...

PS I checked with different nrf modules too with no change. nrf alone works , w5100 not affected by nrf.

Schematics is SPI schematics... MISO/MOSI/CLK/SS (and CE for NRF)...

The schematics of the boards you're using! If you're using an original Arduino Ethernet Shield we can download the schematics from arduino.cc but as you specified just W5100 board I expect you use some other hardware that may have a different circuit.

There are many NRF24L01 boards available, so many options to have done something wrong.

I found something : NRF has a max speed of 10MbpS and W5100 lib setup put it at 12MbpS.

Todays versions of RF24 and Ethernet libraries support SPI transactions and always set the correct SPI speed.

After that I found a new issue : logic analyzer shows the MISO line stuck at high level after some seconds when the shield is in place (no moves on W5100 CS pin 10). I checked it with 2 shields from different manufacturers ; same result.

Sounds like a bad board design. The W5100 itself doesn't show that behavior. Maybe the board uses level converters which are badly designed although for the Due you wouldn't need them.

Are you using different CS pins for the Ethernet shield and the nRF?

Pieter

I use chinese due boards, and I made the test with unnamed chinese and keystudio ethernet shields with the same design. I have some pieces (due+w5100) working H24 for years with no trouble. Clearly they are different from the picture in the store (the price too :)). I didnt see nrf module in the store.
I use chinese modules with nordic design.

w5100 datasheet says "3.3V operation with 5V I/O signal tolerance" so I dont imagine they put unusefull level converters on the boards.

I got success with a fan ; cooling the stack allow it to work.

@PieterP : many things are "hardwired" in the W5100 lib as SPI setup ; CS pin is one too at pin 10. I didnt change it. NRF use 8 and CE at 9.

In an other post I read about noise on the spi bus when stacking shields. Here I have 2 shields (one home made for nrf and the W5100 on the top). Overheat and noise seems enougth to give trouble : IOH and IOL are only 0,25mA for the full slope of nfr output pins ... not very strong. Maybe I will be forced to design a shield with W5100 and NRF together. Or let down the ethernet link for a serial : communication is far too slow (why 4 bytes for 1 data byte ? and tenth of mS with "padding data")

thx for time spend

I got success with a fan ; cooling the stack allow it to work.

Both shields shouldn't get hot. Where does the heat in your shields come from?

In an other post I read about noise on the spi bus when stacking shields.

Bullshit.

Overheat and noise seems enougth to give trouble : IOH and IOL are only 0,25mA for the full slope of nfr output pins .

Explain that in more detail, I don't understand what you mean by this sentence.

w5100 datasheet says "3.3V operation with 5V I/O signal tolerance" so I dont imagine they put unusefull level converters on the boards.

Correct but the Arduino Ethernet Shield (and many Chinese clones) include an SD card read which is not that tolerant. And Chinese board manufacturers are know to do the level conversion wrong on the SPI bus, especially on SD card readers. So schematics of your hardware is a must to check if the hardware is compatible with each other.