Arduino Ethernet modules and Microchip ENC28J60

Ethernet Microchip ENC28J60 module

If you’d like to connect your Arduino to a local wired network, you have several options :

This last option is offering a big advantage among others : you can use a bare microcontroller (ie. ATMega328) if you don’t need a “big” Arduino Uno for your circuit, which is my case.

As the WIZnet W5100 chip, which is also part of Ethernet shields, the Microchip ENC28J60 chip uses SPI to communicate with micocontrollers.

It can be wired to an Arduino Uno or ATMega328 as following :

Microchip ENC28J60 Arduino Uno ATMega328
CLKOUT N/C N/C
INT D2 Pin 4
WOL N/C N/C
SO D12 Pin 18
SI D11 Pin 17
SCK D13 Pin 19
CS D8 Pin 14
RESET RESET Pin 1
VCC +3.3V +3.3V
(via voltage regulator)
GROUND GND Pin 8

Unfortunately, this Ethernet module does not work at all with Arduino’s standard Ethernet library provided with the IDE. Fortunatrly, an Arduino (> 1.0 compatible) open-source library exists: EtherCard.

To install it, simply download the library’s ZIP and unzip it into your “libraries” folder of your Arduino IDE installation. Rename it to “EtherCard”.

(Re)start your Arduino IDE, you should now see EtherCard appear in File / Examples.

You can test if your module is properly working by loading the “backSoon” example on your µC / Uno.

When reaching the IP address (configured in your code) in your favorite web browser, you should see a “Back Soon” web page.

About 

Freelance PHP Symfony2 & Magento developer, passionate about programming and electronics.

  • googleplus
  • twitter