Re: Supporting a PS/2 Keyboard



As I said, anything is possible, but you're going to have to figure out the
timing and interpretation of all of the keyboard signals. You get to be the
first, so you'd better get started ;-)

The USB keyboard driver is an HID driver. The keyboard part is just the
interpreter that converts the scan codes returned by the USB part of the
driver into characters (that is, it knows what scan code on the keyboard
corresponds to the "U" key and does the right thing to translate the scan
code into "U", when asked by the keyboard driver).

There are various keypad drivers in BSPs for development boards and, as I
said, there's the 8042 driver in source form in Platform Builder. You won't
run out of examples. It's the hardware interfacing that's the hard part.

You can use an 8042 controller. Driver is written for you. Hardware cost
goes up.

You can implement some sort of 8042 IP in an FPGA or CPLD. Driver is
written for you (although you have to be sure that the interface to the
"8042" really looks like an 8042). Hardware cost might go up, if you have
to use a bigger FPGA/CPLD than you have on your board now, or, if you have
free space in your programmable device, maybe not.

You can try to do everything from software with GPIO. You have to do
everything in software. Hardware cost is not affected.

Paul T.

"tvle" <tvle@xxxxxxxxxxx> wrote in message
news:1165361407.083282.288950@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thanks for the reply.

We have a legacy UI device that we are trying to replace with a new
Intel PXA270 based board and Windows CE 5.0. The legacy device allowed
the user to plug in a PS/2 keyboard if they wanted to use it on some
screens that required alot of input. The UI device had no real
intelligence to it and basically sent info back to a host computer via
an RS232 serial link using a proprietary serial protocol.

The host computer received the message containing the key codes and
reacted accordingly (by sending subsequent data back to the UI device.

The replacement device with CE does not have an 8042 in the hardware
and the thought was that the PS/2 connector would be wired to the CPU
I/O pins and software would handle interfacing to the keyboard.

Is this possible? How does the USB driver for a USB keyboard work in
CE? Does it layer itself so that it eventually reuses the keybd driver
or associated dll's?

Or will the hardware need to be redesigned to have the 8042 controller
or have a PS2 to USB converter plug?

Thanks for any and all comments and suggestions here.
Paul G. Tobey [eMVP] wrote:
Anything is possible, but it seems like there would be a lot of little
gotchas that you'd have to implement in software running on the main
processor. You could just put an 8042 in there; there's a driver for it
in
Platform Builder.

I don't understand what passing the codes from your device to the serial
port has to do with how the keyboard codes are arriving. Am I missing
something? Are you saying that you need something at a different level
than
what an application running on the device to which the keyboard was
connected would get?

Paul T.

"tvle" <tvle@xxxxxxxxxxx> wrote in message
news:1165357189.374073.223080@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hi everyone,

Is it possible to have a PS/2 keyboard connector interfaced directly to
the Intel PXA270 (via GPIO pins) and leverage the existing KeyBD driver
to get scan codes from the keyboard? Obviously there's not an 8042
keyboard controller in the chain so I don't know if its possible to do
this. We have an application which basically is supposed to grab the
raw codes from the keyboard and passes them over a serial connection to
another application.

I'd appreciate any comments or suggestions any of you may have on this.

Thanks.




.



Relevant Pages

  • Re: Injecting keyboard scan codes at driver level
    ... as a hid miniport you cannot create a control device object. ... use the WDK 6001 osrfx2hid sample which is really a full blown KMDF driver using a HID miniport that is purely pass through. ... You will need to create a control object to communictate (you cant open the keyboard directly) ... scan codes to the keyboard data stream based on data received from the user ...
    (microsoft.public.development.device.drivers)
  • [patch 04/33] m68k: Atari keyboard and mouse support.
    ... Atari keyboard and mouse support. ... +static void atakeyb_rep; ... To compile this driver as a module, ...
    (Linux-Kernel)
  • RE: my pc always hanged up!!
    ... usually you have a driver that's current compared to what came on the ... changed the original mouse and keyboard) will have updated drivers if any are ... To get to Downloaded Program files, you can click Tools on the right of your ...
    (microsoft.public.windowsupdate)
  • Re: Maybe we should stop "Paging Beth Stone" already...
    ... So normally, you'd load a keyboard driver which attaches to the first PS/2 port, and a mouse driver which attaches to the second PS/2 port. ... So if you plugged a keyboard into the second PS/2 port, all you would have to do is unload the mouse driver, and load a second keyboard driver, telling it to use the second PS/2 port instead of the first. ... Since the IPC protocol it uses to connect to the second PS/2 port is identical to the IPC protocol it uses to connect to the first PS/2 port, it will happily connect to it instead. ... has to be treated as it needs to and all hardware drivers are connected via structures (including buffer pointers) to communicate with any software. ...
    (alt.lang.asm)
  • Re: my pc always hanged up!!
    ... Go tot the manufacturers website and download an updated driver that is if ... keyboard, but when i clicked the keyboard name and select the update ... To get to Downloaded Program files, you can click Tools on the ...
    (microsoft.public.windowsupdate)