Hacking a PSOne LCD into thinking it’s a monitor

 

Introduction

The hack to convert a PSOne LCD screen into a secondary display has been around for some time now and exists in two forms:  a simple S-video version and a more “blood n guts” RGB version that requires a bit of soldering and then some tinkering with your graphics hardware using an excellent programme called Powerstrip.  More details on the mods can be found at this webpage:  http://starfox.ucc.asn.au/carcomp/serio_lcd.htm

 

I liked the look of this as a concept so I headed on over to EBay and bought myself a Sony LCD screen for around £25 and got to it with the tools.  Pretty soon I had the mod lashed up and then got it going with Powerstrip to produce a readable picture, but then came the small print… proper monitors use a communication mechanism built into their circuitry to announce their presence to a PC.  This circuitry and the communication protocol (called DDC) are obviously not present in this little device and so the screen doesn’t initialise, forcing most people to install a second video card to initialise the screen.  Since I was planning to use this on my laptop this was not an option so I started looking for an alternative and asked Professor Google to give me some inspiration.

 

Professor Google turned up the following background on DDC and pc-to-monitor communications:

 

http://www.epanorama.net/documents/pc/vga_bd15.html

 

This is an excellent page and tells you exactly what this little monitor isn’t doing!  It did however give me some clues into what was required – a serial EEPROM to store the 128 bytes of EDID information.  A little more googling turned up the following:

 

24LC21 datasheet

 

And this nugget of crucial information:

 

Application note

 

The application note is actually the solution to the problem – this one little chip is a complete DDC solution and needs only 2 other components to make it work – and I suspect it would probably run without them!  The only bit I was unsure of was how I would programme the 128 bytes into the EEPROM.  I had visions of having to do it with a lashed-up arrangement of dip switches and the like, but thankfully DDC 2 is a 2-way protocol and modern graphics cards can update the EDID on a monitor.

 

So, on with the hack:

 

I won’t cover the original mod, go to starfire’s site for that, just the extra bits needed for the DDC bit.  The parts you’ll need are:

 

A 24LC21 serial eeprom (costs less than £1)

2x 47kohm resistor (total cost about 10p)

Hook-up wire

 

And the tools:

 

Soldering iron and solder

Magnifying glass

Fine tweezers

Multimeter with continuity and voltage ranges

Superglue

 

And some software:

 

Powerstrip – the registered version is required to write the EDID to the eeprom, the unregistered version will do to test the mod

Phoenix – an EDID creator/editor by www.raylar.com

 

Right, let’s roll our sleeves up and get on with it…

 

Rather than faff about with veroboard or PCBs, I built a “dead bug” circuit by gluing the chip on its back to the main PCB in  the small space above the connectors then soldering all the components and wires onto that.  Unfortunately I didn’t take photos as I went along (wasn’t convinced it would work!) so all I have are photos of the finished article

 

(Click on the photographs for larger versions)

 

 

I started off on the reverse side of the PCB by soldering two wires to the power regulator chip shown with the arrow.  This gives us a +5V and a 0V reference.  I poked these wires through a hole below the LCD and carried them round to the LCD side and soldered them to the EEPROM. 

 

  

 

(Remember, now that it is upside down pin 1 is not where you expect it to be!).  The two resistors are next – be careful not to short across pins by mistake.  I also used the chopped off end to short pins 1-4 of the EEPROM to ground, the tinned wire solders easier than a length of hook-up wire.  Finally I ran three extra wires down to the VGA connector by stripping 3 spare cores from the existing connector and using them to attach to pins 5, 6 and 7 of the EEPROM.

 

Now for the “Hack”…

Fire up the monitor and do the usual dummy routine to get it going.  Now fire up Powerstrip and look at the “monitor info” dialogue box.  Ask it to update the EDID.  It will tell you that “no EDID was found, do you want to scan the bus?”  Say yes and hopefully it will tell you that “an invalid EDID was found on the bus at port #1” – Phew, the hardware works!  Cancel out of everything and start the next phase.

 

Now for the cunning bit:  Fire up the Phoenix program and read an existing EDID from your main monitor.  Save this as something new and then tweak it so that it stores your PSOne LCD’s settings (here is the one I used).  Now go back to Powerstrip’s monitor info bit and go to “update EDID” again.  Keep saying yes until it asks for a file, point it at the EDID you prepared earlier and then press okay and hold your breath.  If the update fails because “The EDID may be write-protected” then start again and before you press the final “OK” button, short circuit pins 7 & 8 on the EEPROM (technically speaking, poke a bit of metal in between them!) and press “OK” again.  You should now have a short pause then a “successfully updated the EDID” message.  Take out the short circuit and grin widely.  Job done!

 

The “Don’t blame me” bit

Hacking is fun but it also runs the risk of trashing your kit.  If you’re not prepared to risk a bit of damage then you shouldn’t be hacking – go to Dixons and buy stuff that works out of the box.  If it didn’t sometimes fail in a smoky style it wouldn’t be quite so satisfying when it succeeds J

 

This hack worked for me and is still working now, but I accept absolutely no liability for the success of yours.  Do feel free however, to drop me an email and I’ll try to help you as best as I can.  Good luck!

 

Contact:  john (At) firingnow.com