COMMUNITY EDITION

PianoRT Community Edition: HP Chromebox G3

Alpha · free · community supported

The HP Chromebox G3 is my low-cost reference for building a dedicated Pianoteq computer yourself. I’m sharing the configuration, the original helper source and what I measured, including where this machine runs out of room.

What to expect. On the tested setup, typical practice and solo playing work well. The G3 has less headroom than the Founders Edition hardware, though. Its 15 W power limit can cause dropouts on very dense, heavily layered passages. Your preset, sustain use, audio interface and cooling all affect the result. Wi-Fi must be off while playing. Failure to disable Wi-Fi may cause unexpected results. This is a free build to learn from and experiment with. It is not a product and has no warranty.

The Founders Edition is a separate product built on the Dell OptiPlex 3050 Micro, with its own testing. Results from the G3 don’t apply to the Dell, or the other way around.

What’s available now

Three Debian 13 (amd64) packages, version 0.1.0~alpha3:

PackageWhat it contains
pianort-configPipeWire and JACK settings, the Pianoteq user service and launcher, realtime limits and a small memory-lock helper.
pianort-g3-audioThe G3 (Noibat, RT5682) headphone fixes: an ALSA topology without the unused HDMI outputs, a hardware-timing rule and the tested period/headroom settings.
pianort-g3-tuningOptional. The CPU profile, IRQ placement, Pianoteq thread placement and audio DSP power settings from the reference G3. It installs switched off; see the setup guide.
Alpha status. The packages pass content checks and rebuild byte-for-byte from the source archive below. They have not yet passed a clean Debian install test. They are pieces of the build, not a disk image or installer. They don’t set up a kiosk, configure networking or install a kernel or firmware, and the optional tuning package stays switched off until you turn it on. A kernel package on disk also won’t replace a kernel embedded in coreboot. Treat the instructions as a development guide.
New to Linux, or setting this up for a church or school? Start with the step-by-step setup guide. It explains each step in plain language and keeps the commands in boxes for your tech volunteer.
FileSHA-256
pianort-config_0.1.0~alpha3_amd64.debf9551818fb2a20ca1faa61e6877680ba7aac2d756979a5e51a3c3de20d207dbc
pianort-g3-audio_0.1.0~alpha3_amd64.deb132bc8f2fa4c1104b976e788cf1b08e4210a09d42a3af69e940733a020c4bbd8
pianort-g3-tuning_0.1.0~alpha3_amd64.deb1c17a1b96dd3c16a2373bf70d65addee7fe479ee12b6fd1cc67f1c5c6f426cd8
pianort-packages-0.1.0~alpha3-source.tar.gz5170f8eebb46406237a7be3d61f7b71652d1daa2cbf11ca36aca58c2e5a0381e

Read the setup guide or the technical setup notes before installing. It lists the prerequisites, the separately installed SOF topology the build expects and what the packages deliberately leave alone. Install from a working Debian 13 system you can recover, with playback stopped. This alpha never asks you to flash a BIOS image.

Optional: PianoRT firmware (alpha)

For the best result, the Community Edition firmware replaces the Chromebox’s firmware so it boots straight into the PianoRT real-time kernel and Pianoteq, with the TuxPiano splash. It’s pure upstream coreboot with three small patches, published with full source and a flasher that tailors it to your unit. Flashing is at your own risk: recovery from a failed flash requires a CH341A SPI programmer. NVMe SSD required, and USB-C displays don’t work.

Bring your own Pianoteq

Pianoteq is licensed separately by Modartt. You supply your own Linux download, instrument licenses and activation. These downloads contain no Pianoteq software, presets, activation files or MIDI.

My original configuration and helper code is MIT licensed. Linux, coreboot and SOF keep their own upstream licenses. The optional firmware (coreboot and the Linux kernel inside it) is published with its complete source, and the image rebuilds byte for byte from it.

What changed on the G3

Two audio fixes work together on this hardware:

The tested stream is 48 kHz with a 64-frame graph, ALSA period 64 and headroom 256. These settings were tested on this one output only. Other audio devices need their own testing. Audio startup doesn’t need Internet access or a clock sync.

What the numbers mean

At 48 kHz, a 64-frame buffer gives each audio cycle about 1.33 ms to finish. That’s buffer latency, not a measured keyboard-to-speaker time.

The G3 completed a one-hour music run with no added audio errors, and later a separate 15-minute heavy-sustain run at a 20 W power limit. Both were digitally muted synthesis tests. Neither measured physical latency or rendered voice counts. Deliberately overloaded, heavily layered test pieces still caused errors. I don’t give the G3 a voice-count rating.

A cool CPU can still be power limited

At its 15 W sustained limit, the G3 slowed to about 2.6 GHz during dense passages, well below thermal-throttle temperatures. In a 15 W, then 20 W, then 15 W comparison, the same dense sections failed at 15 W, passed at 20 W, and failed again at 15 W. An even denser piece still failed at 20 W while holding 3 GHz. A higher power limit helps, but it’s no cure. It’s also not advice for other computers. The first two packages don’t change any power settings. The optional tuning package raises the limit to 20 W only after you turn it on.

Help test the install

I’m looking for experienced Linux users to try the alpha on a setup they can recover, and to tell me which steps fail or need more explanation. The G3 audio package targets the Noibat G3 with SOF and RT5682. A generic Debian machine or VM can still check the common package, but not the G3 audio.

When you report, please include your hardware, kernel and package versions, the exact steps, whether Pianoteq’s interface, MIDI and audio work, and any errors or CPU warnings. Keep install problems separate from audio-performance results. Short, redacted log excerpts are best. Please don’t send home directories, activation files or system backups.

Community Edition help is best-effort. Send install reports to [email protected] with “Community Edition” in the subject.