Microchip logo
  • All
  • Products
  • Documents
  • Applications Notes
×

MPLAB

Ensemble Graphics Toolkit

A Free, Open-Source Linux® GUI Toolkit Optimized for Microchip Microprocessors

Create a Modern GUI with a Lower BOM Cost for an Enhanced User Experience

The Ensemble Graphics Toolkit (EGT) is an open-source graphics software development toolkit that enables you to create modern, responsive Graphical User Interfaces (GUIs) for consumer, automotive, industrial and medical end products. Free of any licensing or royalty fees, EGT is a complete application-level graphics solution that integrates our existing drivers and libraries with the extensive Linux ecosystem. EGT is optimized to provide superior graphical performance and an exceptional user experience with reduced system cost and lower power consumption.

 

EGT-Thermostat-screenshot-0
EGT-Screenshot5
EGT-screenshot-7

 
Get Started with EGT

Tooled to Ease GUI Development

EGT offers these key benefits to simplify the development of your Linux-based GUI:

Enables Modern Design Flow

  • Features modern C++14 design and simplicity, based on mature Linux graphical libraries such as Cairo for 2D vector graphics and utilizing DRM/KMS and X11 backends
  • Imports SVG or HTML5/CSS3 content from your favorite graphical design tools
Ensemble Graphics Toolkit

Rapid Iterations

  • Supports graphical development and simulation on a PC or directly on the target processor, allowing the software developer and the graphics designer to develop and review the GUI quickly and iteratively

Multimedia Support

  • Supports video playback, raster images and vector graphics on all MPUs through mature open source programs such as gstreamer and ffmpeg
  • Supports standard video and image formats and, when available, on-chip acceleration which can be used to optimize performance

Widgets and Animations

  • Provides a rich and extensible default widget set for customizing look and feel of embedded touchscreens
  • Offers themeable widget drawing, colors and fonts with built-in support for basic animations and effects
  • Integrates easily with real physics libraries such as Box2D

Build on the Proven, Free and Open-Source Linux Ecosystem

As a complete application-level graphics solution, EGT is designed to take advantage of the latest Linux graphics stack technology. It is:

Free and Open Source

  • Zero cost and royalty free using the permissive Apache 2.0 open-source licensing framework
  • Leverages popular and mature open-source Linux applications such as Cairo, gstreamer and ffmpeg, which are well accepted by the Linux community and provide feature-rich, stable and thoroughly debugged code

A Proven Solution to Accelerate Time to Market

  • Included as part of our Linux4SAM distribution so you can hit the ground running with a stable, tested and ready-to-go operating system and SDK

We support mainline Linux with Long-Term Support (LTS) for all our MPUs to help you take advantage of the reliability, security and worry-free simplicity of the Linux operating system. As a one-stop shop, we provide the expertise, service and support, including long-term maintenance, for the entire graphics stack and hardware throughout the lifecycle of your products.  

Enhanced User Experience with Lower Power Consumption and Lower BOM Cost

Here’s how your design can benefit from using EGT:

Optimized for Microchip MPUs

EGT provides superior graphics performance on Microchip’s 32-bit MPUs, by taking full advantage of the LCD controller hardware planes as well as hardware blocks such as NEON Media Processing Engine and Hardware Video Decoder when available. The result is optimal graphical performance for Microchip MPUs.

Fast Boot

User interface (UI) applications like automotive instrumentation clusters require a quick start time. EGT provides examples that are able to boot from a cold reset in under 3 seconds.

Lower BOM Cost

EGT is optimized to take advantage of the hardware features of our highly power-efficient MPUs to deliver an excellent user experience using less memory. This power and memory-efficient approach allows you to optimize memory and battery sizes to lower overall system cost.

Getting Started

A variety of documentation, sample applications and code examples are available in the EGT Repository to help you get started quickly. The EGT programmer’s manual may be used as an API reference or for a deep dive into EGT architecture, configuration and debugging. You can also visit the Linux4SAM website for additional information about using EGT with our SAM MPUs or go to our EGT Forum to get answers to your questions from the user community. Refer to the “Getting Started section of the EGT Programmer’s Manual for complete instructions. Use these links to help you get started with EGT

EGT Demos

Complete demos are available as precompiled binaries from the main Linux4SAM repository. Simply program the binary to an SD card and plug the SD card into a supported Microchip MPU evaluation board with attached maXTouch® technology-enabled LCD display.

Current demos include:

EGT-Launcher Demo: This is the default graphics demo from the Linux4SAM repository. It loads several example XML files at startup. The launcher provides  examples of EGT applications such as widget animations and video playback.

EGT-Thermostat Demo: This example thermostat demo supports real-time temperature measurements with the addition of a MikroElektronika Thermo click board. The demo also supports a USB camera input that displays on the LCD.