Embedded Graphics Library and Visualization Toolkit for ARM-based Linux Systems
(Beagle Bone, Raspberry Pi, ARM6 and ARM7 boards)

Free Community Edition

Click here to download Community Edition
Click here to run online demos (Java)
Click here to run online mobile demos (AJAX)
Click here for tutorials and documentation
Click here for Supported Platforms
Click here for the Community Edition License
Community Edition Discussion Group

The GLG Toolkit is an extremely flexible and robust graphical framework for building elaborate visual simulations and dynamic graphical screens that display real-time data.

The Embedded Edition of the Toolkit provides support for ARM processors and embedded boards. Both ARM6 and ARM7 architectures are supported, including the Beagle Bone and Raspberry Pi boards. The Embedded Edition supports all features of the Toolkit, making it easy to develop an application that can be run on both desktop and embedded devices.

The Free Community Edition of the GLG Toolkit is a fully functional version of the toolkit containing a complete set of tools for developing embedded graphics and elaborate HMI interfaces for embedded devices.

The Community Edition
includes a graphical  editor, a large number of pre-built components and a native C/C++ library for using the HMI screens into an application. The GIS component is also provided, as well as a Java class library for developing Java and Web applications. The Toolkit's run-time library can be easily integrated into existing applications, making it an ideal tool for developing embedded graphical interfaces.

Click here for more information.

Point and Click Graphical Editor

GLG Graphics BuilderThe GLG Graphics Builder is an interactive graphical editor for creating animated graphical drawings, elaborate simulations and HMI screens. Using the Builder, a developer can draw graphical objects, define their properties, as well as attach dynamics and define resources for animating the drawing with real-time data.

The GLG drawings are screen resolution-independent, which makes it possible to deploy them on a wide range of displays - from large monitors to embedded LCD displays. Drawings created with the Builder can be reused between desktop and embedded applications. For convenience, the drawings are usually created on the development system on the desktop, but the Builder can also be run on the embedded board itself, if necessary.

The graph, dial and meter widgets are available in the Graphics Builder for drag and drop editing via the widget palettes. New widgets and custom symbols may be created with the Builder and added to the Builder's palettes as reusable components.

The prototype mode of the Graphics Builder may be used to animate a drawing or widget with real or simulated data. The run command of the Builder has a variety of options for supplying data. For samples of run commands, use Ctrl-Click in widget palettes to load widget drawings with the default run commands, then click on Run in the toolbar to prototype. A custom editor extension DLL can also be used to supply data and handle user input, allowing to prototype a complete application right in the Builder.

Click here for more information.

Run-Time: C/C++ Library

The Toolkit provides native C/C++ libraries for the run-time deployment. on a variety platforms, including ARM-based embedded devices and boards. An application can be developed on a desktop system and then compiled for the embedded ARM device. Both ARM6 and ARM7 architectures are supported, including the BeagleBone and Raspberry Pi boards.

The GLG library is used by an application to load, display and update the HMI screens with real-time data at run time. The library provides a concise but extensive programming API that allows developers to configure the HMI displays at run time, as well as to handle user interaction with the displays.

Java Class Library for Web Deployment

A Java version of the GLG library may be used to create a cross-platform version of an application that can also be deployed on the Web in a Web browser.

The GLG drawings can be reused between the C/C++ and Java versions of the application. The Java version of the GLG library provides the same functionality and a similar API  as the C/C++ version,  making it possible to reuse the programming logic and simplify porting an application from C/C++ to Java.


A JavaEE-based Graphics Server is also included and may be used for displaying GLG screens on mobile devices.
The Graphics Server provides a thin-client server-side alternative for displaying dynamic graphics on a web page without the need for browser plugins or Java applets. With the Graphics Server, the graphics is generated on the web server using a Java Servlet and displayed in a browser using only the standard HTML and Java Script.

GIS Map Server

The GLG Map Server library and an integrated GIS component  are also available for embedded ARM devices, makes it possible to deploy a GIS application on a stand-alone embedded system.

When used with the Toolkit, an integrated GIS Object renders a map in the background of a GLG drawing and takes care of all chores of zooming, panning and coordinate conversion, while the Toolkit handles rendering of dynamic icons on top of the map and updating them in real time.


The GLG Graphics Builder facilitates interactive setup and rapid prototyping of the map component with no programming, by simply editing GIS objects in the drawing.

The GIS component supports optimized rendering of millions of points, both raster, vector and elevation data, rectangular and orthographic projections, unlimited layering, full alpha-blending, transparency and dynamic attribute thresholding. It is optimized for both the whole globe and small region maps, supports hierarchical tiling, tile cache and automatic layers selection based on zoom thresholds.
Click here for Online Demos
Mobile Process Control
SCADA Viewer
Mobile Circuit Monitoring
Mobile Avionics Dashboard
Real-Time Strip-Chart with Cursor Feedback
Air Traffic MonitoringCustom Process Diagram

Click here for more information on the Community Edition
Click here to Download Community Edition
Click here for Online Documentation