Michael BOUVY
CTO E-commerce

Arduino Ethernet modules and Microchip ENC28J60

arduino
Published on 2013/04/21

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.

Michael BOUVY

I'm Michael BOUVY, CTO and co-founder of Click&Mortar, a digital agency based in Paris, France, specialized in e-commerce.

Over the last years, I've worked as an Engineering Manager and CTO for brands like Zadig&Voltaire and Maisons du Monde.

With more than 10 years experience in e-commerce platforms, I'm always looking for new challenges, feel free to get in touch!