So the current ADAU1966 boards I am playing with have a new issue I have discovered. The ADAU1966 generates it's own "common mode" voltage reference to bias all the outputs to 2.25V. Two of the DAC boards I have tested at 1.47V on the CM pins.
Something is wrong here, it may be the extra capacitance I have on the pin. The data sheet recommends 10uF and 100nF. I have 100nf, 22uF (ceramic) and 220uF aluminium electrolytic. More is always better!!! Or not, in fact that is complete rubbish. I shall remove the 220uF and see what happens.
Extra PCB footprints are not an issue. It's all there to experiment with. If the changes are needed they are not really unexpected as with any project in development.
In any case, and I think I pointed this out in a previous post, the ADAU1966 seems to be hard to get now. The newer ADAU1966A is twice the price and just as hard to find in stock. Even so it is still a good DAC. I am working on a revised PCB layout, it would be good to make sure all designs (new and old) and up to their best performance and working 100%
So after much head scratching the EEPROM selfboot is working again. The SPI address doesn't seem to matter as long as the EEPROM settings are correct. MP0, MP1, MP2, MP3 pins also need setting correctly - although I have changed these a few times before they are correct as it's not completely obvious.
This all needs documenting properly. Hopefully with this box of tricks now working, almost as expected pending a reduction in analogue output levels, I can start doing that.
Other reworked PCB layouts are still work in progress, a few more tweaks needed to finish them off.
CoreOne revision 2 is getting there. Component placement is 99% there, just need to move 4 jumpers to remove a break in a ground connection. Other PCB revisions are almost complete as well.
I still cannot get the EEPROM working on existing DSP boards. I am at a complete loss here. They used to work on early SigmaStudio versions. I shall keep poking away at it and there is a small hardware change I can try, removing a pull-up resistor on the EEPROM chip select line. I am not sure why it would make a difference now, but might be worth a try.
So my 2 input (XLR) 8 output (phono/RCA) box had been giving me some worries over the past couple of months, and in fact I gave up on it for a few weeks, But I plugged it all back in last night and... it just works.
Stupidity was the main cause for issue. My output phono sockets on the back actually are ordered as "4 5 6 7 0 1 2 3" to match up with the Sigma Studio output channels. As the ribbon connectors on the buffer PCB and DAC PCB are aligned in the same orientation to the edges of the PCB, when they are put together they are "opposite" and the ribbon cable has to twist 180 degrees to fit. Pretty dumb not to notice it but there we are, humanities flaws being shown in their finest hour.
Simple waveform generator (ancient noisy thing) on the Right channel XLR input, mapped to channel 1 output. And it works (and it works with any other channel combo as well). Nothing special but it's a start, adding crossovers in is just done in the DSP now. Although it won't boot from the EEPROM at the moment, assume I actually put an EEPROM chip in the socket.... maybe I should go check that....
Oh and my maximum output from the buffer board with the dac at 0dB output is 5Vpp, so I need to change a few resistors on the buffer board or some amps will get fried.
The DAC chip I have been using, the ADAU1966, no longer seems to be stocked in Farnell. There is also a new variant the ADAU1966A which looks compatible, and there is some limited stock at Digikey/Mouser. RS have stock of the ADAU1966 but the price is much higher (over double) than I last paid for a few. Both parts are shown as production parts so unsure what has changed.
Cirrus Logic offer a range of 8 Channel DACs that support TDM data modes. They have less channels than the ADAU1966, but may be usable. I need to check master clock requirements and other details but will need a new design. They also seem to be in stock at a number of places.
Reworking PCB redesigns and unraveling all the interwoven tracking and component placement without destroying the whole design is hard. Sometimes it is just easier to start again!
As I have been reviewing all the designs I have slowly been making lots of small changes, and lots of small changes leads to lots of PCB rework. This is fine but I am becoming more and more busy with life these days so it will take some time. And in fact just starting from scratch on several PCB layouts may be quicker than trying to work out what I did last time.
Also now looking at ADC options. The TI PCM4202 is a nice spec ADC chip but seems to have fragile I/O pins. One wrong setting or connection on the I2S interface can cause permanent damage. It would be good to have something a little more robust in it's place. Again this would be another new PCB layout, or several if other revisions are needed to fix any issues.
We will get there eventually!
Still working on design updates. Looking to use common parts across all designs. Also looking at making CoreOne simpler and easier to hand build. I had made it all single sided SMD components. This was mainly an experiment to see how tight it could be without making it impossible to hand build. It is rather cramped but it can be built by hand. However I will move a number of parts to the bottom side, especially optional components which are not fitted by default. It will make life easier! Also I am removing a few options that are not really needed for now.
So I am starting to work through all designs again. Specifically looking to rationalize the power supply regulators and reset circuits across all boards. And also to look for cheaper parts where possible.
The ADAU1966 DAC PCB may have an issues with the reset circuit. I used a 2.5V reset circuit (as the 2.5V rail is critical) which feeds the 2.5V output to the ADAU1966 reset pin. On several boards I have this works fine. The "trip" point should be 2.3V so some margin. However I have one ADAU1966 that is being a little fussy.
Some hindsight would have been good as a couple of transistors would have pulled the reset pin up to 3.3V. However now would seem like a good time to look for some cheaper/more universal reset supervisors (with open-drain outputs).
So I could not get any version of SigmaStudio to write to the EEPROM properly on Windows 10. Then it stopped communicating completely. I ran out of ideas at this point until I I thought about using Windows 7.
Luckily I have an old PC knocking around I was going to get rid of or re-purpose. Having found my spare copy of Windows 7 I installed this as a 32 bit version - although by accident having noticed I put the wrong CD in too late!
Anyway, SigmaStudio 3.14/3.14.1 beta don't seem to work properly for the EEPROM writing but communicate fine with the DSP. However SigmaStudio 3.12 seems to work just fine; I can write to the DSP and write to the EEPROM. When I selected self boot from EEPROM on the PCB jumper it starts up just fine.
Just have to remeber to have the jumper on the PCB shorted and "reset"/power cycle the DSP before writing to the EEPROM with I2C/SPI. You should also power up the DSP with the I2C/SPI USB adapter unplugged; and plug it in once powered. Also must remeber to set SigmaStudio to the correct EEPROM size.
I am also not seeing any random errors in the PANIC CODE section anymore which is good as I figured that all the DSP boards are unlikely to have issues.
So in short; Get Windows 7 (cheap keys on ebay?); install SigmaStudio 3.12; power up DSP board in the right mode; set up EEPROM size correctly and win!
So the first CoreOne PCB was going well initially; PSU section worked fine, reset circuit fine with a minor modification, clock generator was alive.
And then the first XEF216-512-C20 chip I fitted went out of alignment when soldering the large pad - and it took a lot of heat to get it back off. The second chip went on fine - apart from a couple of stubborn solder bridges. This is partly because the pads extend to far back under the device - which I can fix with a layout change.
However after some checks and a power up something was very wrong! I tracked it down to 1V0 being connected to 3V3 through approx 0.9Ohms resistance - this would increase if you heated the XMOS chip up. No obvious solder bridges (which would give 0 ohms in any case).
So seems chip number 2 was dead from the start; not sure why, if it was my soldering. I tried to be reasonably gentle - I can not see a soldering spec in the datasheet. Trying to remove this from the PCB resulted in damaged to the board writing it off.
The XE216-512 and XEF216-512 variants are expensive, and I can not find stock of the XE216-256 or XEF216-256 chips which are half the price. Farnell says mid June for these.
In the mean time I may respin CoreOne with the pads adjusted and the reset circuit fixed. I may also spin a CoreTwo with less I2S and only 1 clock gen just to make life easier. I don't mind wasting a little money; but I don't want to keep burning through £15 ICs without getting anything out of them.
Oh well, onwards and upwards!
An electronics engineer and a long term electronics hobbyist. I like tinkering with stuff and making things.