Using Infrared Keyboard On PSP?

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
Fabre
Posts: 18
Joined: Sun May 22, 2005 7:29 am

Using Infrared Keyboard On PSP?

Post by Fabre »

Note: This does not relate to the Laser Keyboard discussion a few topics down.

I am wanting to write a decent PDA application for the PSP, but the only limitation I have at the moment is that data input would be quite difficult. Does anyone have both a PSP and an IR keyboard (such as the 'PalmOne Wireless Keyboard')? If so, could you please run this application: http://dl.qj.net/Infra-Red-Capture-with ... /catid/189 on your PSP, and press keys on the keyboard, then reply with whether or not some type of key codes are displayed on the screen?

I am asking this because I need to know whether the keyboard simply sends key codes to the device, or whether it needs to be initialised first. If it just sends the key codes automatically, I'll get an IR keyboard and begin work on this right away. If the keyboard needs some kind of initialisation, it will make my job much harder.

Thanks in advance!
User avatar
Saotome
Posts: 182
Joined: Sat Apr 03, 2004 3:45 am

Post by Saotome »

There were already some topics on this:
http://forums.ps2dev.org/viewtopic.php?t=2926
http://forums.ps2dev.org/viewtopic.php?t=4346
http://forums.ps2dev.org/viewtopic.php?t=2685
and maybe some more ;)

P.S: My IR keyboard should be here in the next few days :)
infj
Fabre
Posts: 18
Joined: Sun May 22, 2005 7:29 am

Post by Fabre »

I guess that answers my question, then! :p

Thanks
mrn
Posts: 116
Joined: Wed Nov 02, 2005 2:26 am

Post by mrn »

but the only limitation I have at the moment is that data input would be quite difficult.
Fabre, I am not sure if you are aware of this, so let me put it here:
http://fosk4psp.dynamicweb.hu/
Fabre
Posts: 18
Joined: Sun May 22, 2005 7:29 am

Post by Fabre »

Yes, I have actually seen that before. But I doubt I could get up to 75 WPM on it like I can on a full keyboard, and I believe it would be the same for a lot of people.
mrn
Posts: 116
Joined: Wed Nov 02, 2005 2:26 am

Post by mrn »

It is somewhere between typing an SMS and 75WPM ;-)

Seriously, I know there is a huge need for a real keyboard.
And I am also interested in the IR / Serial /WF tricks to use...
..but who wants to carry two boxes in his pocket with two sleeves,
two sets of batteries, two chargers when traveling?
Suppose I am sitting on a train, and just want to make a note in N0tepad.
Would you pick out the IR keyboard, put it against the PSP keeping it
on your knee an typing 5 chars? Of course, this all after turning the screen upside down,
activating the IR mode on both devices,
choosing the file to edit and moving the cursor to the right position
with the analog (or digital) stick of the PSP?

I've seen somewhere a tiny see-through plexy-like keyboard attachable
to the USB hole of the PSP in the same way as the usb mike is...
but, again, we get back to the WPS point. Unfortunately.
Anyway, tapping the communication of 'that' keyboard would allow us to figure out how to make it with the psp-firmware...
User avatar
DrNicket
Posts: 13
Joined: Sat Nov 26, 2005 6:53 am
Location: Duncan, BC, Canada

Which iR keyboards for PSP?

Post by DrNicket »

Is this a good place to ask this question?

What iR keyboards are available that will work with the PSP and how much are they (ballpark is fine).

The exact prices and where I can figure out myself.

Thanks
Dr. Nicket
----------------------------------------------------------------------------
"Alright, you primitive screwheads, listen up. See this? This is my BOOMSTICK!"
- Ash (Bruce Campbell)
User avatar
Saotome
Posts: 182
Joined: Sat Apr 03, 2004 3:45 am

Post by Saotome »

mrn, I don't want to sound rude, but to me It looks like you're trying to convince everyone that hardware solutions for a keyboard are bad or not as good as 'OSK'. But don't forget this thread is about IR-Keyboards and its in the Hardware-forum. So please try not to use every keyboard thread to advertise FOSK, thanks ;P

@DrNicket: try ebay, thats where I got mine (PDA IR-keyb for 20€), I'm still waiting for it to arrive so I don't know yet how easy it will be to use it in my programs. But I think every IR keyboard (or most) should work with the PSP, you just need to write the right driver software ;)
infj
User avatar
DrNicket
Posts: 13
Joined: Sat Nov 26, 2005 6:53 am
Location: Duncan, BC, Canada

Post by DrNicket »

Saotome wrote:@DrNicket: try ebay, thats where I got mine (PDA IR-keyb for 20€), I'm still waiting for it to arrive so I don't know yet how easy it will be to use it in my programs. But I think every IR keyboard (or most) should work with the PSP, you just need to write the right driver software ;)
That's step 2 and 3. Step 1 is finding out what make and model others have found practical and functional for their PSP. The driver...I was hoping to find that too.

I did have an independant thought.. what about a keyboard that lives on the backside of the PSP? You'd have to almost be stenographer-grade proficient with it though... You'd also have to hold the PSP by the sides so you don't hit the keys.

Alternately we/they/whoever could/should design a keyboard that clips onto the back of the PSP and either foldsout and down (beneath) or is positioned right at the bottom. The clincher here is it would have to counterweight the PSP (Practicals: PSP Battery-Pack? I can draw up plans for such a thing, but I'd need investors to create a proto-type and coders to create the drivers.

I'm an idea man whose willing to see an idea through to completion.
Dr. Nicket
----------------------------------------------------------------------------
"Alright, you primitive screwheads, listen up. See this? This is my BOOMSTICK!"
- Ash (Bruce Campbell)
Fabre
Posts: 18
Joined: Sun May 22, 2005 7:29 am

Post by Fabre »

mrn wrote:but who wants to carry two boxes in his pocket with two sleeves, two sets of batteries, two chargers when traveling?
It's no different than if you had to carry a PSP and a Pocket PC or Palm.
mrn wrote:Of course, this all after turning the screen upside down
All infrared keyboards that I have seen have the infrared LED mounted on a swinging 'arm' so that it can be positioned above the device:

Image
Arwin
Posts: 426
Joined: Tue Jul 12, 2005 7:00 pm

Post by Arwin »

mrn wrote:It is somewhere between typing an SMS and 75WPM ;-)
I manage about 40WPM with p-sprint. :p Unfortunately I also have a Blackberry, so I don't really need the PSP for that kind of thing until I have some kind of portable access point for it.

But enough with that. If you want to make a useful discussion out of FOSK, IRDA, P-Sprint and so on support, the best thing to do is make sure that they can all be supported through a similar interface.

I think the interface I designed for p-sprint, which is very similar to regular keyboard programming interfaces I think, is a good interface to use.

I am willing to help out on the coding part to make this work for IR keyboards and other solutions alike.
mrn
Posts: 116
Joined: Wed Nov 02, 2005 2:26 am

Post by mrn »

Fabre: I am wanting to write a decent PDA application for the PSP, but the only limitation I have at the moment is that data input ...
.
.
Saotome: ..So please try not to use every keyboard thread to advertise FOSK
Saotome, I just wanted to help him. Not to give up his project early becouse of a missing piece of hardware.
I can not help that he raised his PDA-like app here. btw, guys: Do you have some news about PSP Pda?
Forget it....
ou're trying to convince everyone that hardware solutions for a keyboard are bad or not as good as 'OSK'
Never said anything like that. I'll be the first one to get an IR keyboard if there will be a nice web-browser with an IR support.
But to start developing a PDA-like app... any OSK should be ok. imho.
piece! m.
Dr. Vegetable
Posts: 171
Joined: Mon Nov 14, 2005 1:32 am
Location: Boston, Massachusetts
Contact:

Post by Dr. Vegetable »

I agree that Arwin's API appears to be suitable for use with any keyboard, although it could be simplified a bit. What is missing, IMHO, is clear documentation in the p_sprint.h header file that explains what the contents of each field in the p_sp_Key struct are used for. It would also be helpful if the header file defined an enumeration of all standard keycode values that may be returned to the application.

I would also like to see a simplified keyboard API, something like:

Code: Select all

wchar GetKeystroke();        // Return (unicode?) keycode value or 0x0000 if no key
bool KeystrokeAvailable();  // Returns true if a keystroke is available
...which would allow code like...

Code: Select all

wchar key;
if (KeystrokeAvailable())
{
   key = GetKeystroke();
   switch (key)
   {
      case KEY_F1:
         // F1 key pressed...
         break;

         // etc...
   }
}
...or even better...

Code: Select all

switch (GetKeystroke())
{
   case KEY_NONE:   //  0x0000 - No key was pressed.
      break;   // Do nothing.

   case KEY_F1:
      // F1 key pressed...
      break;

   // etc...
}
Arwin, I was wondering why you do not #include "p_sprint.h" in your own p_sprint.c file? Then you could get rid of the redundant definitions in the .c file, eliminating one common source of potential programming headaches.

Anyway, I'll try to finish folding support for my Belkin IrDA keyboard into p-sprint over the next couple of days.
Arwin
Posts: 426
Joined: Tue Jul 12, 2005 7:00 pm

Post by Arwin »

Would most of your questions be answered if I told you that p-sprint is, in fact, my very, very first real c project? :)

I think that'll explain some of it anyway. I am happy to take in your suggestions of course! I was mostly just very happy when it worked. :) (my hopes weren't too high - starting with C on the PSP seemed a little ambitious)

I was assuming that keycodes are codes that identify the key being pressed, not the resulting character. If I am correct in that assumption, then unicode values aren't relevant at this stage. Instead, a combination of keycode and modifiers would indicate a certain character matched with an unicode value. Outputting unicode char values should be left to a higher level, I think.

The interface I wrote is intended to represent the keyboard state. I have programmed for different environments, and this is the most practical, all purpose interface I came across. It provides the functionality you ask for - you would simply just look at the keycode values.

The active group code is needed for a user interface to anticipate on what group mapping is selected. Perhaps this should be taken out and implemented differently, because it is relatively specific to p-sprint.

The way I see it, one elegant solution would be to reinterpret p-sprint's active group as 'active keymap id'. Then we can have the user define different keymaps, select them, and read the keymap setting from the same interface as everything else.
mrn
Posts: 116
Joined: Wed Nov 02, 2005 2:26 am

Post by mrn »

Guys, are there any news regarding this PDA app Fabre is working on? thnx, m
Fabre
Posts: 18
Joined: Sun May 22, 2005 7:29 am

Post by Fabre »

It's still coming, I'm just taking my time to make sure it is professional and I don't want to announce too much yet before I have more of it complete.
white rabbit
Posts: 60
Joined: Wed Jul 06, 2005 7:03 pm

Post by white rabbit »

Has anybody got one of these working yet?

I'm bidding on one on eBay now so if I win it I'll be very interested in getting a code editing app (vi / emacs / etc) that runs with it.

If not, I'll have a look when I get hold of one and try to glue together some bits that are about to get a proof of concept then clean it all up into a IR keyboard driver code / PRX.
User avatar
Saotome
Posts: 182
Joined: Sat Apr 03, 2004 3:45 am

Post by Saotome »

I bought this one on ebay (works without problems in my psp mips asm editor ;)). Maybe its the same one you're bidding on.
here's my driver (source) for it.
infj
white rabbit
Posts: 60
Joined: Wed Jul 06, 2005 7:03 pm

Post by white rabbit »

Cheers Saotome.

It's not quite the same, I'm bidding on this one: ebay

But I'm sure your code base will run most of it, if not all of it.

Thanks again!
Post Reply