Custom Firmware Builds for Element II, EL DAC II, and Atom DAC

We’ve mentioned the possibility of firmware updates for Element II, EL DAC II, and Atom DAC. Several custom options have been compiled by now, so below is a list of all releases we have shared thus far.

Feel free to comment if you are interested in something unique!

Features currently in evaluation at the time of writing include:

  • DoP: Support for DSD over PCM means the USB device can receive DSD and transmit to the DAC as a PCM I2S stream. Native DSD is supported by Element II and EL DAC II hardware, and may be available with future drivers.
  • OS Volume Controls: Also called “Hardware Volume”, this option prevents your operating system’s volume slider from adjusting volume. Most customers find this option unhelpful, so we have elected to keep OS volume controls enabled by default in all production DACs. Certain use cases necessitate disabling volume controls (mainly for PS4 owners).
  • UAC2 / UAC1: Element II, EL DAC II, and Atom DAC are intended to take advantage of USB Audio Class 2 drivers for up to 32/384kHz support and optional ASIO usage. Older operating systems and PS4 and PS5* only provide USB Audio Class 1 drivers, which limit sampling rate to 24/96kHz max. Please keep in mind that installing UAC1 firmware disables UAC2 support and removes the ability to install firmware updates on the DAC, meaning installing UAC1 firmware is a one-way street. Any firmware built only for UAC1 will be listed with a warning note.
  • UAC2 with auto UAC1 fallback: UAC2 with firmware update support is retained. Your DAC will connect as a UAC2 device when plugged into any USB 2.0 or newer port, and will fallback to UAC1 when connected to a USB 1.1 port such as through a USB1.1 hub.
  • Self-Power (iOS Connectivity): All current JDS Labs DACs are designed to use their own AC power adapter. Nevertheless, some operating systems default to confusing power management settings for USB devices declared as Self-Powered. For this reason, we programmed Element II, EL DAC II, and Atom DAC to boot by default without the self-power flag. This choice is meant to simplify setup with Win10 and MacOS. For iOS, lack of the self-power flag means that a USB hub is required so that the phone or tablet’s battery is not utilized. Enabling the self-power flag eliminates the need for a USB hub to establish a UAC2 connection. Connection with Win10 is supported with the self-power bit, although you may need to disable USB Selective Suspend.

*Nov 16, 2020: Many have asked about PS5 support. PS5 requires UAC1 firmware with volume locked to 100%. Atom DAC, EL DAC II, and Element II loaded with UAC1 firmware have all been tested successfully with PS4 and PS5.

Firmware versions highlighted in bold are the default you should expect if ordering today.

If you prefer an alternative configuration, you are welcome to describe your version request in the Shipping Notes field during checkout and we will load onto your DAC before shipment.

Element II

Version DoP? OS Volume Controls? UAC Version iOS Connectivity? Note
1.3.3 No Enabled UAC2 Requires Hub Initial release
1.3.4 No Enabled UAC2 Requires Hub Updated USB device name JDS Labs Element II
1.3.5 Yes Enabled UAC2 Requires Hub Added DoP
1.3.6 No Disabled UAC2 Requires Hub Lock output volume to 100%
1.3.7 No Disabled UAC1 Requires Hub Tested on PS4, PS5, Win 7 & 10
WARNING: Disables Future Updates!
1.3.8 No Enabled UAC2 No hub required See Self-Power section
1.3.9 No Enabled UAC2 w/ auto UAC1 fallback No hub required UAC2 for USB 2.0 and newer ports. Fallback to UAC1 when connected to a USB 1.1 port. Supports DFU firmware updates.



Version DoP? OS Volume Controls? UAC Version iOS Connectivity? Note
1.6.3 Yes Enabled UAC2 Requires Hub Initial Release
1.6.4 Yes Enabled UAC2 No hub required See Self-Power Section
1.6.5 No Disabled UAC1 Requires hub Tested on PS4, PS5, Win 7 & 10
WARNING: Disables Future Updates!
1.6.6 No Enabled UAC2 w/ auto UAC1 fallback No hub required UAC2 for USB 2.0 and newer ports. Fallback to UAC1 when connected to a USB 1.1 port. Supports DFU firmware updates.


Atom DAC

Version DoP? OS Volume Controls? UAC Version iOS Connectivity? Note
1.4.2 No Enabled UAC2 Requires hub Initial Release
1.4.3 No Enabled UAC2 No hub required See Self-Power Section
1.4.5 No Disabled UAC1 Requires hub Tested on PS4, PS5, Win 7 & 10. Disables Standby Mode.
WARNING: Disables Future Updates!
1.4.6 No Disabled UAC2 w/ auto UAC1 fallback No hub required UAC2 for USB 2.0 and newer ports. Fallback to UAC1 when connected to a USB 1.1 port. Supports DFU firmware updates.
1.5.2 No Enabled UAC2 Requires hub Disables  Standby Mode; see Self-power Section



You may install any version of firmware for your DAC; there is no need to install versions sequentially. Version numbers are used for identification purposes only.

We strongly encourage updating through the XMOS DFU app for Windows 10. Installing in MacOS is supported by the XMOS DFU loader, which is a command line tool.

In Windows 10

  1. Begin by installing the XMOS Drivers for your DAC if you have not done so already. Drivers can be found on the product page, or from our general Downloads page.
  2. Connect your DAC directly to a USB port on your computer. Connecting through a USB hub or USB port on your monitor can prevent the update app from establishing a connection.
  3. Open the DFU update app, which is found in the directory where you installed the XMOS drivers, by default in Windows 10:
    Element II 
    C:\Program Files\XMOS\USBAudioStDriver_30DA\W10_x64\xmosusbaudiost30DA_dfuapp.exe

    EL DAC  II
    C:\Program Files\XMOS\USBAudioStDriver_30E0\W10_x64\xmosusbaudiost30E0_dfuapp.exe
    Atom DAC
    C:\Program Files\XMOS\USBAudioStDriver_30E1\W10_x64\xmosusbaudiost30E1_dfuapp.exe
  4. Download a new firmware .bin file from the list above.
  5. Click Browse and select the downloaded .bin file.
  6. Start Start. You should see the version number change upon completion.

In MacOS

Please see page 8 of “Using the DFU loader – OS X”. You will need to install the XMOS DFU compiler as described here. You may need the following VID/PID numbers for the command line tool:

VID: 0x20B1
PID for Element II : 0x30DA
PID for EL DAC II : 0x30E0
PID for Atom DAC : 0x30E1


33 thoughts to “Custom Firmware Builds for Element II, EL DAC II, and Atom DAC”

  1. I am looking to buy an Atom stack. I must be able to use the Atom DAC with both Win10 and iOS (13.7 now and 14 when available). You mention the need for a USB hub for iOS connectivity. Will use of the Apple lightning to USB 3 camera adapter fulfill the hub requirement for iOS? If not, please specify what adapters or workarounds are necessary for DAC operation with both these operating systems.

    1. @InMotian – Yes, you may use Atom DAC with the Lightning adapter and a USB hub as described at

      I’ll upload an alternative firmware shortly which should bypass the need for a hub.
      Edit: See v1.4.3

  2. My Element II is connected directly to my iPad Pro with the Apple USB-C Multiport Adapter and it works fine without an additional hub. Is the Multiport Adapter serving as a hub in this scenario? Is there any disadvantage with this setup, and would I see some advantage installing 1.3.8?

    1. @Alan – Yes, some of Apple’s adapters avoid the need for a hub. There’s no advantage to installing v1.3.8 in this case.

  3. Element II version 1.3.5 appreciated. DoP matters most to me. #2 need after that is 4.4mm balanced output. Guessing I won’t see that from JDS anytime soon?

    1. Thanks, Brian. We’re currently reworking DoP support for EL DAC II and Element II, and once we’re content with the beta firmware it will become standard.

      As for balanced headphone connectivity: We view 4.4mm balanced connectors as a marketing fad in direct objection to our performance standards. Benchmark explains well in their article titled AUDIO MYTH – BALANCED HEADPHONE AMPLIFIERS ARE BETTER

  4. Just thought I’d mention that I got this to work under Mac OS Catalina. I have no experience building source code, so it was a little slow going. Before building, I installed X-Code and the X-Code command line tools from Apple, installed Homebrew and the latest USB libraries via Homebrew, then edited the xmosdfu.cpp file to replace the VID and PID codes with the ones mentioned in this blog post.

    These instructions were the most understandable for my beginner’s brain:

    Note that the instructions don’t cover editing the xmosdfu.cpp file for different vendors and devices. I edited the relevant section of that file so that it looked like this:

    /* the device’s vendor and product id */
    #define XMOS_VID 0x20B1
    #define XMOS_L1_AUDIO2_PID 0x30DA
    #define XMOS_L1_AUDIO1_PID 0x30E0
    #define XMOS_L2_AUDIO2_PID 0x30E1
    #define XMOS_SU1_AUDIO2_PID 0x0008

    I successfully changed the firmware on an EL DAC II from 1.6.3 to 1.6.4.

  5. Hi,

    a while back I asked about an Atom DAC driver that allows us to adjust ASIO settings (latency etc.). Is that still planned and if so could I get a rough estimate when this will likely drop?

  6. Hi John and the team. So it looks like the AKM plant responsible for ADC/DAC chips semi burned down. Stocks are quickly dwindling, people speculate there will be AKM scarcity for at least a year or so.

    Do you have any crisis preparation for this kind of situation, do you have enough chips in inventory for the time being? I guess future product(s) might need to switch to cirrus logic/burr brown/sabre in the light of the current situation?

    Hope it doesn’t affect your operation too much.


    1. Hi Arthur – Yes, the AKM Fab2 disaster is at the top of our concerns. In the short term, there will be no JDS Labs Black Friday event this year. It will take time for the full impact to pan out; I imagine shortages will begin to appear in 18-36 weeks.

      JDS Labs has had a strong year and maintains healthy inventory. Without showing all of our cards, this supply crisis has little impact on our long-term plans.

      1. “In the short term, there will be no JDS Labs Black Friday event this year”

        I see, understandable.

        “Without showing all of our cards, this supply crisis has little impact on our long-term plans”

        That is excellent to hear 🙂 best of luck to you and the team!

  7. Await news about enabled native dsd for Element II. Would use with Windows 10 notebook running older JRiver Media Center in audio-only mode.

  8. Meant to say Native or DOP. Either way the click sound from PCM track to DOP track remains audible and no manufacturer can address that thus far. (c;

  9. I just purchased the Atom DAC and plan to use it with the PS4/PS5 (if I ever get one). I’ve noticed you’ve said that installing it will disable future updates. Does this mean I will be unable to install any UAC2 based firmware in the future should I need to?

    1. @Abdullah Correct, you will be unable to install firmware or revert to UAC2 if you install UAC1 only firmware. If you later wish to return to UAC2, we can replace the flash memory IC at JDS Labs (soldering is required).

      Under the UAC2 configuration, two devices appear when connected to a PC: The USB DAC device, and a separate Device Firmware Update (DFU) device. The DFU device is not available under UAC1, thus, there is no way to load different code.

      Edit 03/31/2021: UAC2 with UAC1 fallback is now available for Atom DAC, see v1.4.6. DFU firmware update ability is retained. We will continue to investigate smarter host detection.

      1. @John, ah so firmware updates are a part of the UAC2 but were not supported in UAC1? Hmm, what would your suggestion me? I love good quality sound but am in no way a ‘professional’ in that field. Would you say the sound under UAC2 is “better” in anyway during your testing of the UAC1 firmware? And is my understanding correct in that the support sample rate is the main difference?

        I’m in love with the Atom stack and want to use it with my PS4 but if that means losing the fidelity, I’m not sure

        1. @Abdullah Perceived sound quality will be the same under UAC1 and UAC2. There are more features with UAC2, such as higher sampling rates, ASIO drivers for professional applications, DFU updates, and potentially more. In general, you will not hear a difference from these features, and if you have no need for ASIO, there is little to worry about. Again, we can always return to UAC2 by swapping the memory IC. Not ideal, but not impossible.

  10. Why the need to swap the memory chip after UAC1 flash? I’ve just got an Atom to pair with my PS5 as the Arcam rDAC and Benchmark DACs I was using for my PS4 (via optical) do not play well with the PS5s UAC1 and (of course) the PS5 does not have an optical out. I’ve updated the Atom firmware to 1.4.5 and the DAC works as expected with the PS5 now. However, should Sony implement UAC2 as a firmware update (unlikely, but you never know) the Atom could be re-utilised. Do you plan to release the memory chip as a user-replaceble part? I assume the memory chip’s SMD, which I can solder (just) at the hobbyist level.

      1. Hey John I had a question, for a regular folk like me who doesn’t know a whole lot about technical audio content, do you think Am I ever going to need the UAC 1 upgraded to UAC 2 if Sony decides to add UAC 2 support for the ps5? Or is the audio pretty much the same and with UAC 2 you just get features and professional tuning etc.

        1. @Abdul: It’s unlikely you will *need* UAC2, as there is no audible difference. UAC2 simply adds more features.

  11. Hello John
    I have a question about the Element II firmware, so I ask. I am wondering if it is possible to revert to 1.3.4 from version 1.3.8.

  12. John,

    Will a UAC1 capable DAC be affected by the low output from the PS4/PS5 USB port? I have a Creative G6 DAC/AMP which is recognized and “works” with the PS5, but it’s ability to drive even low impedance headphones is very much affected vs. when the G6 is plugged into my PC for example.

  13. Hey Admins,

    the dac fw bins no longer available on the links above:

    You don’t have permission to access this resource.
    Apache/2.4.41 (Ubuntu) Server at Port 80

    Please fix them 😉

    1. @Dani – Thanks for pointing this out! All fixed.

      We performed a server upgrade over the weekend and security was rather locked down. The public /downloads folder is again accessible.

Leave a Reply to Dani Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.