June 05, 2020, 08:38:44 pm


The Wiki is fixed!  Again!Go, log in, add stuff!

DFO: dual frequency oscillator

Started by micro, February 01, 2015, 02:50:37 am

Previous topic - Next topic


I assume the described current draw issue does occur while programming. Why else would you be able to solve it by adding a resistor on the programmer's side?
Also I haven't installed the dfo yet, so it needs power from the programmer, V_Target switched on. That should be correct.

Have tested again last night on another computer (pc instead of laptop).
I found that the programmer is recognized well, but at the moment the dfo is being attached to the programmer, the computer makes the sound of something losing connection, and the COM Port disappears in Device Manager. When doing the same with V_Target switched off, the connection is stable, but obviously it can't program cause the dfo gets no power.
When plugging in programmer to my computer with dfo already attached (and V_Target on), the programmer isn't recognized at all.

This sounds very much like the losing-connection issue described before?
Have already ordered resistors just in case. Could also try to give the dfo its own 5V power source to test, don't know if I have any though.


July 02, 2019, 04:57:23 am #41 Last Edit: July 02, 2019, 05:27:39 pm by bmp02
Unfortunately the 22 Ohm resistor doesn't solve this problem. Only difference is that FTDI Error has now changed to I2C Error.

Anyone any idea? @micro still here sometimes?

I have managed to make it work after all!
The 22 ohm resistor was one of the solutions. The programmer before wasn't recognized by the programming software whenever it was plugged in to a dfo, with the added resistor, this worked fine.

Main problem was that I followed the Clock Pro instructions from this thread. It does say it's outdated, but since no update was posted, I followed those. But it outputs a hex made for CDCE925, instead of 931. So the hex was the problem.

I found it impossible though to try and get the program to output a hex for a 931 with both frequencies correctly being output when S0 tied to either high or low. Luckily, the Circuit-Board.de dfo thread has a large post about just this subject, which lead to a working hex, and successful program attempt.

Phew, done.
I'll add a post for the more unexperienced, like me, to this thread. So at least we'll have the correct and updated info here for everyone attempting to build his own dfo and programmer.


July 02, 2019, 10:14:29 pm #42 Last Edit: July 03, 2019, 05:55:30 am by bmp02
Ok. So if you Googled for dfo's and always end up here, you want to build one yourself, but you're relatively new to all of this,
Or, you're trying and got stuck somehow while getting it to work, here are some words from me that I hope will help you out.

First, if there's anything else you'd like to know about this topic that you can't find here, you'd better Google Translate this thread on a German forum that is much more updated than this NFG one: https://circuit-board.de/forum/index.php/Thread/18016-DFO-Dual-Frequency-Oscillator/

When buying parts and you can't find the specific one listed, also check the German thread, it mentions some other part numbers in the opening post. But I guess usually you're fine ordering anything with similar specifications.
Also order a 22 Ohm through hole resistor as well in case you don't have any. My programmer wouldn't properly work without it. At the back of the programmer board, cut the VTG trace (where that white line is), bridge with the 22 Ohm resistor.

Please note the chip on the programmer needs to be flashed with firmware and fuse bytes. To do that, I bought the Micro USB Tiny AVR ISP / USBTinyISP Programmer (this one: https://www.ebay.com/itm/Micro-USB-Tiny-AVR-ISP-5V-ATtiny44-USBTinyISP-Programmer-For-Arduino-Bootloader/222053881584). It's 1.86$ including shipping, not too bad huh.
Then download this driver (https://learn.adafruit.com/usbtinyisp/drivers) and the AVRDUDESS Gui (http://blog.zakkemble.net/avrdudess-a-gui-for-avrdude/) to flash firmware and fuse bytes.

If you want to use ClockPro to make your own HEX files, please notice the guide in the opening post of this thread is outdated and not working anymore. Instead, do this (example for MegaDrive frequencies):
* First Wizard screen, keep the 27 MHz, No of Outputs at 1, Y1 Freq 53.693175, click Generate Setup, then View Setup
* Set Crystal Load to 18pF
* At Controle Line Selection, you see S0=1, so you're now setting the frequency for when S0 is high
* Click on the colored Y2 and Y3 triangles till both have turned into ground symbols
* You need to choose a divider number (PDiv1) for the PLL1 numbers to be divided into, in order for both outputted frequencies ending up as close to the desired frequency as possible. In this case, choose 2 for PDiv1
* The desired S0=high frequency is 53.693175, so choose 2x that = 107.38635 for PLL1_0
* From the Control Line Selection drop down menu, select the other (S0=0) option
* Click those things on the right again till Y1 has the triangle, and Y2/3 the ground symbol. Choose PLL1_1(!) 2x53.203425=106.40685
* File - Save HEX Intel File - you're done

If you need more detailed instructions on using ClockPro, again, check that German thread.

Have fun :-)


How do i install the DFO in an earlier model PS1 the one with the composite ports? PU-8 SCPH-1002 model.


Good evening all, I'm quite interested in installing a dfo into my pal Sega Saturn -,va...1? (it doesn't state va1 on the mainboard but it is written on the separate controller board.)

And I have already seen that this will require some extra cable work on the jumpers.

I'd be ok attempting this if I could see anyone else's installation but so far the internet has revealed to me nothing.

Is there an imgur gallery or anything I can use as reference?

Thanks in advance for your time.


Hi there! Here's how I've installed my DFO in my PU-20 PS1 motherboard (SCPH-7002)...

First of all, I desoldered and discarded the shield. Then I lifted pin 1 of the PS1's built-in PLL, which outputs the PAL frequency to the GPU.

This is how it looks like now...

ps1 dfo.jpg

CLK OUT is soldered to the pad where pin 1 of the PLL used to be connected, so no need to go to the trouble of desoldering SMD components. S0 is soldered to a pad that links to pin 157 of the GPU, which outputs 3v3 if running an NTSC game and GND if running a PAL game.

I think doing it this way makes it easier, but of course to each his own.


March 20, 2020, 02:27:27 am #46 Last Edit: March 20, 2020, 03:22:26 am by Antonio
Quote from: iVirtualZero on November 02, 2019, 08:22:42 pmHow do i install the DFO in an earlier model PS1 the one with the composite ports? PU-8 SCPH-1002 model.

Here's a picture of your board.

Close to the GPU, there is an xtal marked "53.20", which outputs 53.2 MHz. Remove it from the board using a hot air gun while being careful to not remove any of the other SMD components that are close to it. That will reveal 4 solder points. Now it's time to install the DFO: solder the 3v3 line to the upper left pad, solder the GND line to the lower right pad, solder the CLK output to the upper right pad and finally solder the S0 line to pin 7 of the Sony CXA1645 video encoder chip.

You can also follow this procedure on PU-18 boards (SCPH-550x), although it uses a different video encoder, so you should solder S0 to a via that leads to pin 157 of the GPU instead.


May 06, 2020, 11:30:23 pm #47 Last Edit: May 06, 2020, 11:34:07 pm by Damn-Deal-Done

Have you confirmed this works on the PU-8?

Would removing the resistor that connects the clock to pin 192 work instead of removing the entire clock?




Cool, cheers. So I am not sure why people have been saying you can't use DFO with PU-8. It seems the exact install for all revisions. Will have to do some experimenting with this. Trying to make complete install guides for all revisions which I can then publish online. Just waiting on more DFO parts to get cracking.


May 13, 2020, 02:02:39 am #50 Last Edit: May 13, 2020, 02:04:39 am by Antonio
People don't seem to be confident in replacing a true xtal with a clock synthesizer, because it has higher jitter, so doing this on a PU-8 or PU-18 will probably make video quality a bit worse without RGB (in fact these models derive the color subcarrier from the GPU clock). Later models replaced the xtal with a clock synthesizer just like the DFO, and the color subcarrier is handled differently, so there will be no drop in video quality.


Hi all, totally noob here, ended up in the forums solely for the dfo mod, after seeing it on otaku's store.
Even though I understand what it does, I'm not really into the theory of how exactly it outputs ntsc and pal accurate clocks - just want to implement this mod in my psx.

I have a scph-7502 psx, pu-22 pcb. I've recently successfully installed mayumi v4 on it. Very capable with soldering and desoldering.

So here are my two very simple questions:

If I buy the otaku store's pre-populated & pre-programmed dfo (3.3volts, smd, psx version) is that all I need for it to work?
Is there an installation video or soldering points photo for my pcb? (pu-22)

Thank you


May 21, 2020, 06:57:48 am #53 Last Edit: May 21, 2020, 09:19:06 pm by Damn-Deal-Done
Can someone offer me some help please?

Are there components on the DFO that can be removed? I was thinking components that allow it to be powered and programmed when installed in to a console. I would like to produce some of these and simplifying and reducing components will be a good thing. I plan on redesigning the PCBs to suit my own needs.

I will work it out myself in time but if anyone knows and can help, that would be great.

Many thanks