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
May 17, 2021
In the beginning there was the airfoil. Or more specifically, in 1968 it became clear that something new was needed to help design supercritical airfoils and wings. Today there is serious planning... [[ Click on the title to access the full blog on the Cadence Community site...
May 13, 2021
Samtec will attend the PCI-SIG Virtual Developers Conference on Tuesday, May 25th through Wednesday, May 26th, 2021. This is a free event for the 800+ member companies that develop and bring to market new products utilizing PCI Express technology. Attendee Registration is sti...
May 13, 2021
Our new IC design tool, PrimeSim Continuum, enables the next generation of hyper-convergent IC designs. Learn more from eeNews, Electronic Design & EE Times. The post Synopsys Makes Headlines with PrimeSim Continuum, an Innovative Circuit Simulation Solution appeared fi...
May 13, 2021
By Calibre Design Staff Prior to the availability of extreme ultraviolet (EUV) lithography, multi-patterning provided… The post A SAMPle of what you need to know about SAMP technology appeared first on Design with Calibre....

featured video

Insights on StarRC Standalone Netlist Reducer

Sponsored by Synopsys

With the ever-growing size of extracted netlists, parasitic optimization is key to achieve practical simulation run times. Key trade-off for any netlist reducer is accuracy vs netlist size. StarRC Standalone Netlist reducer provides the flexibility to optimize your netlist on a per net basis. The user has total control of trading accuracy of some nets versus netlist optimization - yet another feature from StarRC to provide flexibility to the designer.

Click here for more information

featured paper

Designing TI mmWave radar made easier using our third-party ecosystem

Sponsored by Texas Instruments

If you are new to radar or interested in replacing your existing sensing technology with radar, there can be a significant learning curve to both designing your product and ramping to production. In order to lower this barrier, Texas Instruments created a third-party ecosystem of radar experts who can provide solutions no matter how much help you need.

Click to read more

featured chalk talk

Maxim's Ultra-High CMTI Isolated Gate Drivers

Sponsored by Mouser Electronics and Maxim Integrated

Recent advances in wide-bandgap materials such as silicon carbide and gallium nitride are transforming gate driver technology, bringing higher power efficiency and a host of other follow-on benefits. In this episode of Chalk Talk, Amelia Dalton chats with Suravi Karmacharya of Maxim Integrated about Maxim’s MAX22700-MAX22702 family of single-channel isolated gate drivers.

Click here for more information about Maxim Integrated MAX22700–MAX22702 Isolated Gate Drivers