Tag Archives: Katie Moore

Joystick Update

Continuation from Previous article.

The completed project

Final JoystickCloser look at housing

Unfortunately, my initial goal for this project could not be met, as I have continually run into structural integrity issues.  What remains however, it a large joystick that requires near full body motion to use, which is similar to my initial goal of creating a controller that allows the user to use their actual movements to navigate an environment.  As can be seen from the above image, the Fio v3 micro controller is wired to to the outer housing.  Inside each block is a potentiometer which in turn is glued to the dowel which is rotated by the joystick.  The base of the potentiometer is attached by two wires wrapped around screws to a metal bar.  This ensures that the base does not rotate, but only the top, so that it can more accurately measure the dowel rotation.

20140411_131718 20140411_131724

The above images show how the joystick rotates inside the housing.  Both the X and Y axis are free to rotate, allowing the joystick to move in a full circle.

The joystick takes the rotation data and determines which key is to be pressed for the given configuration.  The key press is sent over the Serial XBee connection to an Arduino Leonardo with an XBee Shield (Seen below), which is recognized by the computer as a keyboard and mouse.  The Leonardo is then attached to the computer running the virtual environment program.  Once attached the joystick is able to send data to the computer and navigate the environment.

20140411_132037

The code for this project can be found here.

Joystick Gaming Chair

The inspiration behind this project was to create an alternative controller to explore virtual environments, particularly to help increase the sense of immersion in that environment.  As an extended motivation, it can also be used by people who might not be able to easily use more traditional controllers, such as a keyboard and mouse, or a console controller.

This chair builds off of the work by SparkFun, and their design of a joystick, which implements two potentiometers to collect analog data about the rotation about X and Y axis.

Potentiometer

Using XBee Modules (seen below), the chair will be able to send the movement data over a wireless network to the main computer using a Fio micro controller and an XBee USB Dongle (Nickels for scale because no one ever uses them).

Fio MicroController20140207_18224920140207_182541

With this, the joystick housing for the chair still needs to be constructed.  It should look something like the following which is based on the joystick listed above:

Joystick-Chair-Dataflow

I have decided that a series of wood, screws, and springs would work best to modify an office chair into the joystick chair.

20140207_183809

This chair model was chosen for it’s simplicity and the fact that it was not already pre-made, so it would be easier to modify.  Below are all of the materials I have bought to construct the joystick.  A few springs and hooks should work to keep the chair upright when not in use.  As it seen in the left image, the chair’s base is is not attached yet, so a new base for the joystick will need to be creates, as well as a new place to attach the original base.

 

  Materials 1    20140207_181840

For wood I decided to go with Aspen for the planks (because it was cheap and the signs at Lowe’s said that it was good for furniture) and Popular wood (what ever that means) for the dowel, which will provide the actual stick for the joystick.  As you can see from the image below, the wood will need to be cut before it can be used.  Once the wood it cut I will need to print more components so that it will act like the joystick detailed above, as well as be able to use the potentiometers.

20140207_182815

For future, I will need to build the joystick housing and attach it to the chair.  I will also need to solder the components together where needed and finish programming the chair to work with the computer.

I will provide more updates once building begins.