how to build a computer mouse?

Does anybody know what's needed to design a 1 button USB mouse from scratch?

Basically, I want to make a button that I can plug into a USB port of a computer, and when I click the button it would have the same effect as clicking the left button on a mouse.

I've been googling this and can't some up with anything.

much thanks!

Reply to
panfilero
Loading thread data ...

(1) Take apart a mouse and mount it in a one-button plastic case ;-)

(2) Do what I did a gezillion years ago, when I had need for a switch to run several PC's on one keyboard (TTL and green-screen monitors in those days :-)... make a cable extender and study the patterns as you hit keys. ...Jim Thompson

--
| James E.Thompson, CTO                            |    mens     |
| Analog Innovations, Inc.                         |     et      |
| Analog/Mixed-Signal ASIC's and Discrete Systems  |    manus    |
| Phoenix, Arizona  85048    Skype: Contacts Only  |             |
| Voice:(480)460-2350  Fax: Available upon request |  Brass Rat  |
| E-mail Icon at http://www.analog-innovations.com |    1962     |

               I can see November from my house :-)
Reply to
Jim Thompson

We have customers (other than those for PS3) doing exactly that, with the HWB button. Source code for USB mouse device is available using the Atmel Stack as well as the LUFA (myUSB) stack.

formatting link
e=3DSTRK:MESELX:IT

Reply to
linnix

Look for a USB mouse reference design.

Eg.

formatting link

Reply to
Spehro Pefhany

C...

Actually, we have it as a keyboard (via SPI) emulating a mouse as well. It's a composite keyboard/mouse device. The left button is the LSB of the first byte. So, after the setup and bookkeeping stuffs:

if (Is_device_enumerated() && Is_usb_report_ready()) { Usb_select_endpoint(EP_MOUSE_IN); if (Is_usb_write_enabled()) { Usb_set_report_not_ready(); if(PIND & (1

Reply to
linnix

For a one off it will be many orders of magnitude cheaper to box in a dirt cheap USB mouse so that you can only press the left button.

If you need to ask how you don't stand an earthly chance of doing it.

Regards, Martin Brown

Reply to
Martin Brown

Best answere yet.

It is often surprising the complicated answers that are proposed to enquirers who obviously would not be able to implement without step by step, wire by wire, instructions.

--
John G
Reply to
John G

..

The OP never said he is making one only. Perhaps he is making millions. We don't want him to destroy millions of good mice. Dead mice (motionless) are very easy and very cheap to make (by us, of course). We can do it for 99 cents each.

Reply to
linnix

Buy a USB keyboard and hack it. Throw away everything but the chip & its support electronics, and the two wires that go to the "enter" key. Box it up. Done.

In most dialog boxes and apps, whatever button is highlighted gets selected when hitting "enter".

Cheers! Rich

Reply to
Rich Grise

Yes, we have a programmable USB keyboard.

That's not the same. For example, you can position the cursor at the scroll bar arrow and use the mouse click to scroll. The trick is click without moving the mouse and you don't want to "enter" either.

Reply to
linnix

Search for USB slave uC ICs. Mfrs usually include a mouse function design and software as a free customer service. You can strip it down to what you need.

Reply to
Richard Henry

Logitech G15, G25.

My G15 has my company logo on it, butLogitech does not have Linux drivers, so it got hacked over the years, and now there are dedicated Linux applets to utilize it for various things, up to and including live video.

At 143x60, however, it ain't gonna be that great on video.

It gets written to through a standard pipe. Write a script to pump the pipe, and you can scroll anything across it once you get to know the lag/ persistence level. Pretty cool.

The keys are ALL backlit, and the G25 even allows multiple colors.

Pretty cool keyboard, and I have seen a lot of 'em.

I still have my click switch Tandy keyboard, and even one from that great guys (can't remember the name)that have now gone defunct as well.

That and the BURG boot loader (properly working follow on of Grub2).

I have been making some pretty cool splash screens, icons, and timers, all resolutions, and a helper so that you can choose what splash resolution works best on your machine, then make your splash set-up with that baseline.

It even plays Fur Elise before it boots.

Reply to
TheGlimmerMan

Hey,I know! BUY a MOUSE and use that!

Reply to
TheQuickBrownFox

Scroll what? It's one button.

Thanks, Rich

Reply to
Rich Grise

Whatever the cursor is pointing to. It's just an example of difference between the "enter" key and "mouse click".

Reply to
linnix

Well, somebody else already gave the answer - use a mouse in a box. ;-)

Cheers! Rich

Reply to
Rich Grise

I think you will have to understand more and tell us what you want to do. Clicking a mouse button will not do anything untill you point to a button so just having a click on its own does not seem to get you anything. WOT'S Your Real Problem?

--
John G
Reply to
John G

This would be the best solution if you don't want to produce many of it. Even some hundreds of cheap $5 made in china mouses would be less expensive than building your own solution and it is no problem to use multiple mouses in Windows at once.

You'll need a good logic analyzer, multiple mouses and operating systems, and some years spare time to decipher the complex HID USB protocol with this concept :-)

--
Frank Buss, http://www.frank-buss.de
piano and more: http://www.youtube.com/user/frankbuss
Reply to
Frank Buss

Use a thumb ball mouse and remove the ball. DOH!

Reply to
StickThatInYourPipeAndSmokeIt

I built a shift register long enough to hold all the data. So, I'd guess you'd say I _did_ have a logic analyzer ;-) ...Jim Thompson

--
| James E.Thompson, CTO                            |    mens     |
| Analog Innovations, Inc.                         |     et      |
| Analog/Mixed-Signal ASIC's and Discrete Systems  |    manus    |
| Phoenix, Arizona  85048    Skype: Contacts Only  |             |
| Voice:(480)460-2350  Fax: Available upon request |  Brass Rat  |
| E-mail Icon at http://www.analog-innovations.com |    1962     |

               I can see November from my house :-)
Reply to
Jim Thompson

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.