MPLAB® Harmony v2 TCP/IP Stack Training


This MPLAB® Harmony TCP/IP stack class was taught at Microchip's Masters Conference in 2017. Some of the slides may not be easily understood because they are intended to be presented by an instructor. That said, you should still be able to learn a lot from it.

Class Abstract

Welcome to the MPLABHarmony TCP/IP stack! If you plan to use a PIC32 in an embedded TCP/IP application, you will need to know how to use the MPLAB Harmony TCP/IP stack. You will learn the parts of the stack fundamental to all TCP/IP applications, how to configure the stack, and how to interface your application to the stack. This class will show you the supported protocols, example demo code, and support utilities provided by the stack. We will describe the architecture of the stack and how it works and show some common stack APIs used to interface your application with the stack (socket programming). You will get hands-on experience with configuring the stack using the MPLAB Harmony Configuration (MHC) tool, and creating a TCP/IP application using a "bare metal" implementation.

Note: This class is not relevant for Microchips stand-alone RN WiFi modules.

For the hands-on exercises, you will use the PIC32MZ EF Starter Kit. The lab manual provides step-by-step instructions for the following:

  • Lab 1: Configure the MPLAB Harmony TCP/IP Stack and test basic network connectivity
  • Lab 2: Implement and test a network application, which will utilize a TCP Client and UDP Server in a real-world application

TCP/IP Stack Library Training Slides, Lab Manual, Source Files, and Solutions


Hardware Tools

Tool About Purchase
PIC32MZ Embedded Connectivity with FPU
Starter Kit

Note there are two different PIC32MZ EC Starter Kits. Demonstration application projects that come with Harmony will use one or the other starter kit. You may need to change the device number associated with the demo project to make it work for the starter kit you have.

  • PIC32MZ Embedded Connectivity with FPU (EF) Starter Kit uses PIC32MZ2048EFH144
  • PIC32MZ Embedded Connectivity with FPU (EF) Starter Kit with Crypto Engine uses PIC32MZ2048EFM144

Software Tools

This project has been verified to work with the following versions of software tools:
MPLAB X IDE v3.61, MPLAB XC32 Compiler v1.43, MPLAB Harmony v2.03b, MPLAB Harmony Configurator Plugin v2.0.3.5

Note: Because we regularly update our tools, occasionally you may discover an issue while using newer versions. If you suspect that to be the case, we recommend that you check that you are using the same versions that the project was tested with.

Archived versions of our tools can be found on the following Microchip websites:
MPLAB Harmony (see "Archived Downloads" tab)
MPLAB X IDE and XC32 Compiler (see "Downloads Archive" tab)
Note that multiple versions of all these tools can co-exist on the same computer.

Development Software Required for Labs

Tool About Installers
Windows Linux Mac OSX
Integrated Development Environment
C/C++ Compiler
MPLAB® Harmony 2.xx
Integrated Software Framework
© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.