Today's How-To is the third finalist in our PSP vs. DS hacks contest. We'll keep 'em coming and you'll be able to vote for the winner at the end of the week.
PSP as iTunes remote
By Gnat Man (Jimmy)
So you are sitting around playing wipeout and listening to your favorite Johnny Cash, when all of a sudden the A*Teens comes on! Whatever will you do? You can't get up, that's a lot of work, we'd better come up with a way to control iTunes with your PSP and quick!
What we'll need:
- a PSP
- Wipeout Pure
- an Apple computer (Mac Mini works great and looks good doing it!)
- a wireless router
If you're going for a basic set up, all you have to do is set up apache and connect to it with the PSP, but if you
want to get fancier (and we do) then we can add great features like playlist selection, and a "Now Playing" display,
and your own DNS server to exploit wipeout.
SETTING UP APACHE
First things first, lets get apache configured for our needs. If you don't have it running now, it might be a good idea to turn it on (System Preferences>Sharing>Personal Web Sharing). Now, open up Terminal and type the following to begin editing the configuration file:
Go down a ways until you find the "Dynamic Shared Object (DSO) Support" section. and towards the end you'll find the following line:
Uncomment it (delete the #) and continue down the file towards the end of the next section and uncomment this line as well:
Continuing on, you will find the section:
We have to change this to the account that is running iTunes. So set User to the short name of the account that will be running iTunes and change the group to staff so your section should now look like this:
This brings with it some security risks because apache is now being run as a user process and not as it's own user, just a word of warning for the paranoid.
Finishing things up, continue further down to:
add index.php after index.html (make sure there's a space between them)
Now save the file (Control O) and exit out (Control X).
Finally gracefully restart apache for the changes to take effect:
SETTING UP THE CONTROLLER
Now that we have apache running, we need a website for it to serve. I have already created such a site, and you can download a zip of with it right here.
Unzip and copy the contents of the folder to /Library/WebServer/Documents (your apache documents folder) and make sure that it is not within it's own folder, it will only work right if files like pspTunes.html and the wipeout folder are directly in the Documents folder.
Now, double click and run the "generate_playlist_app" script. It will make a list of all your playlists, and create an html file with them so you can select them from your psp. Everytime you add a playlist, you will have to rerun this script to make it show up. Sorry, but I haven't found a nice way to automate it yet.
That's the basics, that should work fine, but you will be stuck with the title of the song being "Ring of Fire" unless you continue on to the next step.
SETTING UP NOW PLAYING
For this step we are going to need an external program, or at least that's the only way I have found to do it so far. So go get yourself a copy of Kung-Tunes start it up. Go to the preferences, and change the following:
- Set upload method to none
- Set File location to /Library/WebServer/Documents
- Set Name to pspTunes.html
- Under the Runtime tab, check every box
- Set Timer to zero
- Set recent tracks to zero
- Under Miscellaneous, change whatever you want, or leave it alone
Now the tricky part, still in Kung-Tunes, go to the applications menu and select formats (or just hit Command ,) and
we have to adjust this to create our main html file.
First: Go ahead and call this template PSP
Second: make this your header:
Thirdly: in the next box place the following:
Fourthly, if you want to, copy this into the inactivity box:
Finally, make sure the footer says the following:
Now save your config, and make sure Kung-Tunes and iTunes are both running, and it should all work fine. If it's still not working, make sure the timer is running on Kung-Tunes.
SETTING UP DNS
Now to connect from the PSP you have a couple of options. First you can use one of the many portals out there (Like This One) to connect to your own server with your IP address, and make sure you have your firewall configured poperly.
Or you can set up your own DNS server and keep it all internal. To do this we are going to use another 3rd party app, but we should only need to run this once. Head on over here and download DNS Helper.
First, fire up the program, and enter your password. On the first page, the domain name should be scea.com the name server should be fake.scea.com make the IP address your own internal IP address, don't worry about the email address, and set the router IP address to your
router's IP address.
Under hosts, add the following hosts, ingame.scea.com and webcluster.scea.com and have both of them link to your computer's internal IP address.
Then go to the expert tab, and authenticate by clicking the lock and entering your password again. Check the three boxes in "file options" and hit write files. Then Start bind in the same window.
SETTING UP THE PSP
Wake up your psp and go to the network settings. Hit infrastructure and set up a new connection. Give a name, something snappy and slightly apple, like pspTunes! Scan for your network, and choose custom address settings. Go with automatic IP address, but manual DNS. Set the first
DNS to the IP address of your computer, and skip the second. Don't use proxy, and save it!
Now pop in Wipeout and test it out!
That was too easy! Show me a more comlicated method that works better on the PSP!
That should be it, The only problem I have found is you might have to click twice on the buttons through the PSP, I'm not sure why...I am not a programmer by any stretch of the imagination, and much of this is just hacked together from other people's hard work. I will work to try to improve it, I have recently found that if I use perl instead of php, it is more responsive, so maybe I will work on something there and update this when I get it working right.
Here is just a short list of people's work I have borrowed from:
Josh Wisenbaker http://mail.computertree.com/~josh/simple/
John Masone http://www.whatsmyip.org/itunesremote/
Grayson Hansard http://homepage.mac.com/fromconcentrate/
That's all I can think of right now, if you think I used your work and
forgot, I aplogize, just contact me gnatman at gnatopia.com and I will
add you to the list.