Microchip Graphics Suite (MGS) Display Configuration and Drivers

Last modified by Microchip on 2024/05/28 13:55


This section offers detailed instructions and guidelines for setting up a Microchip Graphics Suite (MGS) Harmony project to ensure compatibility and functionality with third-party display modules. This includes steps for integrating hardware drivers, adjusting settings, and customizing the software to communicate effectively with the external display units.

Hardware Setups

MGS Harmony is a scalable suite of tools and frameworks that enables embedded Graphical User Interface (GUI) solutions from entry-level M0+ microcontrollers (MCUs) to graphics-enabled microprocessors (MPUs).

The suite includes a collection of display and touch drivers that allow users to design embedded GUIs for various display modules and interfaces.

Hardware Setups

These hardware setups can be grouped into the following:

ConfigurationDescriptionDisplay Interface
Integrated GraphicsGraphics-enabled MCUs and MPUs with integrated display controllers, 2D GPU and memory.
  • 24-bit RGB
  • LVDS
Low Cost Controller-less (LCC)General purpose MCUs with 16-bit controller-less interface to RGB displays.
  • 16-bit RGB
External ControllersGeneral purpose MCUs with interface to smart display modules that include dedicated display controllers.
  • 16/8-bit parallel 8080
  • 4-wire SPI

For more information about the different devices and development kits that support these hardware setups, refer to the "Microchip Graphics Suite (MGS) Development Kits" page.

Display Drivers

RGB Display Manager and Timing

Depending on the device, MGS Harmony provides device-specific drivers that can be used to configure the RGB interface and timing to an RGB display.

On most graphics-enabled MCUs or MPUs, a dedicated driver is provided for the specific peripheral used to drive the display. Examples are LCD Controller (LCDC) or Graphics LCD (GLCD) display drivers.

External Controllers

MGS Harmony provides an external controller driver generator that can be used to generate a base driver for most smart display modules that have onboard display controllers. Refer to this guide for information on how to generate a driver for display modules that use a 16-/8-bit parallel 8080 or 4-wire Serial Peripheral Interface (SPI).