Platform Integration Aspects
Within Embedded Wizard Studio, every GUI application is developed in a platform independent manner. By using a dedicated Platform Package, every GUI application can be generated for a dedicated hardware (target system). The selection and the configuration of a Platform Package is done by using the profile settings within an Embedded Wizard UI project.
In most cases, the following software components have to be compiled and linked together to get a binary for a certain target system:
★Generated code - the generated source code of your Embedded Wizard UI project.
★Graphics Engine - the interface to the underlying graphics system. The Graphics Engine is responsible for displaying Embedded Wizard GUI applications on the target platform using the correspondent color format. The Graphics Engine is provided as source code or as library (depending on your license).
★RunTime Environment - the bridge to the underlying operating system (if applicable) and the environment to manage memory, resources, events and Chora objects. The RunTime Environment is provided as source code or as library (depending on your license).
★Main Loop - The main module that drives the UI application and that provide events to the UI application.
★System infrastructure, device drivers, middleware, control logic, BSP, HAL, etc.
The article Main Loop explains the necessary steps to integrate a generated UI application into your main.c file: It covers the necessary details about the system initialization and de-initialization, the insertion of keyboard and touch events, the update of the display and the main loop to keep the UI application running.
The article Framebuffer Concepts describes the different framebuffer concepts and display integration scenarios, that are used to bring an Embedded Wizard based GUI application on the display.
The article Target Configuration describes all details about the configuration file ewconfig.h which is the central location for all target specific settings.
The article Custom Hardware Integration provides a comprehensive step-by-step guide for integrating Embedded Wizard GUI applications on custom hardware platforms, covering everything from Build Environment selection and memory testing to display driver integration and systematic troubleshooting.
The article Memory Footprint explains all details about the flash memory (ROM) usage and the data memory (RAM) usage. Furthermore, the article contains implementation hints and describes the different configuration macros the can help to optimize the memory footprint.
The article Performance Optimization Guide provides a systematic approach to optimize GUI performance through strategic hardware architecture decisions, software configuration optimization, and intelligent GUI design choices for embedded target systems.
The article Extern Bitmap interface explains how to load and display images dynamically at runtime (such as from SD cards, network sources, or external applications) through a custom interface that you implement according to your specific requirements and hardware capabilities.
The article External Flash Loader describes how to store compile-time known GUI resources (bitmaps, fonts, strings) in external non-addressable flash memory and load them on-demand during runtime, which is essential for systems with limited internal flash capacity.
The article Integrating an External Application provides a comprehensive guide for seamlessly integrating third-party applications (such as web browsers, video players, or games) into your Embedded Wizard GUI through the Applet Interface, allowing external applications to become part of your GUI ecosystem.
The article Blob files explains how to separate constants and resources from the main binary into external Blob files, enabling easy localization, theming, and content updates without rebuilding the entire application - particularly useful for language packs and customer-specific customizations.
The article Embedded Wizard Community License (EWCL) - Developer Guide provides comprehensive guidance for developers using the Embedded Wizard Community Runtime, covering usage rights, source code disclosure requirements, and compliance best practices when developing and distributing applications under the EWCL.
If you are looking for documentation describing aspects of how to exchange data between the GUI application and the underlying system, please see the chapters Integrating with the device and Implementing a Device Interface.
