Author Archive

RayMatic, an ambient interactive picture frame

Posted in 11. Project Final Reports on December 15, 2009 by ryun

0. RayMatic paper (CHI format) download PDF

1. Abstract
RayMatic is an interactive picure frame and ambient display that can be programmed to detect changes in the ambient environment and then communicate this information through corresponding facial expressions and gestures of a human image on screen. RayMatic also interacts more directly with users:  for example when the image on screen is tapped, RayMatic shifts into Setting mode and displays the current temperature and desired temperature range, so that they can be adjusted. Though still experimental, RayMatic is an interactive media art that, in a gentle but lively fashion, conveys its message and helps user to create a more comfortable, efficient, and elegant living environment.

2. Video Sketch (Turn the volume up!)

3. How RayMatic works
RayMatic consists of 3 parts: 3-1. Arduino with thermometer, 3-2. TinkerProxy and 3-3. Flash(main system)

3-1.Arduino with Thermometer – Arduino part is simple and obvious. I wired Thermometer(LM35DZ) to Auduino and analog read it. Code is available on #5

3-2. TinkerProxy – Making Arduino talk to Flash is a little tricky because there are a lot of issues of PC/Mac, Actionscript versions, and PC/Mac versions. I made them communicate each other for both PC and Mac. Here is the advice: If you are using PC, use “TinkerProxy”. If you are a Mac user, go for “SerProxy”. So, basic principle is this: TinkerProxy or SerProxy takes the value from serial port(connected to Arduino) through Network Proxy Servers. Then, Flash accesses to the socket and gets the data that generated by the Proxy. You can see detail information here:

3-3. Flash – This is the toughest part. I had to take videoes of myself(or it could have been someone else) for each state: Default, Comfortable, Hot, Cold, and touch. All the videos have to connected to each other very naturally because even small conflict can cause obvious awardness. So, when I take video of each state, I had to remember the exact facial expression and all my body position from the default state. To do this, I had to take over 50 videoes. All code is done by Actionscript 3.0. This code is available on #5

4.Schematic design diagram

As I explained above, Overall flow is this: Thermometer(LM35DZ) which is connected to Arduino detects the inside temperature. TinkerProxy gets the data through the Network Proxy Servers and send it to Socket. Then Flash accesses to Socket and takes the data and use it to make the display accordingly. Through the touch screen viewers can interact with the picture frame.

5. Codes
Arduino code (AnalogRead Temperature)
Flash code (Core part included Socket Communication)

6. Parts

Thermometer: LM35DZ ($1.20),  Buy LM35DZ

– Touch screen: 3M Touch Screen (Got it from CODE lab)

– Arduino Duemilanove ($29.95),  Buy Arduino

– Flash CS3 (Free),  Go download the trial version of Flash

Picture Frame $4.99 (Local dollar store)

Foam board*2 sheets (optional)


RayMatic – Interactive Picture Frame

Posted in 10. Build the Hardest Part on November 17, 2009 by ryun

So, I almost completed the hardest part which was somewhat tricky. First of all, one of the core part of my project is making flash and arduino talk to each other. There were some issues like Mac/Windows, AS3.0/2.0, Flash CS3 vs lower, Mac versions, socket programming and so on. Finally, I made my arduino communicates with my flash program using serproxy. The data receiving is not super stable but thopefully  i will figure it out soon.
Second hardest thing is make the videos very natural. I have to put the short movieclips back and forth accordingly to users inputs and a small conflict can cause obvious awkwardness. I used myself as a model for this prototype but i am planning to use one of my friends as a model for the final one to make it more professional.

Upcoming plan:
Apply touch screen for setting menu.
Apply distance sensors and temperature sensors
Take videos of my friend as a model

IKEA Virtual Wall (MTI-8)

Posted in 8. Finite State Machines on November 4, 2009 by ryun

I built a IKEA Virtual Wall. I used RFID reader and this detects cards on which RFID tags are attached. You scan your cards then the system will show the related item and go to a certain state such as floor-lamp state, book-shelf state and so on. When you are on each state, if you use IR controller, press the button and move it, then the item on the screen will move around accordingly.
Wiimote detects IR led and send data to the computer in real-time via bluetooth(used Processing to get the data). Phidget RFID reader reads the RFID tags and send signal via USB(used Flash to get the data). And I finally used actionscript 3.0 to use the data to design the interface.



Posted in 9. Project Proposals on November 3, 2009 by ryun



“BillyMatic” is the name of this project. Designed to save energy, BillyMatic conveys messages about the living environment through its changing appearance. For example, when too much electricity is used to increase or decrease the temperature in the room, BillyMatic starts doing something such as wearing scarf or sweating. When the viewer notices this and adjusts the AC or heater, this person starts to smile in response to the change in temperature. When the viewer’s hand gets very close to the picture, BillyMatic displays the setting mode and the viewer sees the data information, such as current temperature, the percentage of energy being saved, the amount of money being saved, setting bar to adjust Max/Min Temperature.


How it works

– What the viewer will see is a picture of a figure in a frame, which is, simply the image on a computer monitor screen inside a frame.
– The interface and all the image animation will be built in Processing/Flash.
– The temperature sensor detects the temperature in the room in real time.
– The distance sensor detects the proximity of the viewer’s hand.
– Arduino enables communication between the sensors and the processing interface, and the motion of the viewer.


* temperature sensors*(1+alpha),
* distance sensors*4,
* a picture frame,
* an arduino
* a touch screen
* Leds

Weekly plan

week 1 – build the hardest part (with the video of me)
week 2 – finish prototype (with the model)
week 3 – finish 2nd implementation.(finish 95%)
week 4 – finalization

MTI7 – Gift Box

Posted in 7. A Mechanical Automaton on October 19, 2009 by ryun


I built a “Glue-Free” gift box using “Rack and Pinion” and “Gears” mechanism. It was the first time I made my own gears and not very easy to create perfect ones. That is why you see kind of crooked gears working funny on the video. The challenge is that I tried not to use glue or screws to put the pieces together so that the gift receiver can take apart the box, play the puzzle with the pieces and build the box over and over again in an easy way.

Here are one of my drawings and screen shots of the Giftbox

“Arirang” on Arduino Guitar

Posted in 6 Form & Motion on October 13, 2009 by ryun

For this Arduino guitar, I used 2 servos – one for a musical instrument and the other for a pick(an Arm for playing music). There are 5 buttons – if you press each button, the servo runs and will offer a specific guitar string.(1-G, 2-A, 3-C, 4-D, 5-E). And after .5 sec the other servo with a guitar pick runs and will stroke the string to make specific sound.

Arduino Sketch: Musical_Inst

In Korea, traditionally, they used only 5 scales(A,C,D,E,G) to play music so, I put 5 guitar string and tried to play Korean famous traditional Song – “Arirang”. Please enjoy it!

5. Treasure Hunt

Posted in 5. Treasure Hunt on October 4, 2009 by ryun

Bend / flex sensor – $12.95

Fabric/stretch sensor – $8.95

Alcohol sensor – $4.50

Solenoid – $1.5

Linear actuator – $7.00

Fiber optic cable – $7.98

Tiny potentiometer -$0.50

Conductive fabric – $4.04

Thermochromic paint/dye – $44.99

Nitinol / shape memory alloy wire – $0.90

Conductive paint – $15.99

Neodymium magnets– $0.10

Copper tape / copper foil – $1.00

Tilt sensor – $5.23

Peltier Junction – $9.95