Main > Main Forum

usb or ps/2

(1/3) > >>

sodapopinski:
i'm ordering my parts right now. So, what is better usb or ps/2 or who cares? I really cant see it being a huge difference, but what do i know? are there prefrences? why?

Kook:
I use a PS2 JPAC to interface a cordless PS2 keyboard and mouse, two 8-way joysticks and 12 buttons to my mobo. I am very happy with this setup. For games that don't work well with the 8-way joysticks, I whip out Logitech Cordless Rumblepads (the receivers are connected directly to USB ports on the motherboard). Everything works great.

I chose a PS2 JPAC, PS2 keyboard, and mouse, just because I wasn't sure whether or not a USB keyboard and mouse would be as bulletproof (would they work under DOS? during CMOS setup? etc).

Hope that helps.

Kook

Tiger-Heli:
http://www.mameworld.net/tigerheli/encoder/index.htm - Search for "USB Vs. PS/2 Mode".

The general consensus AFAICT is PS/2 is better for keyboards and keyboard encoders, and USB is better for gaming controls.  But I'm not sure how noticeable the differences are, if at all.

cholin:
I dont use one yet, but Ive done my share of work and I plan on using PS/2.  I have a wireless keyboard hooked up to it and it runs like a charm, why, because theyre made for keyboards.  If you have a keyboard encoder, you will have your keyboard attached to that, so just let the computer count it as a whole keyboard.  Thats my opinion though, I guess it goes down to preference.  Are you going to have any other controllers hooked up?  What operating system?  Any future plans to use USB or PS2 for another project, maybe to power something?

tetsujin:

--- Quote from: Tiger-Heli on February 15, 2005, 06:38:52 am ---http://www.mameworld.net/tigerheli/encoder/index.htm - Search for "USB Vs. PS/2 Mode".

--- End quote ---

Fascinating.  Personally I think Randy's got it right.

In particular, I think the USB keyboard protocol is a poor choice for gaming.  Consider low-speed USB HID devices.  They can be guaranteed a polling rate of 10ms, at which point they can send 8 bytes to the host.  A USB keyboard can maybe send 8 state changes during that time.  A USB gamepad, on the other hand, can send the status of 64 digital controls.

Compared to PS/2, low-speed USB HID has poorer latency but better bandwidth for game controls, with PS/2 taking around 500-1000 state changes per second, and USB HID low-speed averaging (over one second) 6400 state changes per second maximum bandwidth.  The difference in latency, however, is not insignificant.  When a state changes on a keyboard encoder (assuming the bus isn't saturated with traffic, which it almost certainly never will be) it could have its update onto the host's keyboard buffer within a couple milliseconds.  If you press three buttons at once, one of the buttons will have to wait around 3ms to get its state to the host - chances are, though, even if you are hitting buttons "at the same time" there's that much difference in between when the switches actually close anyway.  Being polled at 10ms, low-speed USB will have to wait an average of 5ms, and possibly as much as 10ms to update.

If you assume your game polls the inputs every 17ms or so, and assume no more than three controls will be activated "at once" (maybe with an actual difference of 5ms from the first press to the last), there's maybe a 25% chance the game won't see those inputs as simultaneous.  With USB's latency, for those presses to be seen as simultaneous, they all have to reach the host within the 17ms polling.  If they all arrive on the same USB packet, (about a 50% chance, I figure) they will.  If not, then there's only about a 60% chance that two consecutive USB packets will arrive in the same game frame, so the overall odds that the game will not see those inputs as simultaneous is around 20%.  The odds that the low-speed USB latency for a single button press will cause it to be delivered one game-frame late is around 60%, where for PS/2 keyboard it's much lower, around 4% if the bus isn't saturated.  But would you even notice if your game inputs were reflected one frame late?  It's tough to say.  Maybe.

Full-speed is another matter.  Full-speed HID devices can deliver more data per interrupt, and they can be guaranteed a higher polling rate.  I think a full-speed USB Gamepad with a polling rate of 5ms or lower would be better than the PS/2 keyboard interface for gaming overall.  The latency would be close enough to PS/2 that the odds for synchronization with the game's polling would be a lot more favorable. 

I'm not sure how USB 2.0 hubs would factor into this.  They're made to translate low- and full-speed devices to high-speed transmission, but the buffering involved introduces some amount of extra latency.  I'm not sure how much, but on a game-cab system that'll have just a few low- and full-speed devices and nothing on the USB bus that'll take significant bus bandwidth, I think there can be no justification for that added latency, regardless of how small it might be.

Personally I'd go with USB Gamepad interfaces just out of principle.  :)  I feel it's better for game controls to have their own "channel" independent of the keyboard.  But PS/2 would be a solid performer if you get a good encoder.  I wouldn't at all recommend using a USB keyboard interface, though.  A full-speed one might be OK, if your OS has good, fast USB keyboard support.  (Don't use it for DOS!)  But it's just not an efficient way to connect game controls IMO.

But then again, I'm not the one with the hands-on experience building and testing these encoders.

Navigation

[0] Message Index

[#] Next page

Go to full version