• Hello, Guest! Welcome back, and be sure to check out this post for more info about the recent service interruption and migration.

does anyone know...


Does anyone know the Default Device Handler Identification for a basic ADB mouse? or where I can find a table of Handler ID's




yea I have read those from front to back, the second one if you go digging says its $01, but does not go into any detail other than "buy this book"

I am going to use $01 i guess, but it would be nice to see the apple defaults, so maybe I can use a later edition mouse handler without writing my own device handler

I also cant find a table of acceptable timing, what little tidbits apple tosses out there are no where near what i am seeing on my SE, the basic guidelines I got from a microchip application note dont really match up either ie attn "should" be 800us or around there, but my SE puts it at 640us

I respect how spiffy 1 wire serial was back in the day when adb was made, but to me looking at it, its way overcomplicated due to the no-clock flag system, especially since they had to invent a use for the already there extra wire (what was sooooo bad about having a serial clock! why couldnt they put the power on via the mcu in the device, like everyone else did it?, why is their own timing not matching what little their doc's tell me!)

so yea I am making a ps/2 to adb converter but after all this fussing around I am seriously guessing its compatibility over the spectrum of machines since I cant seem to find any data, except buy the mac book (for 25$)



Well-known member
I would think the people persons involved in these projects:



Would be the best people to talk to, especially the first one. The second one is an adb-usb adapter. If adb decoding can be done, surely encoding can't be that much harder. Why not just disassemble an adb device and snoop on the communications or something?


Page 5-29 covers writing a device handler. This too maybe?


It's for OS X, but maybe there might be useful info somewhere.



Why not just disassemble an adb device and snoop on the communications or something?
care to donate one?

also I have no interest in writing a handler, just need the addresses of the default apple types

but thanks :)

right now i am fiddling with software on the avr, I can read the command byte sent by the mac sorta, but its really dirty and has low success rates



Well-known member
It was interesting reading about the ADB to USB converter. But I'd be more interested in going the other way and be able to use the same keyboard to control both a modern and a 68k Mac.



Just out of interest, what are you working on?
ps2 kb / mouse to adb adapter

once I get the adb Stuff down it should be pretty easy to go any way to any thing , but ps/2 for right now cause its much simpler



Neat. Did you check out kbdbabel?

It was interesting reading about the ADB to USB converter. But I'd be more interested in going the other way and be able to use the same keyboard to control both a modern and a 68k Mac.
As long as it's an ADB keyboard, what's stopping you? I'm using an ADB AppleDesign keyboard on my Quicksilver G4 right now.

Are you wanting to switch from one machine to the other on the fly, and thinking that you need a USB keyboard and a USB KVM/switchbox? You could use an ADB switchbox instead, downstream of the converter.



mk I just wasted nearly 45 min cussing cause I could not get this setup to send me a debug flag just to find out it was my oscope probe being a putz

so yes you can get a ok set of scope probes from china for less than 20$ with free shipping, but dont take off the spring hook ends cause you will never get them set back on right and they like to wiggle loose, wasting your time :(

anyway here is a pic

kinda hard to tell whats going on, but on the bread board (the white thing with all the crap on it) the left side under the probe is a attiny84 avr microcontroller hooked up to the mac se's adb port (sitting on the floor) on the right side is a led display so I can output whatever the attiny see's (in 1 byte binary) for debugging, the smaller board on the top left is a bare bones arduino which is acting like a avrisp programmer, which is connected to a PC via serial port so I can wite program data to the tiny's storage

Also you can see a 20$ craftsman multimeter (not the best I have owned but no toy by any means) and a small part of my oscilloscope (that I really wish was a logic analyzer, but at least its got a digital mode with a few KB storage, which would have been retarded expensive back in 1987 when it was made)

not shown is the ps/2 connections, there are 2 of them and the attiny is already fat n happy with those devices and they function perfectly, course I am using someone elses lib so it darn well better lol

sofar with regards to mcu resources I have ps/2 kb and mouse fully working and adb sometimes halfway working, with that going I have about 3k of space used out of the 8k available on the tiny, and I am sucking down about 200KB out of the 512 available memory, though since I have more than enough I will be using a good chunk of it for keyboard scan code conversion in ram vs database for performance and ease of coding

finally I have ~512k of eprom storage on the chip, as a last thing I am planning to write a little simple application for the mac so you can set different settings for the devices, IE 100cpi vs 200cpi mouses, standard vs Enhanced keyboard, and maybe absolute pointing device support, but all of that is at the end of a very long list-o-crap

at the moment Id just be happy to get a mouse working :D





I've got a Silicon Valley Bus Company product called the KeyStone that's WAY more simple than what you're cobbling together. Do you want some piccies of the PCB? IIRC, when I got mine, it was for:

PC Serial Mouse & Original PC KBD Connectors -> ADB

The only problem with KVMing it was that you'd need to run ADB Reset whenever switching to another Mac (you'd need an expensive KVM with KBD/Mouse emulators onboard to get around that simply fixed prob.) to get the "ADB" devices (mostly the mouse) to perform w/o flakiness.


I didn't scour their site for info, I doubt they still produce it, but they might be as helpful to you as they were to me if you were to ask one of their engineers VERY nicely. I think it must be a much bigger company now than it was back in the day, but it might be worth a shot to ask for any old ADB info (maybe even a lil' source code that they've got on floppy somewhere) they don't intend to use anymore. [;)] ]'>



yea some pics would be cool

also you have to consider that 90% of that is debug, right now the i/o hardware consists of 1 ic and 2 decoupling caps, everything is being handled with software (and this is more about making it not having one)

today I have it constantly locking on to 00111100 (device 3 mouse, talk send, register 0 user input) which is the first command directly after the init sequence, so i am missing 8 polls

so I need to shorten my startup sequence (or settle and hardcode the timing data)



Well-known member
Probably this goes in the "I'm building my own... Stupid" category but I can attest that the old adapters from Omniview called the Omniview PS/2 MAC Adapter work very well.

I use 3 of them to hook my B&W G3's and Beige G3's to my Compaq 8 port PS2 KVM.. That way I have a ps/2 PC keyboard and a Microsoft Optical Wheel Mouse controlling the mass of machines under my desk. The newer version of the adapter even supports right click in OS9 which was EXTREMELY strange to notice happen for the first time.

Back in the day when I was developing what would later become part of the Nintendo Wii controller(1995) technology I had an ADB Gravis gamepad with some killy clips off of it and interfaced to the free space joystick. I don't think anything like this free space mouse that was working on my bench was ever released though mainstream. The big thing though is it is exactly the same method you are doing which is great. They used a PIC microcontroller. During debugging I used a small app that sniffed the ADB stream directly in software so I did a LOT of poking around in that data long ago.. Probably not much help now, but it sounds like you are definitely in the right direction.

Good luck!



Well (thanks btw) ADB has not changed since you have used it, and I very basicly deal with pic's, to the point where I can understand whats going on and transpose it to tools I am more familiar with, I just like atmel better, microchip never fails to piss me off though their products are outstanding (their doc's are ass backwards)

so any notes you may have are most welcome



. . . the old adapters from Omniview called the Omniview PS/2 MAC Adapter work very well.
YUP! I got mine back from the rugger's setup and I now use it with a KVM to switch between HP_Mini/22"1080p and any three other Macs. The 466DA is a PITA about using anything switched except the video, but the ADB Macs just love the wireless KBD/Mouse and the 1080p centers/renders whatever the old macs throw at it (@60Hz) to fill the screen top to bottom at the proper aspect ratio.

When I was looking at doing multiple KBD Hacking, my approach was to use a standard KBD switch matrix output as the input for EPROMs translation to the Matrix inputs for several different KBD controllers attached to the different systems and acting as those "emulators" missing from my current KVMs.

That ought to be easy to do over serial with the new PIC toys available.