<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>arduino &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/arduino/</link>
	<description>Feed of posts on WordPress.com tagged "arduino"</description>
	<pubDate>Thu, 24 Dec 2009 21:09:20 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Spreading christmas cheer w/ auto parts]]></title>
<link>http://hackaday.com/2009/12/24/spreading-christmas-cheer-w-auto-parts/</link>
<pubDate>Thu, 24 Dec 2009 16:09:30 +0000</pubDate>
<dc:creator>Jacob Woj</dc:creator>
<guid>http://hackaday.com/2009/12/24/spreading-christmas-cheer-w-auto-parts/</guid>
<description><![CDATA[The folks over at [Soup], a British marketing agency, thought up this cool project. It&#8217;s a set]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-19782" title="newsMainImage[1]" src="http://hackadaycom.wordpress.com/files/2009/12/newsmainimage1.jpeg" alt="" width="280" height="360" /></p>
<p>The folks <a href="http://www.soup.co.uk/">over at [Soup]</a>, a British marketing agency, thought up <a href="http://www.soupxmas.co.uk/">this cool project</a>. It&#8217;s a set of handbells hooked up to an Arduino, actuated by central locking motors found in car doors. By the look of some pictures, there was also <a href="http://hackaday.com/2009/09/15/rotating-lego-dock-take-two/">a Lego version</a>. Songs written by users (through the online interface) are placed in the que of a server. Once it&#8217;s time for the song to be played, serproxy sends the Arduino an appropriate set of commands for ringing the bells in sequence. All of this happens in the [Soup] office while it is streaming live through a webcam.</p>
<p>We think that this is definitely a great way to use surplus auto parts. After all, not everyone <a href="http://afp.google.com/article/ALeqM5hV0rzEDq7TWnlm7tMmr2zeQmiRig">can build helicopters</a>.</p>
<p>It seems as though the bells are down for the moment, or the employees got a bit annoyed at hearing them constantly ring.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Open source artillery]]></title>
<link>http://hackaday.com/2009/12/23/open-source-artillery/</link>
<pubDate>Wed, 23 Dec 2009 20:00:07 +0000</pubDate>
<dc:creator>Jacob Woj</dc:creator>
<guid>http://hackaday.com/2009/12/23/open-source-artillery/</guid>
<description><![CDATA[Thanks to [Josh, Kyle, and Mike], it is now possible to wage (Nerf) war with an Arduino. The turret ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/zPm84nxa2dk&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/zPm84nxa2dk&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Thanks to [Josh, Kyle, and Mike], it is now possible to wage (Nerf) war with an Arduino. <a href="http://www.robotdialogs.com/2009/12/remote-controlled-turret.html">The turret designed</a> around it is capable of shooting <a href="http://en.wikipedia.org/wiki/Nerf">6 foam projectiles</a> in close succession, between reloads. The faux weapon interfaces with a computer through the Arduino&#8217;s <a href="http://www.arduino.cc/en/Tutorial/SoftwareSerial">onboard serial link</a> (via USB). Software on the PC sends commands to the Arduino, which then executes functions, such as panning, tilting, firing, and rotating the cylinder. The power for the firing itself comes from a 5 gal, 80 psi air compressor. <a href="http://java.com/en/">The Java</a> software on the host PC also does smarter things, like show streaming video from the turret&#8217;s webcam and even performs basic object tracking (with mixed success). All the code for building the brute is available on [Josh's] website.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Atmolight clone of an Ambilight clone]]></title>
<link>http://hackaday.com/2009/12/23/atmolight-clone-of-an-ambilight-clone/</link>
<pubDate>Wed, 23 Dec 2009 18:00:32 +0000</pubDate>
<dc:creator>Jakob Griffith</dc:creator>
<guid>http://hackaday.com/2009/12/23/atmolight-clone-of-an-ambilight-clone/</guid>
<description><![CDATA[[Fun3] wasn&#8217;t satisfied with current methods for duplicating Philips Ambilight. He wanted a co]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/i4JnrAwullI&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/i4JnrAwullI&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>[Fun3] <a href="http://fun3md.blogspot.com/2009/07/atmolight-clone-project.html">wasn&#8217;t satisfied</a> with <a href="http://fun3md.blogspot.com/2009/07/atmolight-technical-post.html">current methods</a> for duplicating <a href="http://www.research.philips.com/technologies/projects/ami/ambilight.html">Philips Ambilight</a>. He wanted a completely plug and play solution without soldering so he could expand upon it in the future. This meant Arduino, ShiftBright, and (it pains us to say this) pre-made cables. Some of you are cringing at the thought of no real &#8216;work&#8217; being necessary, but remember, now this is much easier for your &#8220;I can&#8217;t change the VCRs clock&#8221; aunt to set up and enjoy. Plus it&#8217;s quick, easy, and most importantly &#8211; clean, something a lot of hackers <a href="http://home.officesnapshots.com/category/dirty/">have a problem with</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino now controlling - the crop harvest?]]></title>
<link>http://hackaday.com/2009/12/23/arduino-now-controlling-the-crop-harvest/</link>
<pubDate>Wed, 23 Dec 2009 17:00:15 +0000</pubDate>
<dc:creator>Jacob Woj</dc:creator>
<guid>http://hackaday.com/2009/12/23/arduino-now-controlling-the-crop-harvest/</guid>
<description><![CDATA[We&#8217;ve seen the Arduino board in charge of some pretty unique tasks in the past. Harvesting loc]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/LDzHwy28kng&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/LDzHwy28kng&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>We&#8217;ve seen the Arduino board in charge of some pretty unique tasks in the past. Harvesting locally grown soybeans was not one of them.</p>
<p>[Lance] <a href="http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254445743">rigged this beast up</a> in order to automate the monotonous task of driving up and down the vast soybean fields of Iowa. The 15 ton farm combine&#8217;s hydraulic steering pump is at the mercy of a team of gadgets, including a GPS, <a href="http://hackaday.com/2009/05/16/install-windows-7-on-your-netbook/">Windows 7 PC</a>, and the omnipresent Duemilanove (which acts as the output card, connecting the PC to the pump). So far, it is reported to be doing a great job, straying only about an inch and a half from its desired, GPS-programmed, path. Even if the Arduino decides to go totally berserk and drive the combine off course, speeding around at 5mph makes it pretty avoidable. A supervisor is also in the cabin at all times, looking out for errors. [Lance] eventually hopes to offload all steering-related calculations to <a href="http://www.atmel.com/dyn/products/product_card.asp?PN=ATmega328P">the ATmega328P onboard</a>.</p>
<p>Commenters are welcome to share heavier-duty uses for the Arduino (if they exist).</p>
<p><a href="http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1254445743"></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Twitter to LCD - with scrolling text]]></title>
<link>http://dawes.wordpress.com/2009/12/23/twitter-to-lcd/</link>
<pubDate>Wed, 23 Dec 2009 13:44:43 +0000</pubDate>
<dc:creator>adawes</dc:creator>
<guid>http://dawes.wordpress.com/2009/12/23/twitter-to-lcd/</guid>
<description><![CDATA[I&#8217;ve been having some fun with a Sparkfun Serial-enabled LCD screen (LCD-09393, $24.95). This ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I&#8217;ve been having some fun with a <a title="Sparkfun Electronics" href="http://www.sparkfun.com">Sparkfun</a> Serial-enabled LCD screen (<a title="LCD-09393 Serial LCD" href="http://www.sparkfun.com/commerce/product_info.php?products_id=9393">LCD-09393</a>, $24.95). This little package will write out whatever you send along a serial data line. So this means you can add an LCD to a project with only three wires:  +V, GND, and RX (serial receive). In the real world, I&#8217;m hoping to use these LCDs in some lab instruments that we&#8217;ll be building in the spring semester. In particular, I&#8217;m looking at an <a title="Arduino" href="http://www.arduino.cc">arduino</a>-based <a href="http://interface.khm.de/index.php/lab/experiments/arduino-frequency-counter-library/">frequency counter</a>. I also want to explore an arduino-based PID controller for various lab projects (temp. control, etc.).</p>
<p>My first test, however, was just getting the LCD to work. And then, I wanted to make it show my Twitter status. I&#8217;ve been using twitter (<a href="http://www.twitter.com/drdawes">DrDawes</a>) to post my office status and give students updates as to where I am or when I may be around again. This has been helpful since my research lab is in another building and I tend to be available but it may not look like it since I&#8217;m not in the physics building. This way if I want to step over to the lab, I can simply send an update, and save people the trouble of tracking me down. The rub is that not everyone has twitter, and sometimes people just come to my office anyway. That said, my goal is to post a 16&#215;2 LCD screen on my door so that my availability status (formerly written on a whiteboard, or post-it) can be more 21st century.</p>
<p><!--more-->As of this weekend, the whole system is working, although not yet installed. I&#8217;m running an Arduino as the LCD controller, but really it&#8217;s just reading serial from the computer and writing serial to the LCD, so I&#8217;m sure there is a more efficient way (I&#8217;ll work on that for v2.0). The arduino code is given below:</p>
<pre class="brush: plain;">

#include &#60;SoftwareSerial.h&#62;

#define txPin 2

int incomingByte = 0;    // for incoming serial data

SoftwareSerial LCD = SoftwareSerial(0, txPin);
// since the LCD does not send data back to the Arduino, we should only define the txPin

void setup()
{
 Serial.begin(9600);
 pinMode(txPin, OUTPUT);
 LCD.begin(9600);
}

void loop()
{
 if (Serial.available() &#62; 0) {
 // read the incoming byte:
 incomingByte = Serial.read();
 LCD.print(incomingByte,BYTE);
 }
}
</pre>
<p>I like <a title="Python programming language" href="http://www.python.org">python</a>, so I used it for the computer end of the project. The only things I had to figure out were how to write hex bytes to the serial port, and how the LCD memory was laid out. I wanted it to be a bit fancier than stock so I wrote two functions, one that scrolls the text across the LCD and one that pages it up line by line. This is necessary since twitter runs up to 140 characters and I can only show 32 on the LCD (at a time).</p>
<pre class="brush: plain;">

#!/usr/bin/env python
# encoding: utf-8
&#34;&#34;&#34;
TweetLCD.py

This twitter-to-LCD script implements two functions for displaying
text on a Sparkfun Serial LCD.

 scrollText - allows long lines of text to be scrolled along the top of the LCD
 pageText - allows long text to be paged up. First the top line is written, then
 the bottom line, then the lines shift up, and more text is
 written on the bottom line.

Created by Andrew M.C. Dawes on 2009-12-18.
Copyright (c) 2009 Andrew M.C. Dawes.
Some rights reserved. License: Creative Commons GNU GPL:

http://creativecommons.org/licenses/GPL/2.0/

&#34;&#34;&#34;

import serial, time, sys, twitter
SERIALPORT = &#34;/dev/tty.usbserial-A6008cAP&#34; # this is my USB serial port YMMV

def pageText(textstring, s):
 botline = &#34;&#34;
 cursor = 0
 for letter in textstring:
 # print letter, cursor     # this is for debugging
 s.write(letter)

 if cursor &#62; 15:
 # I'm printing in second line so keep track of what I write
 botline = botline + letter
 # print botline

 if cursor == 31: # page the bottom line up to top, clear bottom, and write
 # print &#34;cursor wrap&#34;
 s.write('\xFE\x80') # wrap to start of first line
 s.write(botline) # write what was on the bottom (now on top)
 s.write(&#34;                &#34;)
 s.write('\xFE\xC0') # skip to beginning of second line
 botline = &#34;&#34;
 cursor = 15 # reset to beginning of second line

 cursor = cursor + 1

 time.sleep(0.15) # set this delay to a comfortable value

def scrollText(textstring, s):
 nextstring = &#34;&#34;
 cursor = 0
 firstpass = True # test whether this is the first 16 characters
 for letter in textstring:
 if firstpass == False:
 s.write('\xFE\x18') # scroll left one spot at each letter

 # print letter, cursor    # this is for debugging
 s.write(letter)

 if cursor == 15:
 # I'm printing the last visible character
 s.write('\xFE\x90') # jump cursor to 2nd column of 16
 firstpass = False # once the first row is filled, we need to scroll

 if cursor == 31:
 s.write('\xFE\xA0') # jump cursor to 3rd column

 if cursor == 39:
 cursor = -1 # start over, there are only 40 characters in memory
 s.write('\xFE\x80') # this is the original character address.

 cursor = cursor + 1

 time.sleep(0.2) # adjust this to a comfortable value

def main():
 s = serial.Serial(SERIALPORT, 9600)
 time.sleep(2)
 s.write('\xFE\x01') # clear the LCD screen
 while(True):
 time.sleep(1)
 s.write('\xFE\x80') # goto 0 position
 api = twitter.Api()
 status = api.GetUserTimeline(user='DrDawes',count=1)[0]
 # textstring = &#34;1111111111111111222222222222222233333333333333334444444444444444&#34;
 textstring = &#34;DrDawes@twitter: &#34; + status.text
 scrollText(textstring,s) # choose one of these
 # pageText(textstring,s) # two options
 time.sleep(2)
 s.write('\xFE\x01') # clear the screen (in preparation to repeat)

 s.close()

if __name__ == '__main__':
 main()
</pre>
<p>You can see the two functions scrollText() and pageText() are responsible for cursor control and text movement. I&#8217;m still not sure which one I like better, but feel free to use these if you want them. The strange characters are pythons way of sending hex bytes as strings. The LCD uses the standard HD44780 controller, so there are special commands for controlling the LCD. For example, sending the string &#8220;\xFE\x01&#8243; in python sends two hex bytes: 0xFE and then 0&#215;01. This happens to be the command to clear the LCD screen. The cursor motion is controlled in a similar way, with address locations following the \xFE byte. 0&#215;80 is the first position so I send \xFE\x80 to move the cursor there. Similarly, \x90 is the 17th horizontal position in the top line, not viewable without scrolling and \xA0 is the 33rd position in the top line. There are 40 positions in each line (2 rows in my case) so the scrolling text function checks for this and wraps the cursor accordingly.</p>
<p>The other nifty command used in scrollText() is \x18 which scrolls the text to the left (the way we want to scroll in order to read it). You can see in the code that scrolling doesn&#8217;t start until the first row is full of characters, once that happens it continues to scroll until all text has been shown. For scrolling, I take advantage of the fact that there are only 40 characters in memory and scrolling the screen has what I would call periodic boundary conditions (if you scroll past the end, you just get the beginning again). This makes it easy to write more than 40 characters to the display.</p>
<p>As part of my tinkering, I&#8217;ve also figured out a number of additional extended commands for the HD44780. Some are mentioned in the sparkfun datasheet, but there is a cryptic comment about many others existing. Check back for a future post with more of the details.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[auto-prendas :) natal de 2009]]></title>
<link>http://nsa4ever.wordpress.com/2009/12/22/auto-prendas-natal-de-2009/</link>
<pubDate>Tue, 22 Dec 2009 20:23:34 +0000</pubDate>
<dc:creator>Pedro Rito</dc:creator>
<guid>http://nsa4ever.wordpress.com/2009/12/22/auto-prendas-natal-de-2009/</guid>
<description><![CDATA[si si mais auto-prendas ah pois é Processing: A Programming Handbook for Visual Designers and Artist]]></description>
<content:encoded><![CDATA[si si mais auto-prendas ah pois é Processing: A Programming Handbook for Visual Designers and Artist]]></content:encoded>
</item>
<item>
<title><![CDATA[De artista (Brett Ian Balogh) para os outros]]></title>
<link>http://nsa4ever.wordpress.com/2009/12/22/de-artista-brett-ian-balogh-para-os-outros/</link>
<pubDate>Tue, 22 Dec 2009 14:24:20 +0000</pubDate>
<dc:creator>Pedro Rito</dc:creator>
<guid>http://nsa4ever.wordpress.com/2009/12/22/de-artista-brett-ian-balogh-para-os-outros/</guid>
<description><![CDATA[encontrei uma entrevista num blog de um artista que vai usar o open hardware nas suas instalações]]></description>
<content:encoded><![CDATA[encontrei uma entrevista num blog de um artista que vai usar o open hardware nas suas instalações]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino shields (continuação Open source hardware 2009)]]></title>
<link>http://nsa4ever.wordpress.com/2009/12/22/arduino-shields-continuacao-open-source-hardware-2009/</link>
<pubDate>Tue, 22 Dec 2009 13:20:05 +0000</pubDate>
<dc:creator>Pedro Rito</dc:creator>
<guid>http://nsa4ever.wordpress.com/2009/12/22/arduino-shields-continuacao-open-source-hardware-2009/</guid>
<description><![CDATA[Arduino shields &#8211; This is a new category mostly because there are so many open source hardware]]></description>
<content:encoded><![CDATA[Arduino shields &#8211; This is a new category mostly because there are so many open source hardware]]></content:encoded>
</item>
<item>
<title><![CDATA[Fake snow from an Arduino]]></title>
<link>http://hackaday.com/2009/12/21/fake-snow-from-an-arduino/</link>
<pubDate>Mon, 21 Dec 2009 15:00:21 +0000</pubDate>
<dc:creator>Jacob Woj</dc:creator>
<guid>http://hackaday.com/2009/12/21/fake-snow-from-an-arduino/</guid>
<description><![CDATA[The team at [Sosolimited] was contracted to create an interesting holiday window dispay for the HBO ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://hackadaycom.wordpress.com/files/2009/12/hbo_01.jpg"></a></p>
<p><img class="alignnone size-full wp-image-19487" title="hbo_01" src="http://hackadaycom.wordpress.com/files/2009/12/hbo_013.jpg" alt="" width="437" height="335" /><a href="http://hackadaycom.wordpress.com/files/2009/12/hbo_012.jpg"></a></p>
<p><a href="http://sosolimited.com/design_hbo.html">The team at [Sosolimited]</a> was contracted to create an interesting holiday window dispay <a href="http://en.wikipedia.org/wiki/HBO">for the HBO</a> retail store in NYC. The Times Square display encorporates a board of LEDs and a machine for blowing the artificial snow particles around the enclosure.</p>
<p>The code for controlling the LED array was written on top of the open source C++ toolkit, <a href="http://www.openframeworks.cc/">openFrameworks</a> and the entire setup is interfaced<a href="http://hackaday.com/category/arduino-hacks/"> through an Arduino</a> Duelmilanove. Multiple <a href="http://www.acroname.com/robotics/info/articles/sharp/sharp.html">Sharp IR sensors</a> were hooked up to the Arduino in order to detect the movement of observers, which in turn triggers fans to blow the &#8217;snow&#8217; around. A National Control Devices relay board connects the heavy duty fans to the Arduino. <a href="http://vimeo.com/8196236">This video demo shows</a> just how attractive the project is in motion.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[A random USB... hourglass]]></title>
<link>http://hackaday.com/2009/12/21/a-random-usb-hourglass/</link>
<pubDate>Mon, 21 Dec 2009 13:48:02 +0000</pubDate>
<dc:creator>Jacob Woj</dc:creator>
<guid>http://hackaday.com/2009/12/21/a-random-usb-hourglass/</guid>
<description><![CDATA[[Peter] thought of a creative, way to generate random entropy for under $100. The USB Hourglass comb]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://hackadaycom.wordpress.com/files/2009/12/ditigtalhourglass.jpg"></a></p>
<p><img class="alignnone size-full wp-image-19480" title="ditigtalhourglass" src="http://hackadaycom.wordpress.com/files/2009/12/ditigtalhourglass1.jpg" alt="" width="408" height="390" /></p>
<p><a href="http://home.comcast.net/~hourglass/">[Peter] thought of a</a> creative, way to generate <a href="http://vimeo.com/6389601">random entropy</a> for under $100.</p>
<p>The USB Hourglass combines a sand timer with a rotating mechanism and an optical beam through the center of the timer to observe the falling sand. The amount of light reaching a detector is digitized at frequent intervals and processed <a href="http://www.arduino.cc/en/Main/ArduinoBoardDuemilanove">by a microcontroller</a> to determine when to rotate the hourglass. The digitized light levels are also <a href="http://www.ftdichip.com/Products/FT232R.htm">sent by USB</a> to a host PC where they can be used as a source of random entropy. Power is supplied over the USB cable.</p>
<p>With the USB Hourglass, the user can look at the sand falling through the center of the hourglass and monitor the randomness in the USB output data. And one <a href="http://home.comcast.net/~hourglass/Hourglass.pde">can read the code</a> line-by-line, compile it, and upload it to the microcontroller using only open-source and widely supported tools.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino Tic Tac Toe]]></title>
<link>http://wolfsjunkyard.wordpress.com/2009/12/21/arduino-tic-tac-toe/</link>
<pubDate>Mon, 21 Dec 2009 13:11:48 +0000</pubDate>
<dc:creator>Wolf</dc:creator>
<guid>http://wolfsjunkyard.wordpress.com/2009/12/21/arduino-tic-tac-toe/</guid>
<description><![CDATA[Build details and code here.]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/4X8u2KACg0g&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/4X8u2KACg0g&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Build details and code <a href="http://www.instructables.com/id/Arduino-and-Touchpad-Tic-Tac-Toe/">here</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[It's alive!!!]]></title>
<link>http://mauriciobs.wordpress.com/2009/12/21/its-alive/</link>
<pubDate>Mon, 21 Dec 2009 04:50:48 +0000</pubDate>
<dc:creator>Mauricio</dc:creator>
<guid>http://mauriciobs.wordpress.com/2009/12/21/its-alive/</guid>
<description><![CDATA[I have finally received my servo motors and finished building the bot. I will try to post some video]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I have finally received my servo motors and finished building the bot.</p>
<p>I will try to post some video later&#8230; follows some pictures.</p>

</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Peggy2 x2, with video]]></title>
<link>http://hackaday.com/2009/12/19/peggy2-x2-with-video/</link>
<pubDate>Sat, 19 Dec 2009 18:31:51 +0000</pubDate>
<dc:creator>Caleb Kraft</dc:creator>
<guid>http://hackaday.com/2009/12/19/peggy2-x2-with-video/</guid>
<description><![CDATA[Being avid fanatics of flashing lights, we always love to see the peggy2 in action. The video above ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/-ImjfHxXGfc&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/-ImjfHxXGfc&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></p>
<p>Being avid fanatics of flashing lights, we always love to see the peggy2 in action. The video above shows another improvement, which is <a href="http://littlebird.posterous.com/multiple-peggy2s-showing-serial-video-via-the">two peggy2 units working together as one</a>. [iservice2000] chained the two together and wrote new code for the display. Using an Arduino to drive it all, he has gotten them to act as one. While <a href="http://hackaday.com/2008/07/09/live-full-motion-video-on-a-peggy/">video on the peggy2</a> isn&#8217;t new, this is the first time we&#8217;ve seen two of them chained together. The end result is going to be a scrolling sign that can be updated via the web, or that can display tweets. We did notice a bit of tearing, is that from the camera or the software?</p>
<p>[via <a href="http://twitter.com/littlebirdceo/statuses/6824785504">littlebirdceo</a>]</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Capturing that (light field) moment]]></title>
<link>http://hackaday.com/2009/12/19/capturing-that-light-field-moment/</link>
<pubDate>Sat, 19 Dec 2009 17:09:43 +0000</pubDate>
<dc:creator>Jakob Griffith</dc:creator>
<guid>http://hackaday.com/2009/12/19/capturing-that-light-field-moment/</guid>
<description><![CDATA[Yes, your eyes do not lie, that is 12 cameras rigged to take a picture at the exact same moment. The]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-19422" title="Daniel_Array_Tilted" src="http://hackadaycom.wordpress.com/files/2009/12/daniel_array_tilted.jpg" alt="" width="470" height="314" /></p>
<p>Yes, your eyes do not lie, that is <a href="http://www.futurepicture.org/?p=47">12 cameras rigged</a> to take a picture at the exact same moment. The idea is a single camera loses data (namely depth) when it takes a <a href="http://en.wikipedia.org/wiki/Light_field">3D image</a> and transposes it onto a 2D medium. FuturePicture somewhat circumvents this loss by taking several pictures with different focus distances. In short, the camera array allows you to focus on multiple items within a scene. The project&#8217;s hardware and software have yet to be released (we do know it&#8217;s at least Arduino), but they plan to make it entirely open source so everyone can experiment. Of course, we&#8217;ll keep you up to date.<br />
[via <a href="http://blog.makezine.com/archive/2009/12/futurepicture.html">Make</a>]</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino Pro: Securing the Serial Connecor]]></title>
<link>http://softsolder.wordpress.com/2009/12/19/arduino-pro-securing-the-serial-connecor/</link>
<pubDate>Sat, 19 Dec 2009 12:45:29 +0000</pubDate>
<dc:creator>Ed</dc:creator>
<guid>http://softsolder.wordpress.com/2009/12/19/arduino-pro-securing-the-serial-connecor/</guid>
<description><![CDATA[Epoxy backfill on Arduino Pro serial connector The surface-mount serial connector on an Arduino Pro ]]></description>
<content:encoded><![CDATA[Epoxy backfill on Arduino Pro serial connector The surface-mount serial connector on an Arduino Pro ]]></content:encoded>
</item>
<item>
<title><![CDATA[Play Aria from Bach Goldberg Variations with the Arduino and I/O Module.]]></title>
<link>http://machinescience.wordpress.com/2009/12/18/bachs-goldbergs-variation-aria-on-the-arduino-and-io-module/</link>
<pubDate>Fri, 18 Dec 2009 19:00:21 +0000</pubDate>
<dc:creator>machinescience</dc:creator>
<guid>http://machinescience.wordpress.com/2009/12/18/bachs-goldbergs-variation-aria-on-the-arduino-and-io-module/</guid>
<description><![CDATA[One of our favorite demos on the XBoard used to be playing a Bach aria  through a piezo speaker. I h]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>One of our favorite demos on the <a href="http://www.machinescience.org/store/product.php?productid=28&#38;cat=253&#38;page=1" target="_blank">XBoard </a>used to be playing a Bach aria  through a piezo speaker. I have just recreated the same sound using code for the Arduino and the Machine Science <a href="http://www.machinescience.org/store/product.php?productid=16144&#38;cat=254&#38;page=1" target="_blank">I/O Module</a>. It was a little more impressive demo before the advent of polyphonic ring tones, but still nice sound for a little speaker. A feature of the I/O Module is that the entire song can be played with one line of code.  Also it can play while the Arduino is busy doing other important tasks.</p>
<p>Below is the sample code and a sound file from the device.</p>
<pre class="brush: cpp;">
#include &#60;machinescience.h&#62;
#include &#60;iomod.h&#62;

unsigned int bach_aria[150] = {
 G5,No02,
 G5,No02,
 A5,No16,
 G5,No16,
 A5,No04,
 B5,No08,
 A5,No04,
 G5,No08,
 F5S,No08,
 E5,No04,
 D5,Nd02,
 G4,No16,
 F4S,No16,
 G4,Nd04,
 A4,No16,
 G4,No16,
 F4S,No16,
 G4,No16,
 A4,No16,
 G4,No16,
 A4,No16,
 G4,No16,
 A4,Nd32,
 G4,Nd32,
 A4,No32,
 G4,No32,
 A4,No32,
 G4,No16,
 F4S,No08,
 G4,No08,
 A4,No16,
 G4,No16,
 F4S,No08,
 G4,No16,
 F4S,No16,
 E4,No08,
 E4,No04,
 D4,Nd02,
 D5,No02,
 D5,No02,
 E5,No16,
 D5,No16,
 E5,No04,
 F5,No08,
 E5,No04,
 D5,No08,
 C5,No08,
 B4,No04,
 A4,No02,
 G5,No16,
 F5S,No16,
 E5,No16,
 F5S,No16,
 G5,No16,
 F5S,Nd08,
 A5,No16,
 G5,Nd08,
 F5S,No16,
 E5,Nd08,
 D5,No16,
 C5,Nd08,
 C5,No08,
 A5,No04,
 C5,No08,
 B4,No16,
 G4,Nd08,
 F4S,No04,
 F4S,No08,
 G4,No16,
 F4S,No16,
 G4,Nd04};

void setup() {
 network_control(ENABLE);
 iomod_song(bach_aria, 71);
}

void loop()
{
}
</pre>
<p><code><span style='text-align:left;display:block;'><p><object type='application/x-shockwave-flash' data='http://wordpress.com/wp-content/plugins/audio-player/player.swf' width='290' height='24' id='audioplayer1'><param name='movie' value='http://wordpress.com/wp-content/plugins/audio-player/player.swf' /><param name='FlashVars' value='&amp;bg=0xf8f8f8&amp;leftbg=0xeeeeee&amp;lefticon=0x666666&amp;rightbg=0xcccccc&amp;rightbghover=0x999999&amp;righticon=0x666666&amp;righticonhover=0xffffff&amp;text=0x666666&amp;slider=0x666666&amp;track=0xFFFFFF&amp;border=0x666666&amp;loader=0x9FFFB8&amp;soundFile=http%3A%2F%2Fguides.machinescience.org%2Ffile.php%2F29%2Fsounds%2Fbach_arduino.mp3' /><param name='quality' value='high' /><param name='menu' value='false' /><param name='bgcolor' value='#FFFFFF' /></object></p></span></code></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino Pro: Power Adaptation for FTDI Basic USB]]></title>
<link>http://softsolder.wordpress.com/2009/12/18/arduino-pro-power-adaptation-for-ftdi-basic-usb/</link>
<pubDate>Fri, 18 Dec 2009 12:09:32 +0000</pubDate>
<dc:creator>Ed</dc:creator>
<guid>http://softsolder.wordpress.com/2009/12/18/arduino-pro-power-adaptation-for-ftdi-basic-usb/</guid>
<description><![CDATA[Arduino FTDI Basic on modified Arduino Pro Some time ago, I bought a 5 V Arduino Pro board (about wh]]></description>
<content:encoded><![CDATA[Arduino FTDI Basic on modified Arduino Pro Some time ago, I bought a 5 V Arduino Pro board (about wh]]></content:encoded>
</item>
<item>
<title><![CDATA[Use an Arduino to control the XIPMods!]]></title>
<link>http://machinescience.wordpress.com/2009/12/17/use-an-arduino-to-control-the-xipmods/</link>
<pubDate>Thu, 17 Dec 2009 16:09:49 +0000</pubDate>
<dc:creator>ivanrudnicki</dc:creator>
<guid>http://machinescience.wordpress.com/2009/12/17/use-an-arduino-to-control-the-xipmods/</guid>
<description><![CDATA[XIPMod code libraries and example sketches are available for the Arduino. Now you can control any Ma]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>XIPMod code libraries and example sketches are available for the Arduino. Now you can control any Machine Science XIPMod using an Arduino, instead of a master module.</p>
<p style="text-align:center;"><a href="http://machinescience.wordpress.com/files/2009/12/arduinomasterio72dpi.gif"><img class="alignnone size-medium wp-image-14" title="ArduinoMasterIO(72dpi)" src="http://machinescience.wordpress.com/files/2009/12/arduinomasterio72dpi.gif?w=300" alt="" width="300" height="130" /></a><a href="http://guides.machinescience.org/file.php/29/xipmods.zip"></a></p>
<p style="text-align:center;"><a href="http://guides.machinescience.org/file.php/29/xipmods.zip">Download the XIPMode code library for the Arduino. </a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Arduino logic analyzer]]></title>
<link>http://dangerousprototypes.com/2009/12/17/arduino-logic-analyzer/</link>
<pubDate>Thu, 17 Dec 2009 07:37:48 +0000</pubDate>
<dc:creator>Ian</dc:creator>
<guid>http://dangerousprototypes.com/2009/12/17/arduino-logic-analyzer/</guid>
<description><![CDATA[Merve is working on an Arduino-driven logic analyzer design in the Arduino Forum. It uses logic chip]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-2586" title="picture8fp" src="http://wherelabs.wordpress.com/files/2009/12/picture8fp.png" alt="" width="450" height="438" /></p>
<p><a href="http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?action=viewprofile;username=Merve">Merve</a> is working on an <a href="http://arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1258704574">Arduino-driven logic analyzer design</a> in the Arduino Forum. It uses logic chips to drive SRAM memory during acquisition, the Arduino then dumps samples from the SRAM via a shift register.</p>
<p>We&#8217;re really interested in the result of this design. We once attempted a logic chip-based analyzer, but the design got complicated at high speeds because of the need for 16bit+ synchronous counters to drive the SRAM. Instead, we moved to <a href="http://hackaday.com/2008/12/11/how-to-programmable-logic-devices-cpld/">CPLDs</a> to try and squeeze all the logic ICs into a single, reprogrammable chip.</p>
<p>Several readers submitted a link to this post, thanks for the tip!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Light up your limbs]]></title>
<link>http://hackaday.com/2009/12/16/light-up-your-limbs/</link>
<pubDate>Wed, 16 Dec 2009 17:55:44 +0000</pubDate>
<dc:creator>Mike Szczys</dc:creator>
<guid>http://hackaday.com/2009/12/16/light-up-your-limbs/</guid>
<description><![CDATA[Here&#8217;s a Christmas tree project we can get behind. The &#8220;tree&#8221; itself is made of tw]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="alignnone size-full wp-image-19309" title="smd_led_christmas" src="http://hackadaycom.wordpress.com/files/2009/12/smd_led_christmas.jpg" alt="" width="470" height="339" /></p>
<p>Here&#8217;s a <a href="http://geekphysical.blogspot.com/2009/12/green-tree-in-electronics-pot.html">Christmas tree project</a> we can get behind. The &#8220;tree&#8221; itself is made of twisted pairs of insulated copper wire.  At the end of each pair a surface mount LED has been soldered between the two conductors.  All of the wire limbs converge into a 4&#215;4 matrix. One tree uses a prototyping shield and an Arduino, the other tree is just using an ATtiny2313 microprocessor. Take a look at the twinkling tree in the video after the break.</p>
<p>This artful creation uses one color of LEDs.  We&#8217;d love to see future improvements that incorporate multiple colors, enhance the fading effects, and perhaps add some interactivity such as pulsing to an inspiring rendition of Chestnuts Roasting on and Open Fire (which, consequently, is called &#8220;<a href="http://www.youtube.com/watch?v=JOQ4JxPDXIU">The Christmas Song</a>&#8220;).</p>
<p><!--more--><object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=1.161"
classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"> <param name="flashvars" value="photo_id=4186740171&amp;flickr_show_info_box=true"></param>
<param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=1.161"></param><param name="bgcolor" value="#000000"></param><param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=1.161" bgcolor="#000000" allowfullscreen="true"
flashvars="photo_id=4186740171&amp;flickr_show_info_box=true" height="300" width="400"></embed></object></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Final Project Report (Rhino Glove)]]></title>
<link>http://mtifall09.wordpress.com/2009/12/16/final-project-report-rhino-glove/</link>
<pubDate>Wed, 16 Dec 2009 17:34:44 +0000</pubDate>
<dc:creator>mehrdadgh</dc:creator>
<guid>http://mtifall09.wordpress.com/2009/12/16/final-project-report-rhino-glove/</guid>
<description><![CDATA[The goal of this project is developing a wireless glove and a software framework to manipulate a par]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>The goal of this project is developing a wireless glove and a software framework to manipulate a parametric model in Rhino 3D. The glove reads user’s hand movement and gestures using mounted sensors on it. Then a LilyPad Arduino gathers sensors data as input, processes them, and sends them using a XBee module wirelessly to the computer. The software framework on computer gets sent data using another XBee module, connected to the computer. Finally, the framework translate data to information for controlling the parametric model in Rhino 3D.</p>
<p>Link to documentation: <a title="Rhino Glove Documentation" href="http://mtifall09.wordpress.com/files/2009/12/rhinoglove.pdf" target="_blank">http://mtifall09.wordpress.com/files/2009/12/rhinoglove.pdf</a></p>
<p>Link to Arduino sketch: <a title="Rhino Glove Sketch" href="http://code.arc.cmu.edu/~cheng/uploads/RhinoGloveSketch.pde" target="_blank">http://code.arc.cmu.edu/~cheng/uploads/RhinoGloveSketch.pde</a></p>
<p>Link to Grasshopper definition: <a title="Rhino Glove Grasshopper Definition" href="http://rapidshare.com/files/321715436/Rhino_Glove.ghx" target="_blank">http://rapidshare.com/files/321715436/Rhino_Glove.ghx</a></p>
<p>Link to video: <a title="Rhino Glove Video" href="http://www.youtube.com/watch?v=6A5I48RLtx4" target="_blank">http://www.youtube.com/watch?v=6A5I48RLtx4</a></p>
<p><a title="Rhino Glove Video" href="http://www.youtube.com/watch?v=6A5I48RLtx4" target="_blank"><span style='text-align:center; display: block;'><object width='425' height='350'><param name='movie' value='http://www.youtube.com/v/6A5I48RLtx4&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' /><param name='allowfullscreen' value='true' /><param name='wmode' value='transparent' /><embed src='http://www.youtube.com/v/6A5I48RLtx4&#038;rel=1&#038;fs=1&#038;showsearch=0&#038;hd=0' type='application/x-shockwave-flash' allowfullscreen='true' width='425' height='350' wmode='transparent'></embed></object></span></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[capitolo 2 (mattina a melee island)]]></title>
<link>http://iosonolagommatulacolla.wordpress.com/2009/12/16/capitolo-2-mattina-a-melee-island/</link>
<pubDate>Wed, 16 Dec 2009 15:43:47 +0000</pubDate>
<dc:creator>crispian</dc:creator>
<guid>http://iosonolagommatulacolla.wordpress.com/2009/12/16/capitolo-2-mattina-a-melee-island/</guid>
<description><![CDATA[A new chapter! we tried some new simple interactions this morning. First of all we used this code in]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>A new chapter!</p>
<p>we tried some new simple interactions this morning.</p>
<p>First of all we used this code</p>
<pre class="brush: plain;">int value = 0;
void setup() {
Serial.begin(9600);
&#60;pre&#62;}&#60;/pre&#62;
//sets a signal on arduino's serial port?
void loop () {
value += 1; //values constantly plus one
Serial.println(value, DEC); // graphic visualization of the function
delay (5); //function delay, a number every 5 millisecond
}</pre>
<p>Using the serial number and giving the command &#8220;println&#8221; is useful. The program records its outputs and clicking on the export button on the arduino program we&#8217;ll have a window with a numeric representation of every output. You can use it to check your program and to see if everything is going how is supposed to be.</p>
<p>After that we worked again on some basics with the leds.</p>
<pre class="brush: plain;">
//in order to get a simulation of an analogic output
//i must use a pwm pin
int ledPin =  3;    // LED connected to digital pin 3
int ledVal = 5;  //defines brightness
// The setup() method runs once, when the sketch starts
void setup()   {
 // initialize the digital pin as an output:
 pinMode(ledPin, OUTPUT);
}
void loop()  {
for  (int x=0; x&#60;255; x++) { //defines x,fix a limit and establish that is gonna grow up
 analogWrite(ledPin, x); // pin brightness is gonna grow up
 delay(5); //imposta ritmo //with this rithm
}
for (int x=255; x&#62;0; x--) { //same as before but descendent
 analogWrite(ledPin,x);
 delay(5);
}
}
</pre>
<p><img class="alignnone" title="pulsazione dolce" src="http://img262.imageshack.us/img262/1705/pulsazionedolce.jpg" alt="" width="412" height="309" /></p>
<p>In this case we got a led which light grows up and diminish slowly in a loop. The code is quite clear. The only important thing is to be connected to a <em>pwm</em> pin cause it&#8217;s simulates an analogic output, so it can have a modulation instead of a 0/1 output (digital output). In Arduino 2009 the pwm pins are 3,5,6,9,10,11.</p>
<p>We actually started from a simpler example with only light growing up, the code is basically the same</p>
<pre class="brush: plain;">
int ledPin =  3;    // LED connected to digital pin 3
int ledVal = 5;  //defines brightness
// The setup() method runs once, when the sketch starts
void setup()   {
 // initialize the digital pin as an output:
 pinMode(ledPin, OUTPUT);
}
void loop()  {
for  (int x=0; x&#60;255; x++) { //defines x,fix a limit and establish that is gonna grow up
 analogWrite(ledPin, x); // pin brightness is gonna grow up
 delay(5); //imposta ritmo //with this rithm
}
}
</pre>
<p>Another variation of the code, with the same effect, is</p>
<pre class="brush: plain;">//use a pwm pin
int ledPin =  3;    // LED connected to digital pin 3
int ledVal = 5;  //brigthness
int direction = 1 ; //variable, defines flow direction
// The setup() method runs once, when the sketch starts
void setup()   {
 // initialize the digital pin as an output:
 pinMode(ledPin, OUTPUT);
}
void loop()  {
for  (int x=0; x&#60;255; x++) { //defines x with a limit and a growing up
 if(direction==1) { //when direction is +1
 analogWrite(ledPin,x);//then light will have a growing x value from 0 to 255
}
if(direction==-1) { // if direction is -1
 analogWrite(ledPin, 255-x); //light will diminish
}
delay(5); //general delay
}
direction *=-1; //every time direction (1) gets moltipled for -1. When is +1 it becomes -1, at the next cycle -1 will become again+1
}
</pre>
<p>After that we worked with a potentiometer</p>
<p><img class="alignnone" title="potentiometer" src="http://www.jobike.it/Public/data/maxpoz/200992314528_Potentiometer.jpg" alt="" width="307" height="360" /></p>
<p>Basically is just an analogic switch, so that we don&#8217;t have only an on/off output but also every output between those two (the scale goes from 0 to 1023).<br />
It must be connected to the 5 volt pin, to the grund and to a 10k resistor (as you can see it has 3 plugs). Here is the code</p>
<pre class="brush: plain;">
int sensorPin=2;  //output sensor
int sensorValue=0;
void setup () {
Serial.begin(9600);} //recall Arduino serial port
void loop (){
sensorValue = analogRead (sensorPin); //defines sensorvalue
int ledFadeValue = map(sensorValue, 0, 1023, 0, 255); //defines that the 0-1023 transistor range will be now converted in 0-255
analogWrite (11, ledFadeValue); //turns on the led
Serial.println(sensorValue, DEC); //digital output
delay(20); //rithm
}</pre>
<p><img class="alignnone" title="potenziometro base" src="http://img138.imageshack.us/img138/4433/potenziometrobase.jpg" alt="" width="451" height="338" /></p>
<p>So in here we just have a potentiometer that regulates a led. Now a variation</p>
<pre class="brush: plain;">int sensorPin=2;
int sensorValue=0;
void setup(){
Serial.begin(9600); //recall Arduino serial
}
void loop (){
sensorValue = analogRead (sensorPin);
int ledFadeValue = map(sensorValue, 0, 1023, 0, 255); // 0-1023 is used as 0-255
analogWrite (11, ledFadeValue); // pin will turn on and off
int ledFadeValue2 = map(sensorValue, 0, 1023, 255, 0); // in here we do the opposite, potentiomter 0
//corresponds to led 255 and so on
analogWrite (10, ledFadeValue2); // pin will turn off and on
Serial.println(sensorValue, DEC); //digital output visual
delay(20);
}

So we learned that with the &#60;em&#62;map&#60;/em&#62; option we can translate a range of values to another one. If we would have liked only to pass from a medium brigthness to a high one (not maximum still) the command would have been
[code]int ledFadeValue = map(sensorValue, 0, 1023, 123, 200);</pre>
<p>I took a video of this</p>
<p><span style='text-align:center; display: block;'><br />
<object type="application/x-shockwave-flash" width="400" height="300" data="http://www.vimeo.com/moogaloop.swf?clip_id=8219822&amp;server=www.vimeo.com&amp;fullscreen=1&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=01AAEA"><param name="quality" value="best" /><param name="allowfullscreen" value="true" /><param name="scale" value="showAll" /><param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=8219822&amp;server=www.vimeo.com&amp;fullscreen=1&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=01AAEA" /></object><br />
</span></p>
<p>We were done with the potentometer then and we started using a simple push-button.</p>
<pre class="brush: plain;">int buttonPin =2;  //button input
int ledPin=13; //output
int buttonState = 0;
void setup() {
 pinMode(ledPin,OUTPUT);
 pinMode(buttonPin,INPUT);  //button will be an input
}
void loop(){
 buttonState=digitalRead(buttonPin); //button state
 if(buttonState==HIGH){ //if the state is HIGH (pressed)
  digitalWrite(ledPin,HIGH); //turn LED on:
 } else{
 digitalWrite(ledPin,LOW);
&#60;pre&#62;
&#60;pre&#62; // turn LED off:&#60;/pre&#62;
&#60;/pre&#62;
}

&#60;img class=&#34;alignnone&#34; title=&#34;pulsante con buzzo&#34; src=&#34;http://img138.imageshack.us/img138/8623/pulsanteconbuzzo.jpg&#34; alt=&#34;&#34; width=&#34;448&#34; height=&#34;335&#34; /&#62;

I think that looks simple. If you keep the button pushed it will turn on the led (a buzz in this case). Now a little variation
[code]int buttonPin =2; //button input
int ledPin=13; //pin output
int buttonState = 0;
int redpin =5; //second pin output
void setup() {
 pinMode(ledPin,OUTPUT);
 pinMode (redpin,OUTPUT);
 pinMode(buttonPin,INPUT);
}
void loop(){
 buttonState=digitalRead(buttonPin); //defines button state
 if(buttonState==HIGH){ //if is pressed
 digitalWrite(ledPin,HIGH);//turn LED on
digitalWrite(redpin,LOW); //and the other one off
 }
 else{
 digitalWrite(ledPin,LOW);// turn LED off
digitalWrite(redpin,HIGH); //and the other one on
 }
}</pre>
</pre>
<p>Se there is a led always on and when you push the button it will turn off with a new one that will be turn off as long as you keep pushed. Another step further</p>
<pre class="brush: plain;">int old_val=0; //this variable stores the previous value of &#34;val&#34;
int state=0;
void setup(){
 pinMode(LED,OUTPUT); // tell arduino LED is on output
 pinMode(BUTTON, INPUT); //and Button is on input
}
void loop() {
 val=digitalRead(BUTTON); //read input value and store it
 if ((val==HIGH)&#38;&#38;(old_val==LOW)){ //check if there was a transition
 state=1-state; //changes state's value
 delay(10);
 }
 old_val=val; //val is now old,let's store it
 if (state==1){
 digitalWrite (LED,HIGH); //turn led on
 }else{
 digitalWrite(LED,LOW);
 }
}</pre>
<p>So that every time you push the button the led will change its state without having to keep pushed. One push it turns on, another one and goes off again.</p>
<p><span style='text-align:center; display: block;'><br />
<object type="application/x-shockwave-flash" width="400" height="300" data="http://www.vimeo.com/moogaloop.swf?clip_id=8220166&amp;server=www.vimeo.com&amp;fullscreen=1&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=01AAEA"><param name="quality" value="best" /><param name="allowfullscreen" value="true" /><param name="scale" value="showAll" /><param name="movie" value="http://www.vimeo.com/moogaloop.swf?clip_id=8220166&amp;server=www.vimeo.com&amp;fullscreen=1&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=01AAEA" /></object><br />
</span></p>
<p>That's pretty much all the code we wrote. We tried some soldering (unfortunately I don't have a video of my first try). I guess I'm not really good ad it but<br />
that's not the part that goes "public", i hope it won't be a huge problem. I took some pics but I didn't have a good camera, I hope I'll post a good one for the end of the week</p>
<p>That one is a buzzo beater, is an i/o device whichs makes a quite disturbing noise if on. We tried it with almost every function i mentioned before just to see how it responses.<br />
After that the day was practically over, we just went home with "some" homework to do, works that I'll post later.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Interactive beer pong table]]></title>
<link>http://hackaday.com/2009/12/15/interactive-beer-pong-table/</link>
<pubDate>Tue, 15 Dec 2009 21:25:02 +0000</pubDate>
<dc:creator>Caleb Kraft</dc:creator>
<guid>http://hackaday.com/2009/12/15/interactive-beer-pong-table/</guid>
<description><![CDATA[Do you find that beer pong is too dull on its own to keep your attention? Do you require flashing li]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><img class="size-full wp-image-19291 aligncenter" title="FRWZUVYG33P0NPH.MEDIUM" src="http://hackadaycom.wordpress.com/files/2009/12/frwzuvyg33p0nph-medium.jpg" alt="" width="375" height="500" /></p>
<p>Do you find that beer pong is too dull on its own to keep your attention? Do you require flashing lights to accentuate your imbibing?  Here&#8217;s the perfect solution. <a href="http://www.instructables.com/id/Interactive-aBeer-Pong-Beirut-Table/">Make an interactive beer pong table</a>. It didn&#8217;t take much to sell us on the idea. We think everything needs a few more lights.</p>
<p>The idea is that as the game progresses, you get different feedback from the lights visible in the picture above.  [rohitk] is using an Arduino and some pressure sensors to tell when each cup is removed. Based on this the LEDs change color.</p>
</div>]]></content:encoded>
</item>

</channel>
</rss>
