Posted 11 August, 2026
Remote Linux Embedded / Systems Software Engineer - Audio & USB HID
ZENOVO LTD
Horsham, ENG, GB
Full Time
Job Description
Role Overview We need an experienced Linux Systems / Embedded Software Engineer to build a robust kiosk daemon that captures system audio, encodes it (Opus), packetises it into 64-byte HID packets, and streams it to a custom USB HID device.The work involves porting an existing Windows implementation to Debian Linux while achieving full functional, audio-quality, latency and protocol parity.Key ResponsibilitiesSet up the Debian build/test environment and create a production-ready systemd service that starts at boot and recovers from failures.Analyse the existing Windows listener, extract portable C/C++ logic, and replace Windows-specific APIs with Linux equivalents.Capture system audio from the default output using PipeWire or PulseAudio (WASAPI loopback equivalent), handle device hot-swap and idle/silent states with low CPU usage.Encode audio (Opus), chunk into 64-byte HID packets, and implement the required notification/header protocol.Enumerate the composite USB device, locate the correct HID interface, and communicate via hidraw or libusb .Handle USB attach/detach, reconnect, write failures and buffer overruns robustly.Implement the shared command protocol (no API changes) and provide matching stub handlers.Deliver diagnostic logging with parity to the Windows tool (audio level, VID/PID, connection status, errors, etc.).Perform side-by-side validation against the Windows version and Android reference app for audio quality, latency, framing and stability.Essential SkillsStrong C/C++ systems programmingProven Linux/Debian daemon or service developmentPractical experience with systemdLinux audio (PipeWire, PulseAudio or ALSA)USB device communication ( USB HID , hidraw, libusb, composite devices, hot-plug handling)Real-time or near-real-time audio/data streamingFamiliarity with Opus or similar low-latency codecsAbility to debug across application, OS, audio and USB boundariesExperience analysing and porting Windows code to LinuxDesirableEmbedded LinuxBLE / DA14531 or similarCustom USB HID protocolsKiosk / unattended system experienceWindows-to-Linux portsAudio latency and codec pipeline debuggingDeliverables A production-ready Linux daemon that builds on the target Debian platform, captures and encodes audio, streams correctly framed HID packets, handles device reconnects, runs as a reliable systemd service, and matches the Windows implementation on quality, latency and behaviour.Client Dependencies Target hardware, Debian version, Windows source, USB descriptors, protocol docs, Android sample app and reference devices will be supplied before the relevant work begins.This is a hands-on systems role for an engineer who thrives on integrating audio, USB and Linux services into a reliable unattended solution.TPBN1_UKTJ
