A have had an old untrustworthy 317/337 based power supply as my test unit, since it was build in 1987. Over the years I have tried to improve the poor thing, at first, without really knowing enough, to improve anything. It has come to the point, where I blame this unit for a lot of things, that might as well be faults, in the circuits I am testing.

I have been working from these specifications:

  • Easily adaptable to higher voltages (and currents)
  • Input voltage about +/- 22V
  • Variable output voltage between about  +/- 2- 20V
  • Output current limit at about 1A
  • Adjustable with a single multi-turn pot
  • Predictable performance
  • Readily available parts (what I had lying around)
  • The new PCB must fit in the place of the original, with only a modest level of violence.

I have been through some op-amp and/or 317/337 based designs, but they all failed in different ways. In the end I am prototyping the following circuit.

The whole thing works in the perfect world of spice, and the coloured parts has been tested as the prototype seen at the top of this post. Since I have designed this from scratch, I will describe the circuit, but first lets take a look at a functional block diagram of a standard linear voltage regulator, from National Semiconductor Application Note 1148:

The positive side of my circuit is mostly a discrete implementation of the above. VREF equals A in the schematic below, the error amp is section B. The pass transistor is the darlington Q1, Q2, in block C, these are connected a little different than the block diagram above, mostly to save parts, and make life easier for myself in the current limiting department. Voltage divider R1, R2 equals the voltage divider R4, R7 in block D below.

is a twist on a standard zener reference. R2, D1, R5, and C4 is the standard circuit, only it is not connected to ground. R2 limits the current through D1, and could easily be increased, I would suggest 3.9kΩ for a current of about 5mA through D1. R5 and C4 is there to filter out zener noise. D2 and R11, forms a negative counterpart, to D1 and R2, and I would suggest 3.9kΩ for R11. The junction between D2, and R11 is at -5.6V due to D2. Q9 is there to buffer the -5.6V from D2 and R11, due the 0,65V drop in Q9, the emitter voltage is about -5.6V+0.65V=-4.95V. C5 and R10 is a filter just like C4 and R5. D1 is referenced to the -4.95V, instead of the usual ground connection, this means that the junction between R2 and D1 should be at a stable -4.95V+5.6V=0.65V, which serves as a reference voltage,
is a simple differential amplifier in place of an op-amp. The transistor version was chosen, since most op-amps have a maximum supply rating of 36V. With the BJT version, scaling to a higher voltage, is a simple matter of choosing the right transistors for Q4 and Q5. In my prototype I have used BC337 types. One of the inputs of the differential amplifier is connected to the reference voltage from R2, D1, through the filter R5 and C4. The other input is taken from the voltage divider R4, R7, which is a fraction of the output voltage. The output is taken between the collector of Q5, and R3.
is the pass transistor, the difference signal from block B, which is the difference between the reference voltage, and an adjustable fraction, of the output voltage, is used to control the voltage drop of Q1. Q2 makes this a darlington transistor with a current gain large enough, that the difference amplifier can drive it at maximum current load, on the power supply output.
is a simple voltage divider, the difference amplifier will adjust the output voltage, via Q2, Q1, to make the voltage at the connection between R4 and R7 equal to the reference voltage from A. R4 is the pot on the front panel, and R7 is a trimmer for initial fine tuning.

This is as far as I have gotten until now. I will describe the rest of the circuit as it is prototyped. For now this is a positive supply adjustable from 0.70V to 6,6V running off a couple of 9V batteries.

I tried playing the F2, through my ordinary 3-way speakers, just for kicks. Well Nothing exploded. The sound was odd, but there was something good hidden in there, though each speaker was running it's own show. Most notably, was the total lack of control in the bass region, it sounded somewhat like a boom box, with the bass boost button pressed firmly in to the "maximum boost" position. I have a stereo set of servo controlled sub woofers taking over from 90hz, and this arrangement certainly didn't work like supposed, the sub woofers each have their own amplifier, and therefore remained voltage driven.

I did a simulation to see what was going on, and here are the results:

Still there was something really good hidden behind the overwhelming incoherence, makes me wonder

Just to show how far it has gotten.

I have gathered together the schematics for the non oversampling TDA1545 DAC. Mind that I am only responsible for the shunt regulators, the microcontroller, and the input selector. The digital input circuitry was developed after reading some post from Jocko Homo on the diyhifi.org forum. The TDA1545 circuit is mostly from the Philips data sheet. The I/V stage is from rbroer on DIYAudio.

At some point in time I have made the following block diagram, and from memory it seems correct.

From the top here is the input selector board, the micro controller for the relays are on a second board, as per the block diagram.

After the relays, comes the SPDIF buffer/amplifier circuit based on Jocko Homo's. The CS8412 converts the SPDIF signal into the correct I2S format, I2S data goes both to the DAC board, and the micro controller board. The micro controller signal is buffered by one of the 7404 inverters, in the hopes that any noise from the micro controller, will be isolated.

The shunt regulators, are duplicates of the similar valued ones in the shunt regulator schematic, you do not need to build these twice!

Here is the DAC circuit.

Everything is in the puzzling Philips data sheet. The relay shuts off the data, while the micro controller scan through the inputs.

Here comes the shunt regulators

The one at the bottom is the one for the DAC, and the one that is not duplicated on the input selector board.

Here comes the I/V from rbroer, which is fed from the unregulated DC supply.

And the micro controller schematic.

I have redesigned the PCB layout's without saving the ones I used in the working DAC. Therefore they have not been tested, and I would rather not publish them, and have them blow up in some poor persons face.

I just did some calculations on how much power the NAD will deliver in class A into 8 Ohms, with a bias current of 100mA. It seems it is a whooping 0,08W peak! I may try, over a period, increasing the bias current to 500mA to give about 1W class A. I did add to the cooling after all.

Note: I tried upping the bias current to 250mA, but the heat sinks were warmer than I liked, and I have backed down to 125mA.

Since I lost all my post on my transconductance amplifier projects, that ended up in an all N-channel MOSFET version of Nelson Pass First Watt F2 amplifier, I will summarize them here.

The above mess is the first prototype of a transconductance amplifier like the First Watt F2. It came to life after numerous SPICE simulations and chewing through OTA datasheets, Pass papers, and forum posts on DIYAudio.

It all started when I began experimenting with open baffle speakers, and got hold of some vintage SEAS full range drivers. It turned out Nelson Pass had been experimenting a with this kind of driver, and had written a paper on the subject.

Current Source Amplifiers and Sensitive / Full-Range Drivers

In short it seems that some full range drivers will benefit from being driven by a transconductance amplifier. A transconductance amplifier is a voltage to current converter with amplification. Our standard power amplifiers, are mostly voltage amplifiers, and will vary the voltage to the load, according to the input voltage. A transconductance amplifier will vary the current to the load, according to the input voltage. For a purely resistive load, this makes no difference as I=U/R, but a loudspeaker is not a purely resistive load. It is actually the current through the voice coil, that controls the force of the generated magnetic field, not the voltage. Because of this, a variable current source seems the most sensible way to drive a speaker. There is a catch though, since most amplifiers, are voltage amplifiers, most n-way speakers have their crossover designed for voltage drive, and will behave wrong, when driven by current. Nelson Pass has written a paper on how to design filters for transconductance amplifiers instead, I have not studied this very hard, since I am building this for full range drivers.

Current Source Crossover Filters

Nelson Pass had designed both his First Watt F1 & F2 as transconductance amplifiers, since I have a bag of IRF640 N-channel MOSFET's. I ended up modifying the F2 (First Watt F2 schematic), to use only N-channel MOSFET's and added a simple regulator, from Nelson Pass ZEN series.

The resulting sound, was good. Despite the two fans needed to keep the amp from burning a hole in the table, that it was lying on (class A, silver, custom made mains cord, 300B, nuclear reactor in the kitchen, mumble mumble). Despite the crude boxes the SEAS drivers had to put up with. Despite the insane amount of distortion, compared to most amplifiers. I have not tested this, but believe I can hear a change to the better, when driven with this amplifier. I have not yet tried correcting the speaker response as per Mr. Pass papers. I have simply decided that it sounded so well I want to finish it, and play with it some more along the way.

I had an installation of Lunar Linux, that I wanted to move from VirtualBox to KVM, and therefore had to convert the imagefile. I searched high and low, but found no up to date instructions on how to do this. | In the old days there seem to have existed a tool called "vditool", but now "VBoxManager" will do the trick of converting a VirtualBox .vdi image into raw format. Here are the steps that I took:

  • Find the UUID of the VirtualBox disk image:

    oblivion@mastermind ~/.VirtualBox/VDI $ VBoxManage list hdds 
    VirtualBox Command Line Management Interface Version 2.1.2
    (C) 2005-2009 Sun Microsystems, Inc.
    All rights reserved.
    UUID:         e4e316cb-ad9f-46ae-b15c-164b893371cb
    Format:       VDI
    Location:     /home/oblivion/.VirtualBox/VDI/lunar.vdi
    Accessible:   yes
    Usage:        Lunar (UUID: d249a972-f112-4cbc-91ce-389ce75e4fac)

  • Convert the .vdi file to raw format, using the UUID just found. Using VBoxManage's clonehd function the .vdi file is cloned into a raw image, in this case called lunar.img:

    oblivion@mastermind ~/.VirtualBox/VDI $ VBoxManage clonehd e4e316cb-ad9f-46ae-b15c-164b893371cb lunar.img -format RAW
    VirtualBox Command Line Management Interface Version 2.1.2
    (C) 2005-2009 Sun Microsystems, Inc. All rights reserved.
    Clone hard disk created in format 'RAW'. UUID: 5106c566-7188-4513-a416-73eb7a4e44a9

  • On my Gentoo Linux system, the converted image was saved in ~/.VirtualBox/HardDisks.

  • Convert the image to QEMU qcow2 format using qemu-img:

    oblivion@mastermind ~/.VirtualBox/HardDisks $ qemu-img convert ~/.VirtualBox/HardDisks/lunar.img -O qcow2 lunar.qcow2

From the utter silence of this command springs lunar.qcow2, ready for KVM!

Generated on 2018-05-03 01:14:21.836608