<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-24637311</id><updated>2012-02-16T03:20:31.077-08:00</updated><category term='mobile choir'/><category term='mobile'/><category term='arduino'/><category term='door'/><category term='headtracker'/><category term='iphone'/><category term='android'/><category term='CHI2011'/><category term='voice synthesis'/><category term='infrared filter'/><category term='wii-mote force-feedback joystick'/><category term='telepresence'/><category term='webcam'/><category term='robot'/><category term='cheap'/><category term='optic coupling'/><category term='IR'/><category term='film'/><category term='iOS'/><category term='ipod touch'/><category term='servo'/><category term='tippy'/><category term='icec'/><category term='rfid'/><title type='text'>Simple Harmonic Motion</title><subtitle type='html'>Using technology for new forms of expression</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-24637311.post-1757990041177398086</id><published>2011-10-05T19:35:00.000-07:00</published><updated>2011-10-05T19:50:56.461-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcam'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile'/><category scheme='http://www.blogger.com/atom/ns#' term='tippy'/><category scheme='http://www.blogger.com/atom/ns#' term='icec'/><category scheme='http://www.blogger.com/atom/ns#' term='robot'/><category scheme='http://www.blogger.com/atom/ns#' term='telepresence'/><title type='text'>Tippy for ICEC 2011</title><content type='html'>&lt;div&gt;What is Tippy?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Tippy:&lt;/div&gt;&lt;div&gt;- is a Telepresence Robot&lt;/div&gt;&lt;div&gt;- has a simple microcontroller-based drive system&lt;/div&gt;&lt;div&gt;- runs on ANY mobile device with a front facing camera and 2-way video application (such as Skype)&lt;/div&gt;&lt;div&gt;- uses optic coupling to provide a novel interface between the mobile device and drive control hardware&lt;/div&gt;&lt;div&gt;- does not require any other mobile app for operation&lt;/div&gt;&lt;div&gt;- costs less than $100 in parts (excluding iPod touch) if you build it yourself&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Tippy allows the user to achieve telepresence by leveraging powerful, existing mobile devices quickly and easily. Tippy can be easily packaged into other formats using different sized devices (smartphones, handhelds and  tablets) without custom mobile applications and the control scheme can be adapted to control any kind of external hardware.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For more information, take a look at our conference paper &lt;a href="http://burmoon.com/tippy/paper.pdf"&gt;HERE&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To see Tippy in action, check out the following video:&lt;/div&gt;&lt;br /&gt;&lt;iframe title="YouTube video player" width="568" height="320" src="http://www.youtube.com/embed/3iETcyzzDT4" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you're interested in finding out more, please find our contact info &lt;a href="http://burmoon.com/tippy"&gt;here&lt;/a&gt;!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-1757990041177398086?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/1757990041177398086/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=1757990041177398086' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/1757990041177398086'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/1757990041177398086'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2011/10/tippy-for-icec-2011.html' title='Tippy for ICEC 2011'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/3iETcyzzDT4/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-4653556582599056941</id><published>2011-05-14T16:20:00.000-07:00</published><updated>2011-05-14T16:33:03.798-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CHI2011'/><category scheme='http://www.blogger.com/atom/ns#' term='mobile choir'/><category scheme='http://www.blogger.com/atom/ns#' term='voice synthesis'/><category scheme='http://www.blogger.com/atom/ns#' term='iOS'/><category scheme='http://www.blogger.com/atom/ns#' term='iphone'/><title type='text'>Mobile Phone Choir</title><content type='html'>&lt;div&gt;&lt;a href="http://www.nicolasdalessandro.net/"&gt;Nicolas&lt;/a&gt; and I have been working on the mobile phone choir as a part of the &lt;a href="http://chi2011.org/"&gt;CHI2011&lt;/a&gt; Interactivity demos that took place throughout this past week. We met a lot of really cool people and it was a great experience (1st CHI for both of us). Hopefully we'll be able to take the ideas generated at the conference and develop the system further.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now a short description of how the system works: &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Each mobile phone (in this case, an iTouch or iPhone) is running a voice synthesizer that generates a single note. The player (or singer, or whatever you'd like to call him/her) can control the vocal effort and pitch using the X-Y position on touch screen, and the vocal tract shape by tilting the device. Each device in the video is "tuned" to a certain voice (in this case modelling the spectral characteristics of a soprano, alto, tenor and bass voice, respectively). By default, the center pitch of each device is set so that combined, the 4 voices create a C major chord.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Another app runs on the iPad (controlled by me in the video below). This app is called the "Director" and it sends harmony information to each of the devices. For each chord that the director selects, the individual notes for that chord are sent to each device. This way, the overall harmonic decision is made by the conductor. However, each individual voice has the option to deviate from the selected center note, and Nicolas shows that around halfway through the video.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;iframe width="560" height="349" src="http://www.youtube.com/embed/TEjrSwqiOdE" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;More on this later...&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-4653556582599056941?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/4653556582599056941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=4653556582599056941' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/4653556582599056941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/4653556582599056941'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2011/05/mobile-phone-choir.html' title='Mobile Phone Choir'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/TEjrSwqiOdE/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-9086774820247025637</id><published>2011-04-15T23:15:00.001-07:00</published><updated>2011-04-16T10:48:15.372-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tippy'/><category scheme='http://www.blogger.com/atom/ns#' term='robot'/><category scheme='http://www.blogger.com/atom/ns#' term='ipod touch'/><category scheme='http://www.blogger.com/atom/ns#' term='telepresence'/><category scheme='http://www.blogger.com/atom/ns#' term='optic coupling'/><title type='text'>Tippy the Telepresence Robot</title><content type='html'>So Vincent, Benny and I have been working on a cute little project over the past few weeks. It's a compact telepresence robot, similar to the one that the famous Johnny Lee wrote an instructional for on his &lt;a href="http://procrastineering.blogspot.com/2011/02/low-cost-video-chat-robot.html"&gt;procrastineering&lt;/a&gt; blog. The key factor of our design is the optical coupling between the mobile device and the robot control hardware: in our implementation, we use Skype for two-way video but embed the control signals in the video stream as well - thereby reducing the amount of development (in terms of hardware and software interfacing). We've submitted an &lt;a href="http://www.icec2011.org/"&gt;ICEC demo paper&lt;/a&gt; along with the following video, which should do a slightly better job at explaining how it works:&lt;br /&gt;&lt;br /&gt;&lt;iframe title="YouTube video player" width="568" height="320" src="http://www.youtube.com/embed/3iETcyzzDT4" frameborder="0" allowfullscreen=""&gt;&lt;/iframe&gt;&lt;br /&gt;We hope to get together an instructional, and a DIY kit soon so people in the community can play around with the idea (if the video isn't enough to get you going :)&lt;br /&gt;&lt;br /&gt;A few points on my personal motivation/comments for this project:&lt;br /&gt;&lt;br /&gt;1.) Robots are cool; telepresence robots are also cool.&lt;br /&gt;&lt;br /&gt;2.) Mobile devices are so powerful these days that you can do so much with them. However, for the DIY hobbyist/hacker, it's not that easy to interface these devices with custom hardware that you build. For example, on an iOS device (iPhone, iTouch, iPad etc), you are quite limited when it comes to interfacing hardware. Even if you do have a developer license, it's still pretty hard to get a physical connection to the serial port working (at the risk of voiding the warranty and blowing up the device, etc). Using platforms such as Android does away with the license hurdle, but the hardware interface is still not easy. This project is essentially a demonstration at a quick and dirty (but working!) solution to this problem. There are many ways that it can be improved (e.g. modulating the visual signal, auto-calibration of the sensors, etc etc), but it should provide a good starting point.&lt;br /&gt;&lt;br /&gt;3.) I'm surrounded by a bunch of amazing people with different skills and really appreciate the opportunity to work with them. This project was definitely worth the evenings and weekends we spent at home or in the lab tinkering away. Good job guys!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-9086774820247025637?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/9086774820247025637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=9086774820247025637' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/9086774820247025637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/9086774820247025637'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2011/04/tippy-telepresence-robot.html' title='Tippy the Telepresence Robot'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/3iETcyzzDT4/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-2333202009787456279</id><published>2011-02-06T15:16:00.000-08:00</published><updated>2011-02-06T15:18:49.442-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='arduino'/><category scheme='http://www.blogger.com/atom/ns#' term='rfid'/><category scheme='http://www.blogger.com/atom/ns#' term='door'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>access granted</title><content type='html'>&lt;div&gt;It's been a while since we finished this project, but I've been neglecting to update this... so here goes: (Video should be pretty self-explanatory).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;iframe title="YouTube video player" width="480" height="390" src="http://www.youtube.com/embed/TfaOxhBFlrw" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-2333202009787456279?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/2333202009787456279/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=2333202009787456279' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2333202009787456279'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2333202009787456279'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2011/02/access-granted.html' title='access granted'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://img.youtube.com/vi/TfaOxhBFlrw/default.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-3101601536787067636</id><published>2010-06-04T23:48:00.000-07:00</published><updated>2010-06-05T00:10:28.439-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcam'/><category scheme='http://www.blogger.com/atom/ns#' term='cheap'/><category scheme='http://www.blogger.com/atom/ns#' term='infrared filter'/><category scheme='http://www.blogger.com/atom/ns#' term='IR'/><category scheme='http://www.blogger.com/atom/ns#' term='film'/><title type='text'>Simple IR Filter using exposed film</title><content type='html'>A friend is doing a project that involves building a robot that finds and blows out candles placed within a course. They are thinking about using an infra red filter on a webcam to locate the candles, and asked me for suggestions. I know one could purchase filter sheets that serves this purpose, but thought there must be cheaper options/quicker options. First I thought about using red/dark red coloured cellophane, as the frequency is close enough to infra-red and maybe with enough layers it'll block out most visible light. Also, where to find the right coloured candy wrappers? Arts and crafts stores? There MUST be a cheap and simple way to get an infra red filter... (without having the crack open a TV remote or a Wii-controller - all these devices have infra red filters on the front).&lt;br /&gt;&lt;br /&gt;After a quick google and 2 minutes of tinkering, I sent an excited message back to my friend with the following images:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/johntywang/4670613731/" title="2010-06-04 23-35-50.726 by johntywang, on Flickr"&gt;&lt;img src="http://farm5.static.flickr.com/4047/4670613731_aab84c682d_o.jpg" width="320" height="240" alt="2010-06-04 23-35-50.726" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br&gt;&lt;br /&gt;The solution: Exposed film negatives!! It turns out developed film that has been exposed to light is a great infra red filter. The bit at the beginning of the roll is usually exposed when you put it into the camera, unless you load it in the dark. (I remember sometimes trying to do this under a blanket to save the first few shots of a roll... this way a roll of 36 can get you 38~40 shots, if you're lucky). You can see the tea-light candle and the film strip in my hand in the above image. And here is what the captured image looks like with the film strip taped onto the front of the web cam:&lt;br /&gt;&lt;br&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/johntywang/4670613737/" title="2010-06-04 23-36-51.840 by johntywang, on Flickr"&gt;&lt;img src="http://farm5.static.flickr.com/4048/4670613737_66c2eb388c_o.jpg" width="320" height="240" alt="2010-06-04 23-36-51.840" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The solution was so quick, cheap and simple that I had to post about it, right away! :-)&lt;br /&gt;&lt;br /&gt;Now the problem of course is the lack of availability of film these days... luckily I kept all my photos/negatives from before...&lt;br /&gt;&lt;br /&gt;Credits to &lt;a href="http://www.blog.sugarlotus.com/2007/10/cheap-and-dirty-tricks-for-pretty.html"&gt;here&lt;/a&gt; and &lt;a href="http://photocritic.org/create-your-own-ir-filter/"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-3101601536787067636?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/3101601536787067636/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=3101601536787067636' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/3101601536787067636'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/3101601536787067636'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2010/06/simple-ir-filter.html' title='Simple IR Filter using exposed film'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-2462363567570068782</id><published>2010-04-19T20:37:00.000-07:00</published><updated>2010-04-20T00:23:46.429-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='webcam'/><category scheme='http://www.blogger.com/atom/ns#' term='arduino'/><category scheme='http://www.blogger.com/atom/ns#' term='headtracker'/><category scheme='http://www.blogger.com/atom/ns#' term='servo'/><title type='text'>Headtrack+Servo+Webcam = fun</title><content type='html'>For our EECE541 project, we're building a 3D webcam chat system. I've been working on the headtracking portion, and decided this would be a neat way to demonstrate the results:&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/QkQeHSQR06E&amp;hl=en_US&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/QkQeHSQR06E&amp;hl=en_US&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;Ingredients:&lt;br /&gt;&lt;br /&gt;-Processing sketch&lt;br /&gt;-Arduino Microcontroller&lt;br /&gt;-Servo&lt;br /&gt;-Two webcams: one for head tracking, one for the view. One is slightly hacked to fit onto the servo.&lt;br /&gt;&lt;br /&gt;The system demonstrates three concepts:&lt;br /&gt;&lt;br /&gt;1. Simple pixel-based 1D head tracking - take the difference between a static background and a live view, threshold it, and return the horizontal value of the top-most pixel&lt;div&gt;&lt;br /&gt;2. Fishtank AR/VR systems: utilizes the viewer's position to render a scene. Kinda like &lt;a href="http://www.youtube.com/watch?v=Jd3-eiid-Uw"&gt;this&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;3. Arduino/Processing: An awesome platform to work with hardware and software to prototype new ideas. Servos, webcams, image processing... all done with a couple lines of code!&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-2462363567570068782?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/2462363567570068782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=2462363567570068782' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2462363567570068782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2462363567570068782'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2010/04/headtrackservowebcam-fun.html' title='Headtrack+Servo+Webcam = fun'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-1358928118351404528</id><published>2008-09-08T10:09:00.000-07:00</published><updated>2008-09-08T10:11:36.769-07:00</updated><title type='text'>Wii-mote Controller for Google Earth</title><content type='html'>A really simple controller for Google Earth using the Wii-mote. Simply maps a few buttons and actions to keyboard keys using GlovePIE. This was one of the first youtube videos I ever uploaded... somehow forgot about it...&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/y0OODRuyK6A&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;embed src="http://www.youtube.com/v/y0OODRuyK6A&amp;amp;hl=en&amp;amp;fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-1358928118351404528?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/1358928118351404528/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=1358928118351404528' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/1358928118351404528'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/1358928118351404528'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2008/09/wii-mote-controller-for-google-earth.html' title='Wii-mote Controller for Google Earth'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-4251935047478198460</id><published>2008-04-05T01:24:00.000-07:00</published><updated>2011-04-16T08:11:08.203-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='wii-mote force-feedback joystick'/><title type='text'>Wii-mote Force-feedback Joystick</title><content type='html'>What do you get when you combine a Wii-mote, a force-feedback joystick and a few lines of GlovePIE script?&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/v5NLRp5SCKM&amp;amp;hl=en"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/v5NLRp5SCKM&amp;amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;code for part 1:&lt;/b&gt;&lt;br /&gt;&lt;/p&gt;&lt;blockquote&gt;var.Y = MapRange(wiimote2.Pitch, -90, 90, 1, -1)&lt;br /&gt;var.X = MapRange(wiimote2.Roll, -90, 90, 1, -1)&lt;br /&gt;var.S = 0.8&lt;br /&gt;&lt;br /&gt;joystick3.Vibration1 = var.X*var.S&lt;br /&gt;joystick3.Vibration2 = var.Y*var.S&lt;br /&gt;&lt;/blockquote&gt;&lt;b&gt;code for part 2:&lt;/b&gt;&lt;br /&gt;&lt;blockquote&gt;var.xRot = Wiimote2.RelAccX&lt;br /&gt;var.yRot = Wiimote2.RelAccY&lt;br /&gt;&lt;br /&gt;joystick3.Vibration1 = MapRange(var.xRot, -50, 50, -1, 1)&lt;br /&gt;joystick3.Vibration2 = MapRange(var.yRot, -50, 50, -1, 1)&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;note the joystick/wiimote numbers. your mileage may vary.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-4251935047478198460?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/4251935047478198460/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=4251935047478198460' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/4251935047478198460'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/4251935047478198460'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2008/04/wii-mote-force-feedback-joystick.html' title='Wii-mote Force-feedback Joystick'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-2913292612206447012</id><published>2008-04-04T00:16:00.000-07:00</published><updated>2008-04-04T00:28:36.465-07:00</updated><title type='text'>Time Lapse</title><content type='html'>&lt;p&gt;Nothing to do with the wii-mote here. A simple time-lapse video of a trip to the &lt;a href="http://vancouver.ca/parks/parks/vandusen/website/"&gt;Van Dusen&lt;/a&gt; Botanical Gardens in the heart of Vancouver.&lt;/p&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/yns9VDHDryw&amp;hl=en"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/yns9VDHDryw&amp;hl=en" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;I've wanted to do this for some time now, but never got around to it. Finally, on a sunny spring day, between writing a big project report and working on the presentation for said project, I finally managed to get it done. I had my camera set on the lowest resolution (640x480), and lowest compression settings (the icon that looks like stairs on Canon cameras :p). The entire video contained about 400something shots, taken at roughly 4~5-step intervals (I used steps instead of time to try and create a perceived constant motion). There are some skips here and there, since I wasn't being totally meticulous about the shooting intervals...&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;The pictures were imported into Windows Movie Maker, essentially creating a slideshow 'movie'. I set the image/fade durations to give it the accelerated motion feel (about .3 second for each image). And thats it... more or less. Nothing fancy... &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-2913292612206447012?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/2913292612206447012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=2913292612206447012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2913292612206447012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/2913292612206447012'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2008/04/time-lapse.html' title='Time Lapse'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-3888252577981193084</id><published>2008-01-12T14:24:00.000-08:00</published><updated>2009-11-06T11:12:28.038-08:00</updated><title type='text'>A 'full' Wii-Drum kit</title><content type='html'>So I've been playing with the wii-motes on the PC for a while now, on and off. Karl Kenner's &lt;a href="http://carl.kenner.googlepages.com/glovepie_download"&gt;GlovePIE&lt;/a&gt; makes it very easy to fiddle around with the various input and output parameters of the device. One of the demos that come with GlovePIE include a simple 'drumming' script that was based on the work done by &lt;a href="http://youtube.com/watch?v=8FftLxuYzRA"&gt;Bob Somers&lt;/a&gt;. This script continuously measures the force values of the wii-mote, and if it is beyond a certain level, a midi drum note is triggered depending on the buttons that are being pressed at the time.&lt;br /&gt;&lt;br /&gt;A snippet of the code appears as follows:&lt;br /&gt;&lt;blockquote&gt;var.yRot = Wiimote1.RelAccY&lt;br /&gt;...&lt;br /&gt;...&lt;br /&gt;if var.yRot &gt; 25 then&lt;br /&gt; var.S = Wiimote1.A and ...[combination of buttons]&lt;br /&gt; ....&lt;br /&gt;endif&lt;br /&gt;else&lt;br /&gt; var.S = false&lt;br /&gt;endif&lt;br /&gt;&lt;br /&gt;Midi.AcousticSnare = var.S&lt;br /&gt;...&lt;/blockquote&gt;&lt;br /&gt;If you duplicate the code for a second wii-mote, then you could have two drum 'sticks'. However, another major component of a 'real' drum kit is missing: the foot pedals. Since you can attach a nunchuk controller to each wii-mote, and the connecting cord is long enough to reach from your hands to feet (when sitting down), it seemed like a good idea to emulate the foot pedals with nunchuk controllers. And thats what I did. The result is here:&lt;br /&gt;&lt;br /&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/5KhQuUFGST4&amp;amp;rel=1"&gt;&lt;param name="wmode" value="transparent"&gt;&lt;embed src="http://www.youtube.com/v/5KhQuUFGST4&amp;amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" height="355" width="425"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I simply added another variable that's hooked up to the nunchuk's force values, and an additional if loop that triggers the bass drum, and hi-hat on the two different nunchuks, respectively. An 'open' high hat is also added by looking at the pitch of the hi-hat nunchuk. So if you have your foot up, and hit a normal hi-hat with the 'stick' (wii-mote in hand), it will generate the open hi-hat sound.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.ece.ubc.ca/~johnty/stuff/fullDrumKit.PIE"&gt;Here&lt;/a&gt; is the code. If you have any questions feel free to ask me.&lt;br /&gt;&lt;br /&gt;And by replacing the midi note triggers with keyboard inputs that correspond to the ones used in the DTXMania simulator, I was able to do this: (sorry about the song, which apparently not a lot of people like ;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="355"&gt;&lt;param name="movie" value="http://www.youtube.com/v/kb3spCs54rE&amp;rel=1"&gt;&lt;/param&gt;&lt;param name="wmode" value="transparent"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/kb3spCs54rE&amp;rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-3888252577981193084?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/3888252577981193084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=3888252577981193084' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/3888252577981193084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/3888252577981193084'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2008/01/full-wii-drum-kit.html' title='A &apos;full&apos; Wii-Drum kit'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-115924227524959641</id><published>2006-09-25T20:44:00.000-07:00</published><updated>2006-09-25T20:44:35.263-07:00</updated><title type='text'>foo</title><content type='html'>bar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-115924227524959641?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/115924227524959641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=115924227524959641' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/115924227524959641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/115924227524959641'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2006/09/foo_25.html' title='foo'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-24637311.post-115924197963203491</id><published>2006-09-25T20:39:00.000-07:00</published><updated>2006-09-25T20:39:39.633-07:00</updated><title type='text'>foo</title><content type='html'>bar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/24637311-115924197963203491?l=simple-harmonic-motion.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://simple-harmonic-motion.blogspot.com/feeds/115924197963203491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=24637311&amp;postID=115924197963203491' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/115924197963203491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/24637311/posts/default/115924197963203491'/><link rel='alternate' type='text/html' href='http://simple-harmonic-motion.blogspot.com/2006/09/foo.html' title='foo'/><author><name>djsquared</name><uri>http://www.blogger.com/profile/16320306989086230730</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://4.bp.blogspot.com/_nl2nU_-mnbc/S4s41iYMF6I/AAAAAAAADxg/AOeTlYg9oyY/S220/guitarsm.jpg'/></author><thr:total>0</thr:total></entry></feed>
