Introduction: Arduino Webserver Controller Using Ethernet ENC28J60 and Arduino

Picture of Arduino Webserver Controller Using Ethernet ENC28J60 and Arduino

Based on its datasheet, ENC28J60 adopts IEEE 802.3 compatible with ethernet or can be used as an ethernet controller. In other words, ENC28J60 is a micro (chip) with one function that is able to encapsulate (re: encapsulation, generally is a process that makes one type of data network packets into other data types) data using internet or intranet network according to chip configuration which works at 20MHz-25MHz frequency and voltage between 3.14VDC-3.45VDC.

Here's an example, the tutorial of Arduino webserver controller using ENC28J60 Ethernet Module.

Step 1: Materials You Need

Picture of Materials You Need

You will need:

  1. ENC28J60 Ethernet Module
  2. Arduino Uno
  3. 5 Volt 1 Channel Relay Module
  4. Library ENC_28J60 click here.
  5. Library EthernetShield click here.

Step 2: Setup

Picture of Setup

Connect each component according to the schematic drawing above. And make sure there is no wrong connection. Next, download the file libraries in the document tag above and install. Due to errors when entering the program on the website, because it does not support the existence of html language on the contents of the context, so, for the program download on here.

Step 3: Try It!

Picture of Try It!

Furthermore, in its use, connect the ENC28J60 ethernet module to the local network using the router, then open the web browser on the laptop or other devices such as tables / smartphones connected to wifi on a network. Then access the IP address you use in the above program. Here we use IP address 192.168.3.55. The picture above is a screen shot example of its webserver display.

To activate the relay, press the ON LED button and to turn it off press the LED OFF button. From this project you can develop to send a data to the server through a network that is connected directly to the internet.

Step 4: Check the Video to Know More

Comments

diy_bloke (author)2017-10-05

Good write up. I have several ENC28J60 boards and modules and they are fun to work with. The ENC28J60 is a nifty chip and it used to be a cheap way of adding internet connectivity to an arduino.
I say 'used to be' because there are better options. The ENC28J60 is more memory hungry than the W5100. At one time there was a huge price difference with the W5100 boards and modules being much more expensive, but nowadays the W5100 modules are sometimes even cheaper than the ENC28J60 modules.
Nevertheless if you have the enc28J60, there is no reason not to use it.

Other than the listed libraries, consider the UIPethernet library by Norbert Truchess. It allows one to use programs written for the W5100, with a 28J60, simply by changing the library name

sfeelectronics (author)diy_bloke2017-10-06

Hi diy_bloke, thanks so much for the feedback. We use ENC28J60 in this project because it's so cheaper in our country. But, of course we will consider to use W5100 in the next project in regard to its advantage, and we will try to use the UIPethernet library by Norbert! Thanks also for Dentella's blog referring. We could use this as a base for our upcoming project. Have a good day. :)

diy_bloke (author)sfeelectronics2017-10-06

please do not see my earlier remark as criticism. I have used and am still using the enc28j60 as well. I cannot judge the price difference in yr country but if you have access to aliexpress, check it out there. Ofcourse depending on where you are maybe aliexpress is not an option or still more expensive than locally.
Regardless, you already built your webserver so my comment was more aimed at those that maybe still need to buy a controller.
Nevertheless, great instructable on a very usefull chip

sfeelectronics (author)diy_bloke2017-10-06

hi diy_bloke, of course, we didnt see your remark as criticsm.. :)
thanks for the feedback.. :)

diy_bloke (author)2017-10-06

Can I also politely refer to Luca Dentella'sblog who published a lot on the ENC28J60

http://www.lucadentella.it/category/enc28j60-ardui...

About This Instructable

1,006views

7favorites

License:

Bio: Electronics Component - PCB [Design, Printing, Inserting] - Electronic Programming
More by sfeelectronics:Display Temperature on P10 LED Display Module Using ArduinoKeypad Access 4x4 With ArduinoDisplay Text at P10 LED Display Using Arduino
Add instructable to: