<?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; eink</title>
	<atom:link href="http://hackaday.com/tag/eink/feed/" rel="self" type="application/rss+xml" />
	<link>http://hackaday.com</link>
	<description>Fresh hacks every day</description>
	<lastBuildDate>Fri, 10 Feb 2012 06:18:04 +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; eink</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>Kindle 2 teardown</title>
		<link>http://hackaday.com/2009/02/25/kindle-2-teardown/</link>
		<comments>http://hackaday.com/2009/02/25/kindle-2-teardown/#comments</comments>
		<pubDate>Thu, 26 Feb 2009 01:53:45 +0000</pubDate>
		<dc:creator>Eliot</dc:creator>
				<category><![CDATA[handhelds hacks]]></category>
		<category><![CDATA[news]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[arm]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[e-ink]]></category>
		<category><![CDATA[e-paper]]></category>
		<category><![CDATA[ebook]]></category>
		<category><![CDATA[eink]]></category>
		<category><![CDATA[freescale]]></category>
		<category><![CDATA[keyboard]]></category>
		<category><![CDATA[kindle]]></category>
		<category><![CDATA[kindle 2]]></category>
		<category><![CDATA[make]]></category>
		<category><![CDATA[teardown]]></category>

		<guid isPermaLink="false">http://hackaday.com/?p=8747</guid>
		<description><![CDATA[The people at iFixit have shown that they&#8217;re still on top of their game by tearing down the new Kindle 2 eBook reader. The main processor is a 532MHz ARM-11 from Freescale. Interestly, there isn&#8217;t any significant circuitry behind the large keyboard; it seems its existence is just to hide the battery. Related: previous teardowns [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=8747&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-8748" title="kindle2" src="http://hackadaycom.files.wordpress.com/2009/02/kindle2.jpg" alt="kindle2" width="450" height="338" /></p>
<p>The people at iFixit have shown that they&#8217;re still on top of their game by <a title="Kindle 2 First Look" href="http://www.ifixit.com/Guide/First-Look/Kindle-2/624/1">tearing down the new Kindle 2</a> <a title="EBook - Mahalo" href="http://www.mahalo.com/EBook">eBook</a> reader. The main processor is a 532MHz ARM-11 from Freescale. Interestly, there isn&#8217;t any significant circuitry behind the large keyboard; it seems its existence is just to hide the battery.</p>
<p>Related: <a href="http://hackaday.com/tag/teardown/">previous teardowns on Hack a Day</a></p>
<p>[via <a title="MAKE: Blog: Kindle 2 taken apart" href="http://blog.makezine.com/archive/2009/02/kindle_2_taken_apart.html">Make</a>]</p>
<br />Posted in handhelds hacks, news  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/8747/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/8747/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/8747/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=8747&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2009/02/25/kindle-2-teardown/feed/</wfw:commentRss>
		<slash:comments>25</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">RobotSkirts</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2009/02/kindle2.jpg" medium="image">
			<media:title type="html">kindle2</media:title>
		</media:content>
	</item>
		<item>
		<title>How-to: Make an e-paper clock from Esquire magazine</title>
		<link>http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/</link>
		<comments>http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/#comments</comments>
		<pubDate>Tue, 14 Oct 2008 20:16:25 +0000</pubDate>
		<dc:creator>Ian</dc:creator>
				<category><![CDATA[classic hacks]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[misc hacks]]></category>
		<category><![CDATA[clock]]></category>
		<category><![CDATA[e-ink]]></category>
		<category><![CDATA[e-paper]]></category>
		<category><![CDATA[e-paper clock]]></category>
		<category><![CDATA[eink]]></category>
		<category><![CDATA[epaper]]></category>
		<category><![CDATA[esquire]]></category>
		<category><![CDATA[esquire cover]]></category>
		<category><![CDATA[hack esquire e-paper cover]]></category>
		<category><![CDATA[recycling]]></category>

		<guid isPermaLink="false">http://hackadaycom.wordpress.com/?p=4602</guid>
		<description><![CDATA[If you&#8217;ve never heard about electronic paper, crawl out from under that rock and read up on the Sony Reader and the Amazon Kindle. E-paper is a flexible display made of color-changing beads that mimic ink-on-paper for easy daylight reading. The revolutionary thing about e-paper is that after it&#8217;s set, it stays that way without [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=4602&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-4675" title="final-clock-450" src="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450.jpg" alt="" width="450" height="322" /></p>
<p>If you&#8217;ve never heard about electronic paper, crawl out from under that rock and read up on the <a href="http://en.wikipedia.org/wiki/Sony_Reader">Sony Reader</a> and the <a href="http://en.wikipedia.org/wiki/Amazon_Kindle">Amazon Kindle</a>. E-paper is a flexible display made of color-changing beads that mimic ink-on-paper for easy daylight reading. The revolutionary thing about e-paper is that after it&#8217;s set, it stays that way without additional power.</p>
<p>This sounds great in theory, but <a href="http://www.esquire.com/the-side/video/hacking-the-e-ink-cover">Esquire&#8217;s cover</a> is the first time everybody can afford to hack an e-paper display. We took the cover into the Hack a Day lab to document, test, and hack. In the end, we recycled it into something useful that anyone can build. We&#8217;ve got all the details on how the display works and what it takes to use it in your own projects. Read about our e-paper clock hack below.<span id="more-4602"></span></p>
<p><strong>Background</strong></p>
<p><img class="alignnone size-full wp-image-4720" title="esquire_cover" src="http://hackadaycom.files.wordpress.com/2008/10/esquire_cover.jpg" alt="" width="450" height="295" /></p>
<p>The Esquire e-paper cover hit big on the net, but was <a href="http://blog.wired.com/business/2008/09/esquires-first.html">quickly panned</a>. NOTCOT has beautiful <a href="http://www.notcot.com/archives/2008/09/dissecting_esqu.php">scans of the circuit board and e-paper</a>. Popular Science posted instructions for <a href="http://www.popsci.com/diy/article/2008-09/hacking-esquire-e-ink-cover-update">reading the code with a PICkit2</a>. [Slaxter] <a href="http://mybitbox.com/view.php?p=11">verified that the PIC chip can be read</a>, and that the code protection fuses are off. [Matt] manipulated the e-paper cells directly with <a href="http://antipastohw.blogspot.com/2008/10/hacking-esquire-cover-e-ink-screen-with.html">skillful soldering and an Arduino</a>. So far, there hasn&#8217;t been a lot of interest in repurposing the e-paper, or reprogramming the existing microcontroller.</p>
<p><strong>E-paper panels</strong></p>
<p><img class="alignnone size-full wp-image-4721" title="panel-bare-450" src="http://hackadaycom.files.wordpress.com/2008/10/panel-bare-450.jpg" alt="" width="450" height="328" /></p>
<p>The actual e-paper panels, manufactured by <a href="http://mahalo.com/E-ink">E-Ink</a>, aren&#8217;t that exciting. Each panel has a set of predefined segments, 11 on the front panel and 3 on the rear Ford advertisement. This isn&#8217;t a matrix that we can reprogram into an e-reader. [just_mike] has a great set of <a href="http://flickr.com/photos/just_mike/2833061896/in/set-72157607133868125/">ultra close-up shots of the individual beads</a> that make up each segment.</p>
<p><img class="alignnone size-full wp-image-4685" title="eink1" src="http://hackadaycom.files.wordpress.com/2008/10/eink1.png" alt="" width="450" height="291" /></p>
<p>Each e-paper segment has an individual connection, and a connection that&#8217;s shared with other cells on the panel.  The segments become white or black depending on the direction of current applied to the cell. When common is low, any segment that is also connected high will darken. When common is high, each cell connected to ground will clear. The PCB uses 16 volts from five 3.3volt batteries to switch the cells, but [Slaxter] showed that 5volts was sufficient with his Arduino project.</p>
<p><em>Performance testing</em><br />
We made several observations about the e-paper operating specifications.</p>
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/"><img src="http://img.youtube.com/vi/T6GTFvNjRCk/2.jpg" alt="" /></a></span>
<p>First, it takes nearly 0.5 seconds to completely darken or clear a cell. In the video you can see the partial states created by switching the e-paper too fast. We&#8217;re not quite sure of the optimal change time, but between 0.25 and 0.5 seconds seems to be the minimum.</p>
<p>This also raised questions about the maximum change time. Does it damage the e-paper to apply current for longer than necessary? Does the e-paper continue to consume current as long as it&#8217;s applied, wasting the batteries? We took special care in our code to return all outputs to ground after a change to avoid a continuous current through the panel.</p>
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/"><img src="http://img.youtube.com/vi/hix9-h5UuSc/2.jpg" alt="" /></a></span>
<p>Clearing and darkening must be done separately. It takes two complete operations to fully refresh the screen; one to clear old segments, one to darken new segments. A smart programmer will think they can save a cycle when only adding or removing items, and not doing both. This is true to some extent, but continuous manipulation of one cell without refreshing adjacent cells causes color &#8216;creep&#8217;. In the video, a flashing background without updates to any other segments quickly drives the inactive segments to a mid-state between dark and light.</p>
<p><strong>Driver board</strong></p>
<p><img class="alignnone size-full wp-image-4722" title="driver-board" src="http://hackadaycom.files.wordpress.com/2008/10/driver-board.jpg" alt="" width="450" height="152" /></p>
<p>The driver consists of an eight-pin Microchip <a href="http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en010113">PIC12F629</a>, two <a href="http://www.nxp.com/#/pip/pip=[pip=HEF4094B_CNV_3]|pp=[t=pip,i=HEF4094B_CNV_3]">4094</a> <a href="http://en.wikipedia.org/wiki/Shift_register">shift registers</a>, and some supporting components.</p>
<p><img class="alignnone size-full wp-image-4686" title="pin-out-illu-450" src="http://hackadaycom.files.wordpress.com/2008/10/pin-out-illu-450.png" alt="" width="450" height="248" /></p>
<p><a href="http://hackadaycom.files.wordpress.com/2008/10/pin-out-illu.png">Click here for a full size pin diagram of the e-paper driver board</a>(PNG).</p>
<p><em>Batteries</em></p>
<p>Esquire <a href="http://www.esquire.com/the-side/video/hacking-the-e-ink-cover">invited hacks of their cover</a> with the rather lame suggestion of replacing the batteries. This makes sense, the covers were <a href="http://www.esquire.com/features/how-e-ink-was-made">shipped all over the world in refrigerated containers</a> to help extend the battery life. Even with that effort, Esquire says that the batteries will last a few months.</p>
<p>Batteries 1-5 are in series and provide a 15-16volt switching current for the e-paper. The sixth battery provides 3volts for the PIC. No word yet on which batteries die first. If you want to &#8216;replace&#8217; your batteries, you&#8217;ll need to desolder the old ones, and provide a 5-16volt e-paper supply, and 3volt microcontroller supply, at the points indicated.</p>
<p><img class="alignnone size-full wp-image-4724" title="final-clock-450-new-bat-narrow" src="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450-new-bat-narrow.jpg" alt="" width="449" height="235" /></p>
<p>We eventually had to replace our microcontroller battery because we abused it a bit during development. A button battery holder with 20mm pin spacing will fit the existing holes. Mouser #<a href="http://www.mouser.com/Search/ProductDetail.aspx?qs=Q3RoVmURDolnMuconA2vXg%3d%3d">534-106</a> will probably work, but this is unconfirmed.</p>
<p><em>4094 shift registers (IC1, IC2)</em></p>
<p>The shift registers switch the e-paper segment controls at 16 volts.</p>
<p><img class="alignnone size-full wp-image-4689" title="4094b1" src="http://hackadaycom.files.wordpress.com/2008/10/4094b1.png" alt="" width="450" height="156" /><br />
The two 4094 ICs are shift registers setup to cascade data from IC1 to IC2. This simple shift register is a slight variation on the 74HTC595 we used in our <a href="http://hackaday.com/2008/10/02/how-to-networked-graffiti-wall/">graffiti wall</a>. The main difference is that the 4094 strobe line is normally low, and briefly pulled high to put new values on the output pins. We noticed that the 4094 requires long clock and strobe pulses. This could be due to lazy drive circuitry between the PIC and the 4094, or just the nature of the <a href="http://en.wikipedia.org/wiki/4000_series">4000 series</a>.</p>
<p><em>4094 segment output map</em></p>
<table border="0">
<tbody>
<tr>
<td>
<div><strong>IC</strong></div>
</td>
<td>
<div><strong>Output</strong></div>
</td>
<td>
<div><strong>Address</strong></div>
</td>
<td>
<div><strong>Connection</strong></div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q1</div>
</td>
<td>
<div>0&#215;01</div>
</td>
<td>
<div>FRONT_BOX_SYMBOL_DNA</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q2</div>
</td>
<td>
<div>0&#215;02</div>
</td>
<td>
<div>FRONT_BOX_GUY</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q3</div>
</td>
<td>
<div>0&#215;04</div>
</td>
<td>
<div>FRONT_BOX_FIREWORKS</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q4</div>
</td>
<td>
<div>0&#215;08</div>
</td>
<td>
<div>FRONT_ON_THE_WEST_COAST</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q5</div>
</td>
<td>
<div>0&#215;10</div>
</td>
<td>
<div>FRONT_THREE_HOURS_LATER</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q6</div>
</td>
<td>
<div>0&#215;20</div>
</td>
<td>
<div>FRONT_ESQUIRE</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q7</div>
</td>
<td>
<div>0&#215;40</div>
</td>
<td>
<div>FRONT_BOX_GIRL</div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>Q8</div>
</td>
<td>
<div>0&#215;80</div>
</td>
<td>
<div>FRONT_NOW</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q1</div>
</td>
<td>
<div>0&#215;100</div>
</td>
<td>
<div>FRONT_BEGINS</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q2</div>
</td>
<td>
<div>0&#215;200</div>
</td>
<td>
<div>FRONT_21ST_CENTURY</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q3</div>
</td>
<td>
<div>0&#215;400</div>
</td>
<td>
<div>FRONT_BACKGROUND</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q4</div>
</td>
<td>
<div>0&#215;800</div>
</td>
<td>
<div>FRONT_COMMON</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q5</div>
</td>
<td>
<div>0&#215;1000</div>
</td>
<td>
<div>BACK_COMMON</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q6</div>
</td>
<td>
<div>0&#215;2000</div>
</td>
<td>
<div>BACK_LEFT</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q7</div>
</td>
<td>
<div>0&#215;4000</div>
</td>
<td>
<div>BACK_CENTER</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>Q8</div>
</td>
<td>
<div>0&#215;8000</div>
</td>
<td>
<div>BACK_RIGHT</div>
</td>
</tr>
</tbody>
</table>
<p><em>12F629</em></p>
<p><img class="alignnone size-full wp-image-4690" title="cct-4501" src="http://hackadaycom.files.wordpress.com/2008/10/cct-4501.png" alt="" width="448" height="173" /></p>
<p><a href="http://hackadaycom.files.wordpress.com/2008/10/cct-large1.png">Click here for a full size schematic drawing</a>(PNG). An eight pin PIC12F629 drives the 4094 shift registers that control each e-paper segment. Two pins are unused (GP4, GP5).</p>
<p>The MCLR feature is enabled with resistor R8. The design doesn&#8217;t include a diode to protect the PIC from the 13volt programming current. Microchip recommends this, but there&#8217;s no other sensitive ICs sharing the circuit so perhaps the designer felt a resistor was sufficient protection.</p>
<p>Three pins drive the data, clock, and strobe lines of the 4094 (GP0, GP1, GP2). The 4094 has to be interfaced at the same voltage it switches, 16 volts, so the PIC switches the interface pins through transistors. As far as we can tell, the 4094 control lines are pulled high with a resistor. The PIC switches a transistor on, and it pulls the line to ground. <em>The interface to the 4094 is backwards</em>. A PIC high pin is seen as low at the shift register, and low is seen as high. The interface won&#8217;t work unless reversed.</p>
<p>The programming pins are brought to a header at the top of the PCB. We soldered standard .1&#8243; pin header into the holes provided (Mouser #<a href="http://www.mouser.com/Search/ProductDetail.aspx?R=4-103329-0virtualkey57100000virtualkey571-41033290">571-41033290</a>). The two programming pins, PGD and PGC, are shared with the circuitry that drives the shift registers. We were able to read the device with an ICD2 debugger. We couldn&#8217;t reprogram it though, probably because of the shift register driver. Has anyone had success? Regardless, the shared pin arrangement makes it impossible to do in-circuit debugging on this device.</p>
<p><em>PIC pin connections</em></p>
<table border="0">
<tbody>
<tr>
<td>
<div><strong>Pin</strong></div>
</td>
<td>
<div><strong>Name</strong></div>
</td>
<td>
<div><strong>Connection</strong></div>
</td>
</tr>
<tr>
<td>
<div>1</div>
</td>
<td>
<div>VDD</div>
</td>
<td>
<div>+3.3volts</div>
</td>
</tr>
<tr>
<td>
<div>2</div>
</td>
<td>
<div>GP5</div>
</td>
<td>
<div>&#8211;</div>
</td>
</tr>
<tr>
<td>
<div>3</div>
</td>
<td>
<div>GP4</div>
</td>
<td>
<div>&#8211;</div>
</td>
</tr>
<tr>
<td>
<div>4</div>
</td>
<td>
<div>GP3</div>
</td>
<td>
<div>MCLR (program VPP)</div>
</td>
</tr>
<tr>
<td>
<div>5</div>
</td>
<td>
<div>GP2</div>
</td>
<td>
<div>4094 Strobe</div>
</td>
</tr>
<tr>
<td>
<div>6</div>
</td>
<td>
<div>GP1</div>
</td>
<td>
<div>4094 Clock (program clock)</div>
</td>
</tr>
<tr>
<td>
<div>7</div>
</td>
<td>
<div>GP0</div>
</td>
<td>
<div>4094 Data (program data)</div>
</td>
</tr>
<tr>
<td>
<div>8</div>
</td>
<td>
<div>VSS</div>
</td>
<td>
<div>Ground</div>
</td>
</tr>
</tbody>
</table>
<p><strong>Tap the board</strong></p>
<p><img class="alignnone size-full wp-image-4693" title="tap-board2" src="http://hackadaycom.files.wordpress.com/2008/10/tap-board2.jpg" alt="" width="450" height="304" /></p>
<p>It&#8217;s easy to tap into the board and use it with your favorite microcontroller. All but one of the required interface signals are already brought to a header. The strobe line can be tapped through the via indicated by the arrow. You don&#8217;t want the PIC to interfere with your new controller, so remove it or deactivate it by severing the power pin.</p>
<p><strong>Interface library</strong></p>
<p><img class="alignnone size-full wp-image-4694" title="debug-with-wsbc1" src="http://hackadaycom.files.wordpress.com/2008/10/debug-with-wsbc1.jpg" alt="" width="450" height="264" /></p>
<p>Our first effort to drive the board involved our <a href="http://hackaday.com/2008/09/18/web-server-on-a-business-card-part-1/">PIC24F</a>-based <a href="http://hackaday.com/2008/09/25/web-server-on-a-business-card-part-2/">mini web server</a>. It was handy, and the PIC24F is easy to work with. We perfected our interface library on a low-power MSP430. Both versions are in the <a href="http://blog.mahalo.com/hackaday/howto/esquire.epaper.clock.v1.zip">project archive</a>(ZIP), but the MSP430 version of the library is more mature.</p>
<p>The library includes a software <a href="http://en.wikipedia.org/wiki/Bit-banging">bit-bang</a> routine, functions for interfacing the board, and address definitions for the segment and common lines. Options in esquire_eink.h enable a bit-bang delay and set its length; we found the 4094 lazy and in need of a lengthy clock pulse. The initBang() function sets the direction of the pins, and should be changed to suit your microcontroller. Call it, or set your IO pins to output elsewhere:</p>
<p><pre class="brush: cpp;">
bangInit(); //set bitbang pins to output
</pre></p>
<p>The setSeg() function sets the passed segments dark (1) or clear (0):</p>
<p><pre class="brush: cpp;">
setSeg(FRONT_BOX_GUY+FRONT_BACKGROUND, 1); //set(dark) these segments
setSeg(FRONT_21ST_CENTURY,0);//clear (light) these segments
</pre></p>
<p>The setSeg() function includes a color change delay defined by EINK_DELAY in esquire_eink.h. At the end of the delay it returns the shift register pins to ground. We want to avoid damaging to the e-paper or wasting the batteries, though we don&#8217;t really know if this is necessary.</p>
<p>One thing we noticed about setSeg() was that manipulating single cells causes adjacent cells to regress toward a mid-color. We developed the setDisplay() function to combat this by fully refreshing the display every time. setDisplay() includes a pause for each change, and then returns the shift register outputs to ground. Just pass the segment arrangement for a fully refreshed display:</p>
<p><pre class="brush: cpp;">
setDisplay(FRONT_ESQUIRE+BACK_LEFT);//XX dark, everything else clear
</pre></p>
<p>You can access the shift registers directly with the bangIt() function, but consider returning the shift registers outputs to &#8217;0&#8242; after the e-paper color change is complete. You could damage the e-paper or cause excessive current drain if you leave it on, if that&#8217;s actually &#8216;a thing&#8217;.</p>
<p><pre class="brush: cpp;">
bangIt(0b1110000000000000);//all back panel segments on
pause();//wait for the color change
bangIt(0x0000);//return all outputs to ground
</pre></p>
<p>To port the library to your microcontroller, just check the pin configurations in esquire_eink.h, and the pin setup function bangInit() in esquire_eink.c. Keep in mind that the pin directions are reversed by the interface transistors.</p>
<p><strong>Putting it to use, an e-paper clock</strong></p>
<span style="text-align:center; display: block;"><a href="http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/"><img src="http://img.youtube.com/vi/kluFFU90qnI/2.jpg" alt="" /></a></span>
<p>We wanted to do something useful with the first cheap consumer e-paper panel. It had to be something pretty easy so that lots of people can recycle this cool piece of technology. We couldn&#8217;t resist doing what so many do with <a href="http://www.youtube.com/watch?v=-84v-QVdk2k&amp;feature=related">old display tech</a>: make a clock. Schematics, firmware, and art templates are in the <a href="http://blog.mahalo.com/hackaday/howto/esquire.epaper.clock.v1.zip">project archive</a>(.zip).</p>
<p><img class="alignnone size-full wp-image-4696" title="bezel-export" src="http://hackadaycom.files.wordpress.com/2008/10/bezel-export.png" alt="" width="450" height="190" /></p>
<p>There&#8217;s so few segments on the e-paper that we can only partially represent the time. Six segments show time, each fades to reveal the time to the nearest ten minutes past the hour. We also flash eye-candy on the non-time segments of the panel. Here&#8217;s the custom bezel we created. This bezel, and a template to make your own, are included in the <a href="http://blog.mahalo.com/hackaday/howto/esquire.epaper.clock.v1.zip">project archive</a>(ZIP). We printed our bezel mirrored so the ink is protected from scratches.</p>
<p><em>Hardware</em></p>
<p><em></em>We were inspired by the low-power properties of e-paper to use <a href="http://focus.ti.com/mcu/docs/mcuprodoverview.tsp?sectionId=95&amp;tabId=140&amp;familyId=342">Texas Instruments&#8217; MSP430 line of 16-bit microcontrollers</a>. With the right configuration, the MSP430 draws so little power that it&#8217;s only limited by the shelf life of a battery. We can even give the original designers a run for their money, and see if we can make a lower power device.</p>
<p>The best thing about the MSP430 is that you can buy a kit with a <a href="http://www.ti-estore.com/">USB programmer/debugger and breakout board for only 20 bucks</a>.  It comes with <a href="http://focus.ti.com/docs/toolsw/folders/print/iar-kickstart.html">a free C compiler limited to 4K</a>, but the F2013 only has 2K of memory. This is a complete development tool, no soldering involved. Learn more about <a href="http://www.diylife.com/2008/03/28/program-a-msp430-microcontroller/">working with the MSP430 in this how-to</a>.</p>
<p><img class="alignnone size-full wp-image-4697" title="msp430-cct-4501" src="http://hackadaycom.files.wordpress.com/2008/10/msp430-cct-4501.png" alt="" width="449" height="132" /></p>
<p>This schematic shows how we connected our MSP430 to the e-paper driver board. <a href="http://hackadaycom.files.wordpress.com/2008/10/mps430-cct-large2.png">Click here for a full size version</a>(PNG). The 47K resistor, MSP430, and an LED (not shown) are included on the breakout board.</p>
<p>We added a 32.768KHz crystal to keep time (Q1). Normally, we&#8217;d also add some capacitors to form an oscillator, but the MSP430 has built-in adjustable capacitors on P2.6 and P2.7.</p>
<p>We also added a <a href="http://hackaday.com/2008/09/15/tact-switches-for-your-next-project/">button</a> between P1.4 and P1.2 (S1). The internal <a href="http://en.wikipedia.org/wiki/Pull-up_resistor">pull-up resistor</a> on P1.4 holds the button high, and we grounded it through P1.2. This isn&#8217;t the best arrangement, it would probably be wise to also connect P1.2 to ground.</p>
<p><img class="alignnone size-full wp-image-4699" title="msp430-connections" src="http://hackadaycom.files.wordpress.com/2008/10/msp430-connections.jpg" alt="" width="450" height="357" /></p>
<p>We slid the MSP430 breakout board over the power and ground pins of the programming header. You can connect the clock and data pins to the header too, but we decided to route them all from the vias underneath. Remember to remove the PIC so it doesn&#8217;t interfere with signals from the MSP430.</p>
<table border="0">
<tbody>
<tr>
<td>
<div><strong>Parts</strong></div>
</td>
<td>
<div><strong>Number</strong></div>
</td>
<td>
<div><strong>Cost</strong></div>
</td>
</tr>
<tr>
<td>
<div>Esquire e-paper cover</div>
</td>
<td>
<div>&#8211;</div>
</td>
<td>
<div>&#8211;</div>
</td>
</tr>
<tr>
<td>
<div>MSP430 ez430 development kit</div>
</td>
<td>
<div><a href="http://www.ti-estore.com/">ez430USB</a></div>
</td>
<td>
<div>$20</div>
</td>
</tr>
<tr>
<td>
<div>32.768KHz crystal</div>
</td>
<td>
<div><a href="http://www.mouser.com/Search/ProductDetail.aspx?qs=m%2bUhWDcpCfZq/BFfwzExYQ==">815-AB26T-32.768KHZ </a></div>
</td>
<td>
<div>$0.27</div>
</td>
</tr>
<tr>
<td>
<div>Push button</div>
</td>
<td>
<div><a href="http://www.mouser.com/Search/ProductDetail.aspx?R=MJTP1250virtualkey64200000virtualkey642-MJTP1250">642-mjtp1250</a></div>
</td>
<td>
<div>$0.16</div>
</td>
</tr>
</tbody>
</table>
<p><em>Firmware</em></p>
<p>The clock software is written with the free demo version of the TI/IAR Kickstart C compiler included with the ez430 programmer.</p>
<p>The MSP430 is very low power. It uses just 220uA at 1MHz, but less than 6uA when sleeping. The key to long battery life is to keep the chip asleep as much as possible. Our clock code is written with this in mind.</p>
<p>We use timer_a with the 32.768khz crystal to create an interrupt twice each second. The first interrupt triggers code that configures the segments to be displayed, sends these values to the e-paper, and then sleeps for the next 0.5 seconds. While the MSP430 sleeps, all the &#8216;off&#8217; segments have time to clear. The next interrupt flips the common lines the other way with a simple <a href="http://www.somacon.com/p125.php">XOR</a>, outputs the values, and goes to sleep for another 0.5 seconds. Next time the cycle will begin again. We don&#8217;t bother to reset the shift registers to the &#8217;0&#8242; position because the refresh is constantly in flux. Segment creep isn&#8217;t a problem because we refresh every segment each cycle.</p>
<p>A button press triggers an interrupt that advances the time to the next 10 minutes. To set the clock, wait until the time is a factor of 10 minutes past the hour and press the button to show the correct time. A small debouncing routine ensures that only one hit is detected per button press.</p>
<p><strong>Taking it further</strong></p>
<p>There are some lingering questions about the e-paper panels that would be nice to answer. What is the optimal change time? Will continuous current damage the segments or waste battery power? Why did the designer use a full 16volts to trigger the panels when only 5volts are required?</p>
<p>Everything you need to build the clock and interface the Esquire cover is included in the <a href="http://blog.mahalo.com/hackaday/howto/esquire.epaper.clock.v1.zip">project archive</a>(ZIP). It should be possible to interface any microcontroller with the Esquire e-paper cover using the interface library and three IO pins. In a future project we plan to build a custom driver board for the unused e-paper module.</p>
<p><img class="alignnone size-full wp-image-4726" title="final-clock-450-old-bat" src="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450-old-bat.jpg" alt="" width="450" height="339" /></p>
<br />Posted in classic hacks, how-to, misc hacks  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/4602/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/4602/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/4602/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=4602&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2008/10/14/how-to-make-an-e-paper-clock-and-hack-esquire-magazine/feed/</wfw:commentRss>
		<slash:comments>29</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Ian</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450.jpg" medium="image">
			<media:title type="html">final-clock-450</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/esquire_cover.jpg" medium="image">
			<media:title type="html">esquire_cover</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/panel-bare-450.jpg" medium="image">
			<media:title type="html">panel-bare-450</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/eink1.png" medium="image">
			<media:title type="html">eink1</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/driver-board.jpg" medium="image">
			<media:title type="html">driver-board</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/pin-out-illu-450.png" medium="image">
			<media:title type="html">pin-out-illu-450</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450-new-bat-narrow.jpg" medium="image">
			<media:title type="html">final-clock-450-new-bat-narrow</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/4094b1.png" medium="image">
			<media:title type="html">4094b1</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/cct-4501.png" medium="image">
			<media:title type="html">cct-4501</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/tap-board2.jpg" medium="image">
			<media:title type="html">tap-board2</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/debug-with-wsbc1.jpg" medium="image">
			<media:title type="html">debug-with-wsbc1</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/bezel-export.png" medium="image">
			<media:title type="html">bezel-export</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/msp430-cct-4501.png" medium="image">
			<media:title type="html">msp430-cct-4501</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/msp430-connections.jpg" medium="image">
			<media:title type="html">msp430-connections</media:title>
		</media:content>

		<media:content url="http://hackadaycom.files.wordpress.com/2008/10/final-clock-450-old-bat.jpg" medium="image">
			<media:title type="html">final-clock-450-old-bat</media:title>
		</media:content>
	</item>
		<item>
		<title>Esquire&#8217;s hackable e-paper display</title>
		<link>http://hackaday.com/2008/07/30/esquires-hackable-e-paper-display/</link>
		<comments>http://hackaday.com/2008/07/30/esquires-hackable-e-paper-display/#comments</comments>
		<pubDate>Thu, 31 Jul 2008 03:00:00 +0000</pubDate>
		<dc:creator>Eliot</dc:creator>
				<category><![CDATA[news]]></category>
		<category><![CDATA[digital]]></category>
		<category><![CDATA[eink]]></category>
		<category><![CDATA[epaper]]></category>
		<category><![CDATA[esquire]]></category>
		<category><![CDATA[esquiremagazine]]></category>
		<category><![CDATA[magazine]]></category>
		<category><![CDATA[paper]]></category>

		<guid isPermaLink="false">http://hackaday.iheartcashews.com:8181/2008/07/30/esquires-hackable-e-paper-display/</guid>
		<description><![CDATA[In celebration of there 75th year, Esquire magazine&#8217;s October issue will feature an e-paper cover. The display will be about 3mm thick flexible paper with four shades of gray and some animated text and images. The backside will also have a display featuring a Ford ad for the new Flex. The Ford ad is essentially [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=2365&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><img width="450" vspace="4" hspace="4" height="220" border="0" src="http://hackadaycom.files.wordpress.com/2008/07/had_esquire.jpg?w=450&#038;h=220" alt="" /><br />In celebration of there 75th year, Esquire magazine&#8217;s October issue will feature an e-paper cover. The display will be about 3mm thick flexible paper with four shades of gray and some animated text and images. The backside will also have a display featuring a Ford ad for the new Flex. The Ford ad is essentially subsidizing this whole production. The cover isn&#8217;t finalized yet, but Boing Boing Gadgets was able to <a href="http://gadgets.boingboing.net/2008/07/30/esquire-to-geeks-hac.html">get a few more details about it</a> from deputy editor [Peter Griffin]. The battery isn&#8217;t anything exotic and they fully expect people to break the device open and do what they want with it. It will unfortunately still require you building your own controller, but at least you get two revolutionary displays to play with for the cost of a magazine. If you&#8217;re wondering what Esquire is, they apparently <a href="http://www.esquire.com/features/george-clooney-2-girls-1-cup-0408-3">showed George Clooney 2 Girls 1 Cup</a>. So they&#8217;ve got that to celebrate too.</p>
<br /><img alt="" border="0" src="http://feeds.wordpress.com/1.0/categories/hackadaycom.wordpress.com/2365/" /> <img alt="" border="0" src="http://feeds.wordpress.com/1.0/tags/hackadaycom.wordpress.com/2365/" /> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/hackadaycom.wordpress.com/2365/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/hackadaycom.wordpress.com/2365/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/hackadaycom.wordpress.com/2365/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=hackaday.com&amp;blog=4779443&amp;post=2365&amp;subd=hackadaycom&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://hackaday.com/2008/07/30/esquires-hackable-e-paper-display/feed/</wfw:commentRss>
		<slash:comments>29</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/07/had_esquire.jpg" medium="image" />
	</item>
	</channel>
</rss>
