• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Previewing PS2ADB - a low cost PS/2 keyboard & mouse to ADB adapter

rabbitholecomputing

Vendor The First
PS2ADB is a stand-alone utility device for use with any ADB-based Macintosh computer, allowing use of very inexpensive keyboards and mice, including optical mice, with any Macintosh that has an ADB port. PS2ADB is powered by @tashtari's TashTrio PIC firmware, which was announced back in February. We're working on a 3D-printed enclosure, since there's exposed +5 volts DC on the bottom of the PCB. We'll be releasing the schematic for it in the near future. With market prices for second-hand ADB keyboards, in particular, seemingly on a seemingly-unstoppable upward trajectory, PS2ADB is a low-cost solution to enable new entrants to Mac collecting to use input devices they may already have on-hand.

The TashTrio firmware is written in assembly, and is open source. It's available at https://github.com/lampmerchant/tashtrio if anybody wants to hack on it.

If anyone is interested in trying one out, we've got a limited quantity of PS2ADB's available (without an enclosure) for 68kMLA members. Just send us a PM.

PS2ADB.JPGPS2ADB-Top-Populated.JPG
 

aihk

Active member
PS2ADB is a stand-alone utility device for use with any ADB-based Macintosh computer, allowing use of very inexpensive keyboards and mice, including optical mice, with any Macintosh that has an ADB port. PS2ADB is powered by @tashtari's TashTrio PIC firmware, which was announced back in February. We're working on a 3D-printed enclosure, since there's exposed +5 volts DC on the bottom of the PCB. We'll be releasing the schematic for it in the near future. With market prices for second-hand ADB keyboards, in particular, seemingly on a seemingly-unstoppable upward trajectory, PS2ADB is a low-cost solution to enable new entrants to Mac collecting to use input devices they may already have on-hand.

The TashTrio firmware is written in assembly, and is open source. It's available at https://github.com/lampmerchant/tashtrio if anybody wants to hack on it.

If anyone is interested in trying one out, we've got a limited quantity of PS2ADB's available (without an enclosure) for 68kMLA members. Just send us a PM.

View attachment 43279View attachment 43280
I'm in China, can I have a schematic? I make one myself
 

joshc

Well-known member
What's support like for things like multi-button PS2 mice and trackballs with multiple buttons? I guess a Mac will just recognise one button or?
 

tashtari

PIC Whisperer
What's support like for things like multi-button PS2 mice and trackballs with multiple buttons?
TashTrio supports two buttons at the moment as that's all that's supported by the standard 0x01 and 0x02 ADB handler codes. ADB does define an extended mouse protocol (handler code 0x04, if memory serves) that allows for up to eight buttons, but the TashTrio firmware doesn't speak that protocol, at least not yet. I may go back and implement it if there's enough interest...
 

aihk

Active member
TashTrio supports two buttons at the moment as that's all that's supported by the standard 0x01 and 0x02 ADB handler codes. ADB does define an extended mouse protocol (handler code 0x04, if memory serves) that allows for up to eight buttons, but the TashTrio firmware doesn't speak that protocol, at least not yet. I may go back and implement it if there's enough interest...
USB to ADB achievable?
 

tashtari

PIC Whisperer
USB to ADB achievable?
It can be done. It's a more complicated job, though, as you have to deal with enumerating USB devices, hubs, the possibility of there being more than one keyboard or mouse device plugged in, &c. PS/2 was much simpler to implement.
 

rabbitholecomputing

Vendor The First
USB to ADB achievable?
With USB, you need to have a microcontroller that can act as a USB host, and with the current semiconductor/microcontroller shortages, that's a VERY difficult thing to obtain, particularly at a price that isn't highway robbery.
 

mpryon

New member
I've just gotten my PS2ADB. The keyboard and power on both work well on my B&W G3, woohoo!!!

Little problem though. I've tried a couple of working PS/2 mice but neither seem to work.
Do some mice just not work or am I missing a trick somewhere?
 

tashtari

PIC Whisperer
Do some mice just not work or am I missing a trick somewhere
I tested the firmware with every PS/2 mouse I had to hand, but it's possible that there are compatibility issues with some PS/2 mice that I haven't anticipated.

That said, I have a suspicion. PS/2 mice require a command sent to them that means basically "okay, start sending data", and without this, they'll appear dead. TashTrio firmware sends this command on power-up, but not thereafter. What I'm wondering is whether the G3 always has some power on the +5V line of the ADB connector, even when it's off, that's causing the microcontroller to start up before the mouse is connected - and thus it tries to send the command before the mouse is there to receive it. You can test this theory by unplugging the ADB connector from PS2ADB, plugging the PS/2 mouse into PS2ADB's mouse port, and then plugging in the ADB connector and starting the machine up.
 

mpryon

New member
I tested the firmware with every PS/2 mouse I had to hand, but it's possible that there are compatibility issues with some PS/2 mice that I haven't anticipated.

That said, I have a suspicion. PS/2 mice require a command sent to them that means basically "okay, start sending data", and without this, they'll appear dead. TashTrio firmware sends this command on power-up, but not thereafter. What I'm wondering is whether the G3 always has some power on the +5V line of the ADB connector, even when it's off, that's causing the microcontroller to start up before the mouse is connected - and thus it tries to send the command before the mouse is there to receive it. You can test this theory by unplugging the ADB connector from PS2ADB, plugging the PS/2 mouse into PS2ADB's mouse port, and then plugging in the ADB connector and starting the machine up.

Sounds good. I'll give that a try. Thanks!

Maybe relevant, maybe not, one mouse was optical. The light was on even though it wasn't working.
 

rabbitholecomputing

Vendor The First
Power to the p
Maybe relevant, maybe not, one mouse was optical. The light was on even though it wasn't working.
Power to the optical sensor is being delivered, regardless of what is happening at the protocol level, so this isn't terribly surprising/unexpected.
 
Top