Saravana Pandian Annamalai
30. May 2017 · Write a comment · Categories: Embedded Software, Sparklet GUI Library, Technology · Tags: ,

Embien has been working on various types of embedded systems including those powered by FPGA’s for a variety of applications. Of late, there are a lot of requirements for GUI Application development on FPGAs for user interaction. In this blog, we introduce our Sparklet embedded GUI library along with our Flint FPGA UI Interface Editor for enabling FPGA for graphics. Also Sparklet running on a Linux powered Intel Cyclone V SX SoC FPGA is demonstrated with a Terasic DE1-SoC-MTL2 kit.

FPGA GUI Application Development

Modern FPGA’s have a multitude of IPs to handle different peripherals interfaces. Most of these FPGAs, called SoC FPGAs have an internal microcontroller core as a hard IP around with LEs are placed for configuration and customization.

Such a design warrants a powerful user interface for communication with the user for a seamless experience. Full fledged Intuitive GUI application development ecosystem is the need of the hour to enable a faster time to market. Developers need to dedicate their effort on FPGA and internal logic developments rather than working on nitty-gritty of FPGA GUI application development.

Sparklet – embedded GUI library is the right fit for such a FPGA based GUI development. Written purely in ANSI C, Sparklet can be ported across platform with minimal effort. The GUI Application development can be done using our Eclipse based Flint tool that supports Windows based emulation as well. The FPGA UI Interface Editor tool generates ‘C’ source files and headers that can be compiled in to the project to get a fully working application within a very short time.

Sparklet being a very modular and extensible design, it is also possible to take advantage of the Graphical acceleration engines with Sparklet to improve the rendering speed and quality.

Sparklet GUI on Intel Cyclone V FPGA

This demo of the Sparklet GUI library runs on a Intel Cyclone V SX SoC FPGA. Some of the salient features of the FPGA include

  • Dual-core ARM Cortex-A9 (HPS)
  • 85K programmable logic elements
  • 4,450 Kbits embedded memory
  • Fractional PLLs
  • Hard memory controllers
  • Multiple display interfaces
  • Multiple USB Host interface
  • Ethernet, UARTs, ADCs etc

The development kit from Terasic, DE1-SoC-MTL2 includes a DE1-SoC development board targeting Altera Cyclone® V SX SoC FPGA, along with a capacitive LCD multimedia color touch panel which natively supports five points multi-touch. The display is a 7-inch TFT LCD with pixel resolution of 800*480 and color depth of 16 million colors (8-bit RGB) along with a    LED backlight.

For such an FPGA based design, the underlying software can be designed with any of the following architectures:

  • Without an OS
  • With a minimal RTOS
  • With full fledged OS like Linux

Sparklet, providing design flexibility, is suitable for use with each of these approaches. The below demo showcases Sparklet running on top of Linux OS.

Though none-of the underlying Graphical engine features are not used in this case, it is possible to do so using the hardware acceleration engine changes.

Thus Sparklet along with Flint makes FPGA GUI application development a lot easier and enables developers work on core functionality there by reducing overall product development time.

About Embien: Embien Technologies is a leading service provider in the Embedded software domain. Our team has rich experience in working with various OS like Linux, Android, Windows CE, FreeRTOS, uC-OS, QNX etc. Learning from our experiences in various application domains, we have conceptualized and created the Sparklet Embedded GUI tool that can be used to develop UI’s faster and smaller.

In today’s world of technology, User Experience/User Interface (UX/UI) of a product is as much important as the functionality offered by the product. The UX/UI is changing fast to accommodate the needs of the customers, especially when it comes to displays. While there are many approaches like Metro Design by Microsoft, design by Apple, Google’s material design captured imaginations of many. Being used in the most shipped smartphone/tablet platform – Android, the material is accustomed to many users across geographies. And in a way, it has become a standard for UX and is even expected in Embedded Systems. In this blog, we will demonstrate a UI based on our Sparklet Embedded GUI library with a theme inspired by Material Design.

Sparklet – A Fast and Low Footprint UI

As discussed above, the visual composition of the GUI and its behavior on interaction is very important aspect of any Human Machine Interface, whether being used for Medical equipment, or for an industrial HMI, or for a Smartphone or an automotive infotainment system. Usability of the system is enhanced by a proper design of the UI so that the necessary information/data is conveyed to the user intuitively rather than explicitly. Apart of the usability, another important factor in UI design is the responsiveness. Users expect their system to be ready to interact with them as soon as the power is switched on. These require a specialized GUI Libraries along with necessary design tools.

Embien’s Sparklet is one of best options that is suited for such requirements. With small foot print – typically in few tens of KB in flash, the Sparklet library is ideally suited for low cost embedded systems. Another major advantage of Sparklet is that it is ready to accept inputs within 1-2 seconds of booting. Accompanied with Flint – an eclipse base IDE, Sparklet is the best option for fast and interactive UI design.

Material Design Inspired Embedded GUI

With increased expectation on UX/UI, Embien has themed the Sparklet Embedded GUI library with the Material Design. Below video show cases the same.

The demo depicts the Sparklet embedded GUI library on the popular Freescale Kinetis K70 MCU. Specification of the system relevant to the GUI is as follows

  • ARM Cortex-M4 core + DSP
  • 128 KB of SRAM
  • 512 KB-1 MB flash
  • On-chip Graphic LCD Controller
  • Capacitive Touch Input

As it can be seen, all the underlying widgets such as List view, Scroll view, Spinners, Edit box, Labels, Buttons, Menu etc. are skinned to Material Design inspired theme. Still the overall interaction is very responsive and meets the requirements of the industry.

The modular design of Sparklet makes it easy to adapt to any theme. Just as the Material Design Inspired Embedded GUI is done, users can customize the Sparklet library to suit their own theme based on the product/company preferences.

About Embien Technologies: Embien Technologies is a leading provider of embedded design services for the Semi-conductor, Industrial, Consumer and Health Care segments. Our innovative solutions like Sparklet Embedded GUI library, eStorm platforms enables customers design their product quickly and beat time-to-market challenges. We also offer design services for embedded software, hardware design, BSP/Driver porting etc. We also do specialized services for GUI design for embedded systems including porting, theming, optimizing, redesigning etc. Embien can be reached at their website.