We detect you are using an unsupported browser. For the best experience, please visit the site using Chrome, Firefox, Safari, or Edge. X

In collaboration with our third-party partners, we have developed software solutions optimized for and tested on our microprocessors (MPUs) to speed up your development and shorten your time to market. These software offerings range from a comprehensive Linux® operating system to smaller-footprint real-time operating systems to single-threaded bare metal solutions to provide you with flexible options based on your design requirements. Our combination of software, support resources and training materials provides you with a solid base for developing your 32-bit MPU-based application.

Operating Systems

Operating systems generally provide access to a comprehensive set of proven middleware components for functions like networking, graphics and file management. Real-time operation systems support the microprocessor Memory Protection Unit, while Linux offers full support for the Memory Management Unit allowing memory virtualization.

Linux Operating System (OS)

We have created and support a free-of-charge Linux OS offering for our entire portfolio of microprocessors (MPUs). We are committed to the open-source Linux community and provide full coverage of System-on-Chip (SoC) peripherals in the Linux kernel. We also offer AT91Bootstrap and U-Boot bootloaders. The Linux4SAM website contains links to GitHub repositories containing the source code and documentation for all the software components included in our Linux offering. In addition, we regularly work with the Linux, U-Boot, Yocto Project and Buildroot communities to provide mainline support for all our MPUs.


FreeRTOS is a popular Real-Time Operating System (RTOS) ported to our MPUs. FreeRTOS supplies multi-threading capabilities and simplifies development of complex applications. MPLAB® Harmony v3 Core and middleware libraries utilize FreeRTOS through an Operating System Abstraction Layer (OSAL).

Express Logic X-Ware IoT Platform™

Microchip and Express Logic provide comprehensive X-Ware IoT Platform solutions for embedded developers, which include the industrial-grade, deeply embedded IoT THREADX RTOS, FILEX embedded file system, GUIX embedded Graphical User Interface (GUI), NETX and NETX DUO embedded TCP/IP, and USBX embedded USB solutions.

Graphics Development Software

To complement our software for Linux OS and bare metal designs, we offer graphics software solutions that are free to design with and use and that are also royalty-free. These graphics solutions are designed to enable code portability while also making maximum use of Graphics Processing Units (GPUs) and multi-layer overlay graphics controllers. Creating professional-looking embedded Graphical User Interfaces (GUIs) with cost-efficient 32-bit microcontrollers (MCUs) and microprocessors (MPUs) has never been easier when you use one of our graphics solutions.

Ensemble Graphics Toolkit

Ensemble Graphics Toolkit (EGT) is a free, open-source C++ Graphical User Interface (GUI) development tool that is optimized to provide a high-performance user experience with our MPUs running the Linux OS. EGT is a complete application-level graphics solution that is integrated with our extensive mainline Linux ecosystem to help designers of industrial, medical, consumer and automotive displays reduce development costs and time to market. EGT was designed and developed by Microchip, so we are your source for expertise, service and support of the entire graphics stack and hardware. Discover how easy it is to create a cost-effective and low-power modern GUI for your application.

MPLAB® Harmony Graphics Suite

Available within the MPLAB Harmony embedded software development framework, MPLAB Harmony Graphics Suite (MHGS) is specifically designed to take advantage of the capabilities of our 32-bit MCUs and MPUs. The tight integration between MPLAB X Integrated Development Environment (IDE), MPLAB Harmony embedded software development framework and MHGS produces an enhanced, interactive development environment so you can focus on creating and debugging your application-specific code. This leads to lower overall development costs, a shorter time to market and higher-quality products.

Bare Metal

You don’t necessarily need an operating system to operate an MPU. If you are running a single-threaded application and want to maximize data processing, you may want to use bare metal. Our software packages (Softpacks) and MPLAB Harmony v3 provide peripheral libraries and drivers to help facilitate your software development.

MPLAB Harmony v3

MPLAB Harmony v3 provides access to highly-simplified peripheral libraries and device drivers that remove much of the development work from configuring your MPU. It includes the MPLAB Harmony Configurator (MHC) tool, an easy-to-use tool with a GUI that simplifies device setup, library selection, configuration and application development. The Operating System Abstraction Layer (OSAL) allows you to add an RTOS, such as FreeRTOS, if your project requirements change after initial board bring up. Click on the link below to get started with developing a project using the SAMA5D2 MPU with MPLAB Harmony v3.


These software packages deliver a set of C drivers that run on the evaluation kits and exercise all peripherals. They are also very useful for board bring up as well as quick prototyping. They consist of drivers, software services and libraries. Each software module for a Microchip MPU includes full source code, application examples, rich HTML documentation and ready-to-use projects for the GNU GCC and IAR EWARM compilers. You can download the latest software packages and participate in the development on GitHub.