Friday, December 21, 2007

Remote control Pin Sentry

Using a standard SMS board from the internet
Some ribbon cable, a few gates , diodes resistors and some awful code ;)

I can log into my internet banking, knowing my input device is in a secure location.
If they had made the device a bit smaller, I would be tempted to carry it around with me,
but it is the size of a 1970’s calculator.
The output is decoded directly from the display driver, multiplexed sent to the SMS controller,
which after authentication from my phone sends the code as an sms message.

Thursday, December 20, 2007

Interfacing with the PSP Remote port



(click on the image above for bigger view)


DISCLAIMER:

THE INFORMATION ON THIS AND RELATED PAGES/FILES IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE.

THE ENTIRE RISK AS TO THE ABILITY TO USE ANY OF THE INFORMATION PROVIDED HERE TO INTERFACE WITH THE REMOTE PORT OF A SONY PORTABLE PLAYSTATION (PSP) IS WITH YOU. SHOULD ANY OF THE INFORMATION PROVE INACCURATE OR ERRONEOUS, THE AUTHOR OF THIS PAGE IS NOT LIABLE AND YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.


DESCRIPTION:

o Overview

As already revealed here and here, the Remote port of the PSP is in fact a serial port, and the remote is being handled through a standard RS232 protocol, albeit using [0,+2.5V] voltage instead of [-12,+12V]. Therefore the question is; is it possible to connect the PSP remote port to a PC serial port? The answer is yes!
Of course, you can NOT plug a PSP directly into a PC serial port (unless you want to fry it beyond repairs), but with a simple serial line converter this is no trouble at all, and you can then exploit a standard serial port out of the PSP.
The purpose of this page is to explain how to do this.

o Why is having serial communications between a PSP and a PC an interesting feat?

This is interesting because it can provide us with a very wide array of facilities:
- Debug output for application development:
This is already happening - Check out the excellent PSPLink by TyRaNiD!
- Serial console for any Linux port (a must have device indeed!) or any other applications
- The serial protocol is a simple, well known and robust protocol, with loads of existing applications ready to be used. You could even use a PSP for dial up access or GPS!
- Hijacking the UART4 PSP driver to use the Remote UART might give us access to the low level debug functions of the PSP without the need to tear it apart in order to access the internal UART4
Also:
- The remote is a very optional device for the PSP => it can be used for other purposes (eg. debug) without interfering with standard operations (USB, WiFi, ...)
- As a serial device, IRDA could be used as well, but not everybody has an IRDA receiver. On the other hand, almost every computer out there has a serial port (sorry Mac users - this is the one thing that Apple did get wrong!)
- The cable is very inexpensive/simple to build (see below), and not doubt someone out there will be selling ready made cables for the PSP at some stage
- Rumoured additional capabilities of the Remote Port like re-flash (this is very doubtful, but who knows...)
- The Remote driver is probably the best driver to experiment with for development (low footprint, simple, loads of serial code samples out there)

Of course, at the moment, the only use we have for this serial port is to emulate the PSP remote, but this is likely to change in the future.

o So what next?

- Reverse engineering of the sceHP_Remote_Driver to see if there are additional features to standard remote operations
- Unload of the sceHP_Remote_Driver and replacement with our own custom serial driver
- Hijack the Uart4 driver and replace it by an equivalent driver using the Remote Port
- Linux on the PSP! :D


THE DEVICE:

o Details:

Various IC manufacturers do provide serial line voltage converters. In this montage we use a MAX3232 serial line converter, which, though listed for voltages above +3.0V, handles the +2.5V signals of the PSP just fine. Such a montage uses a handful of capacitors for the charge pump, but that's really all there is to it, therefore it is very simple and inexpensive to build - Anybody can build one.

o Diagram:
- Click on the image below to access the schematics (PDF)

- Because the PSP can switch power off on the serial line, we want to have a way to check if our device is powered or not. To this effect we use the V+ output of the MAX3232 which we connect to the CTS pin of the RS232 connector (Of course, using the DSR pin would have been preferable, but the DB9 <-> RJ45 adapters that we use don't have this pin readily available).

o List of components:
- 5 x 0.1 uF ceramic capacitors
- 1 x MAX3232CPE - If you're going to build this montage, make sure you get the DIP version of the MAX3232 (= MAX3232CPE). Soldering SSOP or TSSOP by hand is simply NO FUN!
- Connectors (eg. DB9 female), cables, development PCB, etc.

o Building the device:

I strongly advise getting your hands on one of these DB9<->RJ45 serial adapters pictured below (click on the image for bigger picture):

Because our serial converter is such a small montage, it is actually possible to fit it perfectly into one of these adapters. If you pry open one of these adapters (one notch above the RJ45 part and 4 for the DB9 plate), you will find that the RJ45 part slides into the DB9 housing, and it is the perfect size to fit small sliding PCB.
The DB9 part usually only has cabling for RxD, TxD, CTS, RTS and GND, so just cut the RJ45 part out and keep RTS as much as you can, since we will not be using it at all (double
check that you are indeed cutting RTS and not CTS!). Keep about 2-3 cm of the other connectors.
On the opposite hand of the PCB, you can use a right angle 4 ways 2.54 mm Molex connector. If you remove the comb structure of the RJ45 part from the socket (it's all plastic), the molex
connector should slide easily in place.

Below are pictures of the insides of the device (click on each image for bigger view):

The finished device (click on the image for bigger picture):


CABLE AND CONNECTORS:

The interest of using a 2.54 mm Molex connector is that you can then use a standard 4 ways Analog CD - Audio Card cable to connect to the PSP. The only problem is that you need a cable with 4 actual connectors. Manufacturers are going so cheap these days that they are using 3 conductors instead of 4, so finding a proper cable can be a bit of a pain. Of course, you can always build your own cable, but the advantage of using an Audio Card cable is that you can easily reorganize the crimp connectors at each end, instead of having to fit those yourselves.

On the PSP end, you will obviously need to build a custom remote connector (the small part with 6 pins in the picture above). To achieve this, you can cut a double sided copper PCB into shape, using the original remote connector as guide. Then you can draw the 6 contacts with a cutter or any sharp object. Make sure you have a tight fit, and plug the PCB in place a few times before scratching the copper out, as this should leave very visible contact marks. Thoroughly check that each contact is isolated from the others before using the connector.
On the other end, you should be able to solder a 2.54 mm Molex 6 ways/dual row connector.

Before soldering, make sure that you leave enough room to be able to connect the headphones connector on the left side: Remember, the audio connector MUST be plugged in for the remote port to be powered!
Once you have the Molex dual row connector soldered in, you can use a 6 ways/double row housing to fit your audio cable in there - easy! ;)


SOFTWARE PSP REMOTE FOR LINUX: PSP_REMOTE v1.00


(click on image for bigger view)

psp_remote v1.00 is a sample Linux program that emulates the PSP Remote on a PC. It is meant to be used with the PSP Serial Converter device above. You need to be root to run it and have the ncurses library installed (any decent distribution of Linux should have it)
This program simply reads a numeric key and sends the associated PSP Remote code. It is more a proof of concept for serial communications between a PC and a PSP than anything else.
For more information on the PSP Remote protocol, have a look at the ps2dev.org thread or Marcus' page.

This program was compiled and tested on Slackware 10.0.

Download: psp_remote_v1.00.tgz


Add a USB port to your Cell Phone




First i want to say, i am not responsible for any damage to your phone, expressed or implied, simply because this is a diy tutorial. USE THIS TUTORIAL AT YOUR OWN RISK!

That being said, let's get on with it.

I want to thank pinouts.ru for having a vast amount of information regarding pinouts for many items. hopefully you will be able to find the information you need.
I also want to thank bitpim.org for having the software needed to access my phone. With it you can transfer your phone book, pictures, and even custom made ring tones, along with other stuff.

I did this hack for two reasons, first, i didnt want to buy a usb cable for my phone. call me "cheap" but i did not see a reason to spend $30-$50 on a cable that i wouldnt use that often. second, theres no reason for me to spend $15/month for internet access on my phone, when i am only spending $10/mo for service. but still i wanted the freedom to take pictures with the phone and still be able to get the pictures off of it.

What you will need:

  • a camera phone ( I used a Samsung A620/VGA1000)
  • a mini usb connector (pulled from a dummy Blackberry)
  • 80-pin ide cable(or other small wires)
  • solder, soldering iron
  • a little tape for insulation
  • dremel or something to cut the phone shell
  • magnifying glass or some way to make your soldering easier
  • a lot of patience, massive amounts
i had an old "dummy" Blackberry, you know, the "for display only" kind. so i took it apart and found many useful electronic items in it.

de-soldered the usb jack to use in my phone

then take a 80-pin ide cable, or whatever small wire you use for such projects, and strip the ends
carefully solder the wires to the jack. on mine i wanted to use the red wire as my the #1 pin for easier wiring, but when i double checked it, i wired it backwards, so now my red wire is the #4 wire.
once you get your usb cable ready we move to the fun part

you need to disassemble your phone and find a location to put the usb port. i think if you have an older phone it should be simple to find a spot. mine was in place of the carrying strap, which i really didnt need.


slowly cut out the space you need to install the usb port. take your time, especially if its the only phone you have. i was lucky that i had a second, non-working A620 i could try it on. just in case it didnt work i would still have a working phone.

heres a picture showing before and after the modification of the shell.

this is the fitting stage. keep trying to get the usb jack to fit. trim a little here and there, bend the tabs on the usb jack, just do what you have to to get it to fit. but keep in mind you want this phone functional when your finished. dont just get the usb jack to fit, you need to do a mock assemble, a "dry run", and put the phone back together to make sure everything still goes back together.


now as far a the phone goes, realize that everything is tiny, and to work on it you need tiny things. i had to modify my soldering tip (just used a wheel grinder on it) to work on this project.

this is why i ground it down. (those three connectors in the foreground connect to the battery pack), pretty tiny, eh


sorry about the pictures, its difficult to snap a clear shot while holding a magnifying lens.


it took me about an hour and a half to solder 4 wires. 1 1/2 hours! the reason is that i took my time. and this is what i found out that will help you out on yours:

put enough solder on the wire just to change its color. copper to silver. if you have a "blob", no matter what size, its too much. do this to all the wires before you start, because its a real pain trying to do it when some of the wires are already soldered


when you are finished connecting the wires, apply a little tape to help hold it in place and it help with insulation also. as you go to assemble everything take your time, you got this far, dont break something because youre rushing to get it back together.



i took this picture to show that it still functions. hope yours comes out just as nice or better


do more research:

  • find out all the information you can on your phone to see if its possible to do this
  • gather pinout information, schematic, diagrams or look for someone else that done it on your style phone
  • i found out that i needed a certain winXP driver for my phone to be recognized, do the same for yours
  • its always nice to have a backup, ask friends, family, coworkers if they have any non-working or unused phones that you can practice on before attempting modification on yours
  • as always -have fun!-

Security Switch for your PSP Phat or Slim

Ever want to keep your little brother or sister from playing your PSP? Or maybe you broke your power switch. Well here’s a solution for under $10.00 bucks that adds that touch of class to your PSP as well as the security you need to prevent others from turning your PSP on.

READ THE FULL DOCUMENT BEFORE YOU START!

NOTE: A how to build your own reed will be added by Neubit soon!!!!!

Supplies needed for the Security Power Switch
30-gauge Kynar wire
Soldering Iron (nothing more then 15 Watt)
Solder (.015 size works best)
Flux
Read Switch – or - Window/Door Alarms (got mine at Wal-Mart) See the end for part #s
Advanced soldering and PSP disassembly Skills
Access to the Following Tutorials
PSP Slim & Lite Disassembly Tutorial by T3KN1K4L
PSP Phat Disassembly Tutorial by Kenshinffx

Refer to T3KN1K4L’s PSP Slim & Lite Disassembly Tutorial for removing the face plate on the slim only.

Refer to Kenshinffx’s PSP Phat Disassembly Tutorial for removing the faceplate off the phat PSP and some other parts.



Removal of the Face Plate


NOTE: Follow the correct tutorial for your PSP type, to remove the face plate then stop and refer back to this Tutorial.


Power Board removal for the Slim.

What you will need to do is remove the power board.
On the Slim you will need to remove the black screw at the top of the power board and then remove the flexible circuit cable by lifting the black bar as shown here. PICTURE Take caution when messing with this black bar. You don’t want to break it. Gently lift up on the bar to open.

At this point you should have the power board out of the slim. You are now ready to skip to the section labeled Switch Install

Power Board removal for the Phat.

Ok with the Phat PSP refer to Kenshinffx’s tutorial. Basically, you will need to remove the button bar and the LCD Screen and then the cage that holds the LCD in place to be able to access the power board fully.

Once that stuff is out of the way you will be able to access the power board. When removing the power board take note, there is a flexible circuit cable that needs to be removed from its holder on the bottom of the power board. To do this lift on the bar that rests on top of the flexible circuit cable holder then slid out the cable.

NOTE: Taken from Kenshinffx’s document. “Then you remove the ABXY Power switch but carefully making sure that you get the little black nub out of the power switch on the outside. Note: when you remove that always take special care to know where that black nub is for the switch it’s the easiest thing to break if you aren't careful when you reinstall the power board always make sure that nub is in the outer area of the switch correctly Before you push the board into place. J R told me about how he took all day doing a huge LED mod and everything thing worked. Broke the switch off reinstalling it. Made the whole thing useless. I've broken the switch once. And I will not do it again”.
At this point you should have the power board out of the Phat. You are now ready to go to then next section.

Switch Install

OK so if you bought a reed switch go to the section labeled Install, if not and you bought a Window Alarm then continue reading this section.

Note: Not every window alarm is the same try to get the same one I got. If you can’t find one, then order this from Mouser.com

1. OK start by removing the batteries from the Window Alarm.
2. Then remove the screws (on the unit that I used there was one in the front and one in the back).
3. Separate the front and rear panels.
4. Carefully remove the circuit board.
5. Look for the read switch, which should look like this.


6. Remove the reed switch by de-soldering or cutting (if you cut make sure to leave yourself enough room to solder your wires on to.
7. Get rid of everything but the reed switch and the little bar that came with the window alarm.
8. Remove the magnet from the little bar by unscrewing the two screws and removing the cover. Then bang the bar against a hard surface to remove the magnet.

Install

So this will be the same for both types of PSPs but I’ll include pictures.

1. To install the switch take 2 pieces of Kynar wire of equal length about three inches or so and strip the ends of the wire.
2. Hold the two pieces of wire together and twist then so that they look like this, also It will help your install and make things look cleaner.


3. Then solder the wire onto the ends of the reed switch. (I would normally use heat shrink on the exposed endpoints but I was out of it when I took the pictures. So I will apply tape to the areas around the switch).
4. Next you will solder the wire onto the power switch
5. For the slim solder the wire here and here.


6. For the Phat solder the wire here and here.


7. Then install the power boards back into the PSP

When installing the power boards you want to ensure that the new wires you just installed are not going to get in the way of the existing charger port wires when reinstalling the power board. Also you are going to be installing this new switch parallel to the lower right hand side of the LCD screen as shown here.

NOTE: if you don’t use heat shrink on your endpoints put tape on the exposed metal surfaces to prevent shorts!

8. Put your PSP back together again but don’t install the face plate yet.
9. Make sure that the contacts in the glass reed switch are horizontal. Then place your battery in the PSP and using a magnet wave it above your new reed switch. The PSP should power on.
10. Turn off your PSP and make any final adjustments to the reed switch so that the reed switch is as close to the face plate as you can when you put the face plate back on, without interfering with the LCD screen or the buttons.



Optional

To use this mod as a security switch you can do a few things!!!

1. Unclip the metal from the sides of the power switch and remove the metal part and the black nub (be careful not to break the switch off the power board).
2. Remove the power button from the shell (the piece your thumb presses when you turn on your PSP).
3. Cut off the black nub part of the switch that moves when you press up on the power button.
4. On the Phat De-solder the power trace on the power switch or cut it (pictures coming, not sure if this can be done on the slim more investigation need. Sorry I wanted to get the tutorial up for the masses.

Tuesday, November 6, 2007

Installing HDLoader to your ps2 memory card

What you will need:

  • a blank cd-r
  • a cd burner
  • an original psx game (doesn't matter which game, can be a cover disc)
  • an original playstation 2, not the new slim PStwo. The PStwo's don't have a HD bay or interface.
  • an official network adaptor
  • a harddrive at least 40gb in size (i've heard drives smaller than 40gb will work; the original Sony HDD is 40gb, and is what the network adaptor is expecting.)
  • nero burning rom [or a cd burning program that will burn in mode2/xa & iso9660 level 2]
  • a PS2 memory card (with at least 600kb of free space)

Step 1

The first thing you need to do extract the filepack. Extract the zip to it's own directory someplace. I've made a new directory called MC in the C: drive.
This tutorial assumes you've put the files in C:\MC
Make sure that you have unzipped the file with "Use Folder Names" ticked.


Step 2

1) Put the PSX game you will be using in to your computers drive
2) open notepad (click "start", click "run" & type in "notepad", then click "OK")
3) Click on the File menu, and select Open
4) once the "open dialogue" comes up, you need to set the "look in" location to the drive your psx cd is in (mine is D:, yours may be different)
you will need to make sure you're viewing files of "all types" (1), then you need to click/highlight "system" file (2), then you need to click "OK" (3).



5) in the first line you need to write this down, its your game PSX ID. i've highlited and put in a red box the part you need to right down.
[yours may say SLES (or something different, or have a dash (-) instead of an underscore ( _ )]
you only need what comes after "BOOT = cdrom:\" and before ;1, in my case it's SCUS_942.35


5) now we need to open the command prompt. click the "start" button, click "run", type in "cmd" & then click "OK"

6) now we need to enter a few DOS commands
it will come up with a black screen and & start you in your documents folder. just type in; "cd \mc" & press enter



7) now we're in the MC folder, you're going to need to modify the title.db file to reflect that of your psx game.
you'll need to type in "titleman -a SCUS_942.35" & then press enter (your psx ID will be different, unless you're using NHL Faceoff '99)


8) it will then modify the file


modification of the title.db file is complete, now you need to burn.

Step 3
i will be using nero 5.x in my demonstration. nero 6 or other cd burning programs should work as long as they will burn in mode2/xa & iso9660 level 2.

1) first, open nero.
it might start up with the wizard, close the wizard


2) you need to create a "CD-ROM (ISO) [1], make sure its not multisession [2], and then you need to click the "ISO"[3] tab.


3) once you've clicked the "ISO" tab it will bring up this window.
make sure its "ISO Level 2" (1), make sure it set to "Mode 2/ XA"(2), make sure the character set is "ISO 9660"(3) & then click "New"
also make sure the "Relax ISO Restrictions" setting at the bottom are the same as the picture.


4) in the file browser go to "my computer" the "C:" drive, and the "MC" folder, highlight all the files except "titleman.exe" and drag them to the other side
(as indicated in the picture), then click the burn icon (in the little red box.. or just click file\write cd)


5) it will now bring up the "Write CD" window in nero, make sure you're on the "Burn" tab, and then all your settings reflect mine.
your cd burner may burn faster or slower than 16x (as indicated in my picture). once all your settings reflect the picture below, click "Write".
make sure you have a blank cd-r in your cd burner


you have now completed burning your installation cd-r.


Installing the HDL/memory card exploit

now we need to install the HDL/memory card exploit.
you need a way to boot the cd-r you just created. I've got a modchip in my PS2, and it worked just fine. If you can't boot a CDR, take your CDR and your mem card to a friend who does have a PS2 with a modchip.

insert the memory card with at least 600k free space in to memory card port 1 (remove anything in memory card port 2)
just insert the CDR in to your PS2 and boot it up, and it will begin the installation.
which should look like this;


(it will then proceed to copy files to your memory card)

and if all went well, you should see this screen:

if the installation failed, either your memory card is bad or you dont have enough room on the memory card. try a different memory card.
or you're using a 3rd party memory card (non-sony). always use official sony hardware (except HDD), the rest of the shit sucks.

Now remember you only need to do this once. With this done, read on to find out how to get everything working!


Booting HDLoader

now comes the fun part.. all your hardwork has finally paid off and you get to enjoy HD Loader in all its glory.

You'll need to make sure:

  • the memory card you installed your exploit on is in port 1
  • You have the PSX cd you got the id from in the PS2 cd/dvd drive
  • Your HD is hooked upto the network adaptor, and the network adaptor is installed in the PS2.

With all this done, boot up your PSX game. You will see HDLoader load up. You will need to do this every time you want to play games from your HDD.

If this is the first time you've used HDLoader on the HDD, it will ask you if you want to format it. Say YES.
Remember that you can't use this HD for anything else but PS2 games, unless you format it again in your computer.
BE SURE THERE'S NOTHING YOU WANT/NEED ON THE HDD. IT WILL BE LOST.

Once it is formatted (you only need to do that once), you will see a screen like this one:

(As you can see I've got a few games installed)

Click on Convert in the menu, insert a PS2 game, follow the prompts and it'll get installed to the HDD. Once the game is installed, select it in the list, and press X to load/play it!