Alternative to Wiznet W5200

Go To Last Post
19 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi,

We are currently struggling with a Wiznet W5200 TCP/IP Ethernet controller. While I'm still hopeful we will get it up and running I would like to prepare plan B.

Anyone out there that could recommend alternatives to Wiznet W5200? (What would be the lowest cost solution done using a Ehternet capable Atmel CPU?)

My basic scenario is that we got a Xmega design that should send and receive simple commands over TCP.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Bjorn.

Although it is written with Bascom for AVRs, you may find something useful in this code set.

http://www.mcselec.com/index2.ph...

Cheers,

Ross

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I guess AT89 series is the cheapest uC with reasonable (several kB flash) resources.

No RSTDISBL, no fun!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
alternatives to Wiznet W5200?

If you want a chip that does ethernet Phy, Mac, IP, and TCP, I'm not sure that there ARE any equivalents. Especially in that $5 price range. You could consider something like the microchip ENC28J60 (ethernet chip) with an add-on micro to do the IP/TCP processing.

Check out the Arduino stuff; they've been using the Wiznet chip for quite a while, and seem to have things mostly working, most of the time.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Why you want to have a plan B? You're afraid that Wiznet are in the end of life? If its, I think you shouldn't worry.

Another solution will be to get an Atmel ARM uC. Maybe in large volume it will be cheaper.

Regards,

Bruno Muswieck

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
recommend alternatives to Wiznet W5200?

I have just noticed W5200 is not a micro but an ethernet PHY.
Then there are neither cheap nor expensive alternatives for that W5200 - Atmel does not make ethernet PHYs.

No RSTDISBL, no fun!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The reason I'm looking into plan B is that we cannot get the W5200 to work. I can read all registers through SPI but when sending the write command our written values are not stored.

I have recorded our SPI traffic with a digital oscilloscope and sent to Wiznet. They confirm we do everything correctly. I have tried different modules from Wiznet and implemented our logic on both a ATxmega128A1 and ATxmega128A3 board. No difference, values are still stored.

Although I still hope to find the problem, we are under a very tight time plan. Perhaps W5100 could be an alternative instead. There I can buy a evaluation board with a AVR prefitted.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

How much experience do you have with the Xmega-family ? They're quite different beasts than Mega AVR's.
The W5200 is a smart, yet complex chip. If you try to tackle both Xmega AND W5200, that may be a bit "too much hay on the fork"

In order to get more insight, you could consider using one of Wiznet standard boards with a Mega128. There are several code examples on the Wiznet-site available.
Valusoft mentioned already the Bascom variants. Although Basic, it could be helpfull to study those. Six1, one of the authors, is a pro and his programs are high quality: structured and well written. Besides that, he is a nice and helpfull person. You could give it a try :-)

I hope this helps.

Nard

A GIF is worth a thousend words   They are called Rosa, Sylvia, Tessa and Tina, You can find them https://www.linuxmint.com/

Dragon broken ? http://aplomb.nl/TechStuff/Dragon/Dragon.html for how-to-fix tips

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Nard,

We have several designs running the Xmega family and feel quite comfortable with them.

What really puzzles me is that we've recorded all SPI traffic with a digital oscilloscope and Wiznet cannot find any problems. It should work!

But yeah, more and more into the idea that we should use a W5100 instead and buy a finished eval kit based on AVR.

/Bjorn

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I have used W5100 extensively, but 5200 not at all, so I don't have room to talk.

But it seems very odd that Wiznet has vetted the communications, yet it does not work. Do you get the same result with another W5200?

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Likely there is a write enable signal not getting set somewhere along the way. Sometimes it may be in the form of an SPI command, sometimes it's a pin you have to tie to a level, etc... The device might also be defective, in which case trying another one should solve the problem. If it does not solve it, then you know it's something on your end.

Be careful of supply voltage, some chips can run at 3.3v but will only program at 5v for example.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Quote:
the Arduino stuff; they've been using the Wiznet chip

Ah; sorry. The Arduino stuff is mostly WS5100 based. But there have been enough people who have tried out the 5200 (and the associated module) that it can't possibly be as broken as your experiences...

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

hugoboss: the author said:

Quote:
I can read all registers through SPI but when sending the write command our written values are not stored.

and make me think the SPI signals are handled properly.

I did try ENC28J60 and it has many bugs in hardware. Another reason I abandoned it is that you can not send the next packet to it while it sends packets over Ethernet, lowering the average speed.

W5200 works well, don't worry. And it does not matter what micro you use as long as it has an SPI port.
If you can read registers (default values with non zero value) and can not write them, means you do not follow the writing sequence. Pleas post an example of writing register (5 bytes) and I will take a look.

I did not find a better alternative to these ICs.

The data sheet is poorly written with examples for C language (why they assume I use C?) and poor English. Needed to read it many many times to figure out what they mean there.

George.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The 5100/5200 work well. The docs aren't great. A number of working examples for both chips and their modules like the WIZ812MJ.

I have one project now with dozens of 812MJ's running 24/7, driven via SPI from an ARM7.

The ENC28J60 is very crude by comparison - no socket driver concept, not much on-board RAM buffering, even ARP has to be in side the host code.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi all,

Just an update on this topic. We got the W5200 working now. I had the PWRN (power down) pin connected to 3V3 instead of GND. Stupid mistake but to my defence it does seem a bit odd that the chip was fully communicable despite being in power down mode.

Anyway, as always I’m very impressed by the in-depth discussion here on AVR Freaks. Thanks all for contributing, much appreciated!

/Bjorn

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks for letting (us) know: I appreciate that.

Quote:
Stupid mistake but to my defence .....
I *never* make stupid mistakes ...

Nard
:D :lol:

A GIF is worth a thousend words   They are called Rosa, Sylvia, Tessa and Tina, You can find them https://www.linuxmint.com/

Dragon broken ? http://aplomb.nl/TechStuff/Dragon/Dragon.html for how-to-fix tips

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Plons wrote:
I *never* make stupid mistakes ...

Nard
:D :lol:

Yeah, I am so tempted to say that one of mine has a PhD in Criminology, but that confession might be misconstrued :lol:

Ross McKenzie ValuSoft Melbourne Australia

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I once thought I made a mistake...

but I was wrong.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I once thought I was wrong - but I was mistaken.