Henry Audio 1. Introduction This document is intended for everybody who wishes to use or investigate the Henry Audio USB DAC 128 mkII and its predecessors (Henry Audio USB DAC 128, QNKTC AB-1.2, AB-1.1 and AB-1.0). The schematics for all these products are Open Source! Programmers and developers should also read the complete project readme file at https://github.com/amontefusco/sdr-widget/blob/audio-widget-experimental/AW_readme.txt For commercial reuse you should contact [email protected] The contents of this file are: 1. Introduction ....................................................................................... 1 2. Technical Specifications ....................................................................... 1 3. USB Audio Class 1 & 2......................................................................... 2 4. Installation on Windows....................................................................... 3 5. Windows Uninstall Procedure................................................................ 5 6. Schematic Files .................................................................................. 7 2. Technical Specifications The USB DAC 128 mkII plugs in between your computer and an audio amplifier. It will work on Linux, Mac and Windows. High resolution audio is not guaranteed on Windows XP. The electrical design focuses on high quality circuit board layout and good components. Some technical details: • A fully assembled, tested and packaged DAC which plays music out of the box • Asynchronous USB Audio powered by Golledge high-quality crystal oscillators at 22.5792 and 24.576MHz • Supports the common sample rates of 44.1, 48, 88.2, 96, 176.4 and 192ksps • RCA (phono) stereo outputs • Asahi Kasei AKM4430 DAC • Atmel AVR32 general-purpose MCU programmed in open source C fact_sheet_mkII.pdf BSB - 20141112 - 1 Henry Audio • ASIO driver for Windows programmed in open source C • Low-noise 3.3V ADP151 LDOs powered from USB. No external power supply. • The option of experimenting with the power supply. • Lots of internal headers for experimenting. • You must provide a USB 2.0 mini-B cable. It is not included. Use a cable shorter than 3m. • Mechanical size: W: 114.4mm, H: 32.8mm, D: 128mm. • Computer requirement: The DAC will work on well on all modern computers. The DAC may not work well on computers with processors below the performance of a Core 2-duo / 2GHz CPU. USB Audio Class 2 drivers may not work on Windows XP. 3. USB Audio Class 1 & 2 The USB DAC 128 mkII will operate in both USB Audio Class 1 (UAC1) and UAC2. UAC1 is available with built-in drivers on Windows, Mac and Linux. On Mac and Linux UAC2 is readily available without a driver installation. When first powered up the DAC will use UAC1. To play audio where the source was once a CD, UAC1 will be sufficient. But UAC2 does have certain benefits, and must be selected for higher resolution audio playback. In UAC1 the DAC supports CD quality and more, up to 24bit/48ksps. In UAC2 it uses up to 32bit/192ksps for high quality audio. The actual DAC chip receives 24bit samples. The USB audio protocol is asynchronous with both UAC1 and UAC2. That means the analog part of the USB DAC / AB-1.2 minimizes jitter errors. For UAC2 on Windows you must install a driver. The driver installation procedure is shown in the next section. The driver is recommended on all Windows computers even if you don't need UAC2 qualities. The Windows driver will let you play back high quality audio using ASIO capable players such as JRiver Media Center and foobar2000. Windows UAC2 will not work in generic Windows programs like web browsers. For that you will have to use UAC1. The good news about that is that “Pling - You Got Mail” will also not play on Windows UAC2. So with the listed players you can listen to music on Windows UAC2 without such interruptions. Regardless of your computer system, the DAC will sound better if the operating system sends it audio data with the same sample rate as was used to record and fact_sheet_mkII.pdf BSB - 20141112 - 2 Henry Audio store the music. This is typically 44.1ksps. On a Mac you find this under “Audio MIDI Setup”. On Windows UAC1 you find this under bottom-right speaker icon, “Playback Devices”, “Properties”, “Advanced”. Using UAC2 and ASIO on Windows means the DAC is automatically set up with the correct sample rate. This has considerable audio benefits. UAC1 is indicated by a green light at the front of the USB DAC 128 mkII. UAC2 is indicated by a red light. To switch between the two modes do as follows: • Press the rear Prog button until the light changes • Keep pressing Prog until the light goes dark • Press and release Reset • The USB DAC 128 mkII should now be up and running in the new mode What does asynchronous USB mean? It means the DAC is the timing master. In typical digital audio based on S/PDIF (coax) and TOSLINK (optical) cables the audio data and the clock are synchronous. Both travel from the same source. This source is typically a CD drive. Such a drive may or may not be made with a good internal clock circuit. Synchronous digital audio is also common over USB. Then the timing reference is derived inside the computer. That clock is often very noisy. With synchronous digital audio the DAC is responsible for extracting the clock signal. Instead, with an asynchronous protocol, the source of the audio data becomes the timing slave. Commands are sent on the USB cable from the DAC to tell the computer to speed up or slow down. This enables the DAC to use precision crystal oscillators instead of a complex clock regenerator. The audible result is that many of the typically digital artifacts are significantly reduced. 4. Installation on Windows Follow these steps to install the USB DAC 128 mkII on a Windows 7 computer. The Windows 8 and 10 installation is similar. Windows XP functionality is not guaranteed. This section is based on using JRiver Media Center as a player program. Some users prefer foobar2000. You may download that program instead. If so, do remember to install its ASIO plug-in. fact_sheet_mkII.pdf BSB - 20141112 - 3 Henry Audio 1. Do not plug in the USB DAC 128 mkII yet. 2. Download and install the driver from https://github.com/borgestrand/widget_binaries/blob/master/AWSetup_20130211.zip 3. If you have an earlier version of the driver installed, first follow the uninstall instructions in the next section. 4. Answer Yes and OK to all questions. You may have to approve that an unsigned driver may be installed. 5. Download and install Media Center from http://www.jriver.com/download.html 6. Plug in the USB DAC 128 mkII 7. Given 5 minutes or less, Windows should be able to find and install all drivers You now have 2 choices; you may listen to music up to 24bits / 48ksps in any Windows program. This uses USB Audio Class 1 (UAC1). Or you may listen to music up to 24 bits / 192ksps in only those Windows programs which support the ASIO protocol. This is done using USB Audio Class 2 (UAC2). Please see the previous section on toggling the DAC between UAC1 and UAC2. The first time you change between them, Windows may have to install additional drivers. It should be able to do that fully automatically. J-River Media Center is set up to use the default sound output device. Here is how to set it up to use the USB DAC 128 mkII with UAC2 and ASIO. This will enable you to listen to hi-res music. 1. First do as above to select UAC2 and a red front LED color 2. Start J-River Media Center 1. Click the top-right bars icon: 2. In the Tools window choose Playback Options: 3. In the Options window choose ASIO: 4. Click Output Mode Settings: fact_sheet_mkII.pdf BSB - 20141112 - 4 Henry Audio 5. In the ASIO Settings window choose Device = ASIO UAC2: 6. Click OK in all windows to close them 7. Use the file menu to open up your music files and play them 5. Windows Uninstall Procedure This text applies if you have installed an UAC2 ASIO driver from before 2013-02-11. If you already have that version successfully installed, or if you have no UAC2 ASIO driver installed, you may safely ignore this section. 1. Unplug USB DAC 128 mkII 2. Uninstall Audio-Widget in Start menu or C:\Program Files (x86)\AudioWidget 3. Open the Start menu and type in “cmd”. On the icon on top, right-click and choose “Run as Administrator”. Click “OK” in the User Account Control window. fact_sheet_mkII.pdf BSB - 20141112 - 5 Henry Audio 4. At the command prompt, type in “set devmgr_show_nonpresent_devices=1” and press Enter. See next picture. 5. On the next command prompt line, type “devmgmt.msc” and press Enter. This will launch the Windows Device Manager Console. 6. In the Device Manager Console, from the View menu, select “Show Hidden Devices”. 7. Search under tabs for “libusbK USB Devices”, “Sound, video...”, “Audio-Widget...”, “UAC2...” Under all those tabs, delete and uninstall all drivers and anything resembling: “Audio-Widget”, “SDR-Widget”, “DG8SAQ”, “QNKTC”, “Henry Audio”, “Yoyodyne”, “UAC2” fact_sheet_mkII.pdf BSB - 20141112 - 6 Henry Audio 8. You should now be ready to install the new fresh version of the drivers as shown in the previous section. 6. Schematic Files The schematics of the USB DAC 128 mkII are appended to this document. They are part of the open source Audio Widget project. USB DAC 128 mkII schematics by Henry Audio / Børge Strand-Bergesen is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Based on a work at http://www.henryaudio.com/uploads/fact_sheet_mkII.pdf and SDR Widget BETA 2.0 by George Boudreau. ASIO is a trademark and software of Steinberg Media Technologies GmbH. fact_sheet_mkII.pdf BSB - 20141112 - 7 MCU_USB IN_OUT CLOCKS POWER USB DAC 128 mkII schematics by Henry Audio / Børge Strand-Bergesen - [email protected] is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. Based on a work at http://www.henryaudio.com/uploads/fact_sheet_mkII.pdf and SDR Widget BETA 2.0 by Yoyodyne Consulting - George Boudreau See http://creativecommons.org/licenses/by-sa/4.0/ DEBUG J1301 5-146130-4 NC VDD_+3V3 2 1 TCK 4 3 TDO 6 5 TMS C1301 100n C.0603 U1300 AT32UC3xx AT32UC3xx 122 CW_DOT 123 CW_DASH PTT_IN 15 8 7 U1300 DAC_0N DAC_0N PX30 AT32UC3xx 97 59 PX31 98 SAMPLEFREQ_VAL0 93 62 LED_FRONT_G 99 SAMPLEFREQ_VAL1 95 63 125 U1300 96 55 PX33 18 10 9 TDI DAC_0P DAC_0P 126 USART_RXD 60 61 GCLK0 USART_TXD 58 38 GCLK1 UART_RX 19 GND USB_ID NSRST VDD_+3V3 124 UART_TX AD_MCLK 127 USART_CTS 53 44 GCLK2 133 USART_RTS 54 45 137 50 51 LCD_D4 139 49 52 LCD_D5 138 37 36 LCD_D6 136 67 71 LCD_D7 69 PTT_2 MCLK_MCU 12 GND U1300 AT32UC3xx SCK_SPI R1304 10k R.0603 107 CSN_IN 108 C1302 100n C.0603 R1305 MOSI 105 R.0603 MISO 6k81 104 C1305 PUSHSW 132 34 ROTI 129 33 TWI1-SCL 100 GPIO_02_PUSHSW C.0603 GND GPIO_01_ROTI GND 10p 106 S_SCL VBUS TWI1-SDA D_SDA U1013 Atom USB mini-B 5P SMT USB mini-B L1007 BKP1608HS101-T 39R 70 PTT_1 32 74 LED_1 VDD_+3V3 39 8 115 84 41 LCD_E 114 35 43 LCD_RS 73 75 LED_2 ROTQ LED_0 113 LED_0 6 MNT4 MNT3 MNT2 MNT1 C1075 10n C.0603 GPIO_00_ROTQ C1076 100n C.0603 ESD1001 R.0603 PGB1010603MR DAC_1P DAC_1P 1Meg DAC_1N ESD1002 R.0603 PGB1010603MR L1006 BKP1608HS101-T DAC_1N 111 112 100n C.0603 120 AT32UC3xx GND GND AD_SDATA 92 79 Rx_FRAME_SYNC 90 78 Tx_FRAME_SYNC 89 76 LED_3 AD_SCLK 91 AD_LRCK 6k81 A_IRQ VDD_+3V3 VDD_+3V3 AD_DFS0 30 AD_DFS1 27 DA_LRCK 28 U1300 AD_SCLK 23 AT32UC3xx 42 LCD_RW LCD_RW 46 PX55 FLT_SEL 57 56 94 LED_FRONT_R 25 R1303 10k R.0603 81 14 AD_RSTN 24 103 AD_HPFE 22 130 AD_ZCAL 121 48 AD_CAL 134 64 AD_SMODE1 135 AD_SMODE2 11 2 29 10 21 VDD_+3V3 PROG 142 118 17 141 C1401 33n C.0603 16 C1403 470p C.0603 C1404 2u2 C.0805 C1402 100n C.0603 C1407 33n C.0603 C1408 100n C.0603 C1409 33n C.0603 C1410 100n C.0603 C1411 33n C.0603 C1412 100n C.0603 C1413 33n C.0603 C1414 100n C.0603 31 117 GND 140 GND VDD_+3V3 VDD_+3V3 4 7 20 47 C1405 4u7 C.0805 65 C1406 1n2 QNK20874 C.0603 C1415 33n C.0603 82 102 GND 131 144 143 GND GND GND C1416 100n C.0603 C1417 33n C.0603 C1418 100n C.0603 C1419 33n C.0603 C1420 100n C.0603 C1422 100n C.0603 LED1000 RED LED.1206 LED1001 GREEN LED.1206 6k81 R.0603 GND 26 VDD_+3V3 86 R1605 1k R.0603 R1044 87 TX_SDATA AD_SDATA U1300 R1606 D_SDA VBUS_EN 85 R1604 1k R.0603 6k81 R.0603 77 TX_SCLK DA_SDATA 119 S_SCL R.0603 72 DA_SCLK LED_0 LCD_RS PTT_3 110 LED_1 R1607 LCD_E 80 109 A_IRQ GND X1302 12MHz QNK20764C Golledge 12.0MHZ GSX-333 LED_1 R.0603 5 C1423 40 83 9 39R GND 66 68 116 R1302 GND 88 1 VDD_SENSE GND LCD_D7 128 MCLK_P48_N441 C1307 NC=8p C.0603 LCD_D6 3 5 3 R.1206 101 1Meg R.1206 C1306 NC=8p C.0603 LCD_D5 R.0603 2 R1306 PWM_1 LCD_PWM R1043 LCD_D4 R1301 1 13 C1421 33n C.0603 SDR Widget BETA 2.0 by Yoyodyne Consulting - George Boudreau Adapted by Borge Strand-Bergesen, Henry Audio GND GND LED1 DigiKey 160-1715-ND LiteOn LTL-30EFJ AR K R28 AG 220R LED_FRONT_G R.0603 R31 R33 220R 220R R.0603 R.0603 LED_FRONT_R GND S1 PROG NSRST 1 4 2 3 C4101 1n2 QNK20874 C.0603 MNT1 MNT2 MNT3 MNT4 C4102 100nF QNK20876 C.1206 C4103 10nF QNK20873 PHE450MA5100JR17T0 C4104 10u QNK20801 EEF-CD0J100R C4105 560uF QNK20878 6SEPC560MW GND GND GND AVCC AVCC C4111 1n2 QNK20874 C.0603 C4112 100nF QNK20876 C.1206 C4113 10nF QNK20873 PHE450MA5100JR17T0 C4114 10u QNK20801 EEF-CD0J100R U2 AK4430 AKM C219 1u C.1206 C4120 4n7 C.0603 C4115 560uF QNK20878 6SEPC560MW GND 1 16 2 15 3 14 4 13 5 12 6 11 7 10 8 9 AVCC J1A Switchcraft PJRAS2X1S01AUX 1 R9 PCM5102_MCLK R1 DA_SCLK R.0603 68R R2 R.0603 68R DA_SDATA R3 DA_LRCK 2 R.0603 0R R.0603 68R C4121 1n2 QNK20874 C.0603 C4122 100nF QNK20876 C.1206 C4123 10nF QNK20873 PHE450MA5100JR17T0 C4124 10u QNK20801 EEF-CD0J100R C4125 560uF QNK20878 6SEPC560MW GND R16 470R R.1206 R17 470R R.1206 GND C4132 2u2 C.0805 GND GND C4131 10u QNK20801 EEF-CD0J100R GND GND C254 2n2 B32621A6222J GND C255 2n2 B32621A6222J GND J1B NC=CUI RCJ-2123 3 1 4 2 3 4 GND VDD_XO2 R27 MCLK_P48_N441 0R R.0603 X2 24.576MHz GXO-7531/B 4 PCM5102_MCLK MCLK_MCU R20 1k R13 3 1 R.0603 VDD_XO2 R10 R18 68R 10k R14 R.0603 5 R.0603 68R R34 68R R.0603 R54 0R R.0603 R.0603 J7 NC 2 R55 GND U7 TI SN74LVC1G00DBVR R57 R.0603 NC 2 GND R.0603 68R 1 1 15 2 14 3 13 4 12 5 11 6 10 7 9 R8 R.0603 0R R11 GND 4 VDD_+3V3 2 X1 22.5792MHz GXO-7531/B 4 3 R21 1k 1 C18 100n C.0603 U10 vs. R55. Make tests! 3 R.0603 NC VDD_XO1 1 R.0603 NC U1 TI SN74HC163D 5 GND R19 R.0603 GND 10k 2 1 R.0603 4 GND VDD_+3V3 3 16 C22 100n C.0603 GND C3 1n2 QNK20874 C.0603 C4 100nF QNK20876 C.1206 C30 NC=10u QNK20801 EEF-CD0J100R C37 560uF QNK20878 6SEPC560MW VDD_XO1 GND GND C41 10nF QNK20873 PHE450MA5100JR17T0 C1 1n2 QNK20874 C.0603 C2 100nF QNK20876 C.1206 C25 NC=10u QNK20801 EEF-CD0J100R C36 560uF QNK20878 6SEPC560MW 16 SN74HC163D U13 8 U10 NC=TI SN74LVC1G00DBVR C5 100n C.0603 SN74HC163D U1 GND 1 15 2 14 1 3 13 2 4 12 3 5 11 4 6 10 7 9 J10 NC VDD_+3V3 8 GND R12 1k R.0603 GND VDD_XO2 C40 10nF QNK20873 PHE450MA5100JR17T0 U13 NC SN74HC163D 2 VDD_+3V3 GND Analog power DAC & clock VDD_A Unpopulated regulator by 1Audio AVCC U5 3.3V ADP151AUJZ-3.3-R7 L2 0R J4 NC R23 1 C21 560uF QNK20878 6SEPC560MW C20 1u C.1206 5 C19 4n7 C.0603 3 4 0R C16 4n7 C.0603 2 C17 1u C.1206 J2001 NC 1 R.0603 Q2002 NC=NXP PZT4403 1 2 2 C2009 NC=470u EEU-FM1E471 NC=2490?? GND GND GND GND GND GND J2000 NC Q2001 NC=ONsemi PZT3904 R2013 VBUS_EN 1 R.1206 GND GND1 GND1 2 R2012 NC=249R R.1206 C28 NC=10n C.0603 D2001 NC=ONsemi MMSD914T1G R2011 VDD_XO1 R2010 NC=810R R.1206 NC=1k GND1 R.1206 R15 C2008 NC=470u EEU-FM1E471 GND 0R R.0603 C2011 NC=10n C.0603 C2012 NC=1u5 C.0603 L4 0R VDD_A R2009 NC=2490 R.1206 C2007 NC=470u EEU-FM1E471 VDD_A U4 3.3V ADP151AUJZ-3.3-R7 L1 0R J3 NC R32 1 C31 560uF QNK20878 6SEPC560MW C13 4n7 C.0603 C14 1u C.1206 5 3 4 C10 4n7 C.0603 2 R.0603 C11 1u C.1206 R2014 NC=10k R.1206 1 0R U2001 NC=Linear LT1431CS8#PBF 2 GND1 GND1 VDD_A GND1 J2002 NC 1 8 2 7 3 6 4 5 J3002 NC 1 1 2 2 VDD_XO2 GND GND GND GND GND GND GND C12 NC=10n C.0603 GND1 L3 0R R22 J3001 NC 0R C12 and C28 are NR caps for pin compatible TI TPS79933DDC GND 1 R.0603 GND J8 NC 2 C3009 NC=470u EEU-FM1E471 1 2 J3000 NC Q3001 NC=ONsemi PZT3904 R3013 NC=100R 1 R.1206 GND1 GND1 2 R3012 NC=249R R.1206 R3010 NC=810R R.1206 D3001 NC=ONsemi MMSD914T1G R3011 NC=1k GND GND1 R.1206 C3011 NC=10n C.0603 C3012 NC=1u5 C.0603 MCU regulator VDD_D U1100 TPS73633DCQ VDD_A VDD_A_ILIM 2 D2 ONsemi MBR0520LT3G 5 C1100 100n C.0603 3 TAB GND GND GND Power bypass breakout NC=100R VBUS_ANTIRUSH VBUS_ANTIRUSH VDD_+3V3 VDD_D Alternative current limiting power switch VDD_A_ILIM VBUS VDD_D R29 U4003 TI TPS2561 NC=100R R.1206 2 GND 5 GND1 R.1206 C208 1u C.1206 6 4 GND R30 C209 1u C.1206 7 3 GND1 R36 NC=0R R.0603 AB-1.x current inrush current limiter VBUS 2 GND1 C26 10nF QNK20873 PHE450MA5100JR17T0 R39 NC=0R R.0603 GND GND 8 L5 Coilcraft 470uH MSS1038-474KL C15 560uF QNK20878 6SEPC560MW C1102 10n C.0603 4 GND1 1 C3008 NC=470u EEU-FM1E471 R3009 NC=2490 R.1206 C3007 NC=470u EEU-FM1E471 U3001 NC=Linear LT1431CS8#PBF R3014 NC=10k R.1206 VDD_+3V3 1 GND Q3002 NC=NXP PZT4403 1 R808 NC=47k R.0603 2 J5 NC 3 TR2 FDN306P NC=Fairchild D1 NC=3.3V NXP BZX84-B3V3_SOT23 GND R806 NC=10k R.0603 TR1 BC847B_SOT23 NC 1 3 2 10 3 6 4 4 5 5 VBUS_EN IN IN OUT1 OUT2 R37 0R R.0603 9 R38 R.0603 0R 8 _F1 _F2 ILIM EN1 GND EN2 GNDPAD VDD_A_ILIM Monitor external power Not enabled in software J2 NC 1 R24 NC=10k R.0603 2 R40 NC=0R R.0603 7 GND GND 1 R4000 220k R.0603 GNDPAD VDD_SENSE GND R26 NC=0R R.0603 R807 NC=10k R.0603 R35 NC=0R R.0603 GND R809 NC=10k R.0603 GND GND GND R25 10k R.0603 VDD_+3V3 C8 NC=100n C.0603 15 VBUS TP29 VDD_D U6 NC=MAX3221CUE+ C9 NC=100n C.0603 GND TP28 3 2 VDD_+3V3 C24 NC=100n C.0603 TP27 4 TP26 C23 NC=100n C.0603 TP25 CSN_IN C7 NC=100n C.0603 TP24 MOSI GND 7 5 6 10 GND TP23 1 SCK_SPI TP22 MISO UART_TX TP21 UART_RX R64 11 13 9 8 R.0603 J6 6 NC=47R NC 2 R65 R.0603 7 NC=47R 3 8 TP20 4 GPIO_02_PUSHSW TP19 GPIO_01_ROTI TP18 GPIO_00_ROTQ 1 10 12 16 9 VDD_+3V3 5 11 TP17 TP32 GND TP16 MCLK_P48_N441 DAC_0P LCD_PWM DAC_0N GND GND TP45 14 TP15 TP46 TP14 TP47 GND TP13 UART_TX DAC_1N UART_RX DAC_1P TP48 TP12 TP49 TP11 TP_FLT_SEL TP10 VDD_D J_LCD_1x16 FLT_SEL A_IRQ PX55 S_SCL TP_PX55 NC TP9 4 LCD_RS TP52 2 TP8 PROG D_SDA LCD_RW TP53 C800 NC=100n C.0603 5 TP7 VDD_SENSE 6 LCD_E R804 NC=10k R.0603 TP54 R800 NC R.0603 R801 NC=0R R.0603 7 VBUS_EN TP55 GND TP5 NSRST 8 3 9 16 10 15 TP56 DA_SCLK TP57 TP58 DA_SDATA LCD_D4 DA_LRCK LCD_D5 11 TP59 12 SAMPLEFREQ_VAL1 SAMPLEFREQ_VAL0 PX31 PX30 PX33 LED_FRONT_R LED_FRONT_G AD_SDATA AD_SCLK AD_LRCK TP61 TP62 TP63 TP64 TP65 TP66 TP67 GND GND TP_PX30 TP68 TP_PX31 TP69 TP_VAL0 TP_VAL1 14 LCD_D7 1 GND TP75 TP_PX33 R803 NC=1k R.0603 13 LCD_D6 GND R802 NC R.0603 R805 NC=390R R.0603 TP60 GND GND GND GND
© Copyright 2024 ExpyDoc