Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 10 of 10

Thread: W5500 ethernet not working

  1. #1

    W5500 ethernet not working

    I can't get this W5500 ethernet module working with Teensy. I'm hoping I just setup something wrong. Can anyone spot a problem? I've tried it with the WebServer example and the TimeNTP example, and both can't find the adapter, nor do any of the LEDs on the W5500 light up. I've tried adding the following initialization code to the beginning of setup in both programs, and I get the same result:

    Code:
    pinMode(9, OUTPUT);
    digitalWrite(9, LOW);    // begin reset the WIZ820io
    pinMode(10, OUTPUT);
    digitalWrite(10, HIGH);  // de-select WIZ820io
    pinMode(4, OUTPUT);
    digitalWrite(4, HIGH);   // de-select the SD Card
    digitalWrite(9, HIGH);   // end reset pulse
    I also tried adding a call to Ethernet.init(10) before Ethernet.begin(), but it still doesn't work.

    In the case of WebServer, Ethernet.hardwareStatus() returns EthernetNoHardware, which triggers the error. For TimeNTP, Ethernet.begin() returns 0.

    Click image for larger version. 

Name:	IMG_4666.jpg 
Views:	7 
Size:	68.4 KB 
ID:	17745Click image for larger version. 

Name:	IMG_4667.jpg 
Views:	7 
Size:	73.3 KB 
ID:	17746Click image for larger version. 

Name:	IMG_4668.jpg 
Views:	5 
Size:	52.4 KB 
ID:	17747Click image for larger version. 

Name:	IMG_4669.jpg 
Views:	9 
Size:	67.2 KB 
ID:	17748

  2. #2
    Senior Member+ manitou's Avatar
    Join Date
    Jan 2013
    Posts
    2,231
    Quote Originally Posted by markb View Post
    I can't get this W5500 ethernet module working with Teensy. I'm hoping I just setup something wrong. Can anyone spot a problem? I've tried it with the WebServer example and the TimeNTP example, and both can't find the adapter, nor do any of the LEDs on the W5500 light up.
    Maybe a dead W5500. is that a PJRC ethernet adapter or ? (product URL, schematic?)
    With just 3.3v and GND to W5500 (WIZ850io) and a live ethernet cable in the RJ45, you should see a solid green LED on the RJ45 and a flashing yellow LED. Check your soldering and check voltages with a meter. If you can't get the LEDs to light up, you're not going to have any luck with any of the examples.

  3. #3
    Senior Member PaulStoffregen's Avatar
    Join Date
    Nov 2012
    Posts
    20,682
    Which Teensy are you using? I can't see it from the photos.

    Also, which version of the software are you using? In Arduino, click Help > About (or Arduino > About on Mac) to check.

    I have that same W5500 module (the cheap clone with green PCB - genuine Wiznet one has a yellow PCB), so with these 2 pieces of info I could try the same TimeNTP test here to check if it works.

  4. #4
    Senior Member crees's Avatar
    Join Date
    Dec 2016
    Location
    Utah
    Posts
    174
    Curious does the Ethernet module have a link light when you connect it to a switch?

    The reset code is more for the w5200 but I still have it for my boards that use the w5500 chip and this is what I have used.

    correction the reset code should also be used for the w5500 after confirming on the wiznet forum. One difference in my code is that i use a dealy(10) since I dont have the reset chip. If I understand correctly the adapter boards reset chip should pulse the reset line correctly without the need for a delay, but it may be worth trying adding it in to see if it will help.


    Code:
    //WIZNET RESET AND INITIALIZE
        pinMode(9, OUTPUT);
        digitalWrite(9, LOW);   // reset the WIZ820io
        delay(10);
        digitalWrite(9, HIGH);   // reset the WIZ820io
    Last edited by crees; 09-29-2019 at 05:52 AM.

  5. #5
    Quote Originally Posted by manitou View Post
    Maybe a dead W5500. is that a PJRC ethernet adapter or ? (product URL, schematic?)
    With just 3.3v and GND to W5500 (WIZ850io) and a live ethernet cable in the RJ45, you should see a solid green LED on the RJ45 and a flashing yellow LED. Check your soldering and check voltages with a meter. If you can't get the LEDs to light up, you're not going to have any luck with any of the examples.
    It’s this one: https://www.pjrc.com/store/wiz820_sd_adaptor.html

    It did have a live Ethernet cable attached, yet none of the LEDs lit up at all. I’ll check the voltages when I have a chance.

  6. #6
    This is a Teensy 3.2, with Teensyduino 1.47.

  7. #7
    Senior Member+ manitou's Avatar
    Join Date
    Jan 2013
    Posts
    2,231
    Quote Originally Posted by markb View Post
    It’s this one: https://www.pjrc.com/store/wiz820_sd_adaptor.html

    It did have a live Ethernet cable attached, yet none of the LEDs lit up at all. I’ll check the voltages when I have a chance.
    Since you have the RJ45 unit attached via female header, you could pull it out and test it standalone with just 3v3, GND and a live Ethernet cable in RJ45. The LEDs should light up .... (at least it does for Wiznet yellow PCB version that i have). if LEDs light up with W5500 module detached, then the problem may lie with the PCB shield and/or with the soldering

  8. #8
    So I checked the voltage between the ground and 3.3V pins on the W5500, while it was connected to the Teensy and the Teensy was powered by USB. It was only about 2.3V, which seems like a problem. I checked the Teensy's VIN pin, with the W5500 removed, and it's only 1.8V! When I plug the W5500 back in, VIN slowly drops to 0.5V. Super strange! The Teensy's 3.3V pin does measure at 3.3V. I'm not sure how this makes any sense. (Since USB is the only power source, VIN should be the USB voltage, and there's no way the 3.3V pin could be at a higher voltage than VIN, right?)

    When I hookup just the W5500 power (3.3V) on a breadboard, it still doesn't light up, though.

    I'm using the W5500 pinout on this page: https://www.pjrc.com/store/wiz820_sd_adaptor.html

  9. #9
    Update: the W5500 does in fact light up when powered on a breadboard. I had a grounding problem before. (I had the W5500 connected to the Teensy's AGND pin rather than the GND pin. Doh!)

    Unfortunately, that problem only affected that one test. The weird voltages in my previous post were measured with the correct ground.

  10. #10
    Solved! I had completely neglected to solder two of the pins on the double-sided header to the Teensy! (I feel pretty dumb, right now!) Those pins were VIN and AGND. So that pretty much explains everything.

    The WebServer example now works completely! The TimeNTP example has some problem connecting to the server, but it does get and DHCP address, so that's encouraging. (EDIT: It was just a matter of finding a valid NTP server. The ones in the example don't seem to work. I ended up using one of the addresses from an DNS lookup of time.google.com.)
    Last edited by markb; 09-29-2019 at 08:28 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •