- Hardware
- NXP i.MX8M · Boundary Devices module
- The work
- Long-term platform support
The work
Diagnosis and a versioned release
Audio and GPIO faults found, and Release 1.2.0 shipped
Case data
- Industry
- Healthcare, medical devices
- Product line
- A medical device on a Boundary Devices module
- Scope
- Error logging, library integration, audio debugging, GPIO configuration, versioned release
Error logging
We investigated how Linux captures and logs a fault, so the team can diagnose what the field reports.
Application libraries
We added the Linux libraries the application layer needed.
Audio regression
We isolated the cause of strange audio behaviour that a recent image had introduced.
GPIO
We configured the pins on the module, which enabled the hardware those lines carry.
Release 1.2.0
We built and shipped a stable, versioned update to the platform.
Connectivity, interface and application support
The same platform, grown over time
Case data
- Industry
- Healthcare, medical devices
- Scope
- Real-time clock and serial ports, Wi-Fi and USB OTG, image builds and testing, Qt interface packaging and releases, multimedia, Windows SDK
Clock and serial ports
We added RTC support and two more UART ports, for the peripherals the product had to reach.
Wi-Fi and USB OTG
We added both, which widened the network and peripheral options open to the device.
Image builds
We build and validate a series of images. After each one we test the Qt graphical effects and the audio.
The on-device interface
We package and release the HMI application. We integrated a C++ ORM library into a custom Yocto layer, for structured data on the device.
Multimedia
We added font, GIF and PNG rendering to the Qt interface, and we fixed GStreamer audio playback. The device has a startup tone.
Windows SDK
We prepared and documented one, so the customer's own engineers build against the platform themselves.
A camera platform, built from nothing
A second customer, a second hardware revision, and vulnerability tracking from the start
Case data
- Industry
- Healthcare, connected medical devices
- Product line
- A medical device with a camera, two hardware revisions
- Silicon
- NXP i.MX8M
- Scope
- Custom Yocto layer, graphics and camera integration, SDK, over-the-air updates, disk layout, vulnerability tracking, continuous integration
The Yocto layer
We reworked the custom layer the whole product builds from. It was the largest single piece of this engagement.
Camera and interface
We integrated Qt 6, and we found and fixed the crash in the camera path underneath it.
Over-the-air updates
We integrated UpdateHub and we tested it against the device.
Vulnerability tracking
We integrated CVE tracking into the build. On a medical device this is not something to add later.
Continuous integration
We set it up and we documented it, so the customer's own engineers run and understand the build. It was the second largest piece of work here.
Production imaging
We created the disk layout, and we debugged a failure in the vendor manufacturing tool that writes it.
A second hardware revision
We added support for it, on the same platform and the same build.
SDK
We integrated one, so the customer builds applications against the platform themselves.