Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Using Ethernet in microcontrollers, specifically PIC

Not open for further replies.


Advanced Member level 2
Apr 17, 2011
Reaction score
Trophy points
Activity points
Ethernet is ubiquitous and is also built into many microcontrollers, especially the PIC which this question is about.

I need reference to a resource that will demonstrate what type of applications one can create by using the Ethernet protocol. Ethernet basically provides a means for devices to talk with each other over longer distance and the higher layers used with Ethernet do most of the work for a given application. Is there an archive of projects done using PIC Ethernet or book that you anybody may recommend? I want to see how people use the power of Ethernet in practical applications.

if you do a web search for microcontroller ethernet projects and similar you will get plenty of links

also have a look at
**broken link removed**

Microcontrollers, including those manufactured by Microchip, typically fall into two categories concerning support for an Ethernet interface:

1. Those which provide an embedded Media Access Control (MAC) module and its associated MII/RMII interface.

2. Those which do not provide an embedded MAC.

Concerning the first category, an external physical (PHY) device and magnetics, RJ45 jack, inductive components, etc, typically packaged into a single unit, will still be required to fully implement the Ethernet interface, which comprises the minority of Microchip microcontrollers. Examples of such microcontrollers are, PIC32MZ EC Family or PIC32MX6/7 Families. The PIC18F97J60 offers both an onboard MAC and PHY, therefore only requires external magnetics to complete the Ethernet interface, which is an exception to the general rule.

Concerning the second category, an external Ethernet controller, providing both the MAC and PHY, combined with external magnetics is required to fully implement an Ethernet interface, such as the ENC28J60 or ENC624J600 combined with a MagicJack for the magnetics.

Yet another option is to utilize a device with onboard MAC, PHY, magnetics and an embedded TCP/IP stack, or some variation of the aforementioned, examples of such devices are the Lantronix XPort, Moxa MiiNePort E2 Series and WIZnet Ethernet modules.

@bigdogguru I take it that you have created applications utilizing Ethernet using PIC. Is that true? If so, could you give me example of any project that you have worked on?

@bigdogguru I take it that you have created applications utilizing Ethernet using PIC. Is that true?

Yes, I've designed numerous Ethernet and WiFi based projects.

If so, could you give me example of any project that you have worked on?

Unfortunately not, considering my client base, doing so would quickly land me in the pokey and them throwing away the key.

Besides, your request is much too general to really be of any meaningful service.

First, you must clearly specify the objectives of your project, decide on a base microcontroller, Ethernet implementation and go from there.

If you are only wishing to experiment with Internet connectivity, you might consider obtaining a WiFi based device, typically the implementation of the design is much simpler for examples of embedded webservers or logging and pushing data to online data repository.

If this is the case, you might consider obtaining a couple of ESP8266 based devices which can be programmed using the Arduino environment and can be quickly configured as a simple webserver or online datalogger. I recently purchased a few of the following dev boards and found them to be quite simple to develop basic IoT applications:

NodeMCU LUA Amica R2 ESP8266 Wifi Board

I'm not particularly a big fan of LUA, however the NodeMCU can be quickly adapted to the Arduino IDE and compiler and there are several example applications which you can get up and running rather quickly.

You can also obtain the following ESP8266 based modules on eBay for only a few dollars a piece:

WiFi Module - ESP8266

They offer a much more limited I/O capability, however they can function as an embedded WiFi device for another microcontroller to utilize.

If you are still set on hardwired Ethernet, I would suggest either the WIZnet Ethernet modules or one of the Lantronix Ethernet Modules which can interface with a microcontroller's UART or SPI interface.

As this appears to be your first venture into the area, I do not recommend attempting the implementation of a MAC to PHY, MII/RMII interface, which can be complex and requires considerably more coding and troubleshooting for fully implementation of an Ethernet interface, they also are considerably more difficult to troubleshoot afar, i.e., through posts on a forum.

Which direction you take largely depends on the specific application and the required tasks, also which microcontrollers you have available to you.


Not open for further replies.

Part and Inventory Search

Welcome to