VOGONS


Microsoft PS/2 to serial pinout?

Topic actions

First post, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie

Currently trying in vain to get my PC-Chips M919 Am5x86 build to have a pointing device.

I've got a serial compatible Microsoft Mouse (I think it's an IntelliMouse, no scroll wheel, 2-button, shiny white finish, ergonomic shape), that lists the required +12v and -12v signalling for RS232 on the back of the mouse.

I've got an old PS/2 to serial (DB9) adapter and chucked it on COM1, nada. COM2 is the same story. I've tried changing the BIOS to COM3/4 and still nothing. I've tried reversing the COM header cables incase they were wrong, but that makes no difference either. Finally I found a pinout on pinouts.ru that was 1-pin different to mine so tried swapping those pins too, still nothing.

The result is the same regardless of DOS or Win95 OSR2.5 using mouse.sys/mouse.com or any Windows drivers.

Now, I know I could seek out a dedicated serial mouse, or even the official MS PS/2 to DB9 adapter, but 1) both options are expensive (comparatively speaking), and 2) this mouse SHOULD work (it works on a PS/2 PC).

Does anyone know the pinout for the MS adapter? Is there any simple way of me testing that the COM ports work on this motherboard?

Thanks in advance!

Reply 1 of 26, by maxtherabbit

User metadata
Rank l33t
Rank
l33t

I don't know the pinout of the MS adapter specifically, but I do know that every manufacturer pretty much used their own non-standard one. So if your adapter isn't from MS it probably will not work ever.

Reply 2 of 26, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie

It would be very useful for someone with the MS adapter to make a pinout diagram using a multimeter. Given the mice are easier to find than the adapters!

Reply 3 of 26, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
paradigital wrote on 2021-04-24, 13:47:

It would be very useful for someone with the MS adapter to make a pinout diagram using a multimeter. Given the mice are easier to find than the adapters!

I have several adapters, but none of them are marked. I also don't have a microsoft serial compatible mouse to test with. If you can identify a defining characteristic of the MS one I can see if I have it

Reply 4 of 26, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie
maxtherabbit wrote on 2021-04-24, 13:51:

I have several adapters, but none of them are marked. I also don't have a microsoft serial compatible mouse to test with. If you can identify a defining characteristic of the MS one I can see if I have it

From what I can find on the web, the MS adapter for this (and similar era) mouse will have 68666 stamped on it/moulded into the casing.

If you do have one that would be great, thanks.

Reply 7 of 26, by TheMobRules

User metadata
Rank Oldbie
Rank
Oldbie

This is the pinout I got by probing an old 68666 adapter a long time ago:

       PS2_1 <--> N/C
[ RD] PS2_2 <--> DB9_2
[ GND] PS2_3 <--> DB9_5
[ RTS] PS2_4 <--> DB9_7
[ DSR] PS2_5 <--> DB9_6
PS2_6 <--> N/C

Please note that I tried that same adapter with newer MS mice (from mid-late '90s) and it didn't work, those come with a different adapter and seem to be incompatible with the 68666. However I remember comparing the pinout of the newer adapters and it was the same as the 68666! Probably I made some mistake when poking around with my multimeter, or there is some active component in the adapter itself that causes this difference. I'm going to try and remap the pinout if I find the 68666 adapter, hopefully I haven't discarded it.

Reply 8 of 26, by Horun

User metadata
Rank l33t++
Rank
l33t++

I have a few older MS serial - PS/2 mice with original adapters. Will check them but do not recall any numbers/marking on the adapters.

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 9 of 26, by akula65

User metadata
Rank Oldbie
Rank
Oldbie

Obviously, it is important to determine the connections across the adapter(s), but it would be a good idea to make sure you also test for connected pins on the same side of the adapter and do this for both the PS/2 and DB9 sides of the adapter. As an example, connect one resistance probe to Pin 1 on the PS/2 side and sequentially test for continuity on all higher numbered PS/2 pins, noting any shorts. Then connect one resistance probe to PS/2 Pin 2, and again test against all higher PS/2 Pin numbers. Repeat until you have done all but the last PS/2 Pin. Then do the same thing on the DB9 side.

Reply 10 of 26, by snufkin

User metadata
Rank Oldbie
Rank
Oldbie

Ok, checked the connector and found as follows:

Adapter P/N 25528 (from the plastic bag the adapter was in)
1992 MS Serial Mouse to PS2

Looking at the connector
o - pin present
. - no pin

Serial, 9 pin, male
1 2 3 4 5
-----------------------
\ o . . . o /
\ . . o o /
\_________________/
6 7 8 9

PS2, 6 pin, male
_____
/ \
5 / o # . \ 6
3 |o # o| 4
1 \ o . / 2
\ /
-----

Serial PS2
1 5 - Clk
5 3 - Gnd
8 4 - +5
9 1 - Data
Shield Shield

No pins internally connected together.

[and I've just realised this is to plug a serial mouse in to a PS2 port, which I think is the opposite of what you're trying to do. So probably not helpful]

Reply 11 of 26, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie
TheMobRules wrote on 2021-04-24, 17:45:
This is the pinout I got by probing an old 68666 adapter a long time ago: […]
Show full quote

This is the pinout I got by probing an old 68666 adapter a long time ago:

       PS2_1 <--> N/C
[ RD] PS2_2 <--> DB9_2
[ GND] PS2_3 <--> DB9_5
[ RTS] PS2_4 <--> DB9_7
[ DSR] PS2_5 <--> DB9_6
PS2_6 <--> N/C

Please note that I tried that same adapter with newer MS mice (from mid-late '90s) and it didn't work, those come with a different adapter and seem to be incompatible with the 68666. However I remember comparing the pinout of the newer adapters and it was the same as the 68666! Probably I made some mistake when poking around with my multimeter, or there is some active component in the adapter itself that causes this difference. I'm going to try and remap the pinout if I find the 68666 adapter, hopefully I haven't discarded it.

I'd be really interested in you managing to re-check your work on this, given that the PS/2 specification has pins 2 and 6 as N/C (not connected). You appear to have PS2_2 attached to DB9_2, perhaps this was PS2_1 in reality?

Reply 12 of 26, by quicknick

User metadata
Rank Oldbie
Rank
Oldbie
paradigital wrote:

I'd be really interested in you managing to re-check your work on this, given that the PS/2 specification has pins 2 and 6 as N/C (not connected). You appear to have PS2_2 attached to DB9_2, perhaps this was PS2_1 in reality?

I'm also (still) interested in the complete schematic of the "68666" adapter, in fact this was my first thread on this forum, and it's still an unfinished business (not that it matters much, since I managed to source a few serial mice meanwhile).

To summarize, some versions of the MS mouse have a 6-wire cable, and they use the full PS/2 connector, so I'd expect both pins PS2_2 and PS2_6 to be connected to something on the serial side.

Reply 13 of 26, by maxtherabbit

User metadata
Rank l33t
Rank
l33t
paradigital wrote on 2021-04-26, 08:30:
TheMobRules wrote on 2021-04-24, 17:45:
This is the pinout I got by probing an old 68666 adapter a long time ago: […]
Show full quote

This is the pinout I got by probing an old 68666 adapter a long time ago:

       PS2_1 <--> N/C
[ RD] PS2_2 <--> DB9_2
[ GND] PS2_3 <--> DB9_5
[ RTS] PS2_4 <--> DB9_7
[ DSR] PS2_5 <--> DB9_6
PS2_6 <--> N/C

Please note that I tried that same adapter with newer MS mice (from mid-late '90s) and it didn't work, those come with a different adapter and seem to be incompatible with the 68666. However I remember comparing the pinout of the newer adapters and it was the same as the 68666! Probably I made some mistake when poking around with my multimeter, or there is some active component in the adapter itself that causes this difference. I'm going to try and remap the pinout if I find the 68666 adapter, hopefully I haven't discarded it.

I'd be really interested in you managing to re-check your work on this, given that the PS/2 specification has pins 2 and 6 as N/C (not connected). You appear to have PS2_2 attached to DB9_2, perhaps this was PS2_1 in reality?

You've got to remember that PS/2 and RS-232 are fundamentally different signalling protocols. It makes perfect sense that they would use the unused pins for the RS-232 adapter because they would not follow the same circuit path as the PS/2 communication inside the mouse

Reply 14 of 26, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie

Good points, I hadn’t considered that the internal wiring of the mouse used 6 wires.

I’m now thinking that the serial ports might be dead on this motherboard however, as I can’t even get a simple loopback bridge of pins 2-3 to respond in HyperTerminal.

Reply 15 of 26, by snufkin

User metadata
Rank Oldbie
Rank
Oldbie

Right, hopefully to make up for my previous mistake about the adapter, I've had a go at tracing the circuit for a PS/2 "Serial-Mouse Port Compatible Mouse 2.0", part number 45717, which is a PS2 mouse which could apparently be plugged in to a serial port with an adapter (which I don't have). It has on the label the voltage requirements of 5V 20mA, 12V 14mA, -12V 14mA.

No idea if I've got things right, but I've made an attempt at working out how to connect the PS/2 to a serial connector and have it work as a serial mouse. Nothing tested yet, so probably best to wait a bit.

The interesting bit of the circuit looks something like this:

MS_Mouse_Circuit.jpg
Filename
MS_Mouse_Circuit.jpg
File size
46.19 KiB
Views
2264 views
File license
CC-BY-4.0

That shows what pins 1-4 of the internal 6 pin connector go. Pins 5&6 are the Data (Red) and Clock (Black) signals for PS/2 mode (pins 5&1), and just run off to pins RA[0..1] of the PIC that's running everything, so I don't think they have anything to do with serial mode and can probably be ignored for any adapter.

Pin 4 (Yellow wire) connects to Vss of the PIC and also to Pin 3 on the PS/2 connector.
Pin 3 (Orange wire) goes through a transistor, then to Vdd. My analogue abilities are poor, but it looks as though it'll conduct whenever pin 3 is higher than pin 4. So I think this is where +12V would go to. It's also where +5V goes to when using as a PS/2 mouse (pin 4 on the connector). I think it relies on the mouse circuit drawing enough current from the relatively high output resistance pins on the serial port to bring the voltage down to something near +5 and not blow up the PIC. There's a resistor network for balancing the photo diode receivers that means there's a few milliamps being drawn even before the LEDs or the chip are running.

So I think those two get us power. Connect pin 4 to the GND on a serial port and pin 3 to RTS. I'm guessing RTS because I believe the mouse detection method is to blip RTS and wait for a response from the mouse. If RTS is powering the mouse, that would cause a reset, and possibly the first thing the mouse does is send the ID message.

The input of R8 comes from pin RB7 of the PIC, and switches Vdd on to the inputs of diodes D3&4. R7&9 are at Vdd. If R8 is held high then Q5 doesn't conduct, so won't affect the rest of the comms circuit. If pin 1 (White wire) is at -12V then Q4 conducts, so we end up with -12 at the base of Q3, which also conducts, so we get -12 on pin 2.

If R8 then goes low, Q5 conducts and puts Vdd on the base and emitter of Q3, which turns off, and we end up with ~5V on pin 2.

So I think pin 2 is the output data, and pin 1 is the -12V supply to get the data level switching voltages.

So, my guess is the correct pinout is:

Internal | Wire colour | PS/2 pin | Serial pin
pin 1 | White | 6 | TD 3
pin 2 | Blue | 2 | RD 2
pin 3 | Orange | +5V 4 | RTS 7
pin 4 | Yellow | GND 3 | GND 5
pin 5 | Red | Data 5 | NC
pin 6 | Black | Clk 1 | NC

I haven't actually tried this yet, and won't be able to until the weekend, but thought I'd throw it out there now so people can laugh at my analogue abilities and watch as I blow up a mouse and/or serial port. I'm fine with millions of transistors (well, not necessarily fine), but when there's 4 it gets tricky.

Reply 16 of 26, by weedeewee

User metadata
Rank l33t
Rank
l33t

DTK3a.jpg

Have you verified this ?

Right to repair is fundamental. You own it, you're allowed to fix it.
How To Ask Questions The Smart Way
Do not ask Why !
https://www.vogonswiki.com/index.php/Serial_port

Reply 17 of 26, by snufkin

User metadata
Rank Oldbie
Rank
Oldbie

Yeah, checking the motherboard pinout is a good idea. Plus, I came across an interesting file within the files downloadable from https://www.elhvb.com/webhq/models/486pci/m919v1.htm about the M919.

The "help-vip.htm" has a description of the motherboard having problems with both COM ports and the FDC, apparently fixable by removing a capacitor on the board (I think COM ports are supposed to have a maximum slew rate and maybe it was somehow slowing down transitions too much).

Reply 18 of 26, by snufkin

User metadata
Rank Oldbie
Rank
Oldbie

Right, just to finish off, I had a bit of time to actually wire something up, and I had the pinout wrong. But nearly right:

Internal | Wire colour | PS/2 pin | Serial pin
pin 1 | White | 6 | TD 3
pin 2 | Blue | 2 | RD 2
pin 3 | Orange | +5V 4 | DTR 4
pin 4 | Yellow | GND 3 | GND 5
pin 5 | Red | Data 5 | RTS 7
pin 6 | Black | Clk 1 | RTS 7

Comparing with an actual MS serial mouse, the driver sets both pins 4 (DTR) and 7 (RTS) +ve. The other serial output (pin 3 TD) stays -ve. I checked the PIC data sheet, and the inputs will clamp to Vss (0V) and Vdd (+5V ish), to a maximum of 20mA. So, given then 100 ohms input resistance within the mouse, and the normally high output resistance of the serial port, I guessed that the connecting serial port voltages to the PS2 Clock and Data pins (which go to the PIC RA0 and RA1 pins) would be safe. Given that I was fairly sure RTS was used for signalling the mouse to ID itself, I changed the internal pin 3 to connect to pin 4 (DTR) on the serial connector. Then I connected a cable from pin 7 (RTS) from the serial connector to pins 5&6 on the internal connector (I thought I would try both together first, increase the clamp current capability).

Connected it to a serial port, rebooted, Win98 auto-detected the mouse and all was good. I did then try connecting RTS to just the Clock or the Data, but that didn't work, so both have to be connected.

I've only tried this by soldering a db9 directly on to the pcb, I haven't tried (don't have the right connector) connecting it via a PS2 connector. But I don't see a reason why it wouldn't work.

Reply 19 of 26, by paradigital

User metadata
Rank Oldbie
Rank
Oldbie

That's brilliant, thank you snufkin!

I'll try rewiring my adapter when I get chance and report back, but looking at your previous post, I might end up modding the motherboard as well if it has COM issues!