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
Sep 23, 2022
When I rejoined Cadence in 2015, we had not yet announced Palladium Z1. But it was basically done, and we announced it a couple of months later. I wrote about the announcement in my post Palladium Z1, an Enterprise Server Farm in a Rack . Next, we created Protium X1 which I c...
Sep 22, 2022
On Monday 26 September 2022, Earth and Jupiter will be only 365 million miles apart, which is around half of their worst-case separation....
Sep 22, 2022
Learn how to design safe and stylish interior and exterior automotive lighting systems with a look at important lighting categories and lighting design tools. The post How to Design Safe, Appealing, Functional Automotive Lighting Systems appeared first on From Silicon To Sof...

featured video

Embracing Photonics and Fiber Optics in Aerospace and Defense Applications

Sponsored by Synopsys

We sat down with Jigesh Patel, Technical Marketing Manager of Photonic Solutions at Synopsys, to learn the challenges and benefits of using photonics in Aerospace and Defense systems.

Read the Interview online

featured paper

Algorithm Verification with FPGAs and ASICs

Sponsored by MathWorks

Developing new FPGA and ASIC designs involves implementing new algorithms, which presents challenges for verification for algorithm developers, hardware designers, and verification engineers. This eBook explores different aspects of hardware design verification and how you can use MATLAB and Simulink to reduce development effort and improve the quality of end products.

Click here to read more

Featured Chalk Talk

Direct Drive: Getting More Juice from Your JFET

Sponsored by Mouser Electronics and UnitedSiC

In this episode of Chalk Talk, Jonathan Dodge from UnitedSiC (now part of Qorvo) and Amelia Dalton discuss how you can take full advantage of silicon carbide JFET transistors. They delve into the details of these innovative transistors including what their capacitances look like, how you can control their speed and how you can combine the benefits of a cascode and a directly driven JFET in your next design.

Click here for more information about UnitedSiC UF4C/SC 1200V Gen 4 SiC FETs