May 23, 2019 by Ezequiel Garcia | Blog
With virtme, you can run a custom built kernel on top of our running root filesystem. In this post, we explore another example of virtme in action, and see how to test Video4Linux2 drivers on bleeding edge GStreamer builds.
May 16, 2019 by Andrzej Pietrasiewicz | Blog
Introducing cmtp-responder - a permissively licensed Media Transfer Protocol (MTP) responder implementation which allows embedded devices to provide MTP services and supports a core set of MTP operations.
May 14, 2019 by Adrian Ratiu | Blog
Up until now, talking in-depth about userspace tracing was deliberately avoided because it merits special treatment, hence this part devoted to it. We'll now look at the why of it, and we'll examine eBPF user tracing in two categories: static and dynamic.
May 09, 2019 by André Almeida | News & Events
Earlier this week, Linux Kernel 5.1 was released, and with it came over 13,000 commits from developers all around the world, including Collaborans. This time around, no less than 12 different developers contributed commits (64), sign-offs (111) & more.
May 08, 2019 by Santosh Mahto | Blog
After a successful team effort, the patch enabling the Chromium Embedded Framework (CEF) Ozone builds to run with different platform backends, such as Wayland, has finally landed upstream.
May 06, 2019 by Aaron Boxer | News & Events
After a year-long development cycle, the much anticipated release was made available recently. With it came a number of exciting new features we're especially proud of, including per-element latency tracer and support for planar or non-interleaved audio.
May 06, 2019 by Adrian Ratiu | Blog
Now that we've studied the mainstream way of developing and using eBPF programs on top of the low-level VM mechanisms, we'll look at projects taking different approaches, attempting solutions to some of the unique problems faced by embedded Linux.
May 02, 2019 by Robert Foss | Blog
A previous post introduced the SPURV Android compatibility layer for Wayland based Linux environment. In this post, we're going to dig into how you can run an Android application on the very common i.MX6 based Nitrogen6_MAX board.
April 26, 2019 by Adrian Ratiu | Blog
In part 1 and 2 of this series, we took a condensed in-depth look at the eBPF VM. In part 3, we define the high-level components of an eBPF program, including the backend, loader, frontend and data structures.
April 25, 2019 by Guillaume Desmottes | Blog
GStreamer's logging system is an incredibly powerful ally when debugging but it can sometimes be a bit daunting to dig through the massive amount of generated logs. I often find myself writing small scripts processing gst logs when debugging.
April 24, 2019 by Marius Vlad | Blog
The recent release of version 6 of the Weston compositor has brought with it the weston-debug protocol, a new feature that allows developers and users alike to display on-the-fly various debugging (logging) information generated by the compositor.
April 18, 2019 by Ezequiel Garcia | Blog
A well-known Linux kernel developer once said, a poor craftsman famously complains about his tools, but a good craftsman knows how to choose excellent tools. Here's a python-based tool that integrates git and patchwork, and can greatly improve your toolbox.
April 18, 2023 by Xavier Claessens | Blog
Want to develop your Meson project in a modern IDE? Make sure to install Meson VSCode extension which is now fully functional with the recent release of Meson 1.1.0!
April 05, 2023 by Vineet Suryan | Blog
Labeling errors are common in present open-source 3D perception datasets, which could have impactful consequences. To tackle this issue, we used Carlafox to automatically generate an error-free synthetic dataset for 3D perception.
March 10, 2023 by Rebecca McKeever | Blog
Since joining the graphics team at Collabora as a Software Engineering Intern last November, I have implemented several Vulkan API extensions for NVK, an open-source Vulkan driver for NVIDIA hardware in Mesa.
March 03, 2023 by Rafael Garcia Ruiz | Blog
Rewriting bmaptool in Rust to remove Python dependencies, create statically linked binary, and allow the bmap sparse file format to be used in other Rust projects.
February 17, 2023 by Muhammad Usama Anjum | Blog
Just over a year has passed since the futex_waitv() syscall, part of the new futex2 systems calls, landed in Linux 5.16. But why are both needed? What role do they play in the context of gaming on Linux? Let's find out.
February 02, 2023 by Faith Ekstrand | Blog
Over the course of the last decade, Rust has emerged as a new programming language for writing safe low-level code. This blog post is the first in a series exploring the area of using Rust to write Mesa Vulkan drivers.
January 17, 2023 by Jakub Piotr Cłapa | Blog
MLfix is an open-source tool that combines novel unsupervised machine-learning pipelines with a new user interface concept that, together, help annotators and machine-learning engineers identify and filter out label errors.
January 17, 2023 by Adrian Ratiu | Blog
Times are changing: LLVM has become more than a spare to GCC, such that glibc - the last big GCC bastion, is now working towards supporting LLVM as a first-class citizen.
January 11, 2023 by Jakob Bornecrantz | Blog
It's with excitement and nervousness that I'm writing this post, sitting on a plane heading to Boston where I will attend the MIT Reality Hack as a mentor.
December 20, 2022 by Mateo de Mayo | Blog
The development of Monado's inside-out tracking solution keeps improving and more devices are now supported. Here's an overview of where things stand, as presented at the FOSS XR conference in October.
December 15, 2022 by Italo Nicola | Blog
Machine learning is increasingly seeing more applications and it's important to have FOSS options to accelerate such workloads. With that in mind, we began an effort earlier this year to get a TFLite model running on a VIM3 NPU using Etnaviv and OpenCL.
December 02, 2022 by Deborah Brouwer | Blog
Earlier this year, I joined Collabora for a six-month internship to learn how V4L2 (Video4Linux2) supports stateless video hardware decoding, and build a utility that traced and replayed stateless decoding from a userspace perspective.
September 15, 2025 by Kara Bembridge | News & Events
Visit us at the STMicroelectronics booth, where Collabora will highlight how the STM32MP2 chip empowers edge AI solutions for industrial applications.
September 09, 2025 by Dylan Aïssi | News & Events
The Debian Trixie release is jam-packed with new features thanks to the efforts of many. See where Collabora contributed to upgraded GNOME components, newer PipeWire versions, and more!
September 08, 2025 by Ariel D'Alessandro | News & Events
Addressing the need for reliable hardware testing for RISC-V adoption, the RISE Project and Collabora added two RISC-V boards to Collabora's LAVA testing lab.
September 03, 2025 by Kara Bembridge | News & Events
Collabora is headed to Amsterdam. Meet us at Booth A63 in Hall 14 as we showcase GStreamer Analytics combined with ML, hardware-accelerated video decoding in Dante Studio using GStreamer, remote rendering for standalone XR, and more!
August 19, 2025 by Kara Bembridge | News & Events
Collabora is heading to Amsterdam with talks, demos, and workshops covering Embedded Linux, KernelCI, Bluetooth & Auracast, mainline video capture for Rockchip, and more. Join us to see our latest open source work in action!
August 13, 2025 by Eric Smith | News & Events
The Mesa 25.2 release introduces support for AFBC compressed YUV textures in the Panfrost driver for ARM Mali GPUs, enabling more efficient memory bandwidth and power usage in video playback and real-time texture processing.
August 04, 2025 by Faith Ekstrand | News & Events
Starting with Mesa 25.2, NVK will now advertise support for Blackwell (RTX 50xx series) and Kepler (most GT and GTX 600 series, most GTX 700 series, and some GTX 800 series) GPUs.
July 31, 2025 by Julien Massot | News & Events
The latest Linux kernel brings enhanced MediaTek Platform enablement, Rockchip performance, and more. Collabora contributed to this release with no less than 22 authored contributors!
July 29, 2025 by Erik Faye-Lund | News & Events
PanVK has reached another milestone and will be officially supporting Vulkan 1.4 on V10! We're up-to-date with the latest version and are well caught up for this release.
July 09, 2025 by Kara Bembridge | News & Events
Collabora is proud to sponsor this year's annual Debian conference, taking place in Brest, France. Join us as we showcase the latest with Apertis, discuss Debian running on mobile devices, and more.
July 07, 2025 by Daniel Almeida | News & Events
The last year has seen substantial progress on the DRM infrastructure required to write GPU drivers in Rust. Developed in collaboration with Arm and Google, Tyr is a new Rust-based DRM driver targeting CSF-based Arm Mali GPUs.
July 02, 2025 by Mark Filion | News & Events
This partnership ensures customers can build embedded products with long-term maintenance viability that will meet the challenges of tomorrow, such as compliance with the CRA, all built on proven Toradex platforms and upstream-first software.
Here are the events we'll be attending in the coming weeks – come say hello!
December 11-13, Tokyo, Japan