First post, by Mike_
Hello, it looks like there are already several similar projects, but they all seem to be external. So I decided to make my own version based on ATtiny2313 and MAX232, that is mounted internally to an expansion slot and connects to a serial header. Power is drawn from a floppy power connector.
Here's the first version with following features:
-Support for normal 1200 baud serial, or 9600 baud high speed mode, which requires modified drivers.
-Sample rate is configured with a jumper, options are 40/100/200. For higher than 40, 9600 baud serial is needed.
-USB A connector, so no need for a passive USB->PS/2 -adapter. I mean, you are going to want to use a relatively modern USB mouse with PS/2 -support rather than an actual vintage part, right?
-Support for 3-button and wheel mouse (2-button mouse is reported as a 3-button one)
-Header for PS/2 connector is also provided
-Support for hotplugging, and it also aims to be compatible with KVMs
-Crystal oscillator for ensuring accurate baud rate
-TVS diodes for ESD protection
-Overcurrent protection using ATtiny2313's onboard analog comparator and a P-type MOSFET as a switch
-No SMD components, so it's easy to assemble (well, except the DPAK MOSFET used to turn power on and off, but anybody should be able to solder that thing)
-Programming via SPI header
It works well with the mice I have had available for testing, which include an old Microsoft 2-button PS/2 mouse and a couple of USB Microsoft Basic Optical Mouse with PS/2 support. Current version even works with a KVM switch I have had available for testing. Note that the silkscreen describing jumper settings is not correct. At first the idea was that you would use it to select serial baud rate, and sample rate would be set based on that. But that doesn't make sense as you need modified drivers for increased baud rate, so it's better to use a fixed rate for any sample rate higher than 40.
I used modified mouse drivers found here for testing high speed mode: https://github.com/LimeProgramming/USB-serial … apter/tree/main
Repo of this project is found here: https://github.com/mniemela/PS2toSerial