0. RayMatic paper (CHI format) – download PDF
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: http://www.arduino.cc/playground/Interfacing/Flash
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.
– Thermometer: LM35DZ ($1.20), Buy LM35DZ
– Arduino Duemilanove ($29.95), Buy Arduino
– Flash CS3 (Free), Go download the trial version of Flash
– Picture Frame $4.99 (Local dollar store)