Implementation for Microchip ENC28J60 Ethernet controller

WillR:
Is the software currently working with the Standard Ethershield? (W5100)

My implementation does not support W5100, however, in the future (when I finish the implementation for ENC28J60), I can add some #ifdef so the library can be compiled based on the controller you are using - if do you use W5100, it'll compile the standard library or if you use ENC28J60, it'll use my library.

WillR:
Assuming it is... Does UDP work?

The standard library (which work with W5100) supports UDP. My library (which work with ENC28J60) does not support UDP yet - but I'm planning to do it in next weeks.

WillR:
Is it more reliable than the W5100?

Is the reliability of the W5100 a software issue? In that case does this library fix that problem?

As I don't know so much about W5100 internally, I can't answer to you. But my implementations consumes more memory than W5100's implementation, since ENC28J60 does only Ethernet layer and W5100 implements up to socket layer (so my library needs to "work" more than standard library).

WillR:
Is the ENC28J60 a better shield than the standard W5100 board?
Note: I use the Mega2560 board. The ethershield is the new one with the MicroSD card.

The ENC28J60 shield is unexpensive compared to W5100 (~50% of the cost), so I think even you are using more memory, it is good since you can pay less for have an Ethernet connection in your Arduino. In terms of performance, probably it is slower than W5100, since the TCP/IP stack is implemented in hardware in W5100 and is being implemented (I'm implementing) in software in ENC28J60.