Page 1 of 2 12 LastLast
Results 1 to 10 of 14

Thread: No MOD PSP Keyboard, Mouse, Joystick

                  
   
  1. #1
    Won Hung Lo wraggster's Avatar
    Join Date
    Apr 2003
    Location
    Nottingham, England
    Age
    53
    Posts
    141,429
    Blog Entries
    3209
    Rep Power
    50

    psp No MOD PSP Keyboard, Mouse, Joystick

    gr8npwrfl has posted some exceedingly interesting news:

    Well here is the proof of concept you have been waiting for

    This is the prototype USB Host to serial interface



    This is a AT90USB1287 chip from Atmel. IT has not only a
    standard USB device interface but it has the USB Host
    interface.

    This is their prototype board that sells for $34.00 and
    is ready to run as it comes from Digikey, Mouser, or
    Arrow.

    I placed it in a box to make it easier to handle as the
    entire proto board is only 3 inches by 1 inch.

    The two connectors on the front of the board allow me to
    plug in cables. One to the PSP and another to a RS232
    converter so I can send data to the PC.

    I currently have completed the USB mouse driver and a
    USB Keyboard driver. I am currently debugging the gamepad
    drivers for the XBOX 360 wireless gamepad, the PS2/PS3
    wireless gamepad, and the Logitech Wingman wireless gamepad.

    All of the interfaces require the installation of Pikey
    onto your PSP.

    THERE ARE NO HARDWARE MODS TO THE PSP AT ALL!

    IT works on both the Phat and the Slim

    Here is a picture of the cables that I have made up to
    work with the PSP Phat.



    Again there are no hardware mods to anything. The keyboard,
    mouse, joysticks are stock USB devices. That means when you are
    not using them with your PSP you can use them other places.

    I am working on the Pikey software to make the key mapping work
    with my system. The external keyboard or gamepads will be able
    to map to ANY PSP internal button or joystick. You will be able
    to have multiple mapping files, one for each game of your choice
    and map the buttons/sticks any way you want.

    Enough talk, here is a video showing the system in action. The
    final design will not have a battery, I am putting together a
    2.5/1.8 volt to 5 volt converter so everything is powered from
    the PSP.



    Now that you have seen it, I will also say that yes I have tested
    a USB hard drive on this interface and can we say Sloooooooooooow.

    It was never intended to do hard drives through the serial port
    anyway, but I did it to say yes it can be done. Besides I had the
    driver code for a mass storage device.

    The interface for an internal versions the one square chip in
    the middle of the board and a crystal. Small enough to put inside
    the PSP WITHOUT taking out your UMD drive.

    Also the device comes with a boot loader that allows the chip
    to be flash programmed from your PC without a jtag device.
    How is that for cool !!!

    You can embed the chip in your PSP and then plug in a cable that
    will connect to the PC and program the memory in it. So as we
    come up with more drivers and software all I will have to do
    is the same we do for a PSP, post the files and program your
    device.

    By the way, this chip also has 38 more unsused pins on it.
    Any of the pins can be programed to do other functions like
    control LEDs or other things inside the PSP and then could
    be controlled by the keyboard, mouse, or gamepad. Some of the
    extra inputs are A/D converters and I was thinking since we
    are already plugged into the headphone/serial plug, it might
    be nice to do an amp in the external box with a computer
    controlled sub woofer .......

    All of the code for this and further devices built on it will
    be open source. It is all written in commented "C" code so you
    can modify it to your hearts desire. The Atmel development
    system is FREE and includes the "C" compiler. It is a integrated
    development system with a simulator so you can build your code,
    simulate it to debug and then plug in the AT90USB1287 chip
    and program it.

    If you want a real leg up with working with the AT90USB familly processors then you need to go to MyUSB. It gives you a fully functional USB host stack for these processors.

    All my code is built on these as a base. There are fully functional demos of several HID devices as well as mass storage devices. They also have a software development board to help you with developing your own USB applications.

    Between this board and the standard documentation on USB device drivers you can start writing your own drivers for USB devices.

    Another hint, if you want to write a device driver for something there is not a driver for then check out to see if there is a driver for it in the linux community. You can use it as a template to develop your own driver around and make your life much simpler.

    With these resources, even if you have never written a device driver you are well on your way.

    MyUSB support list:

    http://groups.google.com/group/myusb-support-list

    AT90USB developers forum:

    http://www.avrfreaks.net/

    There are two approaches to using an external processor through the serial port.

    1. Interface to the USB device and send the raw data in the serial port
    and interface to the data on the PSP side.

    2. Interface to the USB device, process and configure the data and send
    only the results to the PSP.

    Since I am sending my keyboard data to Pikey on the PSP side, I did not want to modify that software and put more overhead on the PSP which can cause other side effects and problems.

    My keyboard interface reads the USB scan codes from the keyboard and then in flash memory I maintain the translation table to Ascii. The only app that I am writing for the PSP is to be able to send custom translation
    tables to be stored in the remote cpu flash.

    Also like remotejoy that allowed the gamepad to be mapped to keyboard keys, I am interfacing the external gamepads to the keyboard translation table so you can have button reassignment to your hearts content.

    All the burden and overhead does not consume resources on the PSP and does not slow down the system.

    After the keyboard and gamepad is done, I have so much more power left in the external cpu I was thinking about taking two of the A/D converters and building a frequency discriminator so I can build a micro based sub woofer amp for the speaker output that is already being sent to my interface.

    Awesome news

  2. #2
    Registered User NoQuarter's Avatar
    Join Date
    Dec 2005
    Posts
    2,106
    Rep Power
    0

    Default

    Looks promising, maybe a purchase in my future.

  3. #3
    DCEmu Rookie
    Join Date
    Jul 2005
    Posts
    167
    Rep Power
    73

    Default

    That is fantastic! As soon as I can nab one of these on mouser, I will hit this guy's usergroup up for instructions on how to build the interface cable to the remote port.. Is he planning on publicly releasing the drivers soon?

    I have been waiting for this for a long time! IRkeyboard was neat to mess with, but the latency time makes it too slow for gaming. But this will be amazing to use with DOSbox!

    Conceivably, drivers could be written for all kinds of input devices - PSX controllers (via usb adapter), motion sensing controllers, trackballs, joysticks, etc. Possibly even one of those dual keyboard/mouse adapters, so you could use both a keyboard and mouse at the same time to play a first person shooter? :-D

  4. #4
    DCEmu Rookie yakumo's Avatar
    Join Date
    Jun 2005
    Age
    46
    Posts
    162
    Rep Power
    73

    Default

    Looking forward it. But It would nice that could have the possibility of an AC adaptor.

  5. #5
    DCEmu Newbie
    Join Date
    Aug 2008
    Posts
    1
    Rep Power
    0

    Default

    You can use any wall mount transformer from 6.5 to 10 volts dc 500 ma and use that in place of the battery if you want.

    I am building a 2.5/1.85 volt to 5 volt converter so the entire system runs from the power of the PSP.

    The one restriction with this chip is that it is USB OTG host. So you can only support one USB device at a time and you can not use a USB hub.

    What do you want for a $10 chip LOL ?

    A very complex driver will only take up about 1 to 1.5k because you do not have the OS system overhead to deal with.

    All gamepads output a switch mapping table, my driver only has to recognize what device is plugged
    in and then build that table in memory. When a value in that table changes I go to a cross map that determines the ascii value to send down the line. So that way any button on the gamepad can map to any button on the keyboard that is mapped to any internal PSP button ( This includes the joysticks )

    Fairly straight forward, just takes a little time to work out all the mapping. That is what I am debugging right now.

    I am going to setup a repository for drivers on this platform at sourceforge.net so we can keep building a library of devices we can interface to.

    By the way with all the extra A/D converters on the chip we can take the left and right audio
    and feed it into the cpu and do frequency descrimination to create a cpu based sub woofer. This can be fed into an amp and used to trigger the rumble mode of the controllers.

    Do you know I have the driver done to talk to a usb cell phone ? The PSP can make phone calls LOL.
    It is just another serial device.
    Last edited by gr8npwrfl; September 19th, 2008 at 06:59. Reason: Add items

  6. #6
    DCEmu Pro dangee's Avatar
    Join Date
    Feb 2007
    Posts
    531
    Rep Power
    69

    Exclamation

    This raises the potential of the PSP so
    far that it's a mystery why Sony
    never put something similar on the motherboard.

    good luck with the project gr8npwrfl

    Does this mean that USB memsticks can be accessed ?

  7. #7
    DCEmu Rookie
    Join Date
    Jul 2005
    Posts
    167
    Rep Power
    73

    Default

    Quote Originally Posted by gr8npwrfl View Post
    The one restriction with this chip is that it is USB OTG host. So you can only support one USB device at a time and you can not use a USB hub.
    So... It wouldn't work with one of these?


    If not, I guess I'll have to use my trusty Maxx shooter adapter, which turns a PS2 (computer type) mouse/keyboard into a PS2 (game) controller signal


    Then I can definitely be rocking some Quake

  8. #8
    DCEmu Rookie Akoi Meexx's Avatar
    Join Date
    Oct 2007
    Location
    Michigan
    Age
    40
    Posts
    103
    Rep Power
    0

    Default

    Quote Originally Posted by NoQuarter View Post
    Looks promising, maybe a purchase in my future.
    Likewise. This would be pretty cool to make for average users if there were a simplified process though (Duh).

    I'd definitely have to Quake it up with this.

  9. #9
    DCEmu Rookie
    Join Date
    Jul 2005
    Posts
    167
    Rep Power
    73

    Default

    Quote Originally Posted by Akoi Meexx View Post
    Likewise. This would be pretty cool to make for average users if there were a simplified process though (Duh).

    I'd definitely have to Quake it up with this.
    This looks to be an inherently not-simple process.. You have to buy the microcontroller, put it in a project box (if you want it to look pretty and not get damaged), manually flash the drivers to it (which in the video he says can be done via USB, which will make this A LOT more accessible for the average user), and then most likely solder your own cable to connect the microcontroller to the PSP's remote port. Still, it shouldn't be too hard as long as gr8npwrfl can post some tutorials/readme's along with the driver releases.

    And of course, if he was enterprising enough, I'm sure he could sell pre-flashed pre-cabled ones to willing buyers who are not tech savy enough or too lazy to make their own.

  10. #10
    DCEmu Regular
    Join Date
    May 2004
    Location
    kansas, or florida
    Posts
    330
    Rep Power
    78

    Default

    Proof of concept my ass.

    This thing is good to go as is for some apps.

    Things like this is why I say that the PSP homebrew scene is above and beyond most of the other scenes.

    Why not replace simple laptop functions such as word processing and email with a PSP? A fraction of the size, power and weight, I'll be leaving my laptop at home next time I go to class. well as soon as a better text editor is worked on.

Page 1 of 2 12 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •