<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Hack a Day &#187; dac</title>
	<atom:link href="http://hackaday.com/tag/dac/feed/" rel="self" type="application/rss+xml" />
	<link>http://hackaday.com</link>
	<description>Fresh hacks every day</description>
	<lastBuildDate>Fri, 10 Feb 2012 09:25:07 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='hackaday.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://1.gravatar.com/blavatar/5560f98f805877b0e332f191cb9e0af3?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Hack a Day &#187; dac</title>
		<link>http://hackaday.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://hackaday.com/osd.xml" title="Hack a Day" />
	<atom:link rel='hub' href='http://hackaday.com/?pushpress=hub'/>
		<item>
		<title>Dabbling with CPLD generated VGA signals</title>
		<link>http://hackaday.com/2011/05/05/dabbling-with-cpld-generated-vga-signals/</link>
		<comments>http://hackaday.com/2011/05/05/dabbling-with-cpld-generated-vga-signals/#comments</comments>
		<pubDate>Thu, 05 May 2011 20:01:06 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[Microcontrollers]]></category>
		<category><![CDATA[Altera]]></category>
		<category><![CDATA[cpld]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[EPM7128SLC84-7N]]></category>
		<category><![CDATA[resistor]]></category>
		<category><![CDATA[vga]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=42268</guid>
		<description><![CDATA[It seems like all the cool kids are leaving the 8-bit hobby microcontrollers in the parts bin and playing with more advanced parts like Complex Programmable Logic Devices. [Chris] is no exception to the trend, and set out to generate his own VGA signal using one of the beefy semiconductors. It seems that he&#8217;s using [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=42268&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-42269" title="vga-output-from-a-cpld" src="http://hackadaycom.files.wordpress.com/2011/05/vga-output-from-a-cpld.jpg" alt="" width="470" height="400" /></p>
<p>It seems like all the cool kids are leaving the 8-bit hobby microcontrollers in the parts bin and playing with more advanced parts like Complex Programmable Logic Devices. [Chris] is no exception to the trend, and <a href="http://www.pyroelectro.com/tutorials/fpga_vga_resistor_dac">set out to generate his own VGA signal using one of the beefy semiconductors</a>.</p>
<p>It seems that he&#8217;s using the acronyms CPDL and FPGA interchangeable in his post but according to the parts list this setup uses an Altera EPM7128SLC84-7N CPLD. In order to generate the VGA signal he needed a way to convert the digital signals from the chip into the analog values called for in the video standard. He chose to build a Digital Analog Converter for the RGB color values using a resistor network which he calculated using <a href="http://en.wikipedia.org/wiki/PSpice">PSpice</a>. The other piece in the puzzle is a 25.175 MHz oscillator to clock the CPLD. As you can see after the break, his wire-wrapped prototype works exactly as designed. The example code generates the rainbow bars seen above, or a bouncing box demo reminiscent of a DVD player screen saver.</p>
<p>Want to know more about programming CPLDs? <a href="http://hackaday.com/2008/12/11/how-to-programmable-logic-devices-cpld/">We did a tutorial on the subject</a> a while back.</p>
<p><span id="more-42268"></span><span style="text-align:center; display: block;"><a href="http://hackaday.com/2011/05/05/dabbling-with-cpld-generated-vga-signals/"><img src="http://img.youtube.com/vi/Tc572ygU70o/2.jpg" alt="" /></a></span></p>
<br />Filed under: <a href='http://hackaday.com/category/microcontrollers/'>Microcontrollers</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/42268/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/42268/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/42268/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=42268&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2011/05/05/dabbling-with-cpld-generated-vga-signals/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/05/vga-output-from-a-cpld.jpg" medium="image">
			<media:title type="html">vga-output-from-a-cpld</media:title>
		</media:content>
	</item>
		<item>
		<title>Your first Digital to Analog Converter build</title>
		<link>http://hackaday.com/2011/02/17/your-first-digital-to-analog-converter-build/</link>
		<comments>http://hackaday.com/2011/02/17/your-first-digital-to-analog-converter-build/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 17:00:59 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[Microcontrollers]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[r-2r]]></category>
		<category><![CDATA[resistor ladder]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=35198</guid>
		<description><![CDATA[Have you ever built a Digital to Analog Converter before? This is a circuit that can take the 0 or 5V coming off of several digital logic pins, combine them together, and spit out one analog voltage that represents that value. If you&#8217;ve never made one, here&#8217;s your chance. [Collin Cunningham] over at Make put [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=35198&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-35199" title="building-your-first-DAC" src="http://hackadaycom.files.wordpress.com/2011/02/building-your-first-dac.jpg" alt="" width="470" height="263" /></p>
<p>Have you ever built a Digital to Analog Converter before? This is a circuit that can take the 0 or 5V coming off of several digital logic pins, combine them together, and spit out one analog voltage that represents that value. If you&#8217;ve never made one, here&#8217;s your chance. [Collin Cunningham] over at Make put together another <a href="http://blog.makezine.com/archive/2011/02/dac.html">lab video about DACs</a> which we&#8217;ve embedded after the break.</p>
<p>The circuit above uses an R-2R resistor network &#8211; often called a resistor ladder &#8211; which you can learn much more about from <a href="http://www.ikalogic.com/dac08.php">the reference page</a> that [Collin] links to. Although a DAC in an IC package is by far the most commonly found application, we do see these <a href="http://hackaday.com/2010/08/17/building-a-discrete-digital-analog-converter/">R-2R networks in audio hacks</a> from time to time.</p>
<p><span id="more-35198"></span><span style="text-align:center; display: block;"><a href="http://hackaday.com/2011/02/17/your-first-digital-to-analog-converter-build/"><img src="http://img.youtube.com/vi/b-vUg7h0lpE/2.jpg" alt="" /></a></span></p>
<br />Filed under: <a href='http://hackaday.com/category/microcontrollers/'>Microcontrollers</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/35198/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/35198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/35198/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=35198&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2011/02/17/your-first-digital-to-analog-converter-build/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/02/building-your-first-dac.jpg" medium="image">
			<media:title type="html">building-your-first-DAC</media:title>
		</media:content>
	</item>
		<item>
		<title>Intro to Circuit Bending</title>
		<link>http://hackaday.com/2011/01/11/intro-to-circuit-bending/</link>
		<comments>http://hackaday.com/2011/01/11/intro-to-circuit-bending/#comments</comments>
		<pubDate>Tue, 11 Jan 2011 22:00:50 +0000</pubDate>
		<dc:creator>Joseph Thibodeau</dc:creator>
				<category><![CDATA[digital audio hacks]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[musical hacks]]></category>
		<category><![CDATA[toy hacks]]></category>
		<category><![CDATA[circuit bend]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[pwm]]></category>
		<category><![CDATA[synthesizer]]></category>
		<category><![CDATA[wavetable]]></category>
		<category><![CDATA[yamaha]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=32760</guid>
		<description><![CDATA[Electronic musical instruments are a lot of fun for a hacker because, with a small palette of tools, know-how and curiosity, they are easily modified. As with any hack, there is always the chance that the subject will be ruined, so it&#8217;s not necessarily worth the risk to muck about inside your thousand-dollar pro synthesizer. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=32760&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-32779" title="Banner" src="http://hackadaycom.files.wordpress.com/2011/01/banner.jpg" alt="" width="470" height="224" /></p>
<p>Electronic musical instruments are a lot of fun for a hacker because, with a small palette of tools, know-how and curiosity, they are easily modified. As with any hack, there is always the chance that the subject will be ruined, so it&#8217;s not necessarily worth the risk to muck about inside your thousand-dollar pro synthesizer. Luckily for all of us, there are shovel-fulls of old electronic musical toys littering the curbs and second-hand shops of the world. These fun little devices provide ample opportunity to get familiar with audio electronics and circuit bending techniques.</p>
<p>A note on definitions: the term &#8220;circuit bending&#8221; can be synonymous with &#8220;hardware hacking&#8221; in the world of audio electronics, and we have seen some debate as to which term is better suited to a given project. We welcome you to share your viewpoints in the comments.</p>
<p>Keep reading to get started.<br />
<span id="more-32760"></span></p>
<p><strong>Materials</strong></p>
<p>So, you&#8217;ve heard of circuit bending and you want to give it a try eh? Well for this introduction, you&#8217;re going to need at minimum the following materials:</p>
<ul>
<li>electronic musical instrument (the bendee) with batteries or AC adapter</li>
<li>alligator clips (for temporary connections)</li>
<li>various resistors and/or a potentiometer</li>
<li>ears</li>
</ul>
<p>and it&#8217;s a great help if you also have:</p>
<ul>
<li>oscilloscope</li>
<li>bench-top power supply</li>
<li>camera</li>
</ul>
<p>For our first attempt at circuit bending, we will be using a Yamaha PSS-14 keyboard. We found it by the side of the road, abandoned and lonely and without a friend in the world. Like mad scientists conducting mad genetic experiments on lonely abandoned animals, we will rebuild this poor creature to be better, stronger, and stranger than before!</p>
<p><strong>Background Research</strong></p>
<p>Thanks to our high-fallootin&#8217; academic standards, we&#8217;ll start by researching a little bit about the keyboard in question. The more adventurous among you can skip this step and dive straight into the fun part. From <a href="http://usa.yamaha.com/products/musical-instruments/keyboards/digitalkeyboards/portable_keyboards/pss14/?mode=model">Yamaha&#8217;s site</a>, we can see that this model sports &#8220;100 Advanced Wave Memory Voices&#8221;&#8211;that&#8217;s their hilarious marketing term for &#8220;100 Pre-written Sound Files&#8221;&#8211;making this what&#8217;s known as a &#8220;Wavetable Synthesizer&#8221;. Wavetable synthesis is a very easy and cheap way to create sounds because you can simply copy a bunch of sounds to the memory of the chip and then read through them sample-by-sample, changing the sampling rate to change the pitch (or having separate samples for each pitch value, depending how much memory you have to play with).</p>
<p>Further research reveals that we&#8217;re not the first to circuit-bend this particular keyboard. <a href="http://www.youtube.com/watch?v=5BiVIl7SFHU">This example</a> and also <a href="http://www.youtube.com/watch?v=CGTxYDAEKOU">this one</a> show some interesting possibilities, and by the end of this article we&#8217;ll have a better idea of what they&#8217;ve done. But enough talk, let&#8217;s crack this baby open!<br />
<img class="alignnone size-full wp-image-32762" title="1-KeyboardFront" src="http://hackadaycom.files.wordpress.com/2011/01/1-keyboardfront.jpg" alt="" width="470" height="352" /><br />
Here we see the PSS-14 in its original state: operational, but missing the case screws (it was held together by duct tape when we found it). Perhaps a previous owner did some exploration of their own?<br />
<img class="alignnone size-full wp-image-32763" title="2-Songs" src="http://hackadaycom.files.wordpress.com/2011/01/2-songs.jpg" alt="" width="470" height="352" /><br />
The preprogrammed songs cover all the major categories of music: Memories, Cool&amp;Hot, Favourites, Fun Time. When we were younger we used to listen to Cool&amp;Hot music all the time, but then it got mainstream so now we&#8217;re mostly into the underground Memories scene. You haven&#8217;t lived &#8217;till you&#8217;ve heard the new remix of &#8220;Gallant Pig&#8221;.<br />
<img class="alignnone size-full wp-image-32764" title="3-Voices" src="http://hackadaycom.files.wordpress.com/2011/01/3-voices.jpg" alt="" width="470" height="352" /><br />
There are twenty keyboard-controlled voices to choose from, most of which sound about the same. The volume controls seen here make a very loud &#8220;bongo&#8221; sound when you press them, no matter if the volume&#8217;s as low as possible.</p>
<p><strong>Look Under the Hood</strong></p>
<p>Clearly this thing could be better, so let&#8217;s open it up and see what we can improve about its operation.<br />
<img class="alignnone size-full wp-image-32765" title="4-Board1" src="http://hackadaycom.files.wordpress.com/2011/01/4-board1.jpg" alt="" width="470" height="352" /><br />
The circuit board under the hood is pretty sparse, which is somewhat unsurprising seeing as it&#8217;s a wavetable synth and therefore most of the fun stuff is taken care of inside the microcontroller seen on the right. If you can find old electronic musical toys from before the digital era, you have access to a lot more of the nitty-gritty sound generation. Unfortunately those are much harder to find on the side of the road.<br />
<img class="alignnone size-full wp-image-32766" title="5-BoardPower" src="http://hackadaycom.files.wordpress.com/2011/01/5-boardpower.jpg" alt="" width="470" height="352" /><br />
On the left side of the circuit board we can see the clearly-marked Vcc and GND connections, which would be easy enough to find from the battery terminals. The keyboard takes 4 AA batteries, which means it runs on a 6-Volt supply. We didn&#8217;t have the AC adapter for this keyboard so we&#8217;ll run it off of our bench-top power supply for now.<br />
This hardly needs to be said but BE REALLY CAREFUL if you are going to use an AC-powered device. The bench-top supply we&#8217;re using has a current-limiter but a wall-wart transformer can push dangerous  crowds of electrons through your body, which we understand to be an uncomfortable experience.<br />
<img class="alignnone size-full wp-image-32767" title="7-BoardChip" src="http://hackadaycom.files.wordpress.com/2011/01/7-boardchip.jpg" alt="" width="470" height="352" /><br />
On the right, we can see a bunch more resistors and&#8211;the holy grail&#8211;a clock component (it&#8217;s the blue blob to the left of the IC)! On digital synthesizers this is generally the main source of fun.<br />
<img class="alignnone size-full wp-image-32768" title="8-BoardMiddle" src="http://hackadaycom.files.wordpress.com/2011/01/8-boardmiddle.jpg" alt="" width="470" height="352" /><br />
In the middle of the board there is a cluster of capacitors and what looks like a multi-transistor package. When we turn the board around and start probing, we&#8217;ll figure out what this is all about.<br />
<img class="alignnone size-full wp-image-32769" title="9-GreenBoard" src="http://hackadaycom.files.wordpress.com/2011/01/9-greenboard.jpg" alt="" width="470" height="352" /><br />
The soldered and printed side of the circuit board is much more interesting to look at. The dark patches that you see are conductive ink&#8211;this is a really common and cheap sensor technology used in everything from the humble NES controller to high-end Roland electric pianos. It&#8217;s a form of what&#8217;s known as a <a href="http://www.sensorwiki.org/doku.php/sensors/force-sensitive_resistor?s[]=fsr">force-sensing resistor (FSR)</a> and it suffers from major nonlinearity, hysteresis and repeatability. On the other hand, it&#8217;s dead easy to implement and it can be printed onto a board.<br />
<img class="alignnone size-full wp-image-32770" title="10-CPUClose" src="http://hackadaycom.files.wordpress.com/2011/01/10-cpuclose.jpg" alt="" width="470" height="352" /><br />
On the underside of the CPU we can start to characterize the pin functions. A lot of the pins go out to the various keys and buttons. A lot of those transistors that we saw topside are dedicated to this key matrix, too.</p>
<p><strong>Scope it Out</strong><br />
<img class="alignnone size-full wp-image-32771" title="11-TDM" src="http://hackadaycom.files.wordpress.com/2011/01/11-tdm.jpg" alt="" width="470" height="400" /><br />
Upon further investigation the button/key states are time-division multiplexed onto pulse wave signals based on a global excitation, illustrated here. <a href="http://www.hollis.co.uk/john/bent/">According to this fellow</a> who lists a circuit-bent PSS-15 (same model as this but with a silver control panel), connecting part of the audio output to the keyboard matrix returns can re-trigger buttons or keys to make &#8220;loops&#8221;. Very interesting, seeing as:<br />
<img class="alignnone size-full wp-image-32772" title="12-PWMDAC" src="http://hackadaycom.files.wordpress.com/2011/01/12-pwmdac.jpg" alt="" width="470" height="352" /><br />
The keyboard uses a PWM-based DAC scoped here in comparison to the audio output further down the line. Again this is a very cheap technology (you can make one for your arduino pretty easily) and you can get a<a href="http://www.diolan.com/articles/dac.html"> simple explanation here</a>. Right off the bat we can see that a disadvantage to this technology is that its transition times between various voltage levels might be difficult to control, possibly leading to distortion. That aside, it will be interesting to connect the PWM DAC output to one or more of the keyboard matrix returns.<br />
<img class="alignnone size-full wp-image-32773" title="13-HackPoints" src="http://hackadaycom.files.wordpress.com/2011/01/13-hackpoints.jpg" alt="" width="470" height="352" /><br />
Here is a closeup of two interesting &#8220;hack points&#8221; on this keyboard. We&#8217;ll change the resistors on the right to see what it does to the signal, and we&#8217;ll change up the existing 8MHz clock for a different one.<br />
<img class="alignnone size-full wp-image-32774" title="15-TriSquareWaves" src="http://hackadaycom.files.wordpress.com/2011/01/15-trisquarewaves.jpg" alt="" width="470" height="352" /><br />
The sine wave oscillations of component CL1 can be scoped to show a transformation into square wave, which we can safely assume is driving the operations of the microcontroller.</p>
<p><strong>Modifying the Circuit</strong></p>
<p>It just so happened that we had a spare 3MHz oscillator sitting around, so let&#8217;s find out what happens when we drive this device at 3/8ths of its normal speed.<br />
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2011/01/11/intro-to-circuit-bending/"><img src="http://img.youtube.com/vi/ID6JdjH8gk4/2.jpg" alt="" /></a></span><br />
A quick and dirty soldering job gives immediate results. In the video you can hear the results with the new clock and changing the resistor value at the PWM output&#8211;overdrive city!<br />
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2011/01/11/intro-to-circuit-bending/"><img src="http://img.youtube.com/vi/rtJtg8AhMFY/2.jpg" alt="" /></a></span><br />
Furthermore, by patching the audio output to parts of the keyboard matrix, we can create the &#8220;loops&#8221; as discussed eariler.<br />
The results thus far have been, well, a little underwhelming. We can make the sounds slower and we can make little loops, and we&#8217;ve learned a little bit about consumer-level electronic toys. Still, at this point we were hoping to have unlocked some seriously badass digital fury.<br />
Serendipity came to our help at this point, and an inadvertent touch of the oscillator legs produced the righteous vibes we&#8217;d been banking on!<br />
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2011/01/11/intro-to-circuit-bending/"><img src="http://img.youtube.com/vi/BCYwfa5n4lE/2.jpg" alt="" /></a></span><br />
The sounds that came out of this thing were incredible. Somehow, after assembly, this type of thing was happening at startup and it&#8217;s now only about a one in ten chance that the keyboard boots properly. Even then it&#8217;s at running 3/8ths speed&#8230; except some of the time, somehow, it properly adapts the PWM output so that despite the underclocked CPU the wavetables read at the original sampling rate. Who knows what is going on that ASIC.</p>
<p><strong>What to do with it now?</strong></p>
<p>At this point in our circuit-bending adventure we&#8217;ve characterized the operation of the device and found a couple of fun bends. Where to go from here? Well, one option would be to make the modifications permanent with the addition of pots, buttons, patchbays and what-have-you so that the end result is a sleek and performable instrument. We&#8217;ll be saving for a later date. Since, as we mentioned at the beginning of the article, it is quite possible to destroy a hacked piece of electronics simply by virtue of the stress caused by the modifications themselves, we&#8217;re going to finish this bend by recording the myriad new sounds that the keyboard produces, and composing a short celebratory piece of music:<br />
<span style='text-align:left;display:block;'><p><object type='application/x-shockwave-flash' data='http://s0.wp.com/wp-content/plugins/audio-player/player.swf' width='290' height='24' id='audioplayer1'><param name='movie' value='http://s0.wp.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%2Fhackadaycom.files.wordpress.com%2F2011%2F01%2Fyamahapss14sequence.mp3' /><param name='quality' value='high' /><param name='menu' value='false' /><param name='bgcolor' value='#FFFFFF' /><param name='wmode' value='opaque' /></object></p></span></p>
<p><strong>Summary</strong></p>
<p>While you may not have this exact toy keyboard at your disposal, the same techniques and methodology used here can be applied to many other audio devices. It&#8217;s simply a matter of</p>
<ol>
<li>Taking your time</li>
<li>Understanding the technology</li>
<li>Characterizing the circuit</li>
<li>Experimenting</li>
</ol>
<p>At the end of the day it&#8217;s not really that difficult to get started at this sort of thing&#8211;hopefully the concept of circuit bending has been demystified for some of you. This isn&#8217;t to say that circuit bending can&#8217;t go deeper than shown here, as this only shows the most elementary steps. And the complexity of the device you&#8217;re working with greatly affects the types of bends you can do&#8211;for example, the <a href="http://hackaday.com/2008/06/18/tr-909-teardown/">TR909</a> has many timing circuits that can be played with in much the same way as our Yamaha. We&#8217;ve recommended it and we&#8217;ll recommend it again, but for further reading be sure to check out Nick Collins&#8217; <em><a href="http://www.amazon.ca/Handmade-Electronic-Music-Hardware-Hacking/dp/0415975921">Handmade Electronic Instruments</a>.</em> It contains a good section on toy hacking, and it&#8217;s generally a very good read.</p>
<p>If you enjoyed this introduction and want us to write further articles exploring different parts of circuit bending (or audio hacking in general), please let us know in the comments.</p>
<br />Filed under: <a href='http://hackaday.com/category/digital-audio-hacks/'>digital audio hacks</a>, <a href='http://hackaday.com/category/how-to/'>how-to</a>, <a href='http://hackaday.com/category/musical-hacks/'>musical hacks</a>, <a href='http://hackaday.com/category/toy-hacks/'>toy hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/32760/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/32760/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/32760/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=32760&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2011/01/11/intro-to-circuit-bending/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
<enclosure url="http://hackadaycom.files.wordpress.com/2011/01/yamahapss14sequence.mp3" length="1465505" type="audio/mpeg" />
	
		<media:content url="" medium="image">
			<media:title type="html">josephthibodeau</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/banner.jpg" medium="image">
			<media:title type="html">Banner</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/1-keyboardfront.jpg" medium="image">
			<media:title type="html">1-KeyboardFront</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/2-songs.jpg" medium="image">
			<media:title type="html">2-Songs</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/3-voices.jpg" medium="image">
			<media:title type="html">3-Voices</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/4-board1.jpg" medium="image">
			<media:title type="html">4-Board1</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/5-boardpower.jpg" medium="image">
			<media:title type="html">5-BoardPower</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/7-boardchip.jpg" medium="image">
			<media:title type="html">7-BoardChip</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/8-boardmiddle.jpg" medium="image">
			<media:title type="html">8-BoardMiddle</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/9-greenboard.jpg" medium="image">
			<media:title type="html">9-GreenBoard</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/10-cpuclose.jpg" medium="image">
			<media:title type="html">10-CPUClose</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/11-tdm.jpg" medium="image">
			<media:title type="html">11-TDM</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/12-pwmdac.jpg" medium="image">
			<media:title type="html">12-PWMDAC</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/13-hackpoints.jpg" medium="image">
			<media:title type="html">13-HackPoints</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/15-trisquarewaves.jpg" medium="image">
			<media:title type="html">15-TriSquareWaves</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2011/01/yamahapss14sequence.mp3" medium="audio">
			<media:player url="http://hackaday.com/wp-content/plugins/audio-player/player.swf?soundFile=http://hackadaycom.files.wordpress.com/2011/01/yamahapss14sequence.mp3" />
		</media:content>
	</item>
		<item>
		<title>Android Talks Pulsewave</title>
		<link>http://hackaday.com/2010/11/10/android-talks-pulsewave/</link>
		<comments>http://hackaday.com/2010/11/10/android-talks-pulsewave/#comments</comments>
		<pubDate>Wed, 10 Nov 2010 12:16:05 +0000</pubDate>
		<dc:creator>Joseph Thibodeau</dc:creator>
				<category><![CDATA[android hacks]]></category>
		<category><![CDATA[digital audio hacks]]></category>
		<category><![CDATA[portable audio hacks]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[rs232]]></category>
		<category><![CDATA[serial]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=30462</guid>
		<description><![CDATA[Serial communications are a mainstay of digital computing. They don&#8217;t require much physical infrastructure and they exist in variations to fit almost any application. The behaviour of serial communications lines, varying from high to low voltage in a timed pattern, is analogous to a 1-bit DAC. Using a whole DAC for serial communication would be [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=30462&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-30468" title="Picture 2" src="http://hackadaycom.files.wordpress.com/2010/11/picture-2.png" alt="" width="470" height="426" /></p>
<p>Serial communications are a mainstay of digital computing. They don&#8217;t require much physical infrastructure and they exist in variations to fit almost any application. The behaviour of serial communications lines, varying from high to low voltage in a timed pattern, is analogous to a 1-bit DAC. <a title="I'll have a half-DAC, hold the DSP." href="http://robots-everywhere.com/re_wiki/index.php?title=Serial_on_Android_using_the_audio_port">Using a whole DAC for serial communication</a> would be a waste in most cases, but the [<a href="http://www.robots-everywhere.com/">RobotsEverywhere</a>] team found an exception which you may have <a href="http://hackaday.com/2010/02/01/android-audio-serial-connection/">encountered already</a>.</p>
<p>Since the audio output of the Android is accessible and addressable, [<a href="http://www.robots-everywhere.com/">RobotsEverywhere</a>] wrote source code to use the left and right channels as separate serial communication lines. This circumvents the need to bust into the device and muck about with the hardware which is great if you want a no-risk hack that allows communications to an RS232 port. Any hardware on  which you can write to the DAC (and control the sampling rate) is a  potential target.</p>
<p>There are some external electronics required to convert the audio signal to TTL, but it&#8217;s not very complicated&#8211;a couple of comparators and change. You can see it in action after the break.</p>
<p>As a bonus, when you&#8217;re done for the day you can plug in your headphones and listen to the <a title="Be careful what you wish for" href="http://www.youtube.com/watch?v=tptC6fSB-Hg">soothing poetry of pulse waves</a> all night long.</p>
<p><span id="more-30462"></span><span style="text-align:center; display: block;"><a href="http://hackaday.com/2010/11/10/android-talks-pulsewave/"><img src="http://img.youtube.com/vi/PfSSPTtacnk/2.jpg" alt="" /></a></span></p>
<br />Filed under: <a href='http://hackaday.com/category/android-hacks/'>android hacks</a>, <a href='http://hackaday.com/category/digital-audio-hacks/'>digital audio hacks</a>, <a href='http://hackaday.com/category/portable-audio-hacks/'>portable audio hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/30462/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/30462/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/30462/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=30462&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2010/11/10/android-talks-pulsewave/feed/</wfw:commentRss>
		<slash:comments>38</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">josephthibodeau</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2010/11/picture-2.png" medium="image">
			<media:title type="html">Picture 2</media:title>
		</media:content>
	</item>
		<item>
		<title>PIC programmable power supply</title>
		<link>http://hackaday.com/2010/10/06/pic-programmable-power-supply/</link>
		<comments>http://hackaday.com/2010/10/06/pic-programmable-power-supply/#comments</comments>
		<pubDate>Wed, 06 Oct 2010 15:58:23 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[tool hacks]]></category>
		<category><![CDATA[18f4520]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[keypad]]></category>
		<category><![CDATA[pic]]></category>
		<category><![CDATA[power]]></category>
		<category><![CDATA[power supply]]></category>
		<category><![CDATA[programmable]]></category>
		<category><![CDATA[r-2r]]></category>
		<category><![CDATA[transistor]]></category>
		<category><![CDATA[voltage]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=28992</guid>
		<description><![CDATA[This programmable power supply is the perfect addition to your bench tools. [Debraj Deb], who previously built a whole house power monitor, designed this build around a PIC 18F4520 microcontroller. The desired voltage is set with an attached keypad, resulting in a digital output on the 8-bits of port D. The port connects to another [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=28992&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-28993" title="pic-programmable-power-supply" src="http://hackadaycom.files.wordpress.com/2010/10/pic-programmable-power-supply.jpg" alt="" width="470" height="353" /></p>
<p>This <a href="http://www.youtube.com/watch?v=zUTZ4zQ2HoA">programmable power supply</a> is the perfect addition to your bench tools. [Debraj Deb], who previously <a href="http://hackaday.com/2010/07/07/whole-house-current-monitoring/">built a whole house power monitor</a>, designed this build around a PIC 18F4520 microcontroller. The desired voltage is set with an attached keypad, resulting in a digital output on the 8-bits of port D. The port connects to another protoboard with an R-2R digital-to-analog converter resulting in the target voltage. A set of transistors amplifies the current and a power transistor then takes care of the final output. After the break you&#8217;ll find two videos, the first walks us through the hardware and the second demonstrates the device in action, along with measurements of its performance. This certainly provides a lot more functionality than <a href="http://hackaday.com/2009/08/24/bench-power-supply-adapter/">an ATX power-supply conversion</a>.</p>
<p><strong>Update:</strong> A big thanks to [Debraj] who sent us ﻿a code package as well as <a href="http://hackadaycom.files.wordpress.com/2010/10/prog_power_supply.pdf">the schematic</a> (PDF) used during testing. We&#8217;re having trouble getting the code package up for download right now. Check back later, hopefully we&#8217;ll have it up soon.</p>
<p><span id="more-28992"></span></p>
<p>Part 1</p>
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2010/10/06/pic-programmable-power-supply/"><img src="http://img.youtube.com/vi/d6XO1oouZm8/2.jpg" alt="" /></a></span>
<p>Part 2</p>
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2010/10/06/pic-programmable-power-supply/"><img src="http://img.youtube.com/vi/zUTZ4zQ2HoA/2.jpg" alt="" /></a></span>
<br />Filed under: <a href='http://hackaday.com/category/tool-hacks/'>tool hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/28992/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/28992/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/28992/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=28992&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2010/10/06/pic-programmable-power-supply/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2010/10/pic-programmable-power-supply.jpg" medium="image">
			<media:title type="html">pic-programmable-power-supply</media:title>
		</media:content>
	</item>
		<item>
		<title>Atari 2600 recreated in an FPGA</title>
		<link>http://hackaday.com/2010/09/15/atari-2600-recreated-in-an-fpga/</link>
		<comments>http://hackaday.com/2010/09/15/atari-2600-recreated-in-an-fpga/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 17:04:36 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[classic hacks]]></category>
		<category><![CDATA[atari 2600]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[fpga]]></category>
		<category><![CDATA[r-2r]]></category>
		<category><![CDATA[ressitor ladder]]></category>
		<category><![CDATA[Spartan-3E]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=28229</guid>
		<description><![CDATA[Behold [Retromaster's] field programmable gate array implementation of an Atari 2600. The processor and video chip have both been built in the 100,000 gate Spartan-3E FPGA, with connectors for audio, video, and a Sega controller. The output signals are generated using two DACs made from R-2R resistor ladders, much like the project we saw in August. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=28229&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-28230" title="fpga-atari2600" src="http://hackadaycom.files.wordpress.com/2010/09/fpga-atari2600.jpg" alt="" width="470" height="279" /></p>
<p>Behold [Retromaster's] field programmable gate array <a href="http://retromaster.wordpress.com/a2601/">implementation of an Atari 2600</a>. The processor and video chip have both been built in the 100,000 gate Spartan-3E FPGA, with connectors for audio, video, and a Sega controller. The output signals are generated using two DACs made from R-2R resistor ladders, much like <a href="http://hackaday.com/2010/08/17/building-a-discrete-digital-analog-converter/">the project we saw in August</a>. [Retromaster] included functionality for the system switches (difficulty and select) in the controller itself. There is VHDL code and board details available if you want to make one of your own. To help in making that decision we&#8217;ve embedded video of it after the break.<span id="more-28229"></span><div class='embed-vimeo' style='text-align:center;'><iframe src='http://player.vimeo.com/video/14772895' width='400' height='300' frameborder='0'></iframe></div></p>
<p>[Thanks Gokhan]</p>
<br />Filed under: <a href='http://hackaday.com/category/classic-hacks/'>classic hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/28229/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/28229/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/28229/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=28229&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2010/09/15/atari-2600-recreated-in-an-fpga/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2010/09/fpga-atari2600.jpg" medium="image">
			<media:title type="html">fpga-atari2600</media:title>
		</media:content>
	</item>
		<item>
		<title>Building a discrete digital-analog-converter</title>
		<link>http://hackaday.com/2010/08/17/building-a-discrete-digital-analog-converter/</link>
		<comments>http://hackaday.com/2010/08/17/building-a-discrete-digital-analog-converter/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 19:38:30 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[digital audio hacks]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[digital to analog converter]]></category>
		<category><![CDATA[ladder]]></category>
		<category><![CDATA[r-2r]]></category>
		<category><![CDATA[resistor]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=27265</guid>
		<description><![CDATA[Want to take back control of how your digital audio files become sound? One thing you can do is to build your own digital to analog converter. This one is made from discrete components, centered around a resistive ladder. Yes, there are a couple of integrated circuits in there which are used for demultiplexing the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=27265&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-27272" title="discrete-dac" src="http://hackadaycom.files.wordpress.com/2010/08/discrete-dac-e1282061017424.jpg" alt="" width="470" height="264" /></p>
<p>Want to take back control of how your digital audio files become sound? One thing you can do is to <a href="http://www.sonicillusions.co.uk/discrete_dac.htm">build your own digital to analog converter</a>. This one is made from discrete components, centered around a resistive ladder. Yes, there are a couple of integrated circuits in there which are used for demultiplexing the incoming signal but the magic happens in that R-2R network. The project is an interesting read and makes a point of looking at the issues raised when trying to precision match resistors. Apparently it can be done with 0.1% components if you have a lot of them and a multimeter that can measure down to seven decimal places.</p>
<p>[Thanks Bigbob]</p>
<br />Filed under: <a href='http://hackaday.com/category/digital-audio-hacks/'>digital audio hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/27265/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/27265/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/27265/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=27265&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2010/08/17/building-a-discrete-digital-analog-converter/feed/</wfw:commentRss>
		<slash:comments>26</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2010/08/discrete-dac-e1282061017424.jpg" medium="image">
			<media:title type="html">discrete-dac</media:title>
		</media:content>
	</item>
		<item>
		<title>One-handed GameCube controller</title>
		<link>http://hackaday.com/2010/08/12/one-handed-gamecube-controller/</link>
		<comments>http://hackaday.com/2010/08/12/one-handed-gamecube-controller/#comments</comments>
		<pubDate>Thu, 12 Aug 2010 13:09:56 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[peripherals hacks]]></category>
		<category><![CDATA[accelerometer]]></category>
		<category><![CDATA[attiny44]]></category>
		<category><![CDATA[controller]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[gamecube]]></category>
		<category><![CDATA[hand]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=27050</guid>
		<description><![CDATA[[Hasse] built a one-handed video game controller for his brother. He fit everything he needed into the body of an existing controller and came up with a very usable system. The controller will be right-hand only, so the left shoulder button was moved underneath the right side where your middle finger can get at it. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=27050&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-27051" title="one-handed-gamecube-controller" src="http://hackadaycom.files.wordpress.com/2010/08/one-handed-gamecube-controller-e1281541021403.jpg" alt="" width="470" height="353" /></p>
<p>[Hasse] <a href="http://hacks.hasse.nl/107/wii/single-handed-game-controller/">built a one-handed video game controller</a> for his brother. He fit everything he needed into the body of an existing controller and came up with a very usable system. The controller will be right-hand only, so the left shoulder button was moved underneath the right side where your middle finger can get at it. This leaves the d-pad and the left analog stick to account for. By combining an ATtiny44A, an accelerometer, and a digital to analog converter the controller can sense motion. The microcontroller reads in the accelerometer data, gives user feedback via four added LEDs on the d-pad, and the DAC feeds the appropriate signals back into the controller as if you were using the stick. There is even a switch to select whether the motion data is mapped to the analog stick or to the d-pad. We&#8217;ve included a demo video after the break.</p>
<p>Find that you also need some one-armed typing assistance? Check out this <a href="http://hackaday.com/2010/05/26/one-armed-coding-using-a-half-qwerty-hack/">half-qwerty keyboard hack</a>.<span id="more-27050"></span><span style="text-align:center; display: block;"><a href="http://hackaday.com/2010/08/12/one-handed-gamecube-controller/"><img src="http://img.youtube.com/vi/45A2glYyezo/2.jpg" alt="" /></a></span></p>
<p>[Thanks Wim and Jeroen via <a href="http://tweakers.net/nieuws/69051/tweaker-maakt-gamecontroller-geschikt-voor-eenhandige-bediening.html">Tweakers</a>]</p>
<br />Filed under: <a href='http://hackaday.com/category/peripherals-hacks/'>peripherals hacks</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/27050/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/27050/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/27050/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=27050&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2010/08/12/one-handed-gamecube-controller/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2010/08/one-handed-gamecube-controller-e1281541021403.jpg" medium="image">
			<media:title type="html">one-handed-gamecube-controller</media:title>
		</media:content>
	</item>
		<item>
		<title>Arduino based synthesizer</title>
		<link>http://hackaday.com/2009/08/25/arduino-based-synthesizer/</link>
		<comments>http://hackaday.com/2009/08/25/arduino-based-synthesizer/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 23:00:28 +0000</pubDate>
		<dc:creator>Mike Szczys</dc:creator>
				<category><![CDATA[arduino hacks]]></category>
		<category><![CDATA[digital audio hacks]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[synthesizer]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=13823</guid>
		<description><![CDATA[[Jacob] is working on his final project for the Copenhagen Institute of Interaction Design.  Based around Arduino, the quality and quantity of his build notes make this a fascinating read and there are several examples to listen to. The project features a brilliant idea for input:  He uses a 1/8&#8243; TRS connector (mini-jack) whose tip [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=13823&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-13828" title="cheap_fat_open" src="http://hackadaycom.files.wordpress.com/2009/08/cheap_fat_open.jpg" alt="cheap_fat_open" width="470" height="353" /></p>
<p>[Jacob] is working on his final project for the <a href="http://ciid.dk/">Copenhagen Institute of Interaction Design</a>.  Based around Arduino, the quality and quantity of his <a href="http://tthheessiiss.wordpress.com/">build notes</a> make this a fascinating read and there are <a href="http://tthheessiiss.wordpress.com/2009/08/19/jamming/">several examples to listen to</a>.</p>
<p>The project features a brilliant idea for input:  He uses a 1/8&#8243; <a href="http://en.wikipedia.org/wiki/TRS_connector">TRS connector</a> (mini-jack) whose tip is the input to the DAC of the Arduino. There are conductive pads in the shape of a keyboard that you touch the tip of the connector to in order to complete the circuit. Alternatively, the other two conductors on the connector deliver power and ground for easy interface with external controllers. He built an <a href="http://tthheessiiss.wordpress.com/2009/08/20/add-a-light-sensor/">example controller that uses an LED and photoresistor</a> to alter the signal returning to the Arduino. Put your hand in front of the light and the sound changes.</p>
<p>[via <a href="http://arduino.cc/blog/?p=326">Arduino: blog</a>]</p>
<br />Posted in arduino hacks, digital audio hacks  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/13823/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/13823/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/13823/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=13823&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2009/08/25/arduino-based-synthesizer/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Mike Szczys</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2009/08/cheap_fat_open.jpg" medium="image">
			<media:title type="html">cheap_fat_open</media:title>
		</media:content>
	</item>
		<item>
		<title>Parts: LTC2631A I2C digital to analog converter</title>
		<link>http://hackaday.com/2009/02/09/parts-ltc2631a-i2c-digital-to-analog-converter/</link>
		<comments>http://hackaday.com/2009/02/09/parts-ltc2631a-i2c-digital-to-analog-converter/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 22:00:17 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[parts]]></category>
		<category><![CDATA[tool hacks]]></category>
		<category><![CDATA[bus pirate]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[digital to analog converter]]></category>
		<category><![CDATA[electronics]]></category>
		<category><![CDATA[i2c]]></category>
		<category><![CDATA[ltc2631a]]></category>
		<category><![CDATA[serial interface]]></category>
		<category><![CDATA[voltage output]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=8232</guid>
		<description><![CDATA[Linear Technology&#8217;s LTC2631A-LZ8 is an 8bit digital to analog converter (DAC) with an I2C interface. This DAC can output 255 different voltages, spaced evenly between 0 and 2.5volts. We previously demonstrated the LTC2640 with a three-wire SPI interface, but this version is controlled with only two signal wires. Bus Pirate LTC2631A (pin #) DATA SDA [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=8232&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-8066" title="ltc2640" src="http://hackadaycom.files.wordpress.com/2009/01/ltc2640.jpg" alt="ltc2640" width="450" height="354" /></p>
<p>Linear Technology&#8217;s <a href="http://www.linear.com/pc/productDetail.jsp?navId=H0,C1,C1155,C1005,C1156,P85698">LTC2631A-LZ8</a> is an 8bit <a href="http://en.wikipedia.org/wiki/Digital-to-analog_converter">digital to analog converter</a> (DAC) with an <a href="http://en.wikipedia.org/wiki/I%C2%B2C">I2C</a> interface. This DAC can output 255 different voltages, spaced evenly between 0 and 2.5volts. We previously demonstrated the <a href="http://hackaday.com/2009/01/22/how-to-bus-pirate-v1-improved-universal-serial-interface/">LTC2640</a> with a three-wire <a href="http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus">SPI</a> interface, but this version is controlled with only two signal wires.</p>
<p><span id="more-8232"></span></p>
<table border="0">
<tbody>
<tr>
<td><strong>Bus Pirate</strong></td>
<td><strong>LTC2631A (pin #)</strong></td>
</tr>
<tr>
<td>DATA</td>
<td>SDA (3)</td>
</tr>
<tr>
<td>CLOCK</td>
<td>SCL (2)</td>
</tr>
<tr>
<td>ADC</td>
<td>VOUT (7)</td>
</tr>
<tr>
<td>&#8211;</td>
<td>CA0/Address 0 (1)</td>
</tr>
<tr>
<td>+5volts</td>
<td>CA1/Address 1 (8)</td>
</tr>
<tr>
<td>+5volts</td>
<td>VDD (5)</td>
</tr>
<tr>
<td>GND</td>
<td>GND (4)</td>
</tr>
<tr>
<td>&#8211;</td>
<td>REF (6)</td>
</tr>
</tbody>
</table>
<p>We used the <a href="http://hackaday.com/the-bus-pirate-universal-serial-interface/">Bus Pirate universal serial interface tool</a> to work with the DAC, but the same basic principals apply to any custom implementation. The connections between the Bus pirate and the LTC2631A are outlined in the table. We powered the chip from the Bus Pirate&#8217;s 5volt supply, but it would also work fine at 3.3volts.</p>
<p>The I2C bus requires <a href="http://en.wikipedia.org/wiki/Pull-up_resistor">pull-up resistors</a> on both bus wires. 5volts is supplied to the pull-up resistors by connecting a wire from the 5volt supply to the pull-up resistor input terminal. Close the jumpers on the clock and data lines to supply the external voltage to the pull-up resistors.</p>
<p>Now, setup the Bus Pirate for I2C mode and activate the on-board power supply.</p>
<blockquote><p>HiZ&gt;m<strong>&lt;&#8211;select mode</strong><br />
1. HiZ<br />
2. 1-WIRE<br />
3. UART<br />
4. I2C<br />
&#8230;<br />
9. PC AT KEYBOARD<br />
MODE&gt;4<strong>&lt;&#8211;I2C mode</strong><br />
900 MODE SET<br />
202 I2C READY<br />
I2C&gt;p<strong>&lt;&#8211;setup power supply</strong><br />
W/w toggles 3.3volt supply?<br />
1. NO<br />
2. YES<br />
MODE&gt;1<strong>&lt;&#8211;don&#8217;t use 3.3volts</strong><br />
W/w toggles 5volt supply?<br />
1. NO<br />
2. YES<br />
MODE&gt;2<strong>&lt;&#8211;use 5volt supply</strong><br />
9xx SUPPLY CONFIGURED, USE W/w TO TOGGLE<br />
9xx VOLTAGE MONITOR: 5V: 0.0 | 3.3V: 0.0 | VPULLUP: 0.0 |<br />
I2C&gt;W<strong>&lt;&#8211;capital &#8216;W&#8217; activates the supply</strong><br />
9xx 5VOLT SUPPLY ON<br />
I2C&gt;v<strong>&lt;&#8211;check the voltage levels</strong><br />
9xx VOLTAGE MONITOR: 5V: 4.9 | 3.3V: 0.0 | VPULLUP: 5.0 |<strong>&lt;&#8211;supply on</strong><br />
I2C&gt;</p></blockquote>
<p>After configuring the Bus Pirate, the voltage monitor shows that the 5volt supply is active (4.9volts). Additionally, the monitor shows that 5volts is connected to the pull-up resistor supply terminal (VPULLUP).</p>
<blockquote><p>I2C&gt;(0)<strong>&lt;&#8211;list available macros</strong><br />
0.Macro menu<br />
1.7bit address search<br />
I2C&gt;(1)<strong>&lt;&#8211;search for I2C devices</strong><br />
xxx Searching 7bit I2C address space.<br />
Found devices at:<br />
0&#215;40 0xE6<strong>&lt;&#8211;got reply from these addresses</strong><br />
I2C&gt;</p></blockquote>
<p>The state of pin 1 and 8 determine the LTC2631A I2C address, according to the table on page 22 of the datasheet. Instead of looking up the address in the datasheet, we used the Bus Pirate&#8217;s I2C address search macro to scan the entire I2C address range. The DAC responds to the set address (0X40) and a global address (0xE6). The global address is useful for controlling multiple DACs simultaneously over the same I2C bus.</p>
<blockquote><p>I2C&gt;d [0x40 0b00110000 0xff 0] d<br />
9xx VOLTAGE PROBE: 0.0VOLTS<strong>&lt;&#8211;output</strong> <strong>is 0volts</strong><br />
210 I2C START CONDITION<strong>&lt;&#8211;start transaction</strong><br />
220 I2C WRITE: 0&#215;40 GOT ACK: YES<strong>&lt;&#8211;DAC address</strong><br />
220 I2C WRITE: 0&#215;30 GOT ACK: YES<strong>&lt;&#8211;set DAC output command</strong><br />
220 I2C WRITE: 0xFF GOT ACK: YES<strong>&lt;&#8211;set DAC to full (255)</strong><br />
220 I2C WRITE: 0&#215;00 GOT ACK: YES<strong>&lt;&#8211;don&#8217;t care, extra byte</strong><br />
240 I2C STOP CONDITION<strong>&lt;&#8211;end transaction</strong><br />
9xx VOLTAGE PROBE: 2.5VOLTS<strong>&lt;&#8211;output at full</strong><br />
I2C&gt;</p></blockquote>
<p>Now we&#8217;re ready to interface the DAC. An initial voltage measurement (d) shows that the DAC is currently outputting 0volts.</p>
<p>An I2C start condition ([) alerts connected I2C devices to listen for their address. The first byte is the address (0x40) that identifies the device we want to access. The next byte is the LTC2631A command to update the DAC output (0x30 or 0b00110000), followed by the output setting (0xff or 255, 100% output). The final byte doesn't matter for the 8bit DAC we're using, but carries additional data bits for higher resolution versions of the DAC. The transaction is completed by sending the I2C stop condition (]).</p>
<p>After updating the DAC to 100%, a voltage measurement (d) shows that the output is 2.5volts.</p>
<blockquote><p>I2C&gt;d [0x40 0x30 0 0] d<br />
9xx VOLTAGE PROBE: 2.5VOLTS<strong>&lt;&#8211;DAC at 100%</strong><br />
210 I2C START CONDITION<br />
220 I2C WRITE: 0&#215;40 GOT ACK: YES<br />
220 I2C WRITE: 0&#215;30 GOT ACK: YES<br />
220 I2C WRITE: 0&#215;00 GOT ACK: YES<strong>&lt;&#8211;set DAC to 0</strong><br />
220 I2C WRITE: 0&#215;00 GOT ACK: YES<br />
240 I2C STOP CONDITION<br />
9xx VOLTAGE PROBE: 0.0VOLTS<strong>&lt;&#8211;DAC at 0%</strong><br />
I2C&gt;</p></blockquote>
<p>A similar command sequence sets the DAC output back to 0. A voltage measurement confirms that the DAC output is now 0volts.</p>
<p>For a complete list of DAC features and command codes, see the in-depth discussion of the LTC2640 SPI DAC at the end of the <a href="http://hackaday.com/2009/01/22/how-to-bus-pirate-v1-improved-universal-serial-interface">Bus Pirate version 1 how-to</a>.</p>
<p>Are there any chips you&#8217;d like us to interface in future <a href="http://hackaday.com/category/parts/">parts</a> posts?</p>
<br />Posted in parts, tool hacks  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/8232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/8232/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/8232/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=8232&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2009/02/09/parts-ltc2631a-i2c-digital-to-analog-converter/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Ian</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2009/01/ltc2640.jpg" medium="image">
			<media:title type="html">ltc2640</media:title>
		</media:content>
	</item>
		<item>
		<title>Bug Labs releases BUGvonHippel universal module</title>
		<link>http://hackaday.com/2008/12/21/bug-labs-releases-bugvonhippel-universal-module/</link>
		<comments>http://hackaday.com/2008/12/21/bug-labs-releases-bugvonhippel-universal-module/#comments</comments>
		<pubDate>Mon, 22 Dec 2008 01:50:48 +0000</pubDate>
		<dc:creator>Eliot</dc:creator>
				<category><![CDATA[handhelds hacks]]></category>
		<category><![CDATA[misc hacks]]></category>
		<category><![CDATA[adc]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[bug labs]]></category>
		<category><![CDATA[bugvonhippel]]></category>
		<category><![CDATA[dac]]></category>
		<category><![CDATA[engadget]]></category>
		<category><![CDATA[eric von hippel]]></category>
		<category><![CDATA[gpio]]></category>
		<category><![CDATA[i2c]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[vonhippel]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=7121</guid>
		<description><![CDATA[Bug Labs makes hardware modules that can be combined to create your own custom gadgets. They&#8217;ve just released what we consider the most useful module: BUGvonHippel. Unlike the previous single purpose modules, the BUGvoHippel is a universal interface. The bus features USB, power/ground, DAC/ADC, I2C, GPIO, SPI, serial, and more. BUG applications are written in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=7121&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><img class="size-full wp-image-7122 aligncenter" title="vonhippel" src="http://hackadaycom.files.wordpress.com/2008/12/vonhippel.jpg" alt="vonhippel" width="389" height="299" /></p>
<p><a title="Bug Labs - Mahalo" href="http://www.mahalo.com/Bug_Labs">Bug Labs</a> makes hardware modules that can be combined to create your own custom gadgets. They&#8217;ve just released what we consider the most useful module: <a title="BUGvonHippel" href="http://store.buglabs.net/Product-Catalog/BUGvonHippel">BUGvonHippel</a>. Unlike the previous single purpose modules, the BUGvoHippel is a universal interface. The bus features <a title="USB - Mahalo" href="http://www.mahalo.com/USB">USB</a>, power/ground, DAC/ADC, I2C, GPIO, SPI, serial, and more. BUG applications are written in <a title="Java - Mahalo" href="http://www.mahalo.com/Java">Java</a> using a custom IDE.</p>
<p>The $79 module is named after MIT professor Eric von Hippel, who wrote <a title="Eric Von Hippel's Homepage" href="http://web.mit.edu/evhippel/www/books.htm">Democratizing Innovation</a>. You can find an interview with him below.</p>
<p><span id="more-7121"></span></p>
<script type="text/javascript" src="http://blip.tv/syndication/write_player?skin=js&posts_id=1603449&cross_post_destination=-1&view=full_js"></script>
<p>[via <a title="BUG Labs intros BUGvonHippel, talks up big plans for CES - Engadget" href="http://www.engadget.com/2008/12/21/bug-labs-intros-bugvonhippel-talks-up-big-plans-for-ces/">Engadget</a>]</p>
<br />Posted in handhelds hacks, misc hacks  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/7121/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/7121/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/7121/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=7121&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2008/12/21/bug-labs-releases-bugvonhippel-universal-module/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">RobotSkirts</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/12/vonhippel.jpg" medium="image">
			<media:title type="html">vonhippel</media:title>
		</media:content>
	</item>
	</channel>
</rss>
