The ENC28J60 Module
Module Overview
There are 10 Pins on the Module that bring out SPI interface and additional functionalities of the ENC28J60 IC. The Module is to be powered from 3.3Volts supply.
The ENC28J60 Ethernet Module is a low-cost ethernet module that offers ethernet connectivity over SPI. This module is different from the ENC28J60 Ethernet Shield only in its form factor and the fact that there is no SD card slot. This module can be interfaced with any microcontroller over SPI. We will see how to use this module with Arduino.
Its been use with the arduino for sometime and there are a number of libraries available to work with the module.
You can download the following zip file and extract its contents to the libraries folder of your arduino installation.
There are 2 folders in this library - etherShield and ETHER_28j60. The
etherShield is a base library and the ETHER_28j60 is a wrapper around
this based library that simplifies the functionalities of the
etherShield library for the beginner. You can program your Ethernet
Shield directly using the etherShield Library however, this library
requires you have a finer understanding of networking and how it works.
We suggest you stick to the ETHER_28J60. You can find documentation on
this here.
Module Overview
There are 10 Pins on the Module that bring out SPI interface and additional functionalities of the ENC28J60 IC. The Module is to be powered from 3.3Volts supply.
Connections Overview
Connect the pins of the module to pins of your Arduino as in the table
MODULE | InduinoX / Arduino UNO (ATMEGA328) | Arduino MEGA |
VCC | 3.3V Pin | 3.3V Pin |
GND | GND | GND |
CS | SS - PIN 10 | SS - PIN 53 |
SI | MOSI - PIN 11 | MOSI - PIN 51 |
SCK | SCK - PIN 13 | SCK - PIN 52 |
WOL | PIN 5 | PIN 5 |
SO | MISO - PIN 12 | MISO - PIN 50 |
INT | Interrupt 0 - PIN 2 | Interrupt 0 - PIN 2 |
A Simple Test Program
Once you install the libraries, you can try the 'HelloWorld' program
from ETHER_28j60 library. Upload the program, disconnect the board (make
it standalone powered externally!), open your browser and type in the
ip address of the board. (http://192.168.1.15).. Voila! now your arduino
is on the network!
Controlling the InduinoX
The 'HelloWorld' is a simple program now to try the 'WebRemote' example.
This will let you control the 6th pin on the InduinoX. You can modify
this to achieve your web control needs.