Chronos Flying Mouse

From Texas Instruments Embedded Processors Wiki

Jump to: navigation, search
Translate this page to   

Chronos flying mouse main.png

Contents

Chronos flying mouse icon.png
The Chronos Flying Mouse


You've never seen a mouse like this before!

This innovative interface is designed to be a highly accurate, intuitive computer-input device. It can act as a high-precision mouse with unique snap-to-click technology, a fully functioning, accurate joystick, a gaming wheel, or a mouse-based joystick for applications that do not support true joystick input. With a wide variety of customization options, the Chronos Flying Mouse offers the abilities of several computer input devices without the position constraints of mounted hardware.

The primary mouse mode of the Chronos Flying Mouse enables the user to fluently control a cursor from anywhere in the room, and to click by snapping. This is ideal for presentations featuring interactive content, such as program demonstrations or interactive PowerPoint presentations with links. This also provides unique opportunities for computer-television interconnection, allowing you to watch many online video sites, such as Hulu and YouTube from the comfort of your living room couch.

The several joystick modes of the Chronos also allow for comfortable gaming using a wide variety of household objects. Imagine picking up a plate and using it as a steering wheel - with the Chronos Flying Mouse, you can do it! This mode allows existing video games to interact with the Chronos without special programming, and allows the Chronos to interact with a wide variety of applications.





Chronos Flying Mouse Features

Chronos flying mouse mode.png

4 Modes

Snap-to-Click

Professional User Interface

Chronos flying mouse settings.png

Fully customizable settings

Ready to Use


Functional Description

The accelerometer data is passed through an exponential smoothing filter to remove unwanted high frequency components from causing jitter in the cursor position due to noise or other high frequency data. A Chebyshev high-pass filter is used to identify snaps, or other sharp movements, in order to click. We then calculate the Euclidean angles from the acceleration from free-fall vector returned, and apply the various settings to produce the appropriate mouse movement or joystick position. Meanwhile, we constantly calculate the last stable mouse position, so that when a click from the high frequency data registers, we rewind the mouse to its stable position for the click. This allows for usable mouse clicks despite the movement interference.


Design Team

Special Thanks to Sam McCaskill for the idea to use snapping rather than quick wrist movements as a source of high frequency data.


Inspiration

We were inspired to create this application while experiencing difficulty watching Hulu without micromanaging the computer. A large amount of computer technology requires the user to be tied to their mouse and keyboard, which in many instances is a very restrictive requirement. We were inspired to make a joystick mode when thinking about the success of the Wii, and the possibilities for the Chronos if it could have accelerometer gaming input without even requiring a user to hold a controller.


Download and Setup

EZ430-Chronos.png

Chronos Flying Mouse Setup

  1. If you don't have the Visual Studio 2010 C++ Runtime, download it from Microsoft first
  2. Download the Chronos Flying Mouse Installer
  3. Run the self extracting archive, and extract the contents to a directory created for the Chronos Flying Mouse
    • Note:the installer will not create its own folder inside this directory.
    • Note:If you use a system location, such as the Program Files folder, make sure to enable full user control of the folder you are installing to, or the installer will abort, and the application will not be able to read settings. A non system location, such as My Documents\ChronosMouse or C:\Programs\ChronosMouse will work fine.
  4. Run flyingmouse.exe, put your Chronos in ACC mode, calibrate your watch, and you're ready to go!

PPJoy Joystick Driver Setup

  1. Download PPJoy from http://ppjoy.blogspot.com/ (find the latest release post)
  2. If you are running a 64-bit version of Windows, you'll need to turn test driver signing mode on. You can do this by running an administrative command prompt: type cmd.exe into the Start Menu search bar, then right click the result and choose "Run as Administrator". From the command prompt, run 'bcdedit -set testsigning on'
  3. Install PPJoy
  4. Run Configure Joysticks from the PPJoy Joystick Driver folder in the Start Menu
  5. Create a new virtual joystick, and add a mapping to it for 2 analog axes [0,1], 1 digital button [0], and no POV hats.


Usage Applications

The team is formed by three TI Co-ops located in Houston. The Chronos Flying Mouse project is initially designed to compete in the TI Co-op contest during summer 2010 but also has a wide appeal for many computer users. Possible uses include wireless presentation control, video gaming, and other daily wireless computing.

Have you ever dreamed about playing joy stick games wirelessly like a Wii? Operating your desktop from a distance? Or simply controlling your presentation without a remote? Our Flying Mouse project could help! Many applications already work with the Chronos Flying Mouse through its mouse or DirectX Joystick interface. If these don't suit your application's needs, feel free to contact the project design team for possible integration!

Source Code

Leave a Comment

Comments

Comments on Chronos Flying Mouse


Contents

Jack Toole said ...

Feel free to leave a comment or question!

--Jack Toole 02:13, 2 August 2010 (CDT)

Vegan said ...

Unable to download 'Chronos Flying Mouse Installer'. Is requesting for authentication.

--Vegan 04:14, 2 August 2010 (CDT)

Jack Toole said ...

Should be fixed now. Thanks

--Jack Toole 09:36, 2 August 2010 (CDT)

Vegan said ...

Yes. Thanks for your action. Tried using it, Looks super cool. Hope to see more from the team. Best Wishes :)

--Vegan 12:24, 2 August 2010 (CDT)

Jack Toole said ...

Thanks! I'm glad you like it

--Jack Toole 15:05, 2 August 2010 (CDT)

Amstark said ...

Nice work guys. Works much better than the mouse control capability delivered with the Chronos kit. The snap to click feature was a very good idea.

The one thing that wasn't clear to me... what does the "deadzone" control do? Is it documented somewhere?

--Amstark 13:57, 3 August 2010 (CDT)

Jack Toole said ...

Thanks! I'll try to work on more documentation - with the competition, we've been focusing on features first. Deadzone control affects how much movement is necessary for the program to actually move the mouse or joystick. If you turn deadzone control to 0 (all the way left) and hold your hand still, you'll see the mouse move up and down slightly over time. These are movements that are too slow to be filtered with the low pass filter, and instead are removed with reducing the movement magnitude by an amount, which we refer to as the deadzone. Too small of a deadzone will result in the cursor jittering when you hold your hand still, because of accelerometer noise. Too large a deadzone will make the mouse feel less responsive, since slower movements will be reduced significantly. If your hand is shaky, a higher deadzone can help maintaining the mouse position. If your hand is unnaturally still, a lower deadzone will allow for finer movement control.

--Jack Toole 14:13, 3 August 2010 (CDT)

Jack Toole said ...

Thanks everyone for your votes! We won 2nd place in the Co-Op Design Challenge! There probably won't be any updates for a week as I finish up my summer co-op with TI, but after that I intend to add some functionality from time to time. If there's anything that could be improved, let me know!

--Jack Toole 10:14, 6 August 2010 (CDT)

Reisuke said ...

Where can I get one? I live in Greece, so it would be nice to know it'll deliver here. Also, how much?

--wat 09:10, 7 August 2010 (CDT)

Jack Toole said ...

The Chronos watch is about 50 US dollars, without tax and shipping. Current information about availability can be found on the Chronos wiki page: http://processors.wiki.ti.com/index.php/EZ430-Chronos

Currently, they're in stock at Digikey and Mouser Electronics, although Digikey will add a 30 US dollar shipping fee to Greece if your order is under 100 dollars (but free for orders $100 and up, so if you can find something else worth buying it might be worth it): http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=296-25449-ND

Mouser also can ship to Greece for a $30 fee: http://www.mouser.com/Search/Refine.aspx?Keyword=chronos

Since you're in Europe, the links above are for the 868 MHz version (legal in Europe, North American customers should get the 915 Mhz version)

The Chronos Flying Mouse software itself is free and can be downloaded above.

And thanks for your interest!

EDIT: The TI eStore looks to be cheaper on shipping, but is rather chronically out of stock, although to save money you could still preorder there. http://www.ti-estore.com/Merchant2/merchant.mvc?Screen=PROD&Product_Code=EZ430-Chronos-868

--Jack Toole 17:51, 7 August 2010 (CDT)

Jacques said ...

hello, can you give some more info about Boost,

where do i need to place it, for not having linker errors, how do i reference it inside of the project ? By the way, it is HUGE (32768 files) !

--Jacques 19:40, 7 August 2010 (CDT)

Jack Toole said ...

I have mine in C:\Program Files\Microsoft Visual Studio 10.0\VC\boost_1_43_0

You'll need to compile it first, which there are instructions for here: http://www.boost.org/doc/libs/1_43_0/more/getting_started/windows.html

I'll try to put up a precompiled lib of the program_options and headers as soon as I can (I can't get to my laptop at the moment) so that this is easier.

--Jack Toole 20:01, 7 August 2010 (CDT)

Jack Toole said ...

You can now install just the boost library use by the Chronos Flying Mouse. See the source code section for a link and more details.

--Jack Toole 22:34, 7 August 2010 (CDT)

Cocochan said ...

cool..but i wonder that how long the battery can last? is it that anyway to save battery power. i read the data sheet that if contuneous run acc only can last one month.

--Cocochan 03:47, 27 September 2010 (CDT)

Jolie.john said ...

where could i find a detailed documentation for flying chronos mouse ? and could you please tell me about the filter equation used in the code , how is it done ? last , i really can't get what is the calibration for ? But great project :D Thank you :)

--Jolie.john 19:42, 14 April 2012 (CDT)

Robert-debian said ...

HI, the video looks great and I would like to use the ez430-sensors for a mass spectrometry prototype control. However there is a little problem: Flying Mouse reports "RF point simpliciTI error". I'm using http://sourceforge.net/projects/ez430chronos/ firmware v2.1

--Robert-debian 18:38, 14 November 2012 (CST)

Bwn said ...

Robert-debian- I got it to work in Windows 7 by recompiling in VS2010 and changing the com_port value in com.cpp to whatever COM port the eZ430-ChronosAP appears as in your Device Manager (in the Control Panel)

-- 20:13, 21 April 2013 (CDT)

Eriksie said ...

I restarted my notebook and then plug in my RF point and then started up flyingmouse.exe but it still says that there was a calibration error. Chronos kit can find the RF point but flyingmouse can't. What can I do now?

--Eriksie 14:10, 13 May 2013 (CDT)

Personal tools
Namespaces
Variants
Actions
Navigation
Print/export
Toolbox