Jump to content
anthon

ADB Busboy: Adapter for USB peripherals over ADB

Recommended Posts

ADB Busboy 250


 
I have developed an adapter for using USB keyboards and mice over ADB. View a video demonstration of the prototype below. It is powered by the ADB bus and hosts USB keyboards, mice, and hubs. The production version will have an integrated hub with two ports (one keyboard, one mouse).

 

The prototype is functional, but there is a lot of work left to do. Designing the PCB, implementing some additional firmware features I have planned, designing an enclosure, implementing a test suite, etc. Expecting to be able to ship them in 1Q 2017.
 
Demonstration video

 

Prototype Demo Snapshot

 

Edited by anthon

Share this post


Link to post
Share on other sites

There's a microcontroller with a hardware accelerated USB host function. There are a couple transistors for interfacing the microcontroller to the ADB bus. And several supporting components: led, button, voltage regulator, capacitors, resistors, etc. The software running on the microcontroller presents itself on the ADB bus as both a keyboard and a mouse. When input is received from a USB peripheral, it is converted to ADB format and transmitted to the host computer.

 

I haven't decided whether to open source it yet. I will be selling them. That doesn't preclude open source, but I want to at least get some produced and ready to go before I make that decision.

 

I will probably regret commenting on price at this early stage, but I'm guessing somewhere in the $40 ballpark. That's for a bare PCB without an enclosure. The enclosure will be an optional add-on. Price for the enclosure will depend on the price I can get for low (tiny) volume CNC machining services. Probably around $10 to $15.

Share this post


Link to post
Share on other sites

This might sound like a silly question, but this adapter would support soft power, yes?

 

Well...if you could assign a key/key combination on a USB keyboard for soft power, that is.

Share this post


Link to post
Share on other sites

Soft power will not be possible from the keyboard. Instead the adapter will have a button on it to provide that function.

 

The power button can't be mapped to the keyboard because we can't detect USB keypresses without the ADB bus power to power the keyboard with.

Share this post


Link to post
Share on other sites

How is it with third party wireless stuff?

 

This brings up one of the things I mentioned above about additional firmware features. The present software supports "boot mode" keyboard and mouse hid protocols. Basic peripherals generally only implement the boot mode and work perfectly with the adapter. Fancy devices, such as gaming mice, wireless mice, nkro keyboards, etc. often have additional hid descriptors that are different than the boot mode descriptors. I do plan to support most of these devices.

 

For a quick test I tried out a 2.4 GHz wireless mouse with dongle. Vertical mouse movement worked, but horizontal movement didn't. I think it's because my firmware chose to use the wrong hid endpoint. I'll add this to my list for implementation and testing.

 

All this assumes that the device presents itself as a USB HID device. If we're talking bluetooth, then that's different. It won't work with bluetooth devices. Unless you have a bluetooth HID proxy dongle. But I don't think those are easy to find these days.

Share this post


Link to post
Share on other sites

I recognize that this has mostly been done before, but none of those efforts have resulted in an off-the-shelf solution. My intention is to provide a product that people who want this functionality can actually purchase.

Share this post


Link to post
Share on other sites

I love what you're doing, and yes- I think you should consider keeping it closed source. Your time and effort are worth something.

 

 

This might sound like a silly question, but this adapter would support soft power, yes?

 

Well...if you could assign a key/key combination on a USB keyboard for soft power, that is.

For reference, the power key on typical ADB keyboards is not "soft"; it is directly wired to the PSU through a dedicated pin. This is why you can't simply map a key to it via the adapter without a pre-existing power source. If you were to create a mechanism to map a key to power, it would require a battery and much more support logic (More $$$ to make too). The simplest solution, as Anthon has said, would be a basic hardware button in the appliance itself. Edited by Floofies

Share this post


Link to post
Share on other sites

So I have a KVM with a USB port on it and a WGS95 in a rack.

With this I could convert the ADB on the machine to USB for the KVM so that the one console drawer I manage all my servers from can also interact with the mac as well?

Share this post


Link to post
Share on other sites

Yes! ADB Busboy supports hotplugging the USB peripherals and up to 5 hubs (total, whether nested or not), so the KVM switch would work with it no problem. (Every KVM I have seen uses a hub so that only one USB cable goes to each computer. So in this case, there would be two hubs, the one integrated in the ADB Busboy and the one in the KVM.)

Share this post


Link to post
Share on other sites

Hi Anthon,

 

This is interestng. I may very well buy one or two from you at USD50 apiece.

Are you familiar with the Kensington Mouse-in-a-box (#64475)? It has a USB-ADB connector that allows me to plug said USB-mouse into an ADB port. I'm told that it only works with this mouse though.

 

I have 2 questions:

1. Will it need a driver (INIT/CDEV)?

2. If so, will it only work with Mac OS 8 onwards (on account of the need for USB drivers?)

 

Keep up the good work,

aa

 

Share this post


Link to post
Share on other sites

My understanding is that the Kensington mouse had both USB and ADB electronics inside, and switched between them depending on what it was connected to. The intelligence was in the mouse, not the adapter.

 

ADB Busboy will work without drivers, and will work on all system software that uses ADB, all the way back to the Apple IIgs.

Share this post


Link to post
Share on other sites

I love what you're doing, and yes- I think you should consider keeping it closed source. Your time and effort are worth something.

No one said you can't make money off of open source.

Share this post


Link to post
Share on other sites

peafour asked about bi-directional functionality on Reddit. It's something that I could add. It would increase the price because it requires additional hardware components. It's looking like it would be somewhere around $8 price increase. For people who would use it in both directions, it would be a cost savings to have it in a single device. But it would make it more expensive for people who only use it in one direction.

 

Opinions?

Share this post


Link to post
Share on other sites

I recognize that this has mostly been done before, but none of those efforts have resulted in an off-the-shelf solution. My intention is to provide a product that people who want this functionality can actually purchase.

 

And I am all for that. I hope it works out great. Trust me :)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×