I've been tracking down some subtle tuning issues myself, and have been thinking along the same lines as your zero-crossing hypothesis. ?Here¡¯s few things I've learned along the way. ?I can¡¯t say if this relates to your particular tuning problem, but just in case¡ Please excuse the random brain-dump:
?
On temperature related behavior, A few random thoughts: U805 is responsible for collating the temperature compensation voltage from each CEM
3374 (VCO) and sending it the CPU/DAC at U811. ?U814 is responsible for combining a stream of high and low resolution CVs for delivery back to the analog world. ?Kinda crazy, but this whole rig is running constantly. e.g. The tempco CV is updating constantly; You can hold a cold finger to one of the voice¡¯s CEMs and see the DAC output change in real time. ? Any parameter changes that affect CV are also updated through here in real time. ?The adjustments derived during the tuning routine are included here, but don¡¯t change until another tuning routine is run. ?I recently found that U814 had partially failed on my Xpander, making some of the CV out of tune while others were stable. ?(Documented in another thread.) ?The service manual also mentions that U814 is sensitive to static discharge and easily damaged. ?Of course, there are many other things across the PCB that could be unintentionally changing their behavior with temperature, but FWIW, this particular rig from U805 through U811-815 is intentionally designed to do so.
?
For the tuning routine, the ¡°zero-crossing detection¡± is performed by U108. ?It¡¯s not exactly zero-crossing detection; U108 is a comparator that essentially takes the audio from the voices, and turns them into square waves for delivery back to the U9xx block for tuning. ?It's always running, outputting a square wave version of anything the voices put out. ?(I assume the CPU is only 'listening' during tuning. During normal play the summed output of all 6 voices is coming through here at the same time.) During tuning, there are square/pulse waves at the output of U108 (pin 7) that change frequency with the notes played during the various steps of the tuning process. ?You can also just play some notes to confirm the square coming out is clean, and a match to the frequency of the notes you're playing. (Although I guess this manual technique doesn't fully replicate the tuning process. e.g. The VCA test does some kind of rapid DC pulse thing.)
?
The IC at U108 is an LM311N comparator, which are supposed to be fairly robust and unlikely to fail. ?Its power (-/+12v) is filtered by two nearby electrolytic capacitors, C103 & C104. ?Since we know these old caps can go bad after 35 years, they _might_ be culprits, but the LM311N can handle supply voltage between 5v and 15v. ?In my own tuning adventures, I thought that they might affect the cleanliness of the output of U108, since I noticed mine was a little noisy. ?I replaced C103, C104 and U108 with modern equivalents, but saw no change in tuning. ?It¡¯s not obvious in the schematics, but in retrospect, I realized that C103 and C104 filtered power for other ICs on the board, e.g. ?the panning mux¡¯ers at U102-U107. ?If those caps were bad, I assume there might have been some panning or even audio output problems, which there weren¡¯t.
?
On the input side, U108 is 'comparing' between the inputs at pin 3 (the voices¡¯ audio) and pin 2 (which is tied to ground by a 47k resistor). ?On my expander, pin 2 shows +0.1V. ?I don't know if this value is nominal for the Xpander, but it seems to be enough to ¡®clip¡¯ the input signal appropriately. ?The inputs themselves are tied together by a small ceramic cap (C105, 330uF) which I assume is just to filter noise feedback between the two? ?Anyway, resistors and ceramic caps are extremely unlikely to fail, so whatevs.
?
Once U108 has turned everything into pulses/square waves, there isn¡¯t a need for ADC, so it¡¯s signal is fed directly to U915, U916 and U921. ?By my estimation, U915 is used exclusively for tuning PW1&2. (On a side note, the square waves from the Xpander¡¯s VCO are their own little bag of tricks. It¡¯s not generated by the CEM VCO ICs directly, but derived in realtime from a combo of the SAW waves and CV for pulse width, spliced together per-voice by a CMOS/OP-amp combo. ?Lots of analog synths do something similar.) ?U916 works in tandem with U921 to address memory, possibly responsible for storing the newly derived tuning offsets? ?(But don¡¯t quote me on that. The data shuffling on the Xpander is a roller coaster of old-school wizardry, too magical for my skills.)
?
An interesting anomaly in the U108 neighborhood of the voice board, on my Xpander anyway, is at the summing of all the voices coming into U108: ?There is a hand-soldered resistor tying R183 to ground, and R185 & R186 are missing. ?This looks to be per Oberheim ¡°Enginerering Change Order¡± #602 (dated 6/24/84) that was done along with some per-voice jumper wires, to address a VCA distortion issue in the original design. ?Prob not related to tuning at all, but it is directly at the front door of U108.
?
Whew, sorry again for the brain dump. ?Just tossing it out there to spark ideas. ?Please feel free to refute or ignore any of my observations. ?Corrections welcomed!
?
?