CREU Project Blog


Multitouch LED Display PART III (SUCCESS WITH CONTROLLING LED MATRIX)
October 8, 2007, 6:14 am
Filed under: download, LED Display

Although we have not yet been able to get any useful input from the LED.  We bought some LED Marix Display wired them up to the Arduino Stamp.  We wrote some firmware code in C and a demo app in Processing.  I was hoping to quickly draw a schematic of how the LED Matrix is wired, but I didn’t get to that yet.  Hopefully it will be up in the near future.  Below is a picture of the 8×8 LED Matrix setup.  Each row of the matrix is controlled by a digital I/O pin on the Arduino Stamp.  However there is not enough digital I/O on the Arduino Stamp to control the columns, we use a shift register to output data to control the columns on the matrix.

leddisplay.jpg

Each circle on the java applet corresponds to a single LED on the display.  

Below is also a youtube demonstration of the setup

 For those of you that are interested here is the Firmware Source Code in an Arduino Project and here is the Processing Source Code for the GUI as an Eclipse project.

**Note that the RxTxLib included in the GUI source code is strictly for MacOSX 

Advertisements


Multitouch LED Display PART II (SIMPLE BIDIRECTIONAL LED TEST)
September 27, 2007, 4:12 am
Filed under: download, Electronics, LED Display, Multitouch

We basically set up our bi-directional LED the circuit according to diagram shown in the last last post.  We did followed all the instruction stated the paper on the implementation of a simple bidirectional LED demo, but it just doesn’t work!!   There are I think two possibilities why this is not working.  

  1. We did something seriously wrong
  2. Something is wrong with the microcontroller

At the current moment, I really don’t know how to fix this but here is a picture of the setup followed by the source code 

bidirectionalled.jpg


#define digi_fwd 2
#define digi_rev 3
void setup(){
  Serial.begin(9600);
  Serial.println("Arduino");
  pinMode(digi_fwd, OUTPUT);
  pinMode(digi_rev, OUTPUT);
}

void loop(){
  //Emitting
  digitalWrite(digi_fwd, HIGH);
  digitalWrite(digi_rev, LOW);

//Reverse Bias
  digitalWrite(digi_fwd, LOW);
  digitalWrite(digi_rev, HIGH);

  //Discharge
  digitalWrite(digi_rev, LOW);
  pinMode(digi_rev, INPUT);

  count = 0;

  while(digitalRead(digi_rev)){
    count++;
  }

  Serial.println(count, DEC);
  pinMode(digi_rev, OUTPUT);
}

The Arduino Sketch can be downloaded here



Proposal
September 10, 2007, 2:55 am
Filed under: download, Proposal

A NOVEL MULTIMEDIA INPUT DEVICE: THE ELECTRO-SPHERE

Participants

Students: Jie Jin, Yen-Wen Liu, Peter Foon-Wang Pong
Faculty Advisor: Prof. Anind Dey

Project Description

Motivated by a frustration with the limitations of conventional electronic input devices (such as the ubiquitous mouse and keyboard), we propose a novel input device, the “Electro-sphere”, that allows users to input and control data through the use of a touch-sensitive sphere. This sphere takes the shape of a stress ball padded with force sensitive resistors underneath the surface, allowing users to manipulate data directly with their hands. This input device will extend the workspace environment to three dimensions, and will allow for intuitive and immediate data manipulation.

Specific Questions/Hypotheses

In this project, we will explore the usability and practicality of the “Electro-sphere” as a novel input device. Computer input devices on the market today only allow users to move on a 2-d plane on a screen. We would like to extend this limited interaction to a 3-dimensional interface. We hypothesize that the proposed device will greatly decrease the constraints placed on usability that conventional input devices do. We propose that the 3-dimensionality of the sphere is ideal for this purpose – it will allow for direct, perceptive, and user-friendly data management and manipulation.

The electro-sphere will allow users to use it both as an 3-dimensional modeling agent and as an intuitive navigational device. Both functions are served ideally by the device, whose shape is ergonomic in its ability to be easily manipulated (in both orientation and position). Other common 3-dimensional input devices (such as force- and movement-sensitive gloves or camera-aided tracking systems which follows one’s movements) are either unwieldy and overly constraining or exorbitantly expensive to implement (computationally and materially). The electro-sphere is an intuitive and elegant solution that is also low-cost and easy to implement.

We propose that the electro-sphere has potential applications in 3-d modeling, electronic art and media authoring, entertainment (as pioneered by the Wii controller), and scientific/mathematical modeling. We will explore some of these potential applications in our software visualizations and demonstrations.

Methods

On the hardware level, we will build the device by placing force-sensitive resistors underneath the surface of the sphere. These sensors, commonly used in cell phone touch pads and touch sensitive applications, will send analog signals to the microcontroller placed further inside the sphere. Other sensors, including the accelerometer and the digital gyroscope placed in the core of the sphere, will allow us to sense the movement and angular velocity of the sphere, letting us interpolate its position and orientation. These sensors will also communicate with the microcontrollers, which will then relay signals to the computer via the Bluetooth module installed underneath the sensors. Finally, we will install a pager motor, which will provide feedback to the user in the form of small vibrations.

On the software level, we will develop a library of APIs (Application Programming Interfaces) for the device. This will allow other programmers to add new functionalities to our software packages without the necessity to know the specific implementation details.

One of the anticipated problem would be filtering We will also create several visualization and demonstration software packages in order to truly test the functionality and usability of the device. These will include plug-ins to Google Earth, and popular 3-d modeling software such as (3D studio and Maya). We will also create software packages that allow users to truly experience the potential of the sphere to manipulate multimedia data.

The following diagram illustrates the hardware design implementation:

References

Hinckley, K, “Interaction and modeling techniques for desktop two-handed input.” Handbook of Human-Computer Interaction. 2006. Lawrence Erlbaum & Associates.

Marshall, Damien, et al. ” From Chasing Dots to Reading Minds: The Past, Present, and Future of Video Game Interaction.” ACM Xrds13-2 (2004) 01 May 2007
.

Motoyuki Akamatsu, et al. “Movement characteristics using a mouse with tactile and force feedback.” International Journal of Human-Computer Studies, v.45 n.4, p.483-493, Oct. 1996.

Steed, Anthony, et al. “Interaction between Users of Immersion Projection Technology Systems.” 2005.HCI, Las Vegas.

Vogel, Daniel. “Shift: a technique for operating pen-based interfaces using touch.” ACM Press (2007) 657 – 666. 02 May 2007
.

Zeleznik, R., et al. “Two pointer input for 3D interaction.” ACM/SIGGRAPH
Symposium on Interactive 3D Graphics, 1997, 115-120.

Impact on CREU

This project will further the goal of the CREU program (which is, as the website states, to “increase the numbers of women and minorities who continue on to graduate school in computer science and engineering.”) in that it will give all the members involved a great deal of research experience, and will further their academic goals. It will spark (and has sparked) a great deal of interest in the multi-disciplinary fields of computer science, electrical and computer engineering, human computer interaction, and electronic design. Finally, it will help its members gain experience working both collaboratively and independently as part of a team, in synthesizing different skill sets and technical abilities in order to create one cohesive product.

Student Activity and Responsibility

It will be the student researchers’ responsibility to maintain proper documentation of progress on the project, both in the form of a written log and an up-to-date website. Students will also meet weekly with the advisor to discuss our group’s progress and further necessary collaborative work. Each student, having worked in different disciplines and research areas (such as HCI, robotics, machine learning), will work collaboratively and effectively in bringing these varied but necessary skill sets together.

Faculty Activity and Responsibility

It will be the responsibility of the faculty mentor to provide technical assistance, as well as general guidance on the project.

Timeline

I Final Design Sept 2007

We will have finished our final design for the physical layout of the “Electro-Sphere” and ordered the appropriate supplies. The design will be laid out in SolidWorks and will be subjected to small modifications.

II Hardware Portion Nov 2007

The hardware itself is one of the most difficult parts that we anticipate in the project. It might be subject to change. However, we plan to have it completed by December at the latest. The device will be fully assembled – equipped with a microcontroller and connected to the force sensing resistors. The microcontroller will be programmed to take simple commands and to output sensory data to the computer via Bluetooth.

III Software Portion Feb 2008

The software portion will be done in Processing. We will create a GUI that displays various visualizations on a screen, allowing users to manipulate objects and data using the device.

IV Testing April 2008

The project should be completed by April and we plan to refine our design and prepare for the poster presentation in Meetings of the Minds in May.

Budget

Microcontroller – Arduino Stamp $35
Serial to USB module $20
Bluetooth Module $60
Force Sensing Resistors (40) $200
Accelerometer and Gyroscope $100
Materials for physical structure $50
Power Source $20
Total : $485

A PDF version of the proposal can be downloaded here!