The Denon Prime Go ships with a locked-down Engine OS that does not include SSH access. To develop or debug primemixxx on-device you need to flash the stock-with-SSH firmware variant, which is a stock Engine OS image with an SSH key pre-installed and the USB Ethernet gadget enabled. A fully custom MIXXX firmware image also exists but currently has a known SSH-disabled blocker — see the warning below.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/gueritta/primemixxx/llms.txt
Use this file to discover all available pages before exploring further.
Available Firmware Images
| File | Description |
|---|---|
PRIMEGO-4.3.4-STOCK-SSH-Update.img | ✅ Recommended — stock Engine OS + SSH key + USB Ethernet gadget |
PRIMEGO-4.3.4-MIXXX-SSH-Update.img | ⚠️ Custom MIXXX firmware — SSH currently broken after flash |
PRIMEGO-4.3.4-Update.img | Stock firmware, no SSH access |
PRIMEGO-2.3.2-Update.img – PRIMEGO-4.3.3-Update.img | Historical stock versions (2.3.2–4.3.3) |
PRIME4-2.2.1-Update.img – PRIME4-4.3.4-Update.img | Prime 4 stock versions (2.2.1–4.3.4) |
.img files are symlinks to their corresponding .img.dtb Device Tree Blob packages.
Rebuilding the Stock-SSH Firmware
To rebuildPRIMEGO-4.3.4-STOCK-SSH-Update.img from its source DTS and rootfs:
.dtb file is the firmware package consumed by fastboot and the Go updater. The .img symlink points to it.
Use
go run ./cmd/find_update/ from the go/ directory to identify and locate firmware update files in the repository.Flashing Methods
The cross-platform Go-based updater uses libusb and the FastBoot protocol directly. The firmware image path is configured in
config.toml via the ImagePath field of each device entry.# 1. Put the device in update (loader) mode via SSH
ssh root@primego.local reboot loader
# 2. Run the updater from the go/ directory
cd go && go run ./cmd/updater/
The updater will detect the device via USB, verify the firmware SHA1 checksum, decompress the rootfs on-the-fly, and flash each partition. A GUI progress window is displayed during flashing.
.img file to the root of the USB driveGo Updater CLI Reference
The Go updater (go/cmd/updater/) implements FastBoot over libusb with a GUI progress display. The firmware image path is set in config.toml — there is no --firmware command-line flag.
| Flag | Default | Description |
|---|---|---|
--debug <level> | 8 | Logging level: -4 = debug, 0 = info, 4 = warn, 8 = error only |
--logfile <path> | (empty) | Write logs to file (disabled if empty) |
--libusb_debug <level> | 0 | libusb debug verbosity (0–3) |
--skip_reboot | false | Skip automatic device reboot after flashing |
--dry | false | Dry run — device must be connected but will not be flashed |
.img file. SHA1 checksum verification is performed before flashing begins.
The Go updater takes roughly twice as long as the system
fastboot CLI due to buffer size differences in the FastBoot implementation (~30s for fastboot, ~60s for the Go tool). This is a known limitation — see go/doc/updater.md for details.