Project Files of ENC28J60 Ethernet Module Library for Proteus: Arduino Web Server
enc28j60-ethernet-module-tep-v1-0-41020518ea954b2680b627729849ea11.zip

ENC28J60 Ethernet Module Library for Proteus V1.0
ENC28J60 Ethernet Module Library for Proteus V1.0 comes as a ZIP archive of 12 files (2.9 MB, 6.3 MB unpacked) holding Proteus library files, simulation model DLLs, a Proteus simulation, an Arduino sketch and compiled HEX firmware.
- LIBProteus library
- DLLProteus model
- DSNProteus simulation
- INOArduino sketch
- HEXHEX firmware
Description
ENC28J60-Ethernet-Module-Library-for-Proteus-v1.0.zip with the ENC28J60 Ethernet module in Proteus (the Microchip ENC28J60 on SPI for the EthernetENC library - the TCP/IP stack runs on the Arduino: ARP, DHCP or a fixed address, DNS, TCP client and server, UDP, ping; SCK / SI / SO / CS, RESET, INT, VCC 3.3 V; an RJ45 cable to a virtual router with the jack's LEDs, a PWR LED and a phone panel; TEPENC28J60.LIB and TEPNET.DLL), our Arduino UNO V4.0 (ArduinoV4TEP.LIB, TEPARDUINO.DLL), our Laptop and Mobile WiFi Monitors (TEPLAPTOP.LIB, TEPMOBILE.LIB), the web server demo project with its HEX file, the sketch and a README.
File Structure
5.5 KB201.9 KB21.2 KB39.5 KB13.1 KB883.5 KB2.1 MB28.6 KB58.2 KB883.5 KB2.1 MB19.5 KBGallery12 images from the tutorialOpen the tutorial
The circuit, the board and the results as they appear in ENC28J60 Ethernet Module Library for Proteus: Arduino Web Server. Open an image for its full size.












README
ENC28J60 ETHERNET MODULE LIBRARY FOR PROTEUS - V1.0 (THE ENC28J60 MODULE, ETHERNETENC LIBRARY ON SPI)
Designed by The Engineering Projects www.TheEngineeringProjects.com
IMPORTANT LINKS
Article (read it first - pictures, step by step, every feature explained):
https://www.theengineeringprojects.com/2026/10/enc28j60-ethernet-module-library-for-proteus.html
Report a bug or suggest a feature (our forum):
https://www.theengineeringprojects.com/forum/category/enc28j60-ethernet-module-proteus-library
The demo talks to our Laptop WiFi Monitor and Mobile WiFi Monitor (both included) - their articles:
https://www.theengineeringprojects.com/2026/10/laptop-wifi-monitor-library-for-proteus.html
https://www.theengineeringprojects.com/2026/10/mobile-wifi-monitor-library-for-proteus.html
The demo uses our Arduino UNO V4.0 (included) - its article:
https://www.theengineeringprojects.com/2026/10/arduino-uno-library-for-proteus-v40.html
The WIZnet modules (the TCP/IP stack in the chip) - our libraries for them:
https://www.theengineeringprojects.com/2026/10/w5500-ethernet-module-library-for-proteus.html
https://www.theengineeringprojects.com/2026/10/w5100-ethernet-module-library-for-proteus.html
Support us (the libraries are free):
https://www.theengineeringprojects.com/donate
FILE STRUCTURE
ENC28J60-Ethernet-Module-TEP-v1.0/
|-- Proteus Library Files/
| |-- ArduinoV4TEP.LIB 201.9 KB our UNO V4.0, to LIBRARY
| |-- TEPENC28J60.LIB 21.2 KB the ENC28J60 module, to LIBRARY
| |-- TEPLAPTOP.LIB 39.5 KB the laptop, to LIBRARY
| |-- TEPMOBILE.LIB 13.1 KB the phone, to LIBRARY
|-- Proteus Model Files/
| |-- TEPARDUINO.DLL 883.5 KB the UNO V4.0, to MODELS
| |-- TEPNET.DLL 2.11 MB module + monitors, to MODELS
|-- Proteus Simulation/
| |-- ENC28J60_Web_Server.hex 58.2 KB the UNO of the demo
| |-- ENC28J60-Web-Server-with-Laptop-and-Mobile.pdsprj 28.6 KB the demo + PC + phone
| |-- TEPARDUINO.DLL 883.5 KB copy of the model
| |-- TEPNET.DLL 2.11 MB copy of the model
|-- Arduino Code/
| |-- ENC28J60_Web_Server/ENC28J60_Web_Server.ino 5.5 KB UNO sketch (EthernetENC)
|-- README.txt ~17.8 KB this file
Total: 6.32 MB (unzipped). The C++ source code of the models is not included.
WHAT IS IT?
The blue ENC28J60 Ethernet module as one Proteus part: a Microchip ENC28J60 (an Ethernet controller with its own 10
Mbit/s PHY and an 8 KB packet buffer), a HanRun RJ45 jack with its magnetics and two LEDs, a 25 MHz crystal and a 2x5
header, plus a red PWR LED (our addition). Unlike a WIZnet chip, the ENC28J60 only sends and receives Ethernet frames:
the TCP/IP stack (uIP, inside the EthernetENC library) runs on the Arduino itself.
* The pins work as on the real module: SCK, SI and SO (SPI - D13 / D11 / D12 on an UNO; SI is the chip's data in =
MOSI, SO its data out = MISO), CS (EthernetENC uses D10 unless the sketch calls Ethernet.init(pin)), RESET (LOW
holds the chip in reset; the module pulls it up), INT (LOW while an enabled interrupt flag is up - EthernetENC
enables the packet flag but polls), WOL (HIGH), CLKOUT (not driven), VCC (3.3 V - the module has no regulator) and
GND.
* The model is the ENC28J60 itself, as EthernetENC (2.0.x) drives it: the SPI instructions (read / write control
register, read / write buffer memory, bit field set / clear, system reset), the four register banks (a MAC / MII
register read clocks a dummy byte out first, as on the chip), the 8 KB buffer with its read and write pointers, the
receive ring with its 6-byte header per packet and the packet counter, the receive filters, transmit with its status
vector, the DMA copy and checksum, the PHY registers (the link in PHSTAT2, the LED setup in PHLCON) and the
interrupt flags. It runs EthernetENC from the Arduino IDE unchanged - Ethernet.hardwareStatus() is EthernetENC28J60.
* The network behind the cable speaks frames with the Arduino's stack: ARP (the router and every device answer; a
fixed address is found with an ARP request when somebody looks for it), the router's DHCP (unicast answers, as
EthernetENC asks for them), DNS and NTP, ping (answered by the Arduino's stack while the sketch lets the library
run), UDP both ways and TCP both ways (client and server). EthernetENC's filter lets only ARP broadcasts in: a UDP
broadcast from the laptop is dropped, as on the real module.
* Ethernet.linkStatus() reads the PHY: LinkON with the cable in, LinkOFF with it out.
* The LEDs: the red PWR LED (power) and the jack's green and yellow LEDs, which show what the sketch asks in PHLCON -
EthernetENC sets the green one to the link and the yellow one to the TX / RX activity; the cable's blue plug in the
port while it is in.
* The cable: the CABLE property (IN / OUT), a click on the RJ45 jack, or CABLE IN / CABLE OUT in the panel. Out:
nothing gets through; the TCP connections wait - back within 20 s, they carry on; after 20 s without a link they are
dropped. In: on the network at once, the same address.
The part is drawn our way at the module's size (the blue board, the RJ45 jack at its left end, the 2x5 header at its
right end); its pins leave the right edge, each named beside its end. Modules from different makers order the 2x5
header differently - wire by the names.
ONE DEVICE (search "ENC28J60" in Pick Devices):
ENC28J60 ETHERNET MODULE "ENC28J60 Ethernet Module (EthernetENC library)" V1.0 (category Peripherals > Ethernet),
prefix U, model TEPNET.DLL
The panel (a TEP pop-up window, the look of the TEP Serial Monitor - our own header, no Windows title bar; it opens at
Run, the PANEL pad or the ENC28J60 opens it again). Tabs:
Wi-Fi a phone with three tabs - BROWSER (OPEN MODULE PAGE: the phone opens the page the Arduino serves on
PAGEPORT), ROUTER (the router's clients - the module is listed as LAN) and CLOUD (the internet host's
requests); ETHERNET CABLE IN / OUT; the cards MODULE (the chip, MAC, the frame rate, the LEDs), ETHERNET
(router, status, address - DHCP or fixed - and the receive filter, the link) and TRAFFIC
SPI the frames on the wire, newest first: what the Arduino's stack sent (TX) and what reached its buffer (RX),
each explained (ARP, DHCP, DNS, TCP SYN / data / FIN, UDP, ping), the chip's setup (system reset, the
filters, the MAC, the LEDs, the revision); the link, frames and SPI bytes; the Arduino's connections;
RESET and INT (with the packets waiting in the receive buffer)
Test web request test (the phone opens the page n times, measured) and cable test (the cable pulled for 3 s,
measured)
Settings theme, text size, open at Run, window size
Help report a bug, suggest a feature, article, updates, donate, forum; Copy diagnostics
TEST STATUS
V1.0: verified in Proteus 8.5 on 23 Oct 2026 (the demo project as shipped, the windows off-screen, posted clicks and
keys), and on the PC with the real EthernetENC 2.0.5 (its ENC28J60 driver and the uIP stack) against the model: the
real demo sketch (19 checks: the chip found, the filter, the LED setup, the fixed address found by ARP, the pages, the
LED by a link, the JSON, the ping, a UDP broadcast filtered and a unicast taken, the monitor's commands, the cable out
and back, the panel's phone) and a client sketch (7 checks: DHCP, DNS, an HTTP upload to the internet host, NTP, a TCP
connection to the laptop). What the Proteus run showed:
* ENC28J60_Web_Server: "ENC28J60 Web Server", "Chip: ENC28J60 (EthernetENC: the TCP/IP stack runs on the UNO)",
"Link: ON", "Fixed IP: 192.168.1.60" and "Web page: http://192.168.1.60/ (JSON: /json)". EthernetENC resets the
chip, sets its filters, the MAC, the LEDs (PHLCON 0x476) and finds it (EREVID, rev. B7) 0.12 s after Run; PWR and
the jack's green LED (the link) lit, the yellow one (TX / RX) flashes with the frames.
* A fixed address is silent: the panel shows "no address seen yet" until somebody looks. The laptop's browser opened
http://192.168.1.60/: the LAN asked "who has 192.168.1.60?" (ARP) at 5.42 s, the UNO's stack answered, the module
was on the LAN and the page came: "LED on D7: OFF", LED ON / LED OFF, "A0: 358 (1.75 V)", "Requests: 1 - up 5 s"
(HTTP 200, 318 bytes in 0.59 s with the ARP wait).
* The laptop's ping: 4 of 4 answered by the UNO's stack (7 ms, TTL=128 - uIP sends the echo back with the request's
TTL).
* The phone's page, then its LED ON link: "GET /on from 192.168.1.41", "LED ON (the web page)", the LED D1 on D7 lit
on the sheet. The laptop's /json: {"led":1,"a0":358,"volts":1.75,"requests":5,"uptime":15} (128 bytes in 0.06 s).
* "hello everyone" from the laptop's UDP terminal to 192.168.1.255:4210: "dropped by the receive filter" on the SPI
page - EthernetENC lets only ARP broadcasts in.
* The monitor: OFF "LED OFF (the monitor)", STATUS "IP 192.168.1.60, link ON, LED OFF, A0=358, requests 5", HELP.
* The panel: the phone's OPEN MODULE PAGE (HTTP 200, 319 bytes); the router lists the module as a LAN client; web
request test 3 of 3 (connect 5.0 - 5.1 ms, full page 86 - 88 ms); cable test 3 of 3 - off the LAN at once, back
0.005 s after the cable went back in; the laptop's page loads again afterwards.
* Speed: the UNO + the module + the laptop + the phone about 0.25 - 0.35 x real time on our PC (EthernetENC reads the
ENC28J60's registers about 75,000 times a second of simulation while it waits for packets).
INSTALLATION (about 3 minutes)
1. Close Proteus. Extract the WHOLE ZIP to a normal folder (e.g. Desktop).
2. Copy everything in "Proteus Library Files" to the LIBRARY folder of Proteus, for example:
C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\LIBRARY
(on some PCs: C:\ProgramData\Labcenter Electronics\Proteus 8 Professional\LIBRARY - use the folder that already holds
Proteus's own .LIB files). TEPENC28J60.LIB is the ENC28J60 module; ArduinoV4TEP.LIB our Arduino boards V4.0 (the UNO
of the demo); TEPLAPTOP.LIB and TEPMOBILE.LIB our Laptop WiFi Monitor and Mobile WiFi Monitor.
3. Copy TEPNET.DLL and TEPARDUINO.DLL from "Proteus Model Files" to the MODELS folder (...\Proteus 8
Professional\MODELS) - replace older copies (this TEPNET.DLL is the first one that knows the ENC28J60; it still runs
our W5100 / W5500 modules, our Ethernet shields and every Wi-Fi part of the series).
4. Delete TEPENC28J60.IDX, ArduinoV4TEP.IDX, TEPLAPTOP.IDX and TEPMOBILE.IDX from the LIBRARY folder if they are there.
5. The Arduino IDE (only to compile your own sketches - the demo has its HEX file): install EthernetENC with the Library
Manager (Sketch > Include Library > Manage Libraries, search "EthernetENC") and include <EthernetENC.h>.
6. Start Proteus. In Pick Devices (P) search "ENC28J60".
RUN THE DEMO
Keep the .hex file, TEPNET.DLL and TEPARDUINO.DLL beside the project in "Proteus Simulation".
ENC28J60-Web-Server-with-Laptop-and-Mobile.pdsprj - ARD1 our UNO V4.0 (ENC28J60_Web_Server.hex, its monitor at 9600
bps) with RV1 (POT-HG 10k) on A0 and R1 (220R) + D1 (LED-GREEN) on D7, and U1 the ENC28J60 module: SCK, MISO (SO),
MOSI (SI) and ETH_CS (D10) by net labels, VCC to +3.3V, GND to ground, RESET, INT, WOL and CLKOUT free. PC1 the Laptop
WiFi Monitor and MOB1 the Mobile WiFi Monitor - no wires, they are on the router's network; their home page is
http://192.168.1.60/, the laptop's ping box holds 192.168.1.60, its UDP terminal sends to 192.168.1.255:4210.
Press Run. The monitor shows the chip, the link and the fixed address 192.168.1.60. Open the page in the laptop's or
the phone's Browser (Go): the LAN finds the UNO by ARP and the page shows the LED on D7, LED ON / LED OFF and A0; the
links switch the LED; /json gives the same data. Ping 192.168.1.60 from the laptop's Network tab. In the UNO's
monitor: ON, OFF, STATUS, HELP. The panel's SPI page shows every frame.
PINS (beside the module's right edge)
VCC 3.3V power: 3.3 V (on the real module 5 V would damage the ENC28J60; its inputs take 5 V logic)
GND ground
CS chip select (LOW = selected)
SCK, SI, SO SPI (SI = data in = MOSI; SO = data out = MISO, the chip's while CS is LOW, else it floats)
RESET LOW holds the ENC28J60 in reset; free or HIGH = running (the module's pull-up)
INT LOW while an enabled interrupt flag is up (EthernetENC enables the packet flag; it polls the counter)
WOL the wake-on-LAN output: HIGH
CLKOUT the clock output: not driven in the simulation
Without power (VCC and GND) the module is off (the panel shows "no power").
THE DEMO SKETCH (Arduino Code)
ENC28J60_Web_Server Ethernet.init(10); Ethernet.begin(mac, ip) with the fixed address 192.168.1.60; prints
Ethernet.hardwareStatus(), Ethernet.linkStatus() and the address; EthernetServer on port 80:
/ is the page (the LED on D7 with LED ON / LED OFF links, A0 in volts, the request count and the
uptime), /on and /off switch the LED, /json answers {"led","a0","volts","requests","uptime"};
each request is printed with client.remoteIP(); the monitor's ON, OFF, STATUS, HELP.
server.available() runs in every loop: it is what lets uIP answer (ARP, ping, TCP).
PROPERTIES (double-click the ENC28J60 module > Edit Properties)
ROUTER the router the cable goes to - the network name of the Wi-Fi parts (default TEP-WiFi)
CABLE the Ethernet cable at Run: IN (default) or OUT
PANEL the phone's tab at start (BROWSER, ROUTER, CLOUD)
PAGEPORT the port OPEN MODULE PAGE opens (default 80)
CLOCK the clock of NTP and the panel: PC (UTC), or a start time YYYY-MM-DD HH:MM:SS (UTC)
Every run starts again from the properties. With DHCP the address follows the part's number: U1 192.168.1.101, U2 .102
... - give every network part its own number, and a fixed address that no other part uses. The laptop is 192.168.1.21,
the phone 192.168.1.41.
LINKS.INI (OPTIONAL)
The Help page cards open web pages. To point them somewhere else without a new DLL, put a text file named links.ini next
to TEPNET.DLL with lines KEY=URL, for example:
ARTICLE=https://www.theengineeringprojects.com/...
Keys: WEBSITE, FORUM, BUG_REPORT, FEATURE_REQUEST, ARTICLE, USER_GUIDE, UPDATE_CHECK, DONATE. Only http:// and https://
links are used; lines starting with # are comments.
TROUBLESHOOTING
* hardwareStatus() is EthernetNoHardware: check SCK / SO / SI, CS (and Ethernet.init(pin) when it is not D10), VCC and
GND, and that RESET is not held LOW.
* The page never opens: the sketch must call the library often (server.available() in every loop) - with a long
delay() in loop() nothing answers, not even ARP or a ping. A fixed address is found only when somebody asks for it.
* DHCP never answers: the cable is out (the panel shows CABLE OUT; Ethernet.linkStatus() is LinkOFF) - put it in.
* A UDP broadcast never arrives: EthernetENC's filter drops broadcasts (only ARP gets in) - send to the module's
address.
* A paused simulation shows the SIMULATION LOG: click the Schematic Capture tab.
* No panel: click the PANEL pad (or the ENC28J60), or turn "Open the panel at Run" back on (Settings).
BUG REPORTS AND FEATURE REQUESTS
Please post them in our forum with a screenshot, the serial monitor text, the simulation log and the Copy diagnostics
text of the panel:
https://www.theengineeringprojects.com/forum/category/enc28j60-ethernet-module-proteus-library
SUPPORT US
This library is free. If it saves you time, please support our work:
https://www.theengineeringprojects.com/donate
WEBSITE
https://www.theengineeringprojects.com/
LICENCES AND THIRD-PARTY NOTES
* The ENC28J60 module model, the Laptop / Mobile WiFi Monitors and the network (TEPNET.DLL), the Arduino board models
(TEPARDUINO.DLL), the symbols and artwork (TEPENC28J60.LIB, ArduinoV4TEP.LIB, TEPLAPTOP.LIB, TEPMOBILE.LIB) are made
by The Engineering Projects. The UNO's processor is Proteus's own AVR model (Labcenter); RV1, R1 and D1 are Proteus's
own parts. The models use only standard Windows libraries; no Visual C++ redistributable is needed. The C++ source
code of the models is not included.
* ENC28J60_Web_Server.hex contains the Arduino AVR core 1.8.6 with its SPI library (LGPL 2.1,
https://github.com/arduino/ArduinoCore-avr/tree/1.8.6) and the EthernetENC library 2.0.5 by Norbert Truchsess and
Juraj Andrassy (GPL 3; the uIP stack by Adam Dunkels, BSD; source:
https://github.com/Networking-for-Arduino/EthernetENC, tag 2.0.5). The libraries are not shipped; the sketch is in
Arduino Code.
* 203.0.113.10 is a documentation address (no real server).
* Proteus is a product of Labcenter Electronics and is not included. ENC28J60 and Microchip are names of Microchip
Technology; HanRun of Zhongshan HanRun Electronic. This library is not made or endorsed by Microchip or Labcenter.
REBUILDING THE FIRMWARE (OPTIONAL)
The HEX file is supplied; the Arduino IDE is not needed to run the demo. Open the sketch in Arduino Code with Tools >
Board > Arduino Uno (EthernetENC installed), then Sketch > Export Compiled Binary. Flash / RAM: ENC28J60_Web_Server
21,170 / 1,036 bytes (of the UNO's 32,256 / 2,048; the rest of the RAM is the stack). Put the exported HEX in place
of the simulation's .hex.
MODEL SCOPE AND LIMITS
Modelled: the ENC28J60's SPI instructions, its four register banks, the 8 KB buffer and its pointers, the receive ring,
the receive filters (unicast, broadcast, multicast, pattern match - the hash table and magic packets never match),
transmit with the status vector, the DMA copy and checksum, the PHY's link, LED setup and identity, the interrupt flags
and the INT pin, the system reset and the RESET pin; the frames of ARP, DHCP, DNS, NTP, ICMP echo, UDP and TCP between
the Arduino's stack and the rest of the network; the PWR LED, the jack's LEDs and the cable; the router, the phone and
the internet host shared with every TEP network part. Not modelled: the CLKOUT clock, wake-on-LAN, collisions, flow
control frames, power-save timing, the supply's voltage and current. The model's own choices: the cable goes to the
same router as the Wi-Fi parts; a frame takes its 10 Mbit/s time on the wire; the far end of a TCP connection sends one
segment at a time; with the cable out the TCP connections are kept for 20 s; the simulation runs below real time.
VERSION
TEP ENC28J60 Ethernet Module library V1.0 (Oct 2026). Device ENC28J60 ETHERNET MODULE (TEPENC28J60.LIB / TEPNET.DLL,
which also runs our W5100 and W5500 modules, our Ethernet shields, our Wi-Fi shields and breakouts, our ESP32, ESP8266,
Arduino and Pico W boards, the ESP-01 family, the ESP-07 / ESP-12 modules, the ESP32-WROOM-32 and the Laptop / Mobile
WiFi Monitors), with our Arduino UNO V4.0 (ArduinoV4TEP.LIB / TEPARDUINO.DLL) and the Laptop WiFi Monitor / Mobile WiFi
Monitor (TEPLAPTOP.LIB / TEPMOBILE.LIB). Demo sketch ENC28J60_Web_Server V1.0.Development1 release
-
V1.0ENC28J60 Ethernet Module Library for Proteus V1.0this page
V1.0 is the only release in the Download Center so far. When a newer version is published, it appears above with its own download page.
Installation8 steps
From the download to a working project, in order. The steps follow what the package contains.
You will need
- Proteus Design SuiteProteus 8 or newer (Labcenter), on Windows
- Arduino IDE1.8 or 2.x, with the board of the tutorial chosen under Tools → Board
- Any archive toolWindows, macOS and Linux extract ZIP files on their own
Steps
- 1
Extract the archive
Right-click enc28j60-ethernet-module-tep-v1-0-41020518ea954b2680b627729849ea11.zip and choose Extract All (or open it with 7-Zip or WinRAR) into a folder you can find again. Keep its folder structure (ENC28J60-Ethernet-Module-TEP-v1.0) as it is.
- 2
Copy the library files into Proteus
Move ArduinoV4TEP.LIB, TEPENC28J60.LIB and TEPLAPTOP.LIB and 1 more and the files into the LIBRARY folder of your Proteus installation: C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\LIBRARY for Proteus 8, or the matching Proteus 7 folder. Older versions keep it under ProgramData\Labcenter Electronics. If Proteus is open, close it first.
- 3
Add the simulation model
Copy TEPARDUINO.DLL and TEPNET.DLL into the MODELS folder next to LIBRARY, so the component can run, not only be drawn.
- 4
Restart Proteus and place the component
Start Proteus, open a schematic, press P (Pick Devices) and search for the component by the name used in the tutorial. It appears with its pins ready to wire.
- 5
Open the sketch in the Arduino IDE
Open ENC28J60_Web_Server.ino, select your board and port under Tools, then Verify. Sketch → Export Compiled Binary writes the HEX file a simulation needs.
- 6
Load the HEX file
In Proteus double-click the microcontroller, set Program File to ENC28J60_Web_Server.hex and run the simulation. For real hardware, flash the same file with your programmer.
- 7
Open the example simulation
Open ENC28J60-Web-Server-with-Laptop-and-Mobile.pdsprj in Proteus to see the wiring exactly as in the tutorial. Check the controller's Program File path, then press Play.
- 8
Follow the tutorial
ENC28J60 Ethernet Module Library for Proteus: Arduino Web Server explains every connection and setting in order; keep it open beside the files while you build.
FAQs9 questionsContact TEP
How do I download ENC28J60 Ethernet Module Library for Proteus V1.0?
Wait for the 30-second guest countdown on this page, then press the download button; the file comes straight from our storage. Members who are logged in skip the wait. If the browser opens the file instead of saving it, use its Save as option.
What is inside the archive?
ENC28J60 Ethernet Module Library for Proteus V1.0 comes as a ZIP archive of 12 files (2.9 MB, 6.3 MB unpacked) holding Proteus library files, simulation model DLLs, a Proteus simulation, an Arduino sketch and compiled HEX firmware. Open the File Structure tab for the full list of 12 files.
What should I do if the download does not start?
Check the browser's download list first; an ad blocker or a company firewall can also hold it back, so try another browser or network. If the file arrives incomplete, download it again. For an installation problem, read the Install tab or tell us in the comments with your software version and the exact error message.
Is this file free?
Yes. Every file in the TEP Download Center is free for learning, personal and student projects. If you share it, link back to this page or the tutorial so others find the latest version.
How do I check that the file arrived complete?
Compare its SHA-256 with the one on this page, 55e4714f2401f2b6acddcb8211b02187a465e97fe130e16801072c77ae6531ae. In PowerShell run Get-FileHash "enc28j60-ethernet-module-tep-v1-0-41020518ea954b2680b627729849ea11.zip"; on macOS or Linux run shasum -a 256 "enc28j60-ethernet-module-tep-v1-0-41020518ea954b2680b627729849ea11.zip". The same value means the file is exactly the one in our storage; a different one means the download broke off, so download it again.
Do I need WinRAR to open the ZIP file?
No. Windows, macOS and Linux open ZIP archives on their own (Extract All, or double-click). WinRAR and 7-Zip work too. Extract the whole archive before using the files.
Where do I put the LIB and IDX files?
Both files go into the LIBRARY folder of your Proteus installation (Proteus 8: C:\Program Files (x86)\Labcenter Electronics\Proteus 8 Professional\LIBRARY; Proteus 7 has the same folder under its own name). Restart Proteus afterwards and search for the component with P.
Which Proteus version does the library need?
The tutorial names the Proteus version the library was made and tested with. Most TEP libraries work in Proteus 7 and Proteus 8; if the component does not appear after a restart, check that both the LIB and the IDX file were copied and that Proteus was fully closed while copying.
How do I get the HEX file into the simulation?
Compile the sketch in the Arduino IDE (Sketch → Export Compiled Binary gives you the HEX next to the sketch), then in Proteus double-click the board, set Program File to that HEX and run.
Members skip the wait. Log in or join TEP.
- 0Total downloads
- 4%Popularity
- ProteusCategory
- 0Comments
- ssyedzainnasirUploaded by
- 23 Oct 2026Uploaded at
55e4714f2401f2b6acddcb8211b02187a465e97fe130e16801072c77ae6531ae

















Comments
0