It is a standard Wien Bridge oscillator but uses a very interesting way to stabilize amplitude - optocouple of photoresistor and LED.
BTW, I have a deep respect for the owner of this site - there are tons of useful schematics, very well described and to this moment all projects which I have built from there work flawlessly.
Anyway, back to my project. The original schematic has only sinusoidal output, but I wanted a square wave output also. This was achieved by utilizing forth opamp from TL084 IC and adding a couple of schmitt triggers to make a square wave signal.
Here is the final schematic I use:
Audio frequencies are divided in three overlapping ranges: 18Hz - 230Hz, 180Hz - 2300Hz, 1800Hz - 23000Hz, which are switched with a rotary switch. Capacitors of Wien Bridge are soldered directly on that rotary switch.
This is the photo couple:
The frequency counter was a challenge: there are many schematics on the web, but majority of them uses a microcontroller and I don't have a PIC programmer yet. Finally I discovered a relatively simple circuit here: http://www.alternatezone.com/electronics/freq.htm. Later I found almost the same circuit on this address: http://pyroflatulence.tv/?p=103. The first has some errors, which I found too late and had to correct already etched PCB with some wires :)
The schematic uses crystal to oscillate at 4.194304 MHz and this frequency is then divided down to 1Hz, which is 1 second period. During this period input signal is counted and the result is displayed on six 7-segment LED indicators. The accuracy of the counter depends on the accuracy of the crystal.
Power supply is ±15V with LM317/LM337. There is also a separate stabilizer with 7808 which supplies frequency counter board.
Here are pictures of the final product:
There are no inscriptions on the front panel yet, maybe I will put some stickers.
I tested the oscillator with my computer and some PC oscilloscope software and the result is very clean sinusoidal signal. Square signal is not so clean, but maybe this is because of software and hardware limitations of computer based oscilloscopes. Maybe it is time to finally buy some real oscilloscope :)
I was tinkering with the frequency counter from this old project trying to make it with SMD elements and found out that 4553 ICs cannot be found in SMD package. So these two stayed in DIL packages and the rest are replaced with SMD packages. 4543 was replaced with 4511. The rest of the schematic is almost the same.
Haven't tried it myself, so if anyone try it please share the results here.
In the archive are Eagle files, partlist + zipped Gerber files:
FreqC (smd, v2)
The frequency counter module can be purchased from here: Tindie