Embedded Wizard

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Embedded Wizard
Developer(s) TARA Systems GmbH
Initial release 2003
Stable release
V7.10 / March 10, 2016; 16 months ago (2016-03-10)
Development status Active
Written in C++
Available in English
License Embedded Wizard -EULA by TARA Systems GmbH
Website Embedded Wizard

Embedded Wizard is a graphical user interface tool developed and distributed by TARA Systems GmbH for creating graphical user interface (GUI) applications mainly for embedded systems. It provides a WYSIWYG front-end for editing graphics, effects and logic of the user interface and generates ANSI C code for a particular target hardware. Embedded Wizard is independent of a specific graphics hardware or color format and supports object oriented programming.[1]

Embedded Wizard is mainly used to develop GUI applications for consumer electronics products, such as TV sets, Set-Top Boxes, DVD and Blu-ray players, as well as products in the area of industrial automation, household appliances, the automotive industry, vending machines and related products equipped with a graphics display with or without touch screen. A free trial version of the tool is available at the Embedded Wizard website http://www.embedded-wizard.de/tryout.[2]


The first version of Embedded Wizard was released in 2003 by TARA Systems GmbH, an embedded software development house located in Munich, Germany. It was intended as successor of previous GUI tools from TARA Systems GmbH, like M2-Builder. In contrast to former tools, Embedded Wizard enabled platform independent development, introduced an own programming language, called Chora and was designed to support object oriented programming. Since the first version, the tool has been extended with new features like an integrated debugger or support for effects and animations with a 3D perception, so-called lightweight 3D.[3]

Embedded Wizard was designed and developed by Paul Banach and Manfred Schweyer.


Embedded Wizard consists of a WYSIWYG IDE for creating and prototyping the user interface application and a hardware abstraction layer, called platform packages, which are available for various embedded chipsets, operating systems and color formats, and are distributed by TARA Systems GmbH, semiconductor manufacturers and distribution partners. A platform package to run GUI applications on a Microsoft Windows System is included in every Embedded Wizard license.

Each platform package contains a dedicated code generator and resource converter for bitmaps and TrueType fonts, which are adapted to a specific chipset, and - if available - operating system.

Another platform package can be licensed which generates JavaScript/WebGL source code instead of ANSI C.


Following the approach of object oriented programming, each Embedded Wizard project consists of classes which implement a certain part of the design and/or functionality. The class library of Embedded Wizard, called Mosaic, is part of every project and provides the basic functionality for visual objects, for focus handling, layouting, event handling and more.

To create a graphical user interface, Embedded Wizard provides basic functions like rectangles, gradients, lines, (multiline) text boxes, import of bitmaps and TrueType fonts, but also GUI widgets like menus, scrollbars, buttons and sliders. Besides the visual objects, developers can create methods, properties, variables and enums to implement a certain behaviour, using Embedded Wizards own programming language Chora.[4] Embedded Wizard follows the approach of visual programming. All logical elements, like methods, properties or variables are represented in the IDE as visual bricks. This enables developers for example to assign a variable as parameter for a method by drag-and-drop.

The members of the class library can be flexibly extended by developers according to their needs. Naturally, this flexibility requires a profound understanding of the class library's structure and philosophy, and thus a considerable initial training with the tool. However, several tutorials and documentations are available, which provide step-by-step examples for various aspects of the UI development.

Embedded Wizard supports rapid prototyping and testing of the user interface. A debugger for the Chora code is integrated as well. During code generation, the Chora code is transformed into ANSI C code for a specific chipset, using the appropriate platform package. The generated C code needs to be compiled and linked with the runtime environment (RTE) and graphics engine (GE) of the platform package.[5]


The tool is distributed by TARA Systems GmbH as per-developer license. A royalty fee for each device, equipped with an Embedded Wizard application, is not charged.

Platform Packages are available for around 50 different chipsets (as of 2016).[6] Several semiconductor manufacturers have announced to bundle certain chipsets with either a full version or an evaluation license of the tool, e.g. Fujitsu for the Jade micro controller[7]

With the so-called generic platform package, developers can adapt an Embedded Wizard driven GUI to their specific chipset by themselves. A complete list of all supported chipsets and operating systems is found on http://www.embedded-wizard.de.


External links[edit]