PROJECTS
Firmware Development for Graphical User Interface Module
Client:Signify (ex Philips Lighting)

Industry: IoT Devices, Smart Home Appliances, User Interfaces
Technologies and processes we used during this project: STM32, TouchGFX
Summary
Our client engaged us to develop the firmware for a new display module that acts as the primary user interface for their existing communication module. Together, these devices control HVAC systems and a range of other building automation functions.
The key requirement was that the UI must be fully configurable per end-customer: branding, layout, languages, icons and functions, all without any firmware modifications or updates.
Instead of hard-coding screens and assets into the firmware, we designed and implemented a runtime UI engine that can dynamically build the interface based on configuration data received from the client’s main electronic module.
About our Client
Signify is a global leader in lighting and building control solutions, offering innovative products, systems and services that improve comfort, energy efficiency, and sustainability.
Formerly known as Philips Lighting, the company focuses on connected LED lighting, user interfaces, sensors, and other IoT technologies for professional and residential applications.


Firmware Development for Graphical User Interface Module
To meet the project goals, Byte Lab software engineering team designed a firmware architecture that enables runtime UI generation, without relying on statically defined images, widgets or screens inside the firmware. What was done:
Runtime-configurable UI
- No screens, graphics or widgets are hard-coded in the firmware.
- UI assets (images, icons, texts, fonts) are written to the device’s Flash memory at runtime.
- The display module builds its screen pages dynamically, based on configuration messages received from the client’s communication module over a serial interface.
- Layout, navigation flow and control logic can be adjusted per project, without reflashing the device.
Custom communication protocol
A dedicated message protocol defines:
- screen pages and their layout,
- available widgets and their behavior,
- bindings between UI elements and HVAC / building control functions.
The communication module is responsible for sending configuration data and runtime updates; the display module renders and updates the UI accordingly.
Optimised embedded implementation
- Efficient use of STM32 resources (Flash, RAM, CPU) to ensure smooth UI performance.
- Robust handling of asset updates and configuration changes at runtime.
- Careful error handling and fallback behaviour in case of incomplete or invalid configuration data.

Key Outcomes for Signify
- Single hardware platform, many use cases
The same display hardware can be deployed across different markets, brands and building types, with UI tailored purely through configuration.
- No firmware updates for new layouts
New designs, features or branding changes do not require firmware modifications or device return – only updated configuration and assets.
- Faster rollout of new projects
System integrators can adapt the UI to each project’s requirements (languages, branding, functions) with minimal engineering effort.
- Future-ready architecture
The runtime engine and protocol are extensible, allowing support for new widget types and behaviours in future projects.
Explore Next
GET IN TOUCH
Want to achieve results like this?
Thank you, your message has been sent!
We got your message, our team will get in touch with you really soon, until then, explore our website.


