Conclusion

This project was completed back in 2002 and has seen continuous use since (apart from the time spent selling the house because the hifi was "decluttered"). I say completed, but in all honesty the firmware isn't quite finished. In terms of functionality it's all done apart from the input trim, and that's actually nearly done - the menu appears, one can adjust the level, and it's remembered per source. I just need to add a couple of lines of code in the routine that calculates the individual volume levels before they get sent to the PGA2310s. Also, there's a screen redraw bug that got introduced when I added the code for the new display, but as this is only present when using the small font, I never see it.

In this time, it's been remarkably stable. The PIC rarely crashes, and when it does, it's traceable to local mains spikes. I mean very local - it has to be something on the same mains distribution panel. I've traced this to the /MCLR reset line which is brought out to the rear panel programming socket. It's only weakly tied to +5 volts with a 22K resistor; replacing that with 1K stops the problem, but also loads the programmer enough to stop it working. Next time, I'll either build the programmer into the box so that the rear panel socket is effectively an RS232 socket, or I'll just have a header on the PCB. Given that I've never programmed the PIC with the cover on, I suspect this is the option I'll take...

In terms of sound quality, I'm very happy with this unit. It's true that lots of people on discussion forums feel that the PGA2310 (or the OPA2134 or the NE5532) might not be the most transparent components out there, but I've never really lost sleep about this. Certainly, the simple tests I did a few years back (which involved A-B comparisons with potentiometers) didn't reveal any differences providing the levels were very accurately matched (to within 0.1dB). In years to come I fully intend to play with more "purist" approaches, but I've honestly no idea what to expect. Anything using a pot won't have the same channel balance, especially at very low levels; anything else will be more limited in terms of range or resolution, or much more complicated. And to scale these to 5.1 operation will only add to the expense. But do remember, however, that I'm used to seeing the insides of sound desks that have hundreds of NE5532s or even TL072s!