feature article
Subscribe Now

Art Majors vs. Programmers

Express Logic GUIX Brings Graphics to Embedded Interfaces

Maybe it’s a left-brain/right-brain thing. Programmers usually aren’t very good user-interface designers. Drawing all those windows, buttons, and scroll bars gives most developers the willies.

Enter GUIX, a new GUI-design tool from Express Logic, the people who make the ThreadX real-time operating system. GUIX brings lightweight GUI widgets to smallish embedded systems, allowing programmers to stick to their programming and leave the GUI gooeyness to the liberal-arts majors.

Astute followers of Express Logic’s oeuvre may be thinking right now, “Wait a minute… don’t those guys already have a GUI tool?” Indeed, they do. PEG-X was for many years the company’s standard GUI-development framework, but it’s being edged out by the newer GUIX. Current PEG-X users are welcome to stick with that product, and Express Logic will happily support them for years to come, but developers new to the GUI landscape are encouraged to start fresh with GUIX.

You see, PEG-X always sat a bit uneasily in the Express Logic product catalog. It wasn’t an in-house product but was licensed from Swell Software and sold through multiple channels. If you got your copy of PEG from Express Logic, it was called PEG-X, but it was otherwise an unvarnished copy of Swell’s product. On the plus side, that meant PEG was available from, and supported by, multiple vendors. But on the down side, PEG-X was never developed specifically for the ThreadX operating system. By necessity, PEG was OS-agnostic, running on multiple RTOSs and multiple CPU architectures. Its APIs and calling conventions were Swell’s, and not necessarily tuned to the way ThreadX does things. It fit, but it wasn’t custom couture. It also didn’t help that Swell Software was later acquired by Freescale, putting PEG’s independence in doubt.

That’s where GUIX comes in. Unlike PEG-X, GUIX was developed from the ground up to work with ThreadX and only ThreadX. It adheres to the company’s established calling conventions; the GUI functions now look like native RTOS functions instead of third-party code. As a result, GUIX is smaller than its predecessor. It no longer carries the baggage necessary to support multiple operating systems, various file systems, and different memory-allocation schemes. That makes its memory footprint smaller and its processor demands lighter.

GUIX is also smaller because it does less – and that’s a good thing. PEG was first created 15 years ago, back in 1998 when the embedded-GUI world was very different. Its initial design goal was to help embedded designers build something that looked like Windows 95. Desktop-style title bars and dialog boxes were what everybody wanted (along with big sideburns). GUI fashions have changed since then, and GUIX more closely reflects today’s Android- and iOS-influenced zeitgeist. The result is a newer, cleaner, and more efficient runtime that demands less of its host system.

At the same time, GUIX adds a few new features that PEG-X didn’t have. Specifically, GUIX now supports multiple displays with different resolutions and/or color depth. (Previously, multiple displays had to be identical.) GUIX can also import TrueType fonts, so designers don’t have to create their own jaggy character sets.

Because GUIX comes from Express Logic, it’s royalty-free and comes with source code. As with ThreadX and the company’s other –X products, there’s just a simple up-front licensing fee; no money changes hands after that. Currently, GUIX runs only on ARM processors, but, given Express Logic’s track record, more CPU support is likely in the future.

So how does it work? Much like other embedded-GUI tools, to be honest. There are two parts: a small runtime library for the target hardware and a big PC application for the design phase. You drag and drop GUI elements (buttons, graphs, icons, text, etc.) on the PC screen and assign actions or responses to clickable elements. There’s no programming as such, just graphics noodling. The GUI result is then compiled into a form that’s both callable from C code and understandable to the runtime element. You can prototype the complete GUI’s behavior entirely on the PC, for those times when the target hardware isn’t ready.

GUIX isn’t intended to compete with more ambitious graphics standards like OpenGL. It’s a relatively lightweight GUI runtime for “dumb” LCD displays, not 3D accelerators. Think industrial display, ATM, or medical equipment, not handheld video game. But with its flat-rate pricing, code-free design environment, and ability to import existing graphics and fonts, it’s just what non-art majors are looking for. Provided you’re running ThreadX on an ARM processor, GUIX is a good-looking upgrade.  

Leave a Reply

featured blogs
Apr 19, 2024
Data type conversion is a crucial aspect of programming that helps you handle data across different data types seamlessly. The SKILL language supports several data types, including integer and floating-point numbers, character strings, arrays, and a highly flexible linked lis...
Apr 18, 2024
Are you ready for a revolution in robotic technology (as opposed to a robotic revolution, of course)?...
Apr 18, 2024
See how Cisco accelerates library characterization and chip design with our cloud EDA tools, scaling access to SoC validation solutions and compute services.The post Cisco Accelerates Project Schedule by 66% Using Synopsys Cloud appeared first on Chip Design....

featured video

How MediaTek Optimizes SI Design with Cadence Optimality Explorer and Clarity 3D Solver

Sponsored by Cadence Design Systems

In the era of 5G/6G communication, signal integrity (SI) design considerations are important in high-speed interface design. MediaTek’s design process usually relies on human intuition, but with Cadence’s Optimality Intelligent System Explorer and Clarity 3D Solver, they’ve increased design productivity by 75X. The Optimality Explorer’s AI technology not only improves productivity, but also provides helpful insights and answers.

Learn how MediaTek uses Cadence tools in SI design

featured chalk talk

Embedded Storage in Green IoT Applications
Sponsored by Mouser Electronics and Swissbit
In this episode of Chalk Talk, Amelia Dalton and Martin Schreiber from Swissbit explore the unique set of memory requirements that Green IoT designs demand, the roles that endurance, performance and density play in flash memory solutions, and how Swissbit’s SD cards and eMMC technologies can add value to your next IoT design.
Oct 25, 2023
23,059 views