My Weekly Journal
Home About Me My Mentors The Research Life In Pittsburgh My Journal Final Project
Week 1 (6/23/09 - 7/10/09) - My first week started off immediately after I arrived in Pittsburgh. After I met with my two professors about my interests in EE, CS, and HCI, I read many useful background HCI papers to familiarize myself with the research path I am taking of rapidly prototyping physical user interfaces. In the process of reading, I am trying to determine what project would be a useful contribution to the HCI community. As a side project that might be useful in the future, I started replicating some work done by a Johnny Chung Lee, a previous PhD student at CMU. The Wiimote whiteboard project is a cool application done by a Wiimote which gives users the ability to use a "pen" consisting of an IR led to write on their computer screen or a projected surface. The finished pen is shown below.
My first week, however, consisted of two weeks. I had two trips to California at the beginning of the summer including the Google Scholar's retreat and a family get together. I happened to meet another CMU intern while at Google, and have someone to hang out with.
Holding the pen with button switch
Violet IR led is on
Week 2 (7/13/09 - 7/18/09) - This week was still more background investigation. I reviewed my two professor's previous work with BOXES (Building Objects for eXploring Executable Sketches), by understanding how the system was working in the first place. I read more papers in my attempt to understand what has already been contributed in this field. More time was spent this week trying to figure out exactly what my contribution would be. I knew that it would have something to do with having various devices communicating via "Wizard of Oz", meaning that the function would be there but the implementation wouldn't consist of typical electrical wirings. I started investigating more into computer vision and various software applications that allow for blob detection.
Week 3 (7/20/09 - 7/24/09) - This week is still dedicated to finding myself a research project. I spent a very large part of my day Monday simply brainstorming contributions, and playing around with the blob detection software called Eyepatch. At this point, I discussed what my idea was and it is still primitive. However, it is at the stage now where I can finally start writing my proposal and do some other background hands on work with RFID technology as well as IR camera work. I read papers on RFID technology to help give me ideas. I have wired up and starting experimenting with an RFID reader, and the BOXES hardware/software platform. I am now initiating the writing process of my Proposal.
I had a more social week this week. I saw the Dark Knight outdoors with another intern, and went to a Gallery crawl with a group of interns. We explored downtown, took dancing lessons for free, and went out to dinner. It was such a great time! On that Saturday some interns and I attended the Pittsburgh vintage grand prix where hundreds of old vintage cars were on display.
Week 4 (7/27/09 - 7/31/09) - The emphasis of this week was on my proposal. It is still in rough draft form because it is not quite finished. I am planning on running some tests on batteries first, and then I will go ahead and finish the proposal. It will then be placed on the web. I have done some major brainstorming for implementing my project, which has been the reason for the stall in my proposal. However, my project is starting to feel very concrete. I have started working with the Arduino Mini Pro board in order to implement my processor, which will be hooked to PUI inputs. I have specifically been working with how to put the board to sleep, for example, to save power because these will be running portably.
This week I saw Green Day in concert at the Mellon Arena! The very next day my mom came to visit me for a long weekend. On Saturday, we did a segway tour and saw Harry Potter 5 in IMAX. On Sunday, we went on a ducky tour of Pittsburgh, which was a lot of fun.
Week 5 - This week was focused on getting the appropriate power needed for my portable boards, but also trying to get to a more dependable size. I first tested various small batteries on the board with an IR LED attached sending 80 bits with a period of 20us. This killed the batteries immediately, so we decided to power down the board for 500ms and then send 80 bits. This was very good as it increased the battery lifetime from minutes to hours. On a side note, my Arduino board can now track both discrete parts (buttons, switches) and variable parts (knobs, sliders). This was a very productive week.
In addition, I went with two other interns and saw Harry Potter 5 in IMAX.
Week 6 (8/3/09 - 8/7/09) - This week was about getting the Infrared communication working between two Arduino boards. I learned about how modulation works and as a result could start implementing this. I had the receiver part successfully read the LED signal, but still had to work on getting the IR output onto the computer screen via serial communication. The purpose of this is to have various parts be able to wirelessly communicate their status to the computer. In order to do this, I had to learn about implementing PWM on the Arduino board. Next week's goal will be to have the computer accurately read the message.
In addition, I visited an old friend at the Hofbräuhaus Pittsburgh. On Thursday of this week, I got together with someone I had met at least years CRA-W session for Parallel and Distributed Computing in Providence, RI. This was when I discovered that it is really a small world and some neat things can happen when browsing Facebook. My fiancé flew in on Friday to visit me. On Saturday, we visited the aviary, did another ducky tour, and saw an IMAX film at the Carnegie Science Center. On Sunday, we went to a Pirates game and browsed the city including Point State Park which is a very beautiful park on the river.
Week 7 (8/10/09 - 8/14/09) - This week was a struggle in how to accurately read a very fast signal in the in the line of microseconds and send the information serially to the computer. However, I eventually debugged the problem and it came down to configuring another timer to accurately read the 1's and 0's coming in from the IR receiver. This allowed me to have both buttons and sliders communicate their status accurately. I then started working on the software portion of the project. Once I got past compatibility issues with my computer, I started working on how the serial communication would work between the IR receiver and the software itself. In addition, I started and completed the IRB paperwork for a study I plan to run in about 3 weeks.
I had reservations for dinner this week on Mt. Washington, which provided a stellar view of Pittsburgh.
Week 8 (8/17/09 - 8/21/09) - I finally made successful communication between the Arduino board and the Java program. After much exploration through the software itself, and inquiring about it with my mentors I started tackling the changes. I first created a new version of the package and started making a lot of changes. The newer version talks with my arduino and allows new devices to be added by people or by IR communication. I finished the week off by starting work on getting the software to work with sliders so computer events such as scrolling and dragging could be implemented.
Week 9 (8/24/09 - 8/28/09) - This week was bout mapping the physical slider to the computer slider for both horizontal and vertical directions. This would allow the user to click and drag, or move and click. However, I was running into issues because the speed from transmitter to receiver was really slow. In addition, I brainstormed how to do a real world slider that can be customizable. Eventually, I found out my firmware was causing the huge delays from sender to receiver and I made the fix.
I started attending HCII Process and Theory, which is a beginning Ph.D. class in the HCII curriculum at CMU. I will be sitting until I leave for Oregon.
Week 10 (8/31/09 - 9/04/09) - I added a check sum functionality from sender to receiver to make sure bits don't get corrupted. In my GUI, classified button events and slider events separately to make it easier for the user. In addition, I started working on the paper. To prepare for evaluation, I have started buying supplies that i want to use for my study like rubber cement pushpins and foil that people can use to build their customizable prototypes. I decided to use nichrome wire as a slider mechanism because of it's linear resistance. I built my circuit board which is in the process of being printed.
For labor day weekend, I flew to New York City and visited a friend from college!
Week 11 (9/08/09 - 9/11/09) - This week, my mentor and I realized that paper painted with wire clue would be a much better linear resistor and slider people can use. This can be cut in any shape or size and can be mapped to the computer. I had to assemble the programmer I will use to program my circuit boards that are still in the process of being made and shipped. The homemade slider works on the computer which is exciting. I put in a lot more work into the paper this week. At the end of the week, I got the boards programmed.
Week 12 (9/14/09 - 9/18/09) - This week, I was soldering my four boards, and one died in the process :( The other three are alive and working like they should be after many exchanges of parts, testing, and debugging. I am confident that for the most part when I leave my software and hardware are bug free. I bought some switches at Radio Shack and plan to add them on and try to get the study up and running while back in Oregon.