<?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/"
	>

<channel>
	<title>Grant Gibson</title>
	<atom:link href="http://www.grantgibson.co.uk/blog/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.grantgibson.co.uk/blog</link>
	<description>web design, viral animation and game development - based in Scotland</description>
	<lastBuildDate>Sun, 05 Feb 2012 08:49:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Retro Space Invaders Gmail Notifier</title>
		<link>http://www.grantgibson.co.uk/blog/2012/02/retro-space-invaders-gmail-notifier/</link>
		<comments>http://www.grantgibson.co.uk/blog/2012/02/retro-space-invaders-gmail-notifier/#comments</comments>
		<pubDate>Sun, 05 Feb 2012 08:49:20 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[gmail]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[weekend projects]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=248</guid>
		<description><![CDATA[A couple of weeks ago I was in our local Boots chemist. They were clearing out all the Christmas gifts at 75% off.  I saw this Space Invaders alarm clock reduced to around £3 ($5) and had to have it, even though I had no use for another alarm clock.  (Btw, even though Boots are [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.youtube.com/embed/6jxDL7Mww74?rel=0" frameborder="0" width="560" height="315"></iframe></p>
<p>A couple of weeks ago I was in our local Boots chemist. They were clearing out all the Christmas gifts at 75% off.  I saw this Space Invaders alarm clock reduced to around £3 ($5) and had to have it, even though I had no use for another alarm clock.  (Btw, even though Boots are now sold out, the same clock is available from <a href="http://www.play.com/Gadgets/Gadgets/4-/20252478/Space-Invader-Clock/Product.html?_%24ja=tsid:11518%7Ccat:20252478%7Cprd:20252478">Play</a>, <a href="http://www.iwantoneofthose.com/10523953.html?utm_source=googleprod&amp;utm_medium=gp&amp;utm_campaign=gp_gifts">IWOOT</a>, <a href="http://www.menkind.co.uk/gifts-gadgets-c112/gifts-novelty-c3/clocks-c42/space-invaders-clock-p112853?utm_source=froogle&amp;utm_medium=ppc&amp;utm_term=space-invaders-clock-b00j1209&amp;utm_campaign=froogle#113050">Menkind</a> and others.)</p>
<p>The challenge was&#8230; what to do with it?</p>
<p>In the end I decided to turn it into an ambient device, connected to the internet and capable of alerting me when things happen. Right now I&#8217;ve got it firing up with a new message arrives in my Gmail inbox, but really it could do anything &#8211; flag up Twitter replies, indicate the chance of rain or even, paired with <a href="http://www.grantgibson.co.uk/blog/2009/03/putting-doorbell-online/">one of my previous projects</a>, act as an additional ringer for the doorbell.  I&#8217;ve added a row of LEDs (three red, three yellow) to give it some more feedback options.</p>
<p>Every time I get a new email the clock moves from side to side and does the classic Space Invaders sound, then lights one of the LEDs to give me an idea of how many unread messages there are.  There&#8217;s loads more that could be done with it, but I was happy just turning it into something more useful without destroying it in the process.</p>
<p>If you want to make one yourself, here&#8217;s what I did&#8230;</p>
<p>I used an Arduino to give the clock some more logic. I didn&#8217;t want to alter the external appearance of the clock and space was incredibly tight inside, so I used an Arduino Nano clone that I had lying around.</p>
<p>First step was to get the components working on a breadboard. I ran 6 LEDs off the Arduino&#8217;s digital pins and added an opto-isolator to another digital pin to act as a switch. I knew the Arduino wouldn&#8217;t be able to drive the clock&#8217;s motor straight off an IO pin, so my plan was to simply trigger the clock&#8217;s handy &#8216;demo&#8217; button from the pin and deliver the main clock/motor power from the direct 5V pin on Arduino.</p>
<p>Here&#8217;s the wiring layout that I ended up with&#8230;</p>
<p><a href="http://www.grantgibson.co.uk/blog/wp-content/uploads/2012/02/nano-diagram.png"><img class="alignnone size-full wp-image-252" title="nano-diagram" src="http://www.grantgibson.co.uk/blog/wp-content/uploads/2012/02/nano-diagram.png" alt="" width="500" height="368" /></a></p>
<p>The original power source for the clock was 3 AA batteries producing around 4.5v. I was planning to power the clock directly over USB &#8211; I figured 5V was close enough &#8211; so the battery compartment provided the perfect space to house the additional components. Unfortunately the battery box wasn&#8217;t quite deep enough for the Nano, so my first job was to cut out the battery recess with a craft knife. I left a small lip on the bottom edge to support the additional components and to retain the original motor mounting point.</p>
<p>With a bit of breadboard trimming (with a hacksaw&#8230; quick and nasty!) I was able to fit it into the clock&#8230;</p>
<p><a href="http://www.grantgibson.co.uk/blog/wp-content/uploads/2012/02/inside.jpg"><img class="alignnone size-full wp-image-253" title="inside" src="http://www.grantgibson.co.uk/blog/wp-content/uploads/2012/02/inside.jpg" alt="" width="550" height="413" /></a></p>
<p>Next step, the Arduino sketch. The code is currently dead simple: listen to the serial input and if it&#8217;s a number, light that many LEDs; if the new number is higher than the old number (i.e. you&#8217;ve got new emails, not just cleared out old ones) then also close the &#8216;demo&#8217; switch to activate the sound and movement. Here&#8217;s the finished code.</p>
<pre style="padding-left: 30px;">int ser = 0; // for incoming serial data
int prevCount = 0;
int timer = 100;</pre>
<pre style="padding-left: 30px;">void setup() {
 for (int thisPin = 2; thisPin &lt;= 13; thisPin++) {
 pinMode(thisPin, OUTPUT);
 }
 Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
}</pre>
<pre style="padding-left: 30px;">void loop() {

 if (Serial.available() &gt; 0) {
 // read the incoming byte:
 ser = Serial.read();</pre>
<pre style="padding-left: 30px;">if (ser &gt;= 48 &amp;&amp; ser &lt;= 58) {
 int newCount = ser - 48;
 if (newCount &gt; 0 &amp;&amp; newCount &gt; prevCount) {
 digitalWrite(12, HIGH);
 delay(100);
 digitalWrite(12, LOW);
 delay(1500);
 digitalWrite(12, HIGH);
 delay(500);
 digitalWrite(12, LOW);
 }
 prevCount = newCount;
 } else {
 digitalWrite(13, HIGH);
 delay(100);
 digitalWrite(13,LOW);
 }
 }</pre>
<pre style="padding-left: 30px;">for (int thisPin = 3; thisPin &lt;= 11; thisPin++) {
 digitalWrite(thisPin, LOW);
 }</pre>
<pre style="padding-left: 30px;">int topPin = prevCount + 2;</pre>
<pre style="padding-left: 30px;">for (int thisPin = 3; thisPin &lt;= topPin; thisPin++) {
 if(thisPin &lt;= 5) {
 digitalWrite(thisPin, HIGH);
 } else {
 digitalWrite(thisPin+3, HIGH); // Because I left a gap in the digital pins
 }
 }
}</pre>
<p>The last step was to write a quick script to poll Gmail and get the number of unread messages.  I&#8217;ve tried lots of different languages for Arduino serial control in the past &#8211; Perl, PHP and DOS shell scripts &#8211; but every time it&#8217;s been a little bit flakey, at least under Windows. Flash Actionscript is pretty reliable using <a href="http://arduino.cc/playground/Interfacing/Flash">Serproxy</a>, but that was overkill for this project. So in the end I decided to give Python a go. It was a good choice &#8211; reliable and really quick to implement.  Here&#8217;s the code&#8230;</p>
<pre style="padding-left: 30px;">import serial
import time
import imaplib</pre>
<pre style="padding-left: 30px;">ser = serial.Serial('COM6', 9600)
time.sleep(2)</pre>
<pre style="padding-left: 30px;">while True:
 obj = imaplib.IMAP4_SSL('imap.gmail.com','993')
 obj.login('GMAIL_USER_HERE','PASSWORD_HERE')
 obj.select()
 obj.search(None,'UnSeen')
 count = len(obj.search(None, 'UnSeen')[1][0].split())</pre>
<pre style="padding-left: 30px;">if(count &gt; 9):
 ser.write(':')
 else:
 ser.write(count)</pre>
<pre style="padding-left: 30px;">time.sleep(120)</pre>
<pre style="padding-left: 30px;">ser.close()</pre>
<p>The only bit that had me scratching my head was Arduino&#8217;s trick of resetting every time the serial line is opened.  The Nano takes around 1.5 seconds to restart, meaning it would always miss the first mail notification. A wee sleep command fixed that.</p>
<p>And that&#8217;s about it. Three hours and around £12 of components (including the Nano clone) to turn an alarm clock into a Gmail notifier.</p>
<p><strong>Future scope</strong></p>
<p>There are still lots of free pins on the Nano, so plenty of scope for expansion. A light sensor could be a useful addition so it doesn&#8217;t trigger when the room lights are off, and maybe a knock sensor so it could be set to &#8216;snooze&#8217; with a quick tap. Apart from that, most other mods would be software-based. I might make the three red LEDs linked to Gmail and the yellow ones linked to Twitter.</p>
<p>If you decide to make one of your own please let me know.  And if you make any improvements to the software, please share!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2012/02/retro-space-invaders-gmail-notifier/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Christmas e-card for the Herald &amp; Times Group</title>
		<link>http://www.grantgibson.co.uk/blog/2011/11/time-lapse-e-card/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/11/time-lapse-e-card/#comments</comments>
		<pubDate>Fri, 18 Nov 2011 18:00:13 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=241</guid>
		<description><![CDATA[For the past couple of years I&#8217;ve had the dubious honour of being asked to produce the Christmas e-card for the Herald &#38; Times Group.  It&#8217;s always a tricky brief &#8211; produce a seasonal e-card without dragging myself or others away from a busy schedule. In previous years I&#8217;ve just pulled together a picture, some [...]]]></description>
			<content:encoded><![CDATA[<p>For the past couple of years I&#8217;ve had the dubious honour of being asked to produce the Christmas e-card for the Herald &amp; Times Group.  It&#8217;s always a tricky brief &#8211; produce a seasonal e-card without dragging myself or others away from a busy schedule.</p>
<p>In previous years I&#8217;ve just pulled together a picture, some clip art and a Christmas-y tune in Flash to make something like this: <a href="http://www.heraldandtimeslabs.com/christmas2010/">http://www.heraldandtimeslabs.com/christmas2010/</a></p>
<p>&#8230;which is OK, but not very exciting.  So this year, I decided to try something different.</p>
<p>Over the space of a week I took around 3,500 still photos around our Glasgow office and Cambuslang print plant.   I then stitched these photos together using a free Mac app called Time Lapse Assembler to produce a pretty smooth 30 frames/sec timelapse video.  In turn, this was edited to match an appropriate Christmas tune in iMovie.  Here&#8217;s the result&#8230;</p>
<div id="wrapper">
<script language="JavaScript" type="text/javascript" src="http://admin.brightcove.com/js/BrightcoveExperiences.js"></script><br />
<object id="myExperience96251089001" class="BrightcoveExperience"><param name="bgcolor" value="#FFFFFF" /><param name="playerID" value="96233955001" /><param name="width" value="600" /><param name="height" value="450" /><param name="publisherID" value="64298558001"/><param name="isVid" value="true" /><param name="isUI" value="true" /><param name="dynamicStreaming" value="true" /><param name="@videoPlayer" value="1281470285001" /></object><br />
<script type="text/javascript">brightcove.createExperiences();</script>
</div>
<p>Two cameras were used on the shoot.  Most of the pics came from my Nikon D3100 using both an 18-55mm zoom and an 8mm fish eye for the really wide angle shots.  Interval timing was handled by a great little remote shutter release I got off eBay for about £15.  It does everything the official Nikon one does for about a tenth of the price.</p>
<p>My backup camera was a Ricoh CX1 which I used to capture a second angle while the D3100 was in use (like when the drivers were loading their trucks and while everyone gathered for the final &#8220;Merry Christmas&#8221; shot).</p>
<p>In total I reckon I spent approx four hours shooting the pics (elapsed time was more like 18 hours, but most of the time I could leave the camera and get on with other work) and then about another three hours assembling the footage and editing in iMovie.  So, for less than a day&#8217;s work &#8212; or about the same as I&#8217;d have spent creating another cheesy Santa animation &#8212; I reckon we got a much better result.</p>
<p>Producing this video has really given me the timelapse bug, so for Christmas I&#8217;m getting a custom-built robotic tripod head which will allow me to combine real tilts and pans with my timelapse photography.  Exciting stuff!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/11/time-lapse-e-card/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Winners announced in the heraldscotland.com Digital Business Awards</title>
		<link>http://www.grantgibson.co.uk/blog/2011/10/winners-announced-in-the-heraldscotland-com-digital-business-awards/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/10/winners-announced-in-the-heraldscotland-com-digital-business-awards/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 10:19:14 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=238</guid>
		<description><![CDATA[For the second year running, I had the pleasure of chairing the judging panel for the heraldscotland.com Digital Business Awards. The awards, now in their third year, are going from strength to strength with more entries and more award categories than ever before. The awards ceremony, hosted by Catriona Shearer, was held on Thursday night [...]]]></description>
			<content:encoded><![CDATA[<p>For the second year running, I had the pleasure of chairing the judging panel for the heraldscotland.com Digital Business Awards. The awards, now in their third year, are going from strength to strength with more entries and more award categories than ever before.</p>
<p>The awards ceremony, hosted by Catriona Shearer, was held on Thursday night at Oran Mor in Glasgow. Congratulations to all the winners and finalists <a href="http://www.heraldscotland.com/go/digitalawards11/winners">listed here</a> - especially the 999 Design team who scooped three awards and Screenmedia who took the top award for the second year running.</p>
<p>There&#8217;s also a <a href="http://www.heraldscotland.com/business/corporate-sme/999-and-screenmedia-triumph-at-heraldscotland-com-digital-awards-1.1131788">wee write-up of the event here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/10/winners-announced-in-the-heraldscotland-com-digital-business-awards/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photos: Algarve, Sept 2011 (part 2)</title>
		<link>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011-part-2/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011-part-2/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 14:42:49 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=235</guid>
		<description><![CDATA[Some more pics from our holiday&#8230; From Algarve 2011 &#8211; the pics Tara didn&#8217;t upload, posted by Grant Gibson on 9/18/2011 (28 items) Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Generated by Facebook Photo Fetcher]]></description>
			<content:encoded><![CDATA[<p>Some more pics from our holiday&#8230;<span id="more-235"></span></p>
<p><!--FBGallery 2617241680205976642 --><!-- ID 2617241680205976642 Last fetched on 09/20/2011 14:42:51 v1.2.12--><br />
From <a href="http://www.facebook.com/album.php?fbid=10150376506419066&amp;id=609374065&amp;aid=398402">Algarve 2011 &#8211; the pics Tara didn&#8217;t upload</a>, posted by <a href="http://www.facebook.com/grantsgibson">Grant Gibson</a> on 9/18/2011 (28 items)</p>
<div class='gallery'>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/296795_10150376521469066_609374065_9840375_1353895649_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc7/296795_10150376521469066_609374065_9840375_1353895649_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/317536_10150376506669066_609374065_9840296_856647201_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/317536_10150376506669066_609374065_9840296_856647201_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/307101_10150376519559066_609374065_9840355_1984874480_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc7/307101_10150376519559066_609374065_9840355_1984874480_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/293651_10150376519709066_609374065_9840356_214980915_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc7/293651_10150376519709066_609374065_9840356_214980915_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/315011_10150376519894066_609374065_9840357_738486050_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/315011_10150376519894066_609374065_9840357_738486050_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/314500_10150376520024066_609374065_9840360_507328462_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/314500_10150376520024066_609374065_9840360_507328462_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/312174_10150376520174066_609374065_9840361_670233212_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/312174_10150376520174066_609374065_9840361_670233212_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/316525_10150376520349066_609374065_9840362_111360058_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc7/316525_10150376520349066_609374065_9840362_111360058_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/297896_10150376520444066_609374065_9840363_212447743_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/297896_10150376520444066_609374065_9840363_212447743_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/296414_10150376520649066_609374065_9840364_1099924389_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-ash4/296414_10150376520649066_609374065_9840364_1099924389_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/313934_10150376520799066_609374065_9840365_1507117371_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc7/313934_10150376520799066_609374065_9840365_1507117371_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/311570_10150376520974066_609374065_9840366_1403592190_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc7/311570_10150376520974066_609374065_9840366_1403592190_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/315793_10150376521079066_609374065_9840367_462370352_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc7/315793_10150376521079066_609374065_9840367_462370352_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/296991_10150376521164066_609374065_9840368_424712030_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc7/296991_10150376521164066_609374065_9840368_424712030_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/316984_10150376521299066_609374065_9840369_2146356860_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/316984_10150376521299066_609374065_9840369_2146356860_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/314070_10150376521649066_609374065_9840377_1583703367_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/314070_10150376521649066_609374065_9840377_1583703367_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/317866_10150376521774066_609374065_9840378_1239373278_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/317866_10150376521774066_609374065_9840378_1239373278_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/303619_10150376521904066_609374065_9840379_1674658594_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/303619_10150376521904066_609374065_9840379_1674658594_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/305016_10150376522064066_609374065_9840380_1348660670_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/305016_10150376522064066_609374065_9840380_1348660670_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/297888_10150376522139066_609374065_9840381_1899078685_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc7/297888_10150376522139066_609374065_9840381_1899078685_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/308686_10150376522334066_609374065_9840388_773776894_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/308686_10150376522334066_609374065_9840388_773776894_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/310469_10150376522499066_609374065_9840391_362433622_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-ash4/310469_10150376522499066_609374065_9840391_362433622_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/298051_10150376522589066_609374065_9840392_1404037440_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/298051_10150376522589066_609374065_9840392_1404037440_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/318381_10150376522669066_609374065_9840393_612025034_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/318381_10150376522669066_609374065_9840393_612025034_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/304641_10150376522789066_609374065_9840394_285293813_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/304641_10150376522789066_609374065_9840394_285293813_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/317726_10150376522859066_609374065_9840395_548712768_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/317726_10150376522859066_609374065_9840395_548712768_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/313610_10150376522959066_609374065_9840396_2119502093_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc7/313610_10150376522959066_609374065_9840396_2119502093_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/311286_10150376523064066_609374065_9840397_324182906_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/311286_10150376523064066_609374065_9840397_324182906_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
</div>
<p><span class="fpfcredit">Generated by <i>Facebook Photo Fetcher</i></span><br />
<script type="text/javascript">
            jQuery(document).ready(function(){ jQuery(function(){ 
                jQuery(".gallery-icon a").lightBox({
                    imageBlank:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-blank.gif",
                    imageBtnClose:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-close.gif",
                    imageBtnNext:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-next.gif",
                    imageBtnPrev:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-prev.gif",
                    imageLoading:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-ico-loading.gif"
                }); }); });
</script><br />
<!-- End Album 2617241680205976642 --><br />
<!--/FBGallery--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011-part-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Photos: Algarve, Sept 2011</title>
		<link>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 14:41:50 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=224</guid>
		<description><![CDATA[Some pics from our recent holiday to Portugal&#8230; From Algarve Holiday Sept 2011, posted by Tara Gibson on 9/18/2011 (41 items) Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Exif_JPEG_PICTURE Generated by Facebook Photo Fetcher &#160;]]></description>
			<content:encoded><![CDATA[<p>Some pics from our recent holiday to Portugal&#8230;<span id="more-224"></span></p>
<p><!--FBGallery 100000183091059_93234 --><!-- ID 100000183091059_93234 Last fetched on 09/20/2011 14:41:52 v1.2.12--><br />
From <a href="http://www.facebook.com/album.php?fbid=292100944139340&amp;id=100000183091059&amp;aid=93234">Algarve Holiday Sept 2011</a>, posted by <a href="http://www.facebook.com/profile.php?id=100000183091059">Tara Gibson</a> on 9/18/2011 (41 items)</p>
<div class='gallery'>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/304271_292100987472669_100000183091059_1452899_598286976_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/304271_292100987472669_100000183091059_1452899_598286976_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/312984_292101017472666_100000183091059_1452900_92020239_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/312984_292101017472666_100000183091059_1452900_92020239_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/314767_292101044139330_100000183091059_1452902_557162707_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/314767_292101044139330_100000183091059_1452902_557162707_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/296501_292101057472662_100000183091059_1452904_768767660_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc7/296501_292101057472662_100000183091059_1452904_768767660_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/299105_292101080805993_100000183091059_1452905_527848363_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc7/299105_292101080805993_100000183091059_1452905_527848363_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/307871_292101117472656_100000183091059_1452906_387105936_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/307871_292101117472656_100000183091059_1452906_387105936_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/299162_292101140805987_100000183091059_1452907_209380554_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/299162_292101140805987_100000183091059_1452907_209380554_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/321154_292101170805984_100000183091059_1452908_340285062_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/321154_292101170805984_100000183091059_1452908_340285062_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/293513_292101194139315_100000183091059_1452909_1636063138_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc7/293513_292101194139315_100000183091059_1452909_1636063138_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/314324_292101237472644_100000183091059_1452910_868012058_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc7/314324_292101237472644_100000183091059_1452910_868012058_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/302032_292101254139309_100000183091059_1452911_1391341211_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc7/302032_292101254139309_100000183091059_1452911_1391341211_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/297618_292101287472639_100000183091059_1452912_1966807803_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/297618_292101287472639_100000183091059_1452912_1966807803_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/305252_292101320805969_100000183091059_1452913_1125321251_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/305252_292101320805969_100000183091059_1452913_1125321251_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/314035_292101347472633_100000183091059_1452914_966064031_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc7/314035_292101347472633_100000183091059_1452914_966064031_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/314607_292101384139296_100000183091059_1452916_256405354_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc7/314607_292101384139296_100000183091059_1452916_256405354_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/293673_292101414139293_100000183091059_1452917_998638378_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc7/293673_292101414139293_100000183091059_1452917_998638378_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/297118_292101447472623_100000183091059_1452918_1449615911_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/297118_292101447472623_100000183091059_1452918_1449615911_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/319010_292101487472619_100000183091059_1452919_79953224_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/319010_292101487472619_100000183091059_1452919_79953224_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/293899_292101514139283_100000183091059_1452920_1460042520_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/293899_292101514139283_100000183091059_1452920_1460042520_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/302325_292101554139279_100000183091059_1452921_448595251_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/302325_292101554139279_100000183091059_1452921_448595251_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/294675_292101590805942_100000183091059_1452922_1674830624_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc7/294675_292101590805942_100000183091059_1452922_1674830624_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/303121_292101620805939_100000183091059_1452923_126528375_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc7/303121_292101620805939_100000183091059_1452923_126528375_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/312079_292101657472602_100000183091059_1452924_353185707_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/312079_292101657472602_100000183091059_1452924_353185707_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/316152_292101674139267_100000183091059_1452925_1413037745_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/316152_292101674139267_100000183091059_1452925_1413037745_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/317604_292101707472597_100000183091059_1452927_555792292_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/317604_292101707472597_100000183091059_1452927_555792292_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/304884_292101737472594_100000183091059_1452928_1874971495_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/304884_292101737472594_100000183091059_1452928_1874971495_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/309842_292101780805923_100000183091059_1452929_536075818_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-ash4/309842_292101780805923_100000183091059_1452929_536075818_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/312752_292101817472586_100000183091059_1452930_1995702080_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc7/312752_292101817472586_100000183091059_1452930_1995702080_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/314006_292101840805917_100000183091059_1452931_1393411858_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc7/314006_292101840805917_100000183091059_1452931_1393411858_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/309799_292101877472580_100000183091059_1452932_2092184662_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc7/309799_292101877472580_100000183091059_1452932_2092184662_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/304010_292101904139244_100000183091059_1452933_388585400_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/304010_292101904139244_100000183091059_1452933_388585400_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/297930_292101944139240_100000183091059_1452934_1883425504_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/297930_292101944139240_100000183091059_1452934_1883425504_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/311798_292101977472570_100000183091059_1452935_504022870_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/311798_292101977472570_100000183091059_1452935_504022870_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/293357_292102044139230_100000183091059_1452937_1820733534_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/293357_292102044139230_100000183091059_1452937_1820733534_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/294774_292102077472560_100000183091059_1452938_259491727_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/294774_292102077472560_100000183091059_1452938_259491727_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/296093_292102144139220_100000183091059_1452941_1746963862_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/296093_292102144139220_100000183091059_1452941_1746963862_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/308612_292102174139217_100000183091059_1452942_1740762972_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/308612_292102174139217_100000183091059_1452942_1740762972_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/297239_292102207472547_100000183091059_1452943_2082236363_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-ash4/297239_292102207472547_100000183091059_1452943_2082236363_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/s720x720/293667_292102254139209_100000183091059_1452944_607645040_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/293667_292102254139209_100000183091059_1452944_607645040_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/298823_292102277472540_100000183091059_1452945_1622050453_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc7/298823_292102277472540_100000183091059_1452945_1622050453_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc7/s720x720/310378_292102304139204_100000183091059_1452946_1446626434_n.jpg" title="Exif_JPEG_PICTURE " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc7/310378_292102304139204_100000183091059_1452946_1446626434_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Exif_JPEG_PICTURE</dd>
</dl>
<p><br style="clear: both" /></p>
</div>
<p><span class="fpfcredit">Generated by <i>Facebook Photo Fetcher</i></span><br />
<script type="text/javascript">
            jQuery(document).ready(function(){ jQuery(function(){ 
                jQuery(".gallery-icon a").lightBox({
                    imageBlank:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-blank.gif",
                    imageBtnClose:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-close.gif",
                    imageBtnNext:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-next.gif",
                    imageBtnPrev:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-prev.gif",
                    imageLoading:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-ico-loading.gif"
                }); }); });
</script><br />
<!-- End Album 100000183091059_93234 --><br />
<!--/FBGallery--></p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/09/photos-algarve-sept-2011/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Great Scottish Run + Facebook: An experiment in crowdsourcing metadata</title>
		<link>http://www.grantgibson.co.uk/blog/2011/09/great-scottish-run-facebook-crowdsourcing/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/09/great-scottish-run-facebook-crowdsourcing/#comments</comments>
		<pubDate>Mon, 05 Sep 2011 15:47:49 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[work]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=217</guid>
		<description><![CDATA[The Great Scottish Run took place on Sunday.  Two races &#8211; a 10K and a half-marathon &#8211; happened under this banner and as always the Herald &#38; Times photographers where there to capture the action. As in previous years, we ended up with thousands of photographs.  And, as in previous years, we made hundreds of [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.grantgibson.co.uk/blog/wp-content/uploads/2011/09/gsr2051483.jpg"><img class="size-medium wp-image-220 " style="margin-left: 5px; margin-right: 5px;" align="right" title="Great Scottish Run" src="http://www.grantgibson.co.uk/blog/wp-content/uploads/2011/09/gsr2051483-300x199.jpg" alt="" width="300" height="199" /></a>The Great Scottish Run took place on Sunday.  Two races &#8211; a 10K and a half-marathon &#8211; happened under this banner and as always the Herald &amp; Times photographers where there to capture the action.</p>
<p>As in previous years, we ended up with thousands of photographs.  And, as in previous years, we made hundreds of those photos available to buy via our photo sales site.  But the problem we&#8217;re always left with is one of discovery: without having the names and email addresses of those pictured, how could we let people know their photo is available to buy?</p>
<p>So, this year we&#8217;re trying a new experiment.  As well as putting the pics up on our photo sales site we&#8217;re also uploading them all to Facebook.  Users are able to &#8216;tag&#8217; themselves and their friends in our photos with prizes available to act as an incentive.  All the pics going up on Facebook have a unique reference number which allows them to be found quickly and easily on our photo sales site.</p>
<p>Adding this reference number was actually the trickiest part of the whole process &#8211; standard Photoshop actions, even combined with the new Photoshop Variables feature, don&#8217;t offer the flexibility needed for this.   Instead, the solution was to script a Photoshop extension in Javascript that would extract the reference number, overlay it on the image and resize the output to a Facebook-friendly res.  What&#8230; you can script Photoshop in Javascript?  Who knew?  Not me, until last week.</p>
<p>Anyway, it&#8217;s early days but it seems to be working quite well so far.  The technology part was a breeze and should be reusable in future with mimimal effort.</p>
<p>Unfortuantely the Evening Times Facebook page was only five days old at the time of the Great Scottish Run, so we were a bit short of friends to give this a big kickstart.  Hopefully we&#8217;ll be able to use this technique again in future to aid discoverability of our photo sales service.</p>
<p>If you took part in the run, <a href="http://www.eveningtimes.co.uk/go/great-scottish-run-2011">go here to see  if you can find yourself or your friends!</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/09/great-scottish-run-facebook-crowdsourcing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to access the Kingston Wi-Drive from *any* web-enabled device</title>
		<link>http://www.grantgibson.co.uk/blog/2011/08/access-kingston-wi-drive-from-any-device/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/08/access-kingston-wi-drive-from-any-device/#comments</comments>
		<pubDate>Fri, 26 Aug 2011 16:49:01 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=210</guid>
		<description><![CDATA[The Kingston Wi-Drive is a new kid on the storage block.   Aimed at providing extra storage to iOS devices, it pairs a wireless SSD storage gadget with a free iPhone app to double the capacity of your Apple handheld.  I&#8217;m currently writing up my review of it for The Herald. What they don&#8217;t tell you [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.grantgibson.co.uk/blog/wp-content/uploads/2011/08/Kingston-Wi-Drive.jpg"><img class="size-medium wp-image-211" title="Kingston-Wi-Drive" src="http://www.grantgibson.co.uk/blog/wp-content/uploads/2011/08/Kingston-Wi-Drive-300x173.jpg" alt="" width="300" height="173" align="right" /></a>The Kingston Wi-Drive is a new kid on the storage block.   Aimed at providing extra storage to iOS devices, it pairs a wireless SSD storage gadget with a free iPhone app to double the capacity of your Apple handheld.  I&#8217;m currently writing up my review of it for <a href="http://www.heraldscotland.com/technology">The Herald</a>.</p>
<p>What they don&#8217;t tell you anywhere on the packaging or instructions (and by implication deny) is that the Wi-Drive works with ANY web and Wi-Fi enabled gadget.</p>
<p>Want to use the Wi-Drive with an Android phone or tablet, Windows or Mac laptop?</p>
<p>Here&#8217;s how&#8230; Simply connect to the Wi-Drive&#8217;s Wi-Fi AP then point your browser to http://kingston.  As if by magic, the main window of the iOS app appears within your browser.  You can browse folders and open files just like in the app&#8230;. or perhaps more accurately, just like the internet.</p>
<p>I&#8217;ve tested it on a few different devices &#8211; phone, tablet and laptop &#8211; and it works nicely on all of them.  It&#8217;ll even stream movies quite happily from the web interface.</p>
<p>Personally, I think this transforms the Wi-Drive from a super-niche proposition (iPhone users who are stuck for space and aren&#8217;t due an upgrade) to something far more mainstream and interesting.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/08/access-kingston-wi-drive-from-any-device/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>First thoughts on Google&#8217;s Page Speed Service</title>
		<link>http://www.grantgibson.co.uk/blog/2011/08/google-page-speed-service/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/08/google-page-speed-service/#comments</comments>
		<pubDate>Wed, 24 Aug 2011 10:28:43 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[google]]></category>
		<category><![CDATA[technology]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=205</guid>
		<description><![CDATA[I&#8217;m currently Beta testing Google&#8217;s new Page Speed Service on my site.  It&#8217;s basically a transparent page content optimiser and CDN which aims to speed up delivery of sites to end users. This could be a huge deal for anyone who, like me, hosts their site from home. Hosting a personal site from home is [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently Beta testing Google&#8217;s new <a href="http://code.google.com/speed/pss/">Page Speed Service</a> on my site.  It&#8217;s basically a transparent page content optimiser and <a href="http://en.wikipedia.org/wiki/Content_delivery_network">CDN</a> which aims to speed up delivery of sites to end users. This could be a huge deal for anyone who, like me, <a href="http://www.grantgibson.co.uk/misc/about/">hosts their site from home</a>.</p>
<p>Hosting a personal site from home is a great idea, and something I&#8217;d strongly recommend to anyone.  As well as learning the basics of server configuration and maintenance you also get several unique benfits, like:</p>
<ul>
<li>You can hook up other devices like <a href="http://www.grantgibson.co.uk/weather/">weather stations</a>, <a href="http://www.grantgibson.co.uk/blog/index.php/2009/03/29/putting-doorbell-online/">door bells</a> or <a href="http://www.grantgibson.co.uk/blog/index.php/2011/08/19/9bulb-a-twitter-client-in-nine-lamps/">ambient Twitter clients</a></li>
<li>Storage is virtually unlimited</li>
<li>It&#8217;s pretty cheap to run (I reckon around £20 a year in electricity)</li>
</ul>
<p>The one problem with hosting from home is bandwidth.  A basic DSL or Cable line is fine for handling modest everyday traffic (this site gets between 300 and 1,000 visits per day), but isn&#8217;t suited to handling large spikes.  Hopefully, Google&#8217;s Page Speed Service (PSS) will be able to smooth out those spikes and give me the best of both worlds.  So far it&#8217;s looking good.<span id="more-205"></span></p>
<h3>Set up</h3>
<p>Setting up PSS is pretty straightforward. Once you&#8217;ve <a href="http://code.google.com/speed/pss/">signed up</a> and have been accepted, you just need to confirm ownership of your domain (by adding a TXT DNS record) then provide Google with a &#8216;reference domain&#8217; on which they&#8217;ll be able to access your site. The reference domain needs to be something new, because you&#8217;ll be redirecting www to Google&#8217;s servers.  The final step is to update your CNAME record to redirect your www to Google&#8217;s page speed domain, then it&#8217;s just a case of waiting for DNS propogation.</p>
<p>The process was pretty painless, taking less than half an hour even though I was being super-cautious throughout.</p>
<h3>Results</h3>
<p>Initial results are pretty impressive.  Independent <a href="http://www.webpagetest.org/compare">speed tests</a> suggest an improvement of approx 50% in page delivery times and that&#8217;s while my server is otherwise quiet.   I suspect the difference will be much more noticeable when my Cable line is busy downloading the latest multi-gigabyte OSX/PS3/Windows 7/Wii/iOS update.</p>
<h3>Issues</h3>
<p>I had a few teething problems with specific pages on my site.  My weather station graphs showed garbage data and the lightbox effect stopped working on my photo gallery.  I&#8217;m sure it would be possible to view source and debug where it&#8217;s all going wrong, but for simplicity I added the weather page to Google&#8217;s handy page speed blacklist which stopped them trying to process that page.</p>
<p>For now I&#8217;m going to put up with the missing lightbox on my photo gallery.  Those galleries are only there for pre-2010 content anyway &#8211; more recently I&#8217;ve been using Facebook and a handy WordPress plug-in to import pics back onto my site.  Plus, I&#8217;m more interested in Google taking the strain of image delivery than I care about the lightbox effect.</p>
<h3>Final thoughts</h3>
<p>I&#8217;m really impressed so far.  Every test I&#8217;ve run on the site suggests the pages are far better optimised and download faster.  For a completely transparent, coding-free solution that&#8217;s a great result.</p>
<p>My only slight concern is over Google&#8217;s as-yet-undisclosed pricing for PSS.  I like that my site is faster, but it&#8217;s not something I&#8217;d be willing to pay a lot for.  Hopefully pricing will be based on usage with a free entry level for personal sites like mine.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/08/google-page-speed-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Holiday in Borgue, D&amp;G</title>
		<link>http://www.grantgibson.co.uk/blog/2011/08/holiday-in-borgue-dg/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/08/holiday-in-borgue-dg/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 19:26:00 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[photography]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=195</guid>
		<description><![CDATA[This is my first test of posting a photo gallery from Facebook into my own site. Hope it works! Click the more link for the pics&#8230; From Holiday in Borgue, posted by Grant Gibson on 6/12/2011 (62 items) The cottage we stayed in (a converted church) in Borgue At the David Coulthard museum in Twynholm [...]]]></description>
			<content:encoded><![CDATA[<p>This is my first test of posting a photo gallery from Facebook into my own site. Hope it works! Click the more link for the pics&#8230;<span id="more-195"></span><br />
<!--FBGallery 2617241680205948206 --><!-- ID 2617241680205948206 Last fetched on 08/24/2011 10:31:34 v1.2.12--><br />
From <a href="http://www.facebook.com/album.php?fbid=10150273853124066&amp;id=609374065&amp;aid=369966">Holiday in Borgue</a>, posted by <a href="http://www.facebook.com/grantsgibson">Grant Gibson</a> on 6/12/2011 (62 items)</p>
<div class='gallery'>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-ash4/251195_10150273854869066_609374065_8892650_2088840_n.jpg" title="The cottage we stayed in (a converted church) in Borgue " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-ash4/251195_10150273854869066_609374065_8892650_2088840_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>The cottage we stayed in (a converted church) in Borgue</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/260148_10150273853244066_609374065_8892619_6189417_n.jpg" title="At the David Coulthard museum in Twynholm " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/260148_10150273853244066_609374065_8892619_6189417_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>At the David Coulthard museum in Twynholm</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248884_10150273853314066_609374065_8892621_7754770_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc6/248884_10150273853314066_609374065_8892621_7754770_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-ash4/251683_10150273853394066_609374065_8892623_1309308_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-ash4/251683_10150273853394066_609374065_8892623_1309308_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248937_10150273853444066_609374065_8892624_1007955_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc6/248937_10150273853444066_609374065_8892624_1007955_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/260557_10150273853479066_609374065_8892625_4227780_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/260557_10150273853479066_609374065_8892625_4227780_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248382_10150273853529066_609374065_8892626_7555665_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/248382_10150273853529066_609374065_8892626_7555665_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254306_10150273853599066_609374065_8892628_4318013_n.jpg" title="Alone with the Emus " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/254306_10150273853599066_609374065_8892628_4318013_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Alone with the Emus</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254835_10150273853679066_609374065_8892629_3256882_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc6/254835_10150273853679066_609374065_8892629_3256882_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/249469_10150273853729066_609374065_8892630_7206909_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/249469_10150273853729066_609374065_8892630_7206909_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/253739_10150273853789066_609374065_8892631_4407216_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/253739_10150273853789066_609374065_8892631_4407216_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/247589_10150273853849066_609374065_8892632_3510439_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/247589_10150273853849066_609374065_8892632_3510439_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc6/251251_10150273853914066_609374065_8892634_569699_n.jpg" title="Mountain biking in Kirroughtree " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc6/251251_10150273853914066_609374065_8892634_569699_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Mountain biking in Kirroughtree</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/251624_10150273853994066_609374065_8892635_3568668_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc6/251624_10150273853994066_609374065_8892635_3568668_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc6/247524_10150273854084066_609374065_8892636_4280468_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc6/247524_10150273854084066_609374065_8892636_4280468_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248684_10150273854129066_609374065_8892637_4863824_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/248684_10150273854129066_609374065_8892637_4863824_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc6/249398_10150273854174066_609374065_8892638_4695071_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc6/249398_10150273854174066_609374065_8892638_4695071_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/253887_10150273854219066_609374065_8892639_2512024_n.jpg" title="The view from Carsluith Castle " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/253887_10150273854219066_609374065_8892639_2512024_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>The view from Carsluith Castle</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/248385_10150273854264066_609374065_8892640_5714191_n.jpg" title="Cairnholy chambered cairn " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/248385_10150273854264066_609374065_8892640_5714191_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Cairnholy chambered cairn</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248359_10150273854319066_609374065_8892641_2121571_n.jpg" title="My shoe is getting away " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc6/248359_10150273854319066_609374065_8892641_2121571_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>My shoe is getting away</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-snc6/251625_10150273854404066_609374065_8892643_1043767_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-snc6/251625_10150273854404066_609374065_8892643_1043767_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/260364_10150273854464066_609374065_8892644_4563890_n.jpg" title="I applaud the effort that has gone into cutting out the space for that exhaust, but zero marks for taste. " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/260364_10150273854464066_609374065_8892644_4563890_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>I applaud the effort that has gone into cutting out the space for that exhaust, but z&#8230;</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/249806_10150273854524066_609374065_8892645_7253634_n.jpg" title="Charge! " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/249806_10150273854524066_609374065_8892645_7253634_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Charge!</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/260567_10150273854579066_609374065_8892646_6732390_n.jpg" title="I like a good maze. " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/260567_10150273854579066_609374065_8892646_6732390_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>I like a good maze.</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254354_10150273854654066_609374065_8892647_7001734_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/254354_10150273854654066_609374065_8892647_7001734_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/249733_10150273854729066_609374065_8892648_211640_n.jpg" title="Birds made from gardening gloves.  Why?  Why not! " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/249733_10150273854729066_609374065_8892648_211640_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Birds made from gardening gloves.  Why?  Why not!</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/247948_10150273854809066_609374065_8892649_3865268_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/247948_10150273854809066_609374065_8892649_3865268_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/252549_10150273854909066_609374065_8892651_4531185_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc6/252549_10150273854909066_609374065_8892651_4531185_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/254543_10150273854944066_609374065_8892652_5444840_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/254543_10150273854944066_609374065_8892652_5444840_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/254509_10150273855009066_609374065_8892653_4261606_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/254509_10150273855009066_609374065_8892653_4261606_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/260007_10150273855064066_609374065_8892654_4180935_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/260007_10150273855064066_609374065_8892654_4180935_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248727_10150273855189066_609374065_8892656_160083_n.jpg" title="At the Cream o Galloway HARD play.  Amazing! " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/248727_10150273855189066_609374065_8892656_160083_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>At the Cream o Galloway HARD play.  Amazing!</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-ash4/250563_10150273855279066_609374065_8892659_5120399_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-ash4/250563_10150273855279066_609374065_8892659_5120399_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248437_10150273855329066_609374065_8892661_3778824_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/248437_10150273855329066_609374065_8892661_3778824_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-ash4/248237_10150273855399066_609374065_8892663_4676423_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-ash4/248237_10150273855399066_609374065_8892663_4676423_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248427_10150273855484066_609374065_8892665_6596100_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc6/248427_10150273855484066_609374065_8892665_6596100_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/251315_10150273855534066_609374065_8892666_7533193_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/251315_10150273855534066_609374065_8892666_7533193_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254033_10150273855609066_609374065_8892668_2973224_n.jpg" title=" " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc6/254033_10150273855609066_609374065_8892668_2973224_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254117_10150273855694066_609374065_8892670_7800764_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/254117_10150273855694066_609374065_8892670_7800764_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/254803_10150273855789066_609374065_8892672_1405023_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc6/254803_10150273855789066_609374065_8892672_1405023_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/249542_10150273855834066_609374065_8892673_7757681_n.jpg" title="On the Raiders Road, Galloway Forest Park " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/249542_10150273855834066_609374065_8892673_7757681_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>On the Raiders Road, Galloway Forest Park</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/250577_10150273855894066_609374065_8892675_5513442_n.jpg" title=" " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/250577_10150273855894066_609374065_8892675_5513442_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-ash4/248332_10150273855969066_609374065_8892676_1515552_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-ash4/248332_10150273855969066_609374065_8892676_1515552_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/260377_10150273856024066_609374065_8892678_6862188_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/260377_10150273856024066_609374065_8892678_6862188_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/259898_10150273856094066_609374065_8892679_389251_n.jpg" title="View from Ross Bay " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/259898_10150273856094066_609374065_8892679_389251_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>View from Ross Bay</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/252489_10150273856159066_609374065_8892681_7786187_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/252489_10150273856159066_609374065_8892681_7786187_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/260198_10150273856234066_609374065_8892682_1253444_n.jpg" title="Looks like the Isle of Man has its own weather system " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc6/260198_10150273856234066_609374065_8892682_1253444_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Looks like the Isle of Man has its own weather system</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a3.sphotos.ak.fbcdn.net/hphotos-ak-snc6/255022_10150273856289066_609374065_8892684_8079603_n.jpg" title=" " ><img src="http://photos-c.ak.fbcdn.net/hphotos-ak-snc6/255022_10150273856289066_609374065_8892684_8079603_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-ash4/249853_10150273856334066_609374065_8892685_7159587_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-ash4/249853_10150273856334066_609374065_8892685_7159587_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-ash4/247155_10150273856369066_609374065_8892687_707742_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-ash4/247155_10150273856369066_609374065_8892687_707742_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/255717_10150273856449066_609374065_8892693_6582439_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc6/255717_10150273856449066_609374065_8892693_6582439_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/255734_10150273856524066_609374065_8892695_4028122_n.jpg" title=" " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/255734_10150273856524066_609374065_8892695_4028122_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc6/246948_10150273856644066_609374065_8892697_4285026_n.jpg" title="Best toy ever. " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc6/246948_10150273856644066_609374065_8892697_4285026_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Best toy ever.</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a5.sphotos.ak.fbcdn.net/hphotos-ak-snc6/253472_10150273856729066_609374065_8892700_221581_n.jpg" title=" " ><img src="http://photos-e.ak.fbcdn.net/hphotos-ak-snc6/253472_10150273856729066_609374065_8892700_221581_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a1.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248477_10150273856789066_609374065_8892702_6456827_n.jpg" title=" " ><img src="http://photos-a.ak.fbcdn.net/hphotos-ak-snc6/248477_10150273856789066_609374065_8892702_6456827_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/249956_10150273856849066_609374065_8892703_602715_n.jpg" title=" " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/249956_10150273856849066_609374065_8892703_602715_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a4.sphotos.ak.fbcdn.net/hphotos-ak-snc6/248844_10150273856949066_609374065_8892705_7063905_n.jpg" title="Some pegs got fabric, some got skin. Ewan didn't care either way :( " ><img src="http://photos-d.ak.fbcdn.net/hphotos-ak-snc6/248844_10150273856949066_609374065_8892705_7063905_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Some pegs got fabric, some got skin. Ewan didn&#8217;t care either way <img src='http://www.grantgibson.co.uk/blog/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' /> </dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc6/259970_10150273856989066_609374065_8892706_7944574_n.jpg" title=" " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc6/259970_10150273856989066_609374065_8892706_7944574_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'></dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a7.sphotos.ak.fbcdn.net/hphotos-ak-snc6/255174_10150273857094066_609374065_8892708_5987874_n.jpg" title="There's one you don't see often " ><img src="http://photos-g.ak.fbcdn.net/hphotos-ak-snc6/255174_10150273857094066_609374065_8892708_5987874_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>There&#8217;s one you don&#8217;t see often</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a6.sphotos.ak.fbcdn.net/hphotos-ak-ash4/252895_10150273857174066_609374065_8892710_6728565_n.jpg" title="I think the leap from birdwatcher to stalker comes with the second pair of binoculars " ><img src="http://photos-f.ak.fbcdn.net/hphotos-ak-ash4/252895_10150273857174066_609374065_8892710_6728565_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>I think the leap from birdwatcher to stalker comes with the second pair of binoculars</dd>
</dl>
<p><br style="clear: both" /></p>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a2.sphotos.ak.fbcdn.net/hphotos-ak-snc6/251017_10150273857289066_609374065_8892712_7595191_n.jpg" title="Anwoth church as seen in The Wicker Man " ><img src="http://photos-b.ak.fbcdn.net/hphotos-ak-snc6/251017_10150273857289066_609374065_8892712_7595191_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>Anwoth church as seen in The Wicker Man</dd>
</dl>
<dl class='gallery-item' style="width:24.875%">
<dt class='gallery-icon'><a class="fbPhoto" href="http://a8.sphotos.ak.fbcdn.net/hphotos-ak-snc6/249971_10150273857334066_609374065_8892713_6866943_n.jpg" title="This one is small... but the ones out there are far away. " ><img src="http://photos-h.ak.fbcdn.net/hphotos-ak-snc6/249971_10150273857334066_609374065_8892713_6866943_s.jpg" alt="" /></a></dt>
<dd class='gallery-caption'>This one is small&#8230; but the ones out there are far away.</dd>
</dl>
<p><br style="clear: both" /></p>
</div>
<p><span class="fpfcredit">Generated by <i>Facebook Photo Fetcher</i></span><br />
<script type="text/javascript">
            jQuery(document).ready(function(){ jQuery(function(){ 
                jQuery(".gallery-icon a").lightBox({
                    imageBlank:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-blank.gif",
                    imageBtnClose:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-close.gif",
                    imageBtnNext:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-next.gif",
                    imageBtnPrev:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-btn-prev.gif",
                    imageLoading:"http://www.grantgibson.co.uk/blog/wp-content/plugins/facebook-photo-fetcher/jquery-lightbox/images/lightbox-ico-loading.gif"
                }); }); });
</script><br />
<!-- End Album 2617241680205948206 --><br />
<!--/FBGallery--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/08/holiday-in-borgue-dg/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>9bulb: a Twitter client in nine lamps</title>
		<link>http://www.grantgibson.co.uk/blog/2011/08/9bulb-a-twitter-client-in-nine-lamps/</link>
		<comments>http://www.grantgibson.co.uk/blog/2011/08/9bulb-a-twitter-client-in-nine-lamps/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 23:02:32 +0000</pubDate>
		<dc:creator>Grant</dc:creator>
				<category><![CDATA[technology]]></category>
		<category><![CDATA[weekend projects]]></category>

		<guid isPermaLink="false">http://www.grantgibson.co.uk/blog/?p=125</guid>
		<description><![CDATA[What is it?! I was in B&#38;Q a few weeks ago and this LED panel caught my eye.  It&#8217;s not the type of thing I&#8217;d normally buy but I fancied its hacking potential as an ambient device of some sort. Taking the back off revealed a set of nine mini circuit boards, each with a [...]]]></description>
			<content:encoded><![CDATA[<p><iframe src="http://www.youtube.com/embed/mtnuZuKTIbE" frameborder="0" width="560" height="345"></iframe></p>
<p><strong>What is it?!</strong></p>
<p>I was in B&amp;Q a few weeks ago and <a href="http://www.diy.com/diy/jsp/bq/nav.jsp?action=detail&amp;fh_secondid=10867834&amp;fh_location=//catalog01/en_GB/categories%3C{9372013}/categories%3C{9372029}/categories%3C{9372110}/specificationsProductType=novelty_lights">this LED panel</a> caught my eye.  It&#8217;s not the type of thing I&#8217;d normally buy but I fancied its hacking potential as an ambient device of some sort.</p>
<p>Taking the back off revealed a set of nine mini circuit boards, each with a red, green and blue LED plus a simple circuit to cycle through those colours.  The wiring couldn&#8217;t have been simpler &#8211; the 5V DC power supply ran to a switch with each of the LED boards wired in parallel from that.</p>
<p><span id="more-125"></span></p>
<p><strong>The plan</strong></p>
<p>At this point I didn&#8217;t know what I was going to use it for <em>but I had a plan for taking control</em>.</p>
<p>The standard behaviour for the lamps was to start at red, then sequence through to green then blue at a random rate. Taking control of each red, green and blue LED individually was more work than I was prepared to put in &#8212; on top of needing to wire and control 27 LEDs individually (via <a href="http://en.wikipedia.org/wiki/Pulse-width_modulation">PWM</a> outputs if I wanted smooth transitions) I&#8217;d also need to add resistors to limit the power going to each bulb.  Far too much work for a couple of nights tinkering.</p>
<p>However, by simply controlling the 5V input to each circuit board I could have three-state control over each bulb: off, cycling colours, and constant red.  The constant red can be achieved by removing the power for as little as 1 millisecond every couple of seconds.  Every time the power trips the bulb resets to red (and the delay is imperceptible).</p>
<p>So, step one: I kept the ground (black) wire running between all of the lamps, but cut away the standard positive (red) wiring.  I then soldered each positive connection to a jumper wire and from there directly to an output on an <a href="http://arduino.cc/en/Main/ArduinoBoardUno">Arduino Uno</a> board.  The ground line went to ground on the Arduino.  Since the power switch was no longer required I wired that as an input switch in case it would be useful later.</p>
<p><img title="Disco rewired" src="http://www.grantgibson.co.uk/blog/wp-content/uploads/2011/08/bq-disco2-290x300.jpg" alt="" width="290" height="300" /></p>
<p>At this point I still had no idea what I&#8217;d use it for, but was able to write some simple sketches to control the individual lamps.  All was well.</p>
<p><strong>So what to do with a 3&#215;3 ambient light?</strong></p>
<p>I ran through various ideas including indicating weather forecasts, a count of unread emails, and any &#8216;ending soon&#8217; eBay auctions.  But in each case there would be a lot of bespoke coding required and, actually, the output would be pretty cryptic: &#8220;what does one red ball, two cycling balls, a flashing ball and four off balls mean again?&#8221;</p>
<p>So then I had an idea&#8230; could I display a text font on a 3&#215;3 display?  I had a hunt around for any fonts that would work on a 3&#215;3 matrix.  To my surprise I found a few and in the end I created my own font using some of the others as inspiration.</p>
<p>Some Arduino sketching later and I had the whole printable ASCII range mapped out in an Arduino array. Input via the serial line was printed directly to the display &#8211; result.</p>
<p>OK, so now it displays text, what next?  Well, then I thought, &#8220;Is there a good existing API for handling small amounts of text?&#8221;.  Twitter seemed like the obvious answer.</p>
<p><strong>The Twitter angle</strong></p>
<p>The benefits of using Twitter seemed pretty clear: the API is rock solid; there are clients for just about every platform I might want to send from (web, iPhone, SMS, etc); and it would be easy to hook it into other applications &#8211; like that weather forecast idea I&#8217;d had previously.</p>
<p><strong>Putting it all together</strong></p>
<p>Using the <a href="https://github.com/themattharris/tmhOAuth">PHP OAuth library</a> by Matt Harris it was pretty straightforward to get Twitter messages via the API.  It can show anything that is available via the API, and right now I&#8217;ve settled for @ mentions for <a href="http://twitter.com/#!/9bulb">9bulb</a>.  So if you send a message @9bulb it&#8217;ll pop up on my panel &#8211; sweet!</p>
<p>The one shortcoming at this point was that the messages ran across the panel in real time, even if I wasn&#8217;t there to see them.  To fix that, I added a second &#8216;mode&#8217; to the Arduino code.</p>
<p>In this mode the Arduino powers all lamps constantly, making it work just like it did when I bought it.  But when a message comes in it&#8217;s held on the serial buffer and the lamps change to display a red cross to indicate an incoming message.</p>
<p>I then coded the old power switch to control modes: off for buffering, on for playback.</p>
<p>That&#8217;s about it. If you fancy trying it yourself here&#8217;s the PHP code&#8230;</p>
<div style="height: 200px; overflow: auto; background: #ddd;">
<pre>&lt;?php
require_once('tmhoauth/tmhOAuth.php');
require_once('maxid.php');</pre>
<pre>$count = 10;
$newmaxid = "";
$result = get_mentions($count, $maxid);

if($result) {
	exec("echo \"" . $result . "\" &gt; com3");
	echo("Done.  Sent: " . $result);
} else {
	echo("Nothing to process");
}

function get_mentions($c, $m) {
  $outputString = "";

  $connection = new tmhOAuth(array(
    'consumer_key' =&gt; 'XXXXX - Get your own key from dev.twitter.com',
    'consumer_secret' =&gt; 'XXXXX',
    'user_token' =&gt; 'XXXXXX',
    'user_secret' =&gt; 'XXXXXX',
  )); 

  $connection-&gt;request('GET',
    $connection-&gt;url('1/statuses/mentions'),
    array('count' =&gt; $c, 'since_id' =&gt; "$m" ));

  $incoming = $connection-&gt;response['response'];
  if($incoming) {
    $incoming = preg_replace('/"id":([0-9]*)/', '"id":"\1"', $incoming);

    $response = json_decode($incoming);
    foreach ($response as $r) {
      if($r-&gt;{'id'} &gt; $newmaxid) {
        $newmaxid = $r-&gt;{'id'};
      }
      $t = $r-&gt;{'text'};
      $t = str_replace("|"," ",$t);
      $outputString .= "|" . $t;
    }
    if($newmaxid != "") {
      update_max_id($newmaxid);
    }
  }
  return $outputString;
}

function update_max_id($id) {
  $myFile = "maxid.php";
  $fh = fopen($myFile, 'w') or die("can't open file");
  $stringData = "&lt;?php \$maxid = \"" . $id . "\"; ?&gt;";
  fwrite($fh, $stringData);
  fclose($fh);
}

?&gt;</pre>
</div>
<p>The file maxid.php just makes sure you don&#8217;t get the same tweet twice.  It just needs something like this to start with&#8230;</p>
<p>&lt;?php $maxid = &#8220;104306727796744192&#8243;; ?&gt;</p>
<p>And here&#8217;s the Arduino sketch&#8230;</p>
<div style="height: 200px; overflow: auto; background: #ddd;">
<pre>int k = 10;

// logically map the physical pins to left-to-right reading order
int pinMap[] = {9, 10, 11, 8, 5, 12, 7, 6, 13};

int letter_matrix[70][9] = {
0,0,0,0,0,0,0,0,0, // space
0,1,0,0,1,0,0,1,0, // !
0,0,0,0,0,0,0,0,0, // " - set to space
1,0,1,1,0,1,1,0,1, // #
0,1,1,0,1,0,1,1,0, // $
0,0,0,0,1,0,0,0,0, // % - not implemented (middle dot)
0,0,0,0,1,0,0,0,0, // &amp; - not implemented
0,1,0,0,1,0,0,0,0, // '
0,1,0,1,0,0,0,1,0, // (
0,1,0,0,0,1,0,1,0, // )
0,1,0,1,0,1,0,1,0, // *
0,1,0,1,1,1,0,1,0, // +
0,0,0,0,1,0,1,0,0, // ,
0,0,0,1,1,1,0,0,0, // -
0,0,0,0,0,0,0,1,0, // .
0,0,1,0,1,0,1,0,0, // /
1,1,1,1,0,1,1,1,1, // 0
1,1,0,0,1,0,1,1,1, // 1
1,1,0,0,1,0,0,1,1, // 2
1,1,1,0,1,1,1,1,1, // 3
1,0,1,1,1,1,0,0,1, // 4
0,1,1,0,1,0,1,1,0, // 5
1,0,0,1,1,1,1,1,1, // 6
1,1,1,0,0,1,0,0,1, // 7
0,1,1,1,1,1,1,1,1, // 8
1,1,1,1,1,1,0,0,1, // 9
0,1,0,0,0,0,0,1,0, // :
0,1,0,0,1,0,1,0,0, // ;
0,0,1,0,1,0,0,0,1, // &lt; 
1,1,1,0,0,0,1,1,1, // =
1,0,0,0,1,0,1,0,0, // &gt;
1,1,1,0,1,1,0,1,0, // ?</pre>
<pre>0,1,1,1,0,1,0,1,1, // @
0,1,0,1,1,1,1,0,1, // a
1,1,0,1,1,1,1,1,1, // b
1,1,1,1,0,0,1,1,1, // c
1,1,0,1,0,1,1,1,0, // d
1,1,1,1,1,0,1,1,1, // e
1,1,1,1,1,0,1,0,0, // f
1,1,0,1,0,1,1,1,1, // g
1,0,1,1,1,1,1,0,1, // h
1,1,1,0,1,0,1,1,1, // i
0,0,1,1,0,1,1,1,1, // j
1,0,1,1,1,0,1,0,1, // k
1,0,0,1,0,0,1,1,1, // l
1,1,1,1,1,1,1,0,1, // m
1,1,1,1,0,1,1,0,1, // n
1,1,1,1,0,1,1,1,1, // o
1,1,1,1,1,1,1,0,0, // p
1,1,1,1,1,1,0,0,1, // q
1,1,1,1,1,0,1,0,1, // r
0,1,1,0,1,0,1,1,0, // s
1,1,1,0,1,0,0,1,0, // t
1,0,1,1,0,1,1,1,1, // u
1,0,1,1,0,1,0,1,0, // v
1,0,1,1,1,1,1,1,1, // w
1,0,1,0,1,0,1,0,1, // x
1,0,1,0,1,0,0,1,0, // y
1,1,0,0,1,0,0,1,1, // z
1,1,0,1,0,0,1,1,0, // [
1,0,0,0,1,0,0,0,1, // \
0,1,1,0,0,1,0,1,1, // ]
0,1,0,1,0,1,0,0,0, // ^
0,0,0,0,0,0,1,1,1, // _
1,0,0,0,1,0,0,0,0, // `
0,0,1,1,1,0,0,0,1, // {
0,1,0,0,1,0,0,1,0, // |
1,0,0,0,1,1,1,0,0, // }
1,0,1,0,1,0,0,0,0, // ~
};

void setup() {
Serial.begin(9600);
pinMode(2, INPUT);
digitalWrite(2, HIGH);

pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
pinMode(12, OUTPUT);
pinMode(13, OUTPUT);
}

void loop() {
int buttonValue = digitalRead(2);
if(buttonValue == 1) {
modeOne();
} else {
modeTwo();
}
}

void modeOne() {
// Colour cycles all except 'x' if there is data on the line
for(int i=0; i 0) {
digitalWrite(pinMap[0], LOW);
digitalWrite(pinMap[2], LOW);
digitalWrite(pinMap[4], LOW);
digitalWrite(pinMap[6], LOW);
digitalWrite(pinMap[8], LOW);
}
}

void modeTwo() {
int i;
// Blank the display first
for(i=0;i 0) {
int ki = Serial.read();
Serial.println(ki);
if(ki == 124) {
// Pipe separator
doFlourish();
k = 0;
} else if ((ki&gt;=97) &amp;&amp; (ki=32) &amp;&amp; (ki // Other displayable ascii char, so take away 32
k = ki - 32;
} else {
// Non-displayable character, so set to space
k = 0;
}
} else {
k = 0;
}
for(i=0;i if(letter_matrix[k][i] == 0) {
digitalWrite(pinMap[i], LOW);
} else {
digitalWrite(pinMap[i], HIGH);
}
}
delay(750);
}

void doFlourish() {
digitalWrite(pinMap[0], HIGH);
digitalWrite(pinMap[3], HIGH);
digitalWrite(pinMap[6], HIGH);
delay(100);
digitalWrite(pinMap[1], HIGH);
digitalWrite(pinMap[4], HIGH);
digitalWrite(pinMap[7], HIGH);
delay(100);
digitalWrite(pinMap[2], HIGH);
digitalWrite(pinMap[5], HIGH);
digitalWrite(pinMap[8], HIGH);
delay(100);
digitalWrite(pinMap[0], LOW);
digitalWrite(pinMap[3], LOW);
digitalWrite(pinMap[6], LOW);
delay(100);
digitalWrite(pinMap[1], LOW);
digitalWrite(pinMap[4], LOW);
digitalWrite(pinMap[7], LOW);
delay(100);
digitalWrite(pinMap[2], LOW);
digitalWrite(pinMap[5], LOW);
digitalWrite(pinMap[8], LOW);
}</pre>
</div>
<p><strong>Thoughts for the future</strong></p>
<p>Right now it&#8217;s a read-only Twitter client.  A nice future enhancement would be to allow for the creation of messages directly on 9bulb.  I don&#8217;t want to modify the case of the unit, but the power input socket is now free.  It&#8217;s a 3.5mm headphone-style socket, so my current thinking is to have an external <a href="http://www.nevadaradio.co.uk/amateur-radio/morse-keys/mfj-550?utm_source=google&amp;utm_medium=product%2Bsearch&amp;utm_campaign=xml%2Bfeed">Morse code key</a> which could be plugged into that 3.5mm socket.  Messages could be tapped out in Morse and potentially previewed on the lamp display before sending.</p>
<p>If anyone wants to have a go at writing the sketch (and/or the PHP) for that I&#8217;d love to see it. There are several Arduino Morse input projects on the go, but I haven&#8217;t yet thought about how to handle both incoming messages and incoming dot-dash sequences in a single code loop. Thoughts on a postcard please.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.grantgibson.co.uk/blog/2011/08/9bulb-a-twitter-client-in-nine-lamps/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

