Monday 30 May 2016

再做多台雙dam1021 DAC

這次幫一個網友 John 做的, 他提供 dam1021-05 rev 2 兩張. 插座和銀線. 我去買其他料. John 希望這 dac 可以控制 Input, Filter, Volume 和有耳筒輸出. 他選擇了 ARM 小電腦用來做I2S訊源. 主要他是會用AES經CD轉盤播放音樂.

把零件安上, 用兩隻OCC鍍銀牛, 兩份 Salas Bi-polar +/-5V shunt regulator, 兩粒 3.3V NewClassD regulator. ARM 電腦本來用Odroid C1+, UCC Golden Reference regulator.


另外, 也做了兩個L7805的5V 供電, 一個給 Arduino Nano, 另一個給外置的 Fiber LAN Media Converter. I2S isolator 用 Salas Reflektor-D shunt regulator. (左下方的)
 全用膠腳固定, 因為dam1021的镙絲孔是通地的, 用膠腳固定可減低起hum的機會

 用了Elna Silmic 電容併在shift reg 的輸出.

新做 Arduino Nano 的 program 來控制 dam1021 的 filter, input 和volume. 當然也加了紅外線搖控
最後用 RPi 行 picoreplayer, I2S 入dam. 因為 picoreplayer 係行 read-only file system, 用家可以不用登入 ARM 電腦的網頁 shutdown 後才斷電. 直接斷電也不會令 sd card 資料損壞.

做好的樣子.



配合 Fiber LAN media converter 做一層地隔離令Pi 輸出的音色更好.

Friday 22 April 2016

Soekris dam1021 R2R with Tube Buffer

花了很多時間和汗水, 多次的失敗, 終於做好這次DAC了.


我用兩件Soekris dam1021 rev2, 可以XLR輸出沒有經過膽, 也可以RCA經膽buffer輸出

 
字上埋色
 
  Soekris R2R 主要用 shunt regulator 供電, 除了R2R ladder 我用了 lifepo4 電池供電. 頂板是用了半透明亞加力板, 本來是密封只留孔插膽, 後來發覺長開後箱內較熱, 於是我在頂板開了孔助散熱, 也把電池外置, 令它們不受箱內温度影響


Sunday 10 April 2016

摩改 NMR - 音響播放器

NMR 本身是由 MR-MOD 和 Edel NMR 組成.
MR-MOD 是 media renderer DSP module, 需 3.3V 約 800mA
Edel NMR 是 media renderer interface board, 需 3.3V 少於 100mA

本身Edel NMR是會直接供電給 MR-MOD, 如果把MR-MOD和 interface board 的供電分開, 你會發現聲音是會大幅改善.

先取去MR-MOD, 卡下有條粗的trace, 便是+3.3V

把它界開, 外接另一條3.3V供電便完成

原先我是用一粒LT1083 3.3V 供電的, 分開後, MR-MOD使用LT1083, 但interface board 使用另一個 3.3V shunt regulator 供電.


完成摩改後, 我再找 Odroid C1+ (runeaudio) 跟這 NMR 比較一下. 用 Odroid C1+ 是因為它能以I2S輸出至DAC, 也是LAN 入, I2S 輸出, 跟NMR 十分接近. 跟 NMR 不同的是, Odroid C1+ 是一台 ARM 電腦, 它能載入不同的作業系統, 可玩性十分高, 它是使用5V 約500mA 運作的.


在未摩改之前, 我有比較過 Odroid C1+ 跟 NMR, Odroid C1+ 上我使用 runeaudio, 它是以MPD作為音樂播放軟件. 以同一個供電, 同一個DAC, 比較之下, NMR 的聲音比較肥, 分析力比 Odroid C1+ I2S 輸一點, 不是十分明顯, 如果是盲測應該聽不出分別的.

經過摩改的NMR再拿來跟 Odroid C1+ 比較, 這次聽感上有相當大進步, 聲音純了很多, 沒有之前的肥, 換來的是很清晰的聲音.

結論是, NMR 原來要摩改過才配這價錢.

其實NMR 還可以更進一步去摩改, 如它的鐘, 可以外罝方式供給NMR, interface board 上的 S/PDIF DIT 也可以獨立出來供電, 看DIY友的喜好. 我現在做的應該是最簡單又有效果的摩改了.

Friday 8 April 2016

Soekris R2R DAC 以磷酸鋰鐵電池(lifepo4) 供電

在 diyaudio 中看到有 diyer 說用lifepo4電池供電給這DAC, 效果很好, 於是我也跟這個類似的做法摩改了我的 DAC.
http://randytsuch-audio.blogspot.hk/2015/11/soekris-r2r-dam-dac-modding.html

我先找了四粒 18650 的 Li-ion 電池, 只供電給最未端的 resistor ladder 位置. 原來的設計是:
AC >> 整流後 >> PWR_A+ / PWR_A- >> 7805/7905 的LDO 降至+/-5V >> op-amp 降至+/-4V >> resistor ladder

 
聽過效果後, 我決定買些lifepo4電池大改. 於是上網買了5粒lifepo4電池, 都是 3.2V 2400mAH, 連同5個充電板.


原本要兩個箱才放得下的分體供電, 現在回復一個箱放晒.

接線上十分簡單, 5粒電分別供應:
1. R2R +ve
2. R2R -ve
3. DAC 3.3V
4. DAC 1.2V
5. ISO 3.3V
用relay把電池的正負極和DAC上的負載點接好, 用 relay 目的是令電池在開機時才接通DAC上的負載點, 關機時電池便接到相對的充電板. 充電板是共用一粒 5V 1.5A 的 LM317. 充電板會根據電池的電壓去決定充電與否.


 紅色代表充電中, 綠色代表沒有充電


我把改好的DAC和另一台用 shunt regulator 供電的 rev2 dac 比較, 用 shunt regulator 供電的分析力, 細緻度, 靜度都不及這個電池供電, Shunt Regulator 供電較有空氣感, 口形會大些.

但是, 用電池供電有些技術性問題: 電池放電的速度不一,  resistor ladder 的方電受播放音樂影響, shift register 的開合決定負載, ISO 3.3V, DAC 1.2V 和 3.3V 是比較穩定的. 但是 DAC 1.2V 和 DAC 3.3V 的耗電量都比其他的高不少. 我把DAC充滿電後, 它可以行一整天(24小時以上), 但當它在約30小時沒電時, 我測出只是 DAC 的 1.2V 和 3.3V 電池電壓過低令DAC不能運作. 至於R2R和ISO3.3的電量都還是十分充沛的.

因此, 我作出了些修改: 我把DAC的1.2V和3.3V交回voltage regulator供電, 這樣做, DAC 只要3粒 lifepo4 電池便可. 而且因為R2R和ISO3.3V的供電耗電量十分低. DAC現在可以運作四天才要充電. 充電全滿則需5-6小時.

Thursday 24 March 2016

NMR - 音響播放器

上年, 我朋友介紹我一齊買一隻叫 ABC-PCB 的 DLNA renderer, 當時一起分擔運費都要4千, 加上我當時因為搬屋有半年多不能玩音響, 所以沒有參加.

今年, 我想起這東西. 於是上網找一下它的詳情, 發現原來它的公司名稱改了, 網頁也更新了:
http://www.engineered.ch/audio/network-interface/


Q1: 這是甚麼?
它是一個 DLNA renderer, DLNA 是 數位生活網路聯盟(Digital Living Network Alliance,DLNA). 在音樂播放上, 我需要:

•Digital Media Server(DMS)數位媒體伺服器:提供了媒體檔案的獲取、錄製、儲存以及作為源頭的裝置。
•Digital Media Player(DMP)數位媒體播放器:可尋找並播放或輸出任何由DMS所提供的媒體檔案的裝置。
•Digital Media Controller(DMC)數位媒體控制器:作為遙控裝置使用,可尋找DMS上的多媒體檔案,並指定可播放該多媒體檔案的DMR進行播放或是控制多媒體檔案上下傳到DMS的裝置。
•Digital Media Renderer(DMR)數位媒體渲染器:可接收並播放從DMC push過來的媒體檔案。
(source: https://zh.wikipedia.org/wiki/%E6%95%B8%E4%BD%8D%E7%94%9F%E6%B4%BB%E7%B6%B2%E8%B7%AF%E8%81%AF%E7%9B%9F)

當中, NMR 便是 DMR. iPad 加上 DLNA 軟件便是 DMC(和DMP), 我的 NAS 安裝了 DLNA server 便是 DMS (和DMP)

Q2: 為何用它不用 Squeezebox Receiver?
因為它能輸出Hi-res PCM384 和 DSD64/128. 我相信佢硬件上可以輸出DSD256, 只是要等firmware upgrade.

Q3: 為何用它ARM 小電腦?
我之前玩過一些ARM的小電腦, 其實都是大同小異, 5V 500mA 供電, 軟件用 Linux, 用 Squeezelite 或 MPD 作播放器, USB作連接DAC的界面. 換供電或用 real-time kernel, IRQ affinity, task priority 可以進一步改良音質, 但因為使用USB界面, DAC也要一張USB接收卡(如 Amanero, XMOS 之類), 增加了很多變數. 更甚是當中的USB起了成敗關鍵的作用

Q4: 有些帶I2S輸出的ARM又如何?
Pi 是有 I2S 輸出的, 但它的鐘先天是有缺憾的. Odroid C1+ 是另一個好選擇. 事實上我也因為朋友的介紹買了它回來玩了一兩個月. 配合 Runeaudio, 和它的紅外線接收和搖控, 已經可以很方便地使用不單只是 iPad (Mpad), 更可用搖控作簡單播放操控. 但它都有一個問題, 由於它用
SD 卡跑 linux, 你不能直接斷電, 不然它的系統檔案會損壞. 一定要經 Runeaudio 介面關機才可斷電.

NMR 這類 DLNA renderer 正正是給DIY懶人的完美播放器. 它是一插即用, 可隨時斷電, 也是用 iPad 操控. 分別在它的 music server 是 DLNA server, 不是 Squeezebox Server 或 MPD.

問了價錢, 唔知係唔係外匯價的問題或是他們減了價, 這次比上年的價錢便宜了數百, 再問一問朋友用後感覺如何, 他說十分好, 於是我便去馬.

在 Paypal 付了錢, 前後約一星期內便收到.



一看上去, 做工十分好,  只是3大元件:
1. DSP - Analog Devices ADSP-BF537KBCZ-6AV (Blackfin)
這是最貴的部分, 它是DLNA renderer 核心, 耗電量也最大, 約 3.3V 700mA

2. CPLD - Lattice LCMX0256C
它負責介面的工作, 包括 SPI, 但我不打算用它的 SPI, 因為實在太廢, 只能輸出ASCII的歌手, 歌名, Album Cover 也只會回傳 "empty". (ASCII 意思是它不支持中日韓等, 只支援英文). 它的I2S才是我會用的地方.


3. DIT - WM8804G
這是用作S/PDIF 輸出或輸入的.



說明書話它需要 3.3V 800mA 的供電, 我發現不能只用一粒聲稱有 1.5A 輸出的 LDO, 它會在 "boot process" 中停了. 它的 boot process 是:

D1 + D2 on > D1 + D2 閃一下 > D2 著約20-30秒 >  D1 長著 (開機完成可播歌)


 
我主要用它的I2S 輸出接dam1021, 但有趣的是, 它旳PCM輸出和DSD輸出是用不同的 pin, 有重疊但又不是完會重疊, 我問過他 , 建議跟 dam1021 的方式去做, 希望他們接納這意見.


因為我主要是播PCM的, DSD的事可以暫時不理. 它的輸出針腳十分細少, 是0.5mm間距的, 常人不易銲接線, 幼線也不易揾. 我用了一個FFC/FPC轉 2.54mm針腳PCB.

Thursday 11 February 2016

Clock 的迷思

今天上網看到這篇有關Clock的評論:
Upgrading a DAC clock is a fool’s errand

You can buy and install a so-called femto-clock but the clock signal that reaches the DAC chips is more likely a pico- or a nano-clock. The reason is the intervening logic gates used to select and divide the oscillator’s output to provide different bit- and word-clock rates as required. 
意思大概是說, 當你換了一個 femto鐘之後, 可能到了DAC chip 內它只是一個 pico 或 nano 鐘, 原因係中間的一些 logic gate 已經把 clock 的訊號劣化了.

femto clock = 千萬億分之一秒 = 0.000 000 000 000 001 秒
pico clock = 兆分之一秒 = 0.000 000 000 001 秒
nano clock = 十億分之一秒 = 0.000 000 001 秒
Most USB DACs have two oscillators, one for sample rates that are multiples of 44.1K and the other for multiples of 48K. In most cases the oscillators are always running, each taking gulps of current from a common power supply and leaving behind a residue of their respective clock rates.
大多數的 USB 解碼是有兩個鐘, 一個負責44.1KHz 和它的倍數, 另一個負責48KHz 和它的倍數

To select which oscillator is used to clock the DAC chips the circuit uses a multiplexor (mux).

一般會透過數據多工器(mux)去選擇那個鐘輸出.
In its simplest form a mux has three inputs, one selector, two data, and one output, data. The selector signal chooses which input data is passed to the output.
 最簡單的數據多工器有3個輸入,一個選擇輸入, 兩個數據輸入(44.1k和48k)

Now, the two pristine OCXO ‘femto’ clocks are dumped onto the same silicon substrate and pass, side-by-side, through a common logic gate, the mux. 
那兩個clock都輸入到mux中再經過如galvanic isolator 才去到DAC chip. 所以解釋到何以換了這些鐘得出來的效果也不是很顯著.

以下是小弟的見解:
換鐘的確是會有改善的, 想想便明白, 之前的鐘可能本身只是 nano 的級數, 過了 mux 也是會劣化了, 不一定是到了 milli (0.001), 到了 micro (0.000 001) 也比 pico 鐘劣化後的 nano 差千倍了.
另外, 上文講出了兩點值得留意:
1. 用了 mux 便劣化了鐘的表現, 那麼可否不用 mux?
2. cpu, usb bus 等的其他訊號對鐘也有會劣化的影響

Friday 22 January 2016

比較不同的 Soekris dam1021 摩改

我有三台dam1021 DAC,
A - Rev2 0.012% 以 Sigma22 +/-9V (J1)供電,RAW RCA 輸出
B - Rev1 0.02% 加了 Vref 電容, 以 Salas Bib +/-5V 供電; Salas 3.3V 供 "PWD+3.3V 和 1.2V 和 ISO +3.3V", RAW RCA輸出
C - 雙 Rev2 0.012%, 跟B一樣的供電,Balance mode XLR 輸出

比較了
一。A 對B
B較analog(順滑/無咁數碼聲),細節上是A和B是有分別但不是十分大.

二。B對C
(C的音壓較大,我要自行把C的音量減細)
C的高低更明顯,更強質感,特別聽低音鼓聲的層次有明顯分別

三。B做了 oneoclock 的 transistor mod 對 C
本來是C較好,但現在B的分析力明顯比C好了,更3D,雖然在質感上,C依然較強,但B比較高清,令C的優勢不明顯了

有關 Transistor mod
以我理解,Alecm 是最先在 diyaudio 的 "Reference DAC Module - Discrete R-2R Sign Magnitude 24 bit 384 Khz" 中提出使用 transistor mod.

之後Oneoclock 提出了另一個摩改方式:
http://www.diyaudio.com/forums/vendors-bazaar/259488-reference-dac-module-discrete-r-2r-sign-magnitude-24-bit-384-khz-416.html#post4539319
 

(Source: http://www.diyaudio.com/forums/vendors-bazaar/259488-reference-dac-module-discrete-r-2r-sign-magnitude-24-bit-384-khz-416.html#post4539319

oneoclock 的詳盡解釋:
http://www.diyaudio.com/forums/vendors-bazaar/259488-reference-dac-module-discrete-r-2r-sign-magnitude-24-bit-384-khz-419.html#post4544441

oneoclock transistor mod的做法:

1。先取去橙色位置的兩粒SMD

2。接通(或換成0R電阻)黃色的SMD

3。銲上BC550C和BC560C