Q: There are so many firmware version for ifi products, I'm confused. Which firmware is best?
A: There are two fundamental Firmware "blocks" for Xmos, for the 100 series chips (up to 5.XX at least while I was involved) and 200 series chips (no direct involvement from me, versions 7.XX). The big difference here are that these are radically different chip's that require completely separate firmwares.
The 100 Series chip's were used in all ifi products up to around late 2020, except iDSD Pro & iDSD neo. They are 8-Core chips. It is usually mentioned.
This includes the iDSD micro, nano, iDAC, Retro and most Zen V1. For these "main line" products we used keep a unified Firmware (same Firmware works in all products). This means firmware upgrades benefit older products and can even add new features through firmware upgrades as these are developed.
So the 2013 released iDSD nano could be upgraded via software to allow DSD256 on Mac & Linux or to enable MQA Rendering. I believe this policy of allowing older customer devices to benefit from updated firmware options has now been abandoned by ifi.
The 200 series chip's are more advanced 16-Core units, which nevertheless are around half the price of the 100 Series 8-Core Chips.
For the Zen DAC some "V1" units were shipped with V2 hardware, but a hardware lock that prevented them from receiving new features present in the later version firmware for V2. Pro iDSD is completely separate and as a result a bit of a disaster. Don't ask... iDSD Neo was completed after I left, so I have no idea.
There should be no "sound signature" to any of the firmware versions, other than the digital filter sound signature for the Transient Optimised filter option with the last generation firmware subversions.
Firmware variants generally related to different features, like maximum DSD speed, MQA Rendering and adding the Transient Optimised digital filter. These variants are designated by Letter suffixes.
Not all firmware generations have these feature "sub variants". They came to be when new features became possible, that needed to disable certain functions on existing hardware (e.g. MQA disables SPDIF as the processing power dedicated to SPDIF out is needed for MQA) or had possible incompatibilities.
For example to get DSD256 on Mac we needed to enable 768kHz PCM on the iDSD nano. Sadly the hardware on the nano could not handle 768kHz and 786kHz would be muted. And Mac as well Windows default to the highest available sample rate, so if you plugged in the DAC you needed to manually set the sample rate to get sound. So it was not possible to enable this by default for all products. A subversion needed to be flashed by users who need this feature.
Minor revision are designated by the number after the dot. These are generally best seen as "Bugfixes".
The major Version numbers are generally the XMOS Code base version (XMOS supplies a code foundation to chip customers).
So, for example V3.3 is based on XMOS Code base V3 and is the fourth Bugfix release of V3 (minor versions start X.0X). No subversions were available on V3.
Version 5.30 is is based on XMOS Code base V5 and is the fourth Bugfix release of V5. The "0" subversions denotes it is the mainstream firmware shipped ex factory and appropriate for most customers.
Alternative subversions use the exact same code but are compiled using different feature option settings and thus are the same firmwares, just with different feature sets. There should be no sonic differences, unless the firmware is the "Transient Optimised" filter version, which should sound different.
As a rule, the latest firmware revision for XU100 devices should be the most stable, most bug free with most features, at least up my departure, so use these. This means 5.2X (non-MQA) or 5.3X (MQA).
As for MQA, I am not a "Fan" of MQA. It seems to have died the death I predicted when I called it a solution looking for a problem. But if you are a die-hard MQA fan and you need the pink light for your mental well being, select the MQA version. That will be 5.30 or 5.3C to have the Transient Optimised filter.
Otherwise, for the best possible MQA experience, if your product allows "non-oversampling" (aka "Bit perfect" in iSpeak), use the non MQA firmware, using the "non-oversampling" setting. In my view this is preferred all around including for MQA Rendering. I'm still under NDA with MQA, so I cannot tell you why, you'll have to take my word for it and listen yourself.
Thus use V5.20 or 5.2B on all iDSD micro variants with the XU100 chipset and for iDAC 2. You also need 5.2x to get SPDIF out on products that have this, 5.3 disables SPDIF Out. Finally, if you believe that MQA is the work of the Devil and anything touched by MQA is terminally tainted, 5.2X is the firmware for you, with all products on the 5.X firmware block.
For all products that do not offer the selection of "bit perfect" I personally use 5.3C to get the Transient Optimised filter. That's my personal take, as always, listen with your own ears and pick what suits you.
For products with XU200 XMOS (V7.X and on) I have no experience or suggestions, except to note that 7.X is a whole new ballgame with a new chip and wholly new XMOS Code base. Expect early versions to be buggy. If later firmware versions are really less buggy - well, read what people write. No experience or insider knowledge for this.
Thor