Showing posts with label DIY. Show all posts
Showing posts with label DIY. Show all posts

ESS DAC Code?

/******************* Code Customization Section *********************/
/* First: Choose the clock frequency you have and comment the other */

#define USE80MHZ  
//#define USE100MHZ

/* Second: Choose stereo or mono

   | CONFIGURATION       | #define DUALMONO | #define STEREO   |
   |---------------------|------------------|------------------|
   | Dual mono           | un-comment       | comment          |
   | Stereo              | comment          | un-comment       | 
   |---------------------|------------------|------------------|    */
   
#define STEREO
//#define DUALMONO

/* Third, optionally choose the number of inputs. 6 is the max without 
   modifying the code. You could lower the number of input choices
   here. for example if you only want to see 2 choices, modify the
   code like this: #define ICHO 2                                   */

#define ICHO 6

/* Fourth, optionally change the name of the inputs. Keep 6 characters
   Use blanks if necessary. If you use less number of inputs, only the
   top ones matter.
   */

char no0[] = "INPT-A";
char no1[] = "INPT-B";
char no2[] = "INPT-C";
char no3[] = "INPT-D";
char no4[] = "INPT-E";
char no5[] = "INPT-F";

/* These inputs choices can be virtual or real. In the ES9018 there
   were 8 data lines. One could simultanously connect one I2S/DSD input
   plus 3 additional SPDIF input (thus 4 physical inputs). 
   In the ES9018K2M there are two additional input lines for SPDIF so 
   one can potentially connect one I2S/DSD input plus 2 additional SPDIF
   inputs.In addition one could choose different parameters -such as the
   DPLL bandwidh or filter selection- 
                                                                    */
   
/* Fifth, adjust the interrupt routine to match your rotary encoder by
   adjusting the mode parameter in the following routine
   (search for it in the code):
   
   "attachInterrupt(0, rotEncoder, LOW);"
    
   The mode parameter defines when the interrupt should be triggered:
       LOW to trigger the interrupt whenever the pin is low,
       CHANGE to trigger the interrupt whenever the pin changes value
       RISING to trigger when the pin goes from low to high,
       FALLING for when the pin goes from high to low. 
   
   You can also read the following link:
   https://hifiduino.wordpress.com/2011/09/12/problems-with-rotary-encoders/
                                                                    */

/***************** End Code Customization Section *******************/



/******************* Code Customization Section *********************/

/* First: Choose the clock frequency you have and comment the other */

#define USE80MHZ  
//#define USE100MHZ

/* Second: Choose stereo or mono

   | CONFIGURATION       | #define DUALMONO | #define STEREO   |
   |---------------------|------------------|------------------|
   | Dual mono           | un-comment       | comment          |
   | Stereo              | comment          | un-comment       | 
   |---------------------|------------------|------------------|    */
   
#define STEREO
//#define DUALMONO

/* Third, optionally choose the number of inputs. 6 is the max without 
   modifying the code. You could lower the number of input choices
   here. for example if you only want to see 2 choices, modify the
   code like this: #define ICHO 2                                   */

#define ICHO 6

/* Fourth, optionally change the name of the inputs. Keep 6 characters
   Use blanks if necessary. If you use less number of inputs, only the
   top ones matter.
   */

char no0[] = "INPT-A";
char no1[] = "INPT-B";
char no2[] = "INPT-C";
char no3[] = "INPT-D";
char no4[] = "INPT-E";
char no5[] = "INPT-F";

/* These inputs choices can be virtual or real. In the ES9018 there
   were 8 data lines. One could simultanously connect one I2S/DSD input
   plus 3 additional SPDIF input (thus 4 physical inputs). 
   In the ES9018K2M there are two additional input lines for SPDIF so 
   one can potentially connect one I2S/DSD input plus 2 additional SPDIF
   inputs.In addition one could choose different parameters -such as the
   DPLL bandwidh or filter selection- 
                                                                    */
   
/* Fifth, adjust the interrupt routine to match your rotary encoder by
   adjusting the mode parameter in the following routine
   (search for it in the code):
   
   "attachInterrupt(0, rotEncoder, LOW);"
    
   The mode parameter defines when the interrupt should be triggered:
       LOW to trigger the interrupt whenever the pin is low,
       CHANGE to trigger the interrupt whenever the pin changes value
       RISING to trigger when the pin goes from low to high,
       FALLING for when the pin goes from high to low. 
   
   You can also read the following link:
   https://hifiduino.wordpress.com/2011/09/12/problems-with-rotary-encoders/
                                                                    */
 

/***************** End Code Customization Section *******************/ 

Smart Digital Amplifier Monitoring Controller

Realtime-Programmable Digital Amplifier Control-Monitor System

  • Isolation, Realtime, PC-UI Programmable, FreqResponse Adjust, Harman Curve
  • Digital Filter/Parameter Selection
  • LDR volume control/detection
  • LED Status?
  • OLED Status?
  • Encoder Adjustment?
  • Electronic Volume
  • Buffer OP Selection
  • PC-local-bluetooth GUI adjustment
  • Wireless
  • I2C/SPI Device integrated like BME280
  • Temp-Volt-Current-VS-Time PC Logging



Monitor:

  • Bias
  • DC offset
  • Temp
  • Current/Voltage Supply
  • THD
  • Gain

Controlling:

  • Vbe Bias
  • Idle Current
  • Negative FB
  • Protection Sensitivity
  • Input Source
  • Gain
  • Relay---R/L/C Selection
  • Soft-start, DC protection
  • Impedence Control
  • Feedback point select
  • Servo on/off
  • PSU Voltage, Kind
  • Grounding Point Selection, Ground Lift on/off
  • Programmable Temp, or constant temp!


#include <math.h>
#include "LiquidCrystal.h"
#define RELAY 8   
LiquidCrystal lcd(6,7,5,4,3,2);
float A = 1.009249522e-03, B = 2.378405444e-04, C = 2.019202697e-07;
float T,logRt,Tf,Tc;
float Thermistor(int Vo) {

 logRt = log(10000.0*((1024.0/Vo-1))); 

 T = (1.0 / (A + B*logRt + C*logRt*logRt*logRt));  // We get the temperature value in Kelvin from this Stein-Hart equation

 Tc = T - 273.15;                 // Convert Kelvin to Celcius

 Tf = (T * 1.8) + 32.0;           // Convert Kelvin to Fahrenheit

 return T;

}


void setup() {

 lcd.begin(16,2);

 lcd.clear();

pinMode(RELAY, OUTPUT); 

}


void loop() {

  lcd.setCursor(0,0);

  lcd.print("Temperature:");

  lcd.print(int(Thermistor(analogRead(0))));

  lcd.print("C ");

  delay(500);  // wait 0.5 seconds before sampling temperature again

if (Tc > 28) digitalWrite(RELAY, HIGH),lcd.setCursor(0,1),lcd.print("Light status:ON "),delay(500);

else if (Tc < 28) digitalWrite(RELAY, LOW),lcd.setCursor(0,1),lcd.print("Light status:OFF"),delay(500); }



RKV II Part. 2


PCL805 Tube Headphone Amplifier

RKV mkII

- by Helmut Becker 

I was allowed to publish this report, which was published in the magazine ELRAD 1984, issue 6, with the express kind permission of Mr. Helmut Becker ( www.audiovalve.de) on the Jogis-Röhrenbude homepage. All rights of the author, Mr. Becker, remain unaffected.

All photos and texts shown on this and the associated sub-pages (including extracts), should they be passed on to third parties, require my express consent.

Any commercial use is hereby prohibited.









Most stereo equipment manufacturers pay little attention to the fact that headphones are some of the best transducers.
Almost all amplifiers have a headphone output, but this usually represents a very bad compromise in terms of its technical design.

Plain, bad and simple
Usually the headphones are simply connected in parallel to the loudspeaker terminals, whereby the loudspeaker can be switched off if desired. Since there are headphone systems with an impedance of 8 to 2000 ohms, a resistor of around 300 ohms is placed in the headphone lead, which in 8-ohm systems causes an overload due to excessively high voltage but, on the other hand, does not cause a noticeable voltage drop when connecting high-impedance systems .
So far it works pretty well. Unfortunately, it is too often forgotten that dynamic headphones, like loudspeakers, require damping due to the low internal resistance of the amplifier output. The mentioned series resistance prevents this consequently.
Another shortcoming of this solution lies in the fact that the supply voltage of loudspeaker amplifiers is usually too low. Hi-fi headphones are almost exclusively high-impedance (600-2000 ohms) and need a correspondingly high voltage for control. The power amplifiers designed for low-impedance loudspeaker loads cannot keep up here. The consequence is a separate headphone amplifier.

Effort that is worth it ...
A loudspeaker amplifier with a very low internal resistance should supply a very low-resistance load with relatively low voltages and high currents, a task that is tailored to the transistor.
However, we want to supply a relatively high-resistance load with comparatively high voltages at low currents, although with a low internal resistance. Of course, this also works with transistors. But we remembered a component that the older ones still have fond memories of.

The tube is coming ...
For the catalog of tasks described above, a tube assembly is ideal. High supply voltage is a necessity for tubes, so they can also handle high signal amplitudes. Since the load is high-impedance, you can do without the output transformer that is unavoidable when using loudspeakers. This leads to an ironless tube power amplifier of the highest quality, which is far superior to most transistor amplifiers.

... the transistor stays.
However, we haven't completely banned semiconductors. Wherever tubes have their weak points - they are subject to certain manufacturing tolerances and, as components subject to high thermal loads, they show relatively severe aging - semiconductor components take on the task of controlling and regulating fluctuations in the operating point.
When connecting headphones to the output of a loudspeaker amplifier that has been rated as excellent up to now, one often learns what else arrives apart from music. It rustles, buzzes, crackles and hisses ... and the loudspeaker does not notice any of this.
Naturally, headphones are much more sensitive transducers than loudspeakers. Even the slightest noise and hum tensions are mercilessly brought to the ear. The requirements for a headphone amplifier are correspondingly high.

Can be heard
The circuit shown, which was developed by Helmut Becker and registered for a patent (P 3200 517.2), also shows excellent behavior here. A comparison with the P 3090 from Onkyo quickly revealed that there were no significant differences to the much more expensive reference. Together with the dynamic DT 880 Studio headphones from Beyer, the amplifier reproduced everything that was in the grooves, cleanly and naturally. He brought dynamic passages and solemn passages impeccably. Solo voices and orchestra came with very little coloration.
In brief, the advantages of the circuit concept once again:

  • excellent metrological data (see below)
  • tonally balanced, sharply contoured, powerful sound
  • high dynamics, so CD-compatible
  • high damping factor, lowest internal resistance
  • ironless adaptation to impedances between 30 and 3000 ohms
  • Can be expanded with a preamplifier and thus upgraded to a linear integrated amplifier


The circuit
As can be seen from the circuit diagram (Fig. 1), the two output tubes are connected in series in terms of DC voltage, so that the available supply voltage is distributed over both tubes.


Fig.1

In order to avoid an unnecessarily high operating voltage, tubes would have to be used which still allow strong currents at an anode voltage of around 150 V. Since the range of LF tubes is consistently matched to high anode voltages, the choice fell on a tube type that was standard equipment on television sets around ten years ago.


The triode-pentode PCL 805 meets the above requirements, but has serious disadvantages in other respects, which must be taken into account and eliminated in the rest of the circuit concept. For example, the relatively strong heating hum of this type of tube is effectively suppressed by a control circuit and the strongly curved control grid characteristic is compensated.


The block diagram shown above illustrates the circuit principle, which is based on three functional groups.

  • Reference voltage source as a reference point for all controlled variables
  • Operational amplifier as a control element
  • Tube power amplifier

The tube output stage

The tubes 2 and 3 are connected in series in terms of DC voltage and therefore carry the same current. If it is ensured that an equally large voltage drop occurs on both tubes, the maximum possible modulation is achieved, tube 1b works in anode-base circuit, while tube 2b is used in cathode-base circuit. The negative grid bias of tube 2b defines the operating point of the output stage. It is advisable to choose the operating point for AB operation.
The tubes 1a, 2a serve as driver stages and at the same time ensure the antiphase control of both output tubes. 

If the grid voltage at tube 2b increases, the grid voltage at tube 1b must decrease - and vice versa. In the process, the voltage potential at the connection point A between the tubes 1b and 2b is shifted. The entire arrangement works like an electronic potentiometer, which is placed between ground and supply voltage and whose tap leads to the output electrolytic capacitor C2.



The operational amplifier
The tasks of the operational amplifier are:

  • Check the operating points of the DC coupled amplifier
  • Control of the AF signal to be processed

In order to monitor the operating points of all amplifier stages from one point, a galvanic coupling is necessary. As can be seen from Figure 1, this is the case for the tube systems Rö 1a, 2a, 1b. The operating point of Rö 2b is determined solely by the negative grid bias. A certain internal resistance arises for Rö 2b. The voltage potential that results at point A is divided down with R1 and R2 and compared with the reference voltage URef by the OpAmp. 

The output voltage of the OpAmp will now shift the operating points of the tubes Rö 1a and Rö 1b until the voltages at the inverting and non-inverting input of the OpAmp match. The reference voltage URef at the inverting input of the OpAmp thus determines the voltage potential at point A.


If URef is selected so that half the supply voltage U a is at point A , the two output tubes have the same internal resistance, the same power loss is implemented in both, and the controllability reaches its maximum.


Figure 1 also shows that the reference voltage is superimposed on the LF input voltage. When modulated, the operating points will shift in the rhythm of the input voltage in the sense that a true copy of the input signal is created at the output of the amplifier - but amplified by the resistance ratio of R1 and R2.

The rather complex control circuit gives the circuit some remarkable properties. A problem with tube circuits is the heater hum. The alternating current flowing through the filament of the tube creates a magnetic field which of course also penetrates the cathode and can lead to a 50 Hz modulation of the anode current.


Since such a hum disturbance occurs within the control loop in the circuit concept described, it is largely corrected if only the reference voltage is clean and hum-free. However, this requirement can be met very easily by good sieving and smoothing with a fixed voltage regulator.


Signal-to-noise ratios of 130 dB (A) can be achieved in this way.
Another advantage of the circuit concept is the complete compensation of the characteristic curve curvature of the tubes used. Manufacturing-related tolerances and age-related shifts are automatically compensated. In addition, the regulation, which corresponds to a strong negative feedback in terms of alternating voltage, ensures an extremely low internal resistance of the output.

Power supply unit


Although the amplifier with its mixed equipment requires a large number of different supply voltages, the mains transformer manages with two secondary voltage windings. 

To generate the anode voltage, a winding with 250 V and 100 mA load capacity is sufficient to supply a stereo output stage.


The second winding generates the heating voltage for the tubes: 

The PCL 805 requires 18 V at 300 mA heating current. 

Since two tubes are connected in series, a transformer voltage of 36 V with 0.7 A load capacity should be selected.


The positive and negative supply voltage of the OpAmp as well as the negative grid bias voltage for Rö 2b and the positive reference voltage URef are also derived from this winding.


(Corrected Schematic, see text.)


*****C23 is 220nF/100V is missing in the original schematic!

****Adjust P1 to make a ~3.5Vdc voltage bias on the node of C13 and R13.

Construction

Unfortunately, a double-sided circuit board could not be avoided when developing the circuit. For this reason, self-production is reserved for the experienced etcher.

When equipping, it is advisable to start with the power supply unit. All components that are used for the power supply must be soldered in. 

These include the rectifier Gl1, the diodes and Zener diodes D1-4 and D11, the capacitors C1-14, the resistors R1-5, the trimming potentiometer P1, the fixed voltage regulator IC1 and the two fuses Si 1, 2.

Before you start the Connect the transformer and check the voltages, a word about dealing with high voltages: The anode voltage of the device is over 300 V! 

That is a value that may be enough to send you to the eternal hunting grounds.



Only work on the device when it is switched on if it cannot be avoided and then with extreme caution. Above all, remember that after switching off the device, the voltages on the high-voltage electrolytic capacitors C14, 24, 24 ', 25, 25', 26, 26 'are retained for a long time.

So before you grasp heartily with both hands, even when the device is switched off, you should discharge the capacitors mentioned.

This is done via a 1 k, 4 W resistor, by no means through a short circuit, because an electrolytic capacitor does not like it when it has to supply currents of over 10 A for a short time.

Now switch on the device and check the voltages relative to ground:

at C14 approx. +315 V
at C4 approx. -18 V
at C8 approx. +22 V
at C10 approx. +12 V
at C12 approx. + 6V

The voltage at C13 is initially set to about 3.5 V with the spindle trim potentiometer P1.


If the voltage values ​​are correct, after switching off the device and after discharging the electrolytic capacitor, the next step is to solder in the tube socket and insert the tubes in order to then convince yourself of the function of the heating filaments. 

After switching on the device, the glowing heating wire should be visible at the upper end of the inside of the tube after a few seconds.

After switching off and unloading again, the rest of the equipment begins.

Once all components have been soldered in, the amplifier can be put into operation and adjusted. To do this, the voltage at C26 or C26 'is measured. 

It should initially be between 100 and 250 volts and can now be set to around 160 volts with P1.


If you now short-circuit the LF input and check the output signal with an oscilloscope, nothing should be seen except for a very small noise signal. The same test is carried out on the second channel.


To set the symmetry, a 1 kHz sinusoidal signal is applied to the amplifier input. 

The output is loaded with a 390 Ohm, 4 W resistor and the output signal is monitored with the oscilloscope. 

Now increase the input voltage until the limitation of the output voltage is visible on the screen. By slightly readjusting P1, the operating point is shifted until the limit is the same for a positive and a negative half-wave. 

No distortion of the sinusoid should be visible until shortly before the limitation starts.
If you do not have an oscilloscope available, you can be satisfied with bringing the voltage at C26, C26 'to half the anode voltage.

Technical data (measured on the finished device) :

Output line: 3.4 W at 100 Ohm
RMS at 1 kHz 1% Kges. : 6.6 W at 600 ohms

THD : 0.007% at 100 ohms
1 kHz / 100 mW: 0.004% at 600 ohms

Intermodulation: 0.008 at 100 ohms
600/6000 Hz, 4: 1: 0.005 at 600 ohms

Power bandwidth : 2 Hz - 120 kHz at 100 ohms
-3 dB: 1 Hz - 140 kHz at 600 ohms

Damping factor:> 10 4

Input sensitivity:
0.2 V for 1 watt at 100 ohms
0.5 V for 1 watt at 600 ohms

Input impedance: 100 kOhms (without Volume poti)

Signal-to-noise ratio:
113 dB (A), 50 mW at 600 ohms
138 dB (A), 2 W at 600 ohms

Output voltage: 80 V (RMS)
Rise time (40 V at 600 Ohm): 80 V / uS

Power output: 2 - 3 dyn. Handset (imp. Approx. 400 ohms)

Mains connection value: 220 V / 50 Hz, 40 VA


The circuit board - layouts and assembly


(Layout of the wiring side)

(Click on the respective layout with the mouse button, it will then be displayed in full resolution.) (Layout of the component side)



 


The parts list for this headphone amplifier:

   


This amp is still offered today (of course with some improvements in the meantime) at Audiovalve under the name RKV Mark II:



About Tubes: 

ECL85/6GV8-XCL85/9GV8-LCL85/10GV8-PCL85/18GV8 

is a very good tube for audio amplifiers, very linear, with lower internal resistance and 

with lower supply voltages uses an output transformer of lower primary impedance 

(read: cheaper!) 

than the tube ECL86 / 6GW8-PCL86 / 14GW8, which is much cheaper and lighter to procure.

The improved ECL805 / PCL805 variant, which has an increased maximum plate dissipation (especially from TELEFUNKEN) of Pa = 11W, is even better, but it is also increasingly difficult to find.


Due to reliability Problems the PCL85 (Pa= 7W) became the successor PCL805 (Pa= 8W) where nothing else had been changed except the pentode power rating.

For the same reason the pentode part had been put into a single envelope, which was named PL805 then (with "E"-Heater also produced as EL805).

It is very easy to mistake the PCL805 for the PCL86 from the outside - especially if the lettering has become illegible. - So take care!


The following photos show a PCL805 (left, Philips production) and a PCL86 (right), each side by side. - Since both are Valvo-labeled, the slight differences that can be seen (anode sheet, etc.) could be due to internal reasons.

It is therefore quite possible that an ECL805 and an ECL86 from a different manufacturer have slightly different differences, or could even be completely similar!



 

LH0033/63 HS Buffer


The LH0033 and LH0063 are high speed, FET input, voltage follower/buffers designed to provide high current drive at frequencies from DC to over 100 MHz. 

LH0033***±10 mA into 1KR (±100 mA peak) @ 1500V/us.

LH0063***±250 mA into 50R (±500 mA peak) @ 6000V/us.

In addition, both exhibit excellent phase linearity up to 20 MHz. 

Both are intended to fulfill a wide range of buffer applications such as high speed line drivers, video impedance transformation, nuclear instrumentation amplifiers, op amp isolation buffers for driving reactive loads and high impedance input buffers for high speed A to Ds and comparators. 

Discrete R2R+Sting MSB?

 http://audiophilediyer.com/diy-discrete-r2r-dac-part-1/

I2S FIFO Low Jitter Reclocker

 


頗有名氣的IAN'S FIFO,經過六七年的開發演進,應該是DIY界對於JITTER、RECLOCK最具盛名的解決方案了。目前預購的是FIFO 2020 Q3版本,法國網站已經有上架了。


FIFO Pi簡而言之有三大功能:
1. 訊號電氣隔離
2. 緩衝訊號並重整出低Jitter訊號
3. 重整時鐘訊號,並且為超低Jitter

PCM支援到768KHZ,DSD支援到DSD1024,都是相當前衛了。
FIFO PI有一個最狂的功能就是內建硬體昇頻,支援16BIT昇為32BIT;等於是
PCM 32BIT/768KHZ,這是市場上DAC能支援的最高規格了!


Q3做了很多改進,是目前最新的版本。對於像我不用樹梅派的人來說,其實也可以很好地相容IAN'S FIFO,他都幫你想好了。透過"BRIDGEPI",使用者可以插入一張常見的XMOS或者AMENERO USB轉I2S-20PIN的轉接卡。那麼透過Bridge-PI,USB轉成I2S的訊號就可以接入PI的GPIO針腳,就可以跟FIFO相容了。
最後,可以選擇TRANSCEIVER或者TRANSPORTPI來輸出LVDS BY HDMI界面或者同軸等。
目前比較新的DAC都有獨立的HDMI I2S接口,因此IAN'S FIFO也可以很好地相容這樣的傳輸介面。


IAN'S FIFO應該是目前最好的DIY USB轉I2S界面了,FIFO Q3報價是135USD,加上BRIDGEPI=29USD、HDMIPI=25USD,那麼對於以電腦當訊源DIY者來說,整套FIFO最低是189USD,加運費大概六千元台幣。


在基本款上面,還有一些可以按照個人喜好升級的地方,像是那兩顆XO,原廠是沒有給到CCHD-975這種等級,這要自行升級;另外最近PULSAR XO聽說評價也不錯,當然也可以相容FIFO Q3的DIP-14腳位。



FifoPi Q3 new improvements
  • Supports XOs with and without an OE pin
  • Uses pure 3.3V for clean side DC power input. All LDOs at the clean side had been removed to make it possible to work with a better 3.3V LifePO4 or ultra capacitor power supply solution directly.
  • With optional u.fl XO input sockets to work with external XOs through coaxial cables.
  • Supports single XO mode
  • SMT XO sockets, easy to replace and remove.
  • With both isolated MUTE and isolated DSD EN outputs to work better with pure DSD DACs or external PCM/DSD DACs (through TransportPi or HdmiPi).
  • New 300MHz high speed flip-flops to lower the additive jitter of I2S/DSD re-clocking at finial output stage.
  • Optimized decoupling networks to improve power supply performance.





E-mu 0404 1212m 1616m 1820m PCI 音效卡 Windows11 驅動程式安裝 2025

E-mu 0404 1212m 1616m 1820m 音訊卡 驅動相容性與安裝 E-mu 0404 1212m 1820m等是歷久彌新的老音效卡,這些是Windows 7 時代製造且相對較老舊的音效卡。當時,AKM旭化成和 Burr-Brown 等廠商的 AD 轉換器都在爭奪板...