Skip to content

Firmware Updating

Craig McLure edited this page Mar 18, 2025 · 14 revisions

FIRMWARE UPDATING VIA THE GOXLR UTILITY, WHILE WELL TESTED, IS FUNCTIONALITY EXPERIMENTAL. ANY ATTEMPT TO UPDATE YOUR FIRMWARE VIA THE UTILITY IS DONE SO AT YOUR OWN RISK. THE GOXLR UTILITY TEAM TAKES NO RESPONSIBILITY FOR ANY DAMAGE OR PROBLEMS CAUSED BY ATTEMPTS TO UPDATE YOUR FIRMWARE VIA THE GOXLR UTILITY. IF IN DOUBT, USE THE OFFICIAL APP FOR FIRMWARE UPDATING.

The GoXLR Utility is released under the MIT License and has no affiliation with TC-Helicon. This means that the end-user (that's you) must assume all responsibility for it's use, and that usage comes without warranty implied or otherwise. Again, usage in general is at your own risk. A device failure caused by using the GoXLR Utility will not be handled by the GoXLR Utility team, and may not be covered under warranty by TC-Helicon / MusicTribe.

Now that the big, scary, but ultimately important message is out the way, lets talk about firmware updating.

Firmware Updating

Version 1.2.0 of the GoXLR Utility now provides the ability to update the firmware on your GoXLR Device, both the full sized device and the Mini are supported. Collectively there have been over 300 firmware flashes done with this code without issue, both upgrades and downgrades on both the Mini and Full Device, so (keeping the above warning in mind), we do consider this process safe. We have been able to confirm that the behaviour of the GoXLR Utility matches the official behaviour, so there's quite high level of confidence when it comes to handling this.

Update Sites

The GoXLR Utility has a new option in System -> Utility Settings which allows you to choose which TC-Helicon update site you would like to use for the firmware update process. The GoXLR Supports a 'Live' and a 'Beta' Update site.

The firmware files are provided by, and downloaded from, the official TC-Helicon update sites. main.rs contains the code:

const FIRMWARE_PATHS: EnumMap<FirmwareSource, &str> = EnumMap::from_array([
    "https://mediadl.musictribe.com/media/PLM/sftp/incoming/hybris/import/GOXLR/",
    "https://mediadl.musictribe.com/media/PLM/sftp/incoming/hybris/import/FirmwareAssets/GOXLR/LiveTestArea/",
]);

To utilise the sources primary_worker.rs has the check_firmware_versions method which downloads the update manifests from the aforementioned paths to confirm the versions, and firmware_update.rs contains the download_firmware function which handles downloading the files from the appropriate update site.

TL;DR: The GoXLR Utility does not contain or distribute any GoXLR firmware files, all files are fetched from the official TC-Helicon / MusicTribe update sites. This can be verified by looking at the code and the GitHub Actions when building the release versions of the Utility.

'Live' Site

The live site contains the firmware for the current 'production' firmware, which at this point in time is the SubMix firmware released in July 2024.

'Beta Site'

The Beta site contains the firmware for the 'Mix 2' firmware, released in October 2024. The Utility can handle this firmware perfectly, while the official app has some issues with output handling.

The Mix 2 Firmware

The Mix 2 firmware is supported in this version of the GoXLR Utility, and will be presented on the routing table as expected.

If the Utility determines that you are not running an appropriate driver under Windows to handle this firmware, a banner will be placed at the bottom of the Utility's UI with a link to fetch the latest driver. Again, this link goes to the official TC-Helicon servers for the download.

For Linux users, we're working on support, initial behaviours will be available in alsa-lib and alsa-ucm-conf v1.2.14. These do not have a release date at this point.

Custom Firmware Uploading

If you would like to use an official firmware that's not actively available on the update sites and have the binary file available, you can hold Ctrl + Shift when clicking the 'Firmware Update' button in the System tab of the Utility.

This will cause a file prompt to appear and allow you to select the firmware you would like to push to your device.

This behaviour is identical to how the official app behaves and will allow you to upgrade or downgrade beyond what is currently officially presented.

Clone this wiki locally