<?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>chemicaloliver &#187; Hardware</title>
	<atom:link href="http://chemicaloliver.net/category/hardware/feed/" rel="self" type="application/rss+xml" />
	<link>http://chemicaloliver.net</link>
	<description>experimentation, criticism and geekiness</description>
	<lastBuildDate>Fri, 03 Feb 2012 18:21:33 +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>MQTT Caller Display &#8211; Hacking the BT Caller Display 50 Serial Port</title>
		<link>http://chemicaloliver.net/electronics/mqtt-caller-display-hacking-the-bt-caller-display-50-serial-port/</link>
		<comments>http://chemicaloliver.net/electronics/mqtt-caller-display-hacking-the-bt-caller-display-50-serial-port/#comments</comments>
		<pubDate>Sun, 02 Oct 2011 16:03:35 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[circuit]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[mqtt]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[serial]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=1156</guid>
		<description><![CDATA[This post describes a recent project I completed to display caller id information for incoming calls on my computers. The project uses a BT Caller Display 50 connected via an optoisolating bridge to an arduino with an ethernet shield. When an incoming call is received the telephone number is transmitted via MQTT to a python client on [...]]]></description>
			<content:encoded><![CDATA[<p>This post describes a recent project I completed to display caller id information for incoming calls on my computers. The project uses a BT Caller Display 50 connected via an optoisolating bridge to an arduino with an ethernet shield. When an incoming call is received the telephone number is transmitted via MQTT to a python client on any computer I happen to be using at the time. This project is a great example of someone putting great effort into being lazy, the caller id data is alredy displayed on my phone but the phone generally resides in the next room so this avoids me needing to run for stupid cold callers. Initially I&#8217;d wanted to do this project just using the arduino, which may have been possible but using the CD50 makes it a huge amount easier.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3470.jpg"><img class="size-medium wp-image-1161 aligncenter" title="BT Caller Display 50 and Arduino" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3470-300x199.jpg" alt="" width="300" height="199" /></a></p>
<p><span id="more-1156"></span></p>
<h2>UK Caller ID Protocol</h2>
<p>The caller id system in the UK transmits the callers telephone number (and date and time) as a burst of 1200 baud serial between the first and second ring, this is then decoded and displayed.</p>
<h2>Hardware</h2>
<p>The hardware is very simple as the CD50 has an internal serial port so all that&#8217;s required is to safely isolate the phone line from any sensitive computer systems with an optoisolator.</p>
<h3>CD50</h3>
<p>The CD50 has been hacked to provide serial output in a couple of projects before, however all the pages documenting this have long gone (the unit is around 10yrs old). Internally the unit uses two EXAR XR-2211 FSK Demodulator/ Tone Decoders, one to detect the presence of the signal and one to decode it (allegedly). In this configuration this means serial data is outputted on pin 7 of the left chip (see below)</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3461.jpg"><img class="size-medium wp-image-1164 aligncenter" title="BT Caller Display 50 Interior" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3461-300x200.jpg" alt="" width="300" height="200" /></a><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3465.jpg"><img class="size-medium wp-image-1166 aligncenter" title="BT Caller Display 50 Front Interior" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3465-255x300.jpg" alt="" width="255" height="300" /></a></p>
<p>If you wish to power the unit from a source other than the internal batteries this can be easily achieved by connecting to the points below the LCD as shown, this must be done with caution as the unit will not work if connected to mains earth as used by many PSUs it must be fully isolated.</p>
<h3>Bridge</h3>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/isolator-circuit1.png"><img class="size-medium wp-image-1169 aligncenter" title="Optoisolating circuit" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/isolator-circuit1-300x162.png" alt="" width="300" height="162" /></a></p>
<p>The optoisolating bridge protects connected equipment from high voltages which can occur in telephone lines, here I used the Vishay 6N137 device as shown (I chose the Vishay as it requires very low current). I powered the CD50 side using the power supply on pin 1 and the arduino side using the internal power supply from the arduino. The 6N137 was sourced from <a href="http://uk.farnell.com/">Farnell</a>.</p>
<h3>Arduino</h3>
<p>The arduino simply receives the serial data using its hardware serial port (I had mixed results with a software serial port), parses the telephone number from the output and then sends it in an MQTT message it would be simple to pass it using over usb back to the computer if you are not using MQTT too.</p>
<h2>Software</h2>
<p>The serial output from the CD50 has some apparently (but probably not) random letters appended to the beginning of each transmission and the data and time directly in front of the telephone number so once messages have been received this must be parsed at some stage, I choose to do it on the arduino.</p>
<p>All code is also on my <a href="github.com/chemicaloliver">github</a>.</p>
<h3>Arduino</h3>
<p>I wrote this simple sketch to parse and send the data, it requires the Arduino MQTT Library - <a href="http://knolleary.net/arduino-client-for-mqtt/">http://knolleary.net/arduino-client-for-mqtt/</a>.</p>
<pre class="brush: cpp; title: ; notranslate">
/*
 * Quick arduino sketch to recieve a telephone number over
 * serial (1200 baud using hardware serial) and broadcast it
 * using MQTT.
 *
 * This sketch is part of a project to read caller id data from
 * a BT Caller Display 50.
 *
 * @author Oliver Smith
 *
 */

#include &lt;SPI.h&gt;
#include &lt;Ethernet.h&gt;
#include &lt;PubSubClient.h&gt;

byte mac[]    = { 0xDE, 0xED, 0xBA, 0xFE, 0xFE, 0xED };
byte server[] = { 192, 168, 1, 2 };
byte ip[]     = { 192, 168, 1, 8 };

PubSubClient client(server, 1883, callback);

const int bufferLength = 19;      //Length of buffer
char stringBuffer[bufferLength];  //Buffer to hold input
int stringIndex = 0;              //Index of next free element in buffer

void setup()
{
  Serial.begin(1200);

  Serial.println(&quot;Serial Connected&quot;);

  Ethernet.begin(mac, ip);
  Serial.println(&quot;Network Connected&quot;);

  if(client.connect(&quot;arduino&quot;))
  {
    Serial.println(&quot;MQTT Connected&quot;);
  }

}

void loop()
{
  while(Serial.available() &amp;&amp; stringIndex &lt; bufferLength)
  {
    char inputChar = Serial.read();

    //Check if the char read is a number
    if(inputChar  &gt;= '0' &amp;&amp; inputChar &lt;= '9' )
    {

        //Add number to buffer
        stringBuffer[stringIndex] = inputChar;

      //Serial.println(stringBuffer);
      stringIndex++;
    }
  }

  //If the buffer is long enough
  if(stringIndex == bufferLength)
  {
    Serial.println(&quot;Buffer full&quot;);
    //remove initial irrelevant digits

    String output = String(stringBuffer);
    String telephoneNumberString = output.substring(8);

    char charBuf[12];
    telephoneNumberString.toCharArray(charBuf, 12);

    //Send the telephone number back over serial for debugging
    Serial.println(charBuf);
    client.publish(&quot;topic&quot;,charBuf);

    stringIndex = 0;
  }
}

void callback(char* topic, byte* payload,int length) {
  // no action required
}
</pre>
<h3>Example Python Client</h3>
<p>I used a simple MQTT subscribe script with pynotify in ubuntu to display messages on the desktop, details are available in my previous post: <a title="First steps using Python and MQTT (using pynotify on Ubuntu)" href="http://chemicaloliver.net/programming/first-steps-using-python-and-mqtt/">First steps using Python and MQTT</a></p>
<p>I&#8217;d rather not show it working as that would give away my telephone number! But it does work, so far 100% of the time.</p>
<h2>Getting There</h2>
<p>Initially there was lots of head scratching, probing and logic analysing to check the information I&#8217;d read:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3456.jpg"><img class="size-medium wp-image-1174 aligncenter" title="BT CD50 Under Test" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/10/IMG_3456-300x211.jpg" alt="" width="300" height="211" /></a></p>
<h3>History</h3>
<p>The circuit used seems to be a duplicate of a previous project which was documented at:</p>
<p><a href="http://www.amarok.demon.co.uk/dl/cd50_mod/">http://www.amarok.demon.co.uk/dl/cd50_mod/</a></p>
<p>and</p>
<p><a href="http://www.photon.dyndns.org/projects/btcd50conversion/old_index.html">http://www.photon.dyndns.org/projects/btcd50conversion/old_index.html</a></p>
<p>However these pages are long gone and the wayback machine only has the text not the images detailing the hardware. I never managed to find a copy of them so I built my own version.</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/electronics/mqtt-caller-display-hacking-the-bt-caller-display-50-serial-port/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Double sided male headers &#8211; ease your FTDI cable to breadboard connections woes!</title>
		<link>http://chemicaloliver.net/hardware/double-sided-male-headers-ease-your-ftdi-cable-to-breadboard-connections-woes/</link>
		<comments>http://chemicaloliver.net/hardware/double-sided-male-headers-ease-your-ftdi-cable-to-breadboard-connections-woes/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 20:33:20 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[circuit]]></category>
		<category><![CDATA[components]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[ftdi]]></category>
		<category><![CDATA[prototyping]]></category>
		<category><![CDATA[samtec]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=1130</guid>
		<description><![CDATA[When prototyping circuits I often use a breadboard and an FTDI cable which usually leaves some kind of hacky looking unstable connection using wires stuck into the FTDI cable female header connector. This arrangement often leads to failiure as the wires fall out. After much searching I&#8217;ve managed to locate a solution to allow neat [...]]]></description>
			<content:encoded><![CDATA[<p>When prototyping circuits I often use a breadboard and an FTDI cable which usually leaves some kind of hacky looking unstable connection using wires stuck into the FTDI cable female header connector. This arrangement often leads to failiure as the wires fall out. After much searching I&#8217;ve managed to locate a solution to allow neat connection of a female header to the breadboard.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04686.jpg"><img class="size-medium wp-image-1133 aligncenter" title="Connecting an ftdi cable to a breadboard with jumper wires" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04686-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>See below for details:<br />
<span id="more-1130"></span><br />
Surprisingly there seem to be only one or two retailers carry the part to solve this issue, a double sided male header:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04685.jpg"><img class="size-medium wp-image-1134 aligncenter" title="Samtec TSW-113-16-G-S Double Sided Male Header" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04685-300x207.jpg" alt="" width="300" height="207" /></a> <a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04682.jpg"><img class="size-medium wp-image-1135 aligncenter" title="Double sided header in breadboard" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04682-300x238.jpg" alt="" width="300" height="238" /></a><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04683.jpg"><img class="size-medium wp-image-1136 aligncenter" title="FTDI Cable connected to double sided header" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2011/09/DSC04683-300x226.jpg" alt="" width="300" height="226" /></a></p>
<p>The small downside to the part I used is that the pins are slightly too long and could damage the female connector if forced on. The part I used was Samtec TSW-150-16-G-S which comes as a row of 50 pins with ~8mm of pin above and below the plastic, with hindsight TSW-150-08-G-S with ~6mm above and below would probably have worked better if you&#8217;re planning to buy some. (I&#8217;m probably going to get some and then update). You buy them direct on Samtec&#8217;s website. WHile you&#8217;re there have a look around, there is an amazing array of potentially useful hard to find connectors.</p>
<p><em>Edit: I&#8217;ve now tested the shorter TSW-150-08-G-S and this is indeed the perfect length to fit into the breadboard and female header without damaging either.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/hardware/double-sided-male-headers-ease-your-ftdi-cable-to-breadboard-connections-woes/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Building a Low Powered and Silent Atom Based Server (Sheevaplug alternative)</title>
		<link>http://chemicaloliver.net/hardware/building-a-low-powered-atom-based-sever-sheevaplug-alternative/</link>
		<comments>http://chemicaloliver.net/hardware/building-a-low-powered-atom-based-sever-sheevaplug-alternative/#comments</comments>
		<pubDate>Wed, 15 Sep 2010 18:08:12 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[ARM]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mqtt]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[sheevaplug]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=566</guid>
		<description><![CDATA[After I had problems with my sheevaplug power supply I had lost faith in the device and didn&#8217;t trust it to survive being on 24/7 without exploding/setting on fire etc&#8230; so after NewIT kindly fixed it I sold it. This left me with no server to mess with so I decided to try and build [...]]]></description>
			<content:encoded><![CDATA[<p>After I had problems with my <a href="http://chemicaloliver.net/electronics/sheevaplug-why-globalscale-suck/">sheevaplug power supply</a> I had lost faith in the device and didn&#8217;t trust it to survive being on 24/7 without exploding/setting on fire etc&#8230; so after NewIT kindly fixed it I sold it. This left me with no server to mess with so I decided to try and build a new one &#8211; the two primary requirements being that it used as little power as possible (ideally around 10W &#8211; the same as my sheevaplug with hd and usb hub) and was totally silent. In this post I&#8217;ll describe what I came up with.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/07/IMG_3091.jpg"><img class="size-thumbnail wp-image-747 aligncenter" title="My low powered, atom based server." src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/07/IMG_3091-253x300.jpg" alt="My low powered, atom based server." width="253" height="300" /></a></p>
<p><span id="more-566"></span></p>
<h2>Component Choice</h2>
<p>My requirements for quietness and low power stipulated that a fanless system would be best so as a balance between low power and performance I choose a 1.6GHz N270 atom based motherboard (the <a href="http://www.intel.com/products/desktop/motherboards/D945GSEJT/D945GSEJT-overview.htm">Intel D945GSEJT</a>) which consists of a mixture of laptop and desktop components while providing ample speed for my requirements in silence. The motherboard is also nice because it has an internal DC-DC power supply meaning that only an external DC power supply is required, no extra faffing as with a lot of ITX boards on the market. I added 2GB of RAM to this, the maximum allowed by the motherboard.</p>
<p>I decided I could cope with the slight noise generated by a hard disk so went for the best value 2.5 inch disk I could find (A Hitachi 250GB), an SSD was beyond the performance required and budget of the project!</p>
<p>When choosing the case I went for the quite large <a href="http://www.lian-li.com/v2/en/product/product06.php?pr_index=319&amp;cl_index=1&amp;sc_index=25&amp;ss_index=64">Lian Li PC-Q07</a>, it has space for a full atx power supply but I had in mind that I wanted a system that I could grow and modify if I thought of a new use for it so currently I have a motherboard and small hard disk in a case able to accommodate a full ATX PSU, 5.25&#8243; optical drive and 3.5&#8243; Hard Disk&#8230;I mentioned space was consideration!</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/07/IMG_3124.jpg"><img class="size-thumbnail wp-image-748 aligncenter" title="Inside my sheevaplug replacement" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/07/IMG_3124-300x294.jpg" alt="Inside my sheevaplug replacement" width="300" height="294" /></a></p>
<p>The motherboard has headers for two serial ports and a parallel port so I added a serial PCI header adaptor into the only PCI slot. The large metal panel visible below is custom blanking plate as I haven&#8217;t fitted an internal PSU &#8211; it&#8217;s just a piece of 0.5mm aluminium from ebay cut to the correct size.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/09/IMG_3125.jpg"><img class="size-thumbnail wp-image-750 aligncenter" title="The Back" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/09/IMG_3125-255x300.jpg" alt="The Back" width="255" height="300" /></a></p>
<h2>Software</h2>
<p>My current Linux distribution of choice is ubuntu so I chose ubuntu server for the machine as it&#8217;s what I&#8217;m with familiar with and does everything I need. I usually run apache, mysql, php, python, <a href="http://mosquitto.org/">mosquitto</a> (mqtt broker) and irssi (IRC) on the machine 24/7 and so far it has performed flawlessly. I used powertop for power optimisations.</p>
<h2>Power Consumption</h2>
<p>When I first started out using the sheevaplug one of my main motivations was the low power usage, as my needs grew the sheevaplug + SD card became a sheevaplug + powered USB Hub + USB HD all in all consuming around 10.5W of power, therefore this was my target for this machine. In addition to using low power components I also used <a href="http://www.lesswatts.org/projects/powertop/">PowerTOP</a> to optimise the power usage of the operating system. <a href="http://www.lesswatts.org/projects/powertop/">PowerTOP</a> accomplishes this by ensuring cpu scaling is working correctly and powering down systems which are not required.</p>
<p>Before carrying out optimisation with powertop my mains power consumption was ~ 14W idle and after nearer the target of 10.5W, now using ~11-12W:</p>
<p style="text-align: center;"><img class="size-thumbnail wp-image-754 aligncenter" title="Power use meter" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/09/IMG_3069-206x300.jpg" alt="Power use meter" width="206" height="300" /></p>
<p>The low power consumption I achieved surprised me as the sheevaplug has been developed with this as its main aim and sacrifices processing power to achieve it. My atom system could rings around the sheevaplug in terms of processing power and comes within around 1-2W in terms of power consumption&#8230;so much as I&#8217;d like to love the sheevaplug the bad design and service provided by Globalscale force me to take the less cool but more functional route.</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/hardware/building-a-low-powered-atom-based-sever-sheevaplug-alternative/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Sheevaplug &#8211; Why Globalscale suck</title>
		<link>http://chemicaloliver.net/electronics/sheevaplug-why-globalscale-suck/</link>
		<comments>http://chemicaloliver.net/electronics/sheevaplug-why-globalscale-suck/#comments</comments>
		<pubDate>Wed, 09 Jun 2010 20:54:18 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[linux]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=538</guid>
		<description><![CDATA[In my previous post Sheevaplug – An ideal home server I described why I loved the sheevaplug, now in this post I&#8217;m going to discuss why I now have fallen out of love with it. The main reason is shown in the following photo: For the past six months I&#8217;ve been using the unit for 24/7 IRC using [...]]]></description>
			<content:encoded><![CDATA[<p>In my previous post <a title="Sheevaplug – An ideal home server" rel="bookmark" href="http://chemicaloliver.net/linux/sheevaplug-an-ideal-home-server/">Sheevaplug – An ideal home server</a> I described why I loved the sheevaplug, now in this post I&#8217;m going to discuss why I now have fallen out of love with it. The main reason is shown in the following photo:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/06/4373443411_0b96e8b2d5_b.jpg"><img class="size-medium wp-image-540 aligncenter" title="Inside the Sheevaplug Power Supply" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/06/4373443411_0b96e8b2d5_b-300x225.jpg" alt="Inside the Sheevaplug Power Supply" width="300" height="225" /></a></p>
<p>For the past six months I&#8217;ve been using the unit for 24/7 IRC using irssi, running an MQTT server and broadcasting to pachube, along with allowing me to ssh tunnel into a secure internet connection when using public wifi. So far so good. However during the middle of last week I noticed my pachube feeds had frozen, I tried to ssh into the device and that failed so being at work at the time I was miffed and couldn&#8217;t wait to go home to find out what was wrong.</p>
<p><span id="more-538"></span></p>
<p>On examining the unit in person everything looked fine, I rebooted and everything worked fine&#8230;.but only for ten minutes before the same symptoms occurred again except this time I noticed the usb hub was losing power (usb powered). I tried rebooting once again but this time the unit was dead only flashing network lights and 0W power consumption using my power meter. Deeply annoyed that my sheevaplug may have had the fabled failed power supply described many times on the <a href="http://plugcomputer.org">plugcomputer.org</a> forums.</p>
<p>Since it wasn&#8217;t working I took it apart and found the psu was indeed dead and only outputting &lt;0.5v rather than the usual 3v and 5 v.  I then proceeded to look inside the PSU and found the large capacitor on the top right bulging suspiciously &#8211; as I&#8217;m no expect I steered clear of testing the capacitor in question and contacted the supplier NewIT.</p>
<p>NewIT first directed me to contact Grace Wu of Globalscale who is responsible for sheevaplug warranty issues technologies who still has not responded in line with GlobalScales line in bad customer support. If you require customer support she is supposedly the person to vent your anger on, she can be contacted at gwu@globalscaletechnologies.com.</p>
<p>I had to point out to NewIT my legal right to have the unit repaired before I was offered this.</p>
<p>This tale serves to highlight some issues that would make me very wary of buying another Globalscale product, first the bad design which caused the problem.  second they have never rectified this and new Guruplugs get even hotter and finally the level of customer service I received from Globalscale was none exisitant, if you buy from NewIT then you&#8217;re probably ok but buy from Globalscal then you&#8217;re on your own!</p>
<p>All in all this makes me sad as the concept is great and while the unit worked I loved it &#8211; now I don&#8217;t trust it and it&#8217;s going to be replaced, probably by something atom based.</p>
<p>/*End of Rant!*/</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/electronics/sheevaplug-why-globalscale-suck/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Upgrading the 50MHz Rigol DS1052E to the 100MHz DS1102E with simple serial commands on ubuntu</title>
		<link>http://chemicaloliver.net/electronics/upgrading-the-50mhz-rigol-ds1052e-to-the-100mhz-ds1102e-with-simple-serial-commands-on-ubuntu/</link>
		<comments>http://chemicaloliver.net/electronics/upgrading-the-50mhz-rigol-ds1052e-to-the-100mhz-ds1102e-with-simple-serial-commands-on-ubuntu/#comments</comments>
		<pubDate>Sat, 03 Apr 2010 18:26:01 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=483</guid>
		<description><![CDATA[This is a mod that has been covered elsewhere but I feel it&#8217;s so good it&#8217;s worth me covering here. I have to thank Dave at the eevblog for bringing it to my attention and the other people on the forums who actually did the hard work in finding this. Basically the mod makes your [...]]]></description>
			<content:encoded><![CDATA[<p>This is a mod that has been covered elsewhere but I feel it&#8217;s so good it&#8217;s worth me covering here. I have to thank Dave at the <a href="http://www.eevblog.com/">eevblog</a> for bringing it to my attention and the other people on the forums who actually did the hard work in finding this. Basically the mod makes your Rigol DS1052E think it&#8217;s a DS1102E by changing the model number in the firmware thus changing the bandwidth from 50Mhz to 100Mhz with only 3 or 4 serial commands.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/04/rigol.jpg"><img class="size-medium wp-image-484 aligncenter" title="rigol" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/04/rigol-300x200.jpg" alt="Rigol DS1052E Mod" width="300" height="200" /></a></p>
<p>To perform this you&#8217;ll need a computer with a serial communication program (here we&#8217;ll be using ubuntu and cutecom), a straight through serial cable, not a null modem cable and obviously your Rigol DS1052E.</p>
<p><span id="more-483"></span></p>
<p>So lets get started: If you don&#8217;t already have a program to communicate with serial devices you should install cutecom as it&#8217;s the simplest for this job as it allows us to easily use the correct settings for communication.</p>
<p>First you need to connect you oscilloscope to your computer with the serial cable (and possibly a serial to usb adaptor).</p>
<p>Then open cutecom and connect to oscilloscope, in my case using a real serial port it was /dev/ttyS0 but if using a usb to serial adaptor it may be /dev/ttyUSB0. The other settings you need are 9600 baud, 8 bits, 1 stop bits, no parity, no handshake and finally to change the line end to LF line end so a line feed is sent after pressing return.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/04/cutecom.png"><img class="size-medium wp-image-485 aligncenter" title="Cutecom setup for communicating with Rigol DS1052E" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/04/cutecom-300x267.png" alt="Cutecom setup for communicating with Rigol DS1052E" width="300" height="267" /></a></p>
<p>Now you&#8217;re connected we need to get the current serial number, we do this by issuing the command <code>*IDN?</code></p>
<p>Assuming nothing looks odd there we can go on to change the model number to DS1102E using the command <code>:INFO:MODEL DS1102E</code> and the serial number needs to be amended changing ED to EB using the command <code>:INFO:SERIAL &lt;new serial&gt;<br />
</code></p>
<p>After that reboot your scope and you should have a 100MHz version for a very small price! This can be verified using the <code>*IDN?</code> command again and it should show the new model and serial number or going to utility&gt;system info and it will show the screen as above.</p>
<p>Now it&#8217;s all done you need to perform a self calibration, again in the utility menu, then bask in the glory of the now even better value DS1052E!</p>
<p><em>Obviously while I have tested this myself I take no responsibility for anyone who follows my instructions and bricks their scope, if you don&#8217;t know what you&#8217;re doing, don&#8217;t do it.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/electronics/upgrading-the-50mhz-rigol-ds1052e-to-the-100mhz-ds1102e-with-simple-serial-commands-on-ubuntu/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Maker Faire UK 2010 Newcastle</title>
		<link>http://chemicaloliver.net/arduino/maker-faire-uk-2010-newcastle/</link>
		<comments>http://chemicaloliver.net/arduino/maker-faire-uk-2010-newcastle/#comments</comments>
		<pubDate>Sun, 14 Mar 2010 13:02:10 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[arduino]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=429</guid>
		<description><![CDATA[Yesterday I spent a very tiring but entertaining day back in my home from home, Newcastle. The reason being to attend the 2nd UK Maker Faire organised by Make Magazine. My legs have just about recovered from all the standing up and walking I did so I thought I&#8217;d do a post about some of [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday I spent a very tiring but entertaining day back in my home from home, Newcastle. The reason being to attend the 2nd UK Maker Faire organised by <a href="http://makezine.com/">Make Magazine</a>. My legs have just about recovered from all the standing up and walking I did so I thought I&#8217;d do a post about some of the more interesting things I saw.</p>
<h4>Guerilla Knitting</h4>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_28151.png"><img class="aligncenter size-medium wp-image-431" title="Knitted Maker Faire Sign " src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_28151-225x300.png" alt="" width="225" height="300" /></a></p>
<p style="text-align: left;">Around Newcastle for the past few days knitting has been appearing attached to railings and signs, this was <a href="http://www.newcastlesciencefest.co.uk/News/Details.aspx?Id=18">organised</a> as part of the Newcastle Science week and really does look pretty cool, I especially liked this example above outside the Discovery Museum and the one below in the Centre for Life. This seems to be part of a larger movement, known as Guerilla Knitting which aims to bring a smile to peoples faces by placing art in somewhere unusual (<a href="http://www.guardian.co.uk/lifeandstyle/2009/feb/23/guerrilla-knitting-yarn-bombing-magda-sayeg">from here</a> &#8211; the most sensible explanation I can find).</p>
<p><span id="more-429"></span></p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2811.jpg"><img class="size-medium wp-image-433 aligncenter" title="Guerilla Knitting in Newcastle" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2811-292x300.jpg" alt="Guerilla Knitting in Newcastle" width="234" height="240" /></a></p>
<h4>Sugru</h4>
<p style="text-align: left;"><a href="http://sugru.com/">Sugru</a> has rapidly become a bit of a cult material recently and having been publicised by mentions in Make and Wired is now very difficult to get hold of. It seemed to be just as popular in the flesh as online and the stall always seemed busy throughout the day. Sugru is an unusual material, much like a grown up version of play dough which hardens into a grippy silicone rubber when left to set. It&#8217;s also self adhesive so it can be used to fix and modify items as far as your imagination allows. I had the chance to meet two of the people behind it &#8211; Jane (it&#8217;s creator) and James(? if that&#8217;s wrong I&#8217;m sorry I really should remember after specifically asking!) :</p>
<p style="text-align: left;">
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2742.jpg"><img class="size-medium wp-image-434 aligncenter" title="Makers of Sugru" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2742-300x199.jpg" alt="Makers of Sugru" width="300" height="199" /></a><br />
<a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_27401.jpg"><img class="size-medium wp-image-437 aligncenter" title="Examples of Sugru Hacks" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_27401-300x199.jpg" alt="Examples of Sugru Hacks" width="300" height="199" /></a><br />
<a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2741.jpg"><img class="size-medium wp-image-436 aligncenter" title="People from Sugru" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2741-300x199.jpg" alt="People from Sugru" width="300" height="199" /></a></p>
<h4>Rubot II</h4>
<p style="text-align: left;">The <a href="http://www.mechatrons.com/rubot.html">Rubot II</a> is a robot which can solve rubick&#8217;s cubes in a maximum of 50s. It was probably the most impressive example of robotics on show and I found it particularly interesting having worked on computer vision systems for my MSc. thesis. Having said all that I felt it a little lacking compared to many other stalls as it&#8217;s a bit of a one trick pony and I think I like things with more of a reason for being.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2738.jpg"><img class="size-medium wp-image-438 aligncenter" title="Rubot II " src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2738-300x199.jpg" alt="Rubot II" width="300" height="199" /></a></p>
<h4>.: oomlout :.</h4>
<p><a href="http://oomlout.com/">Oomlout</a> is a name I&#8217;ve mentioned several times on this blog and is my preferred retailer of arduino type things, they had all the usual things on show but what particularly caught my attention were some juicy looking robot kits not yet for sale:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2810.jpg"><img class="size-medium wp-image-439 aligncenter" title="Oomlout robot kits" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2810-300x199.jpg" alt="Oomlout robot kits" width="300" height="199" /></a></p>
<p style="text-align: left;">Another thing they had was the<a href="http://oomlout.co.uk/?p=79"> twypewriter</a> which uses and arduino to receive and then printout tweets, however along with many other network connected devices on show, it was having troubles with the wifi network! This the whole stall captured in this rather unflattering shot:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2719.jpg"><img class="size-medium wp-image-440 aligncenter" title="Oomlout stall at the maker faire uk 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2719-300x200.jpg" alt="oomlout stall at the maker faire uk 2010" width="300" height="200" /></a></p>
<p>My delight for free stuff was also indulged and I got a free keyring, something I&#8217;ve wanted since I saw photos of them at the 2009 Maker Faire.</p>
<h4>Mitch Altman</h4>
<p>Well known hardware hacker and creator of the TV-B-Gone <a href="http://en.wikipedia.org/wiki/Mitch_Altman">Mitch Altman</a> gave a couple of talks (which I managed to miss because I was distracted talking to other people) and could be seen hanging around the hardware hacking workshop area where people were also trying out these cool looking self hypnosis glasses:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2802.jpg"><img class="size-medium wp-image-441 aligncenter" title="Self Hypnosis Glasses at the Maker Faire UK 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2802-213x300.jpg" alt="Self Hypnosis Glasses at the Maker Faire UK 2010" width="213" height="300" /></a></p>
<h4>BBC</h4>
<p>I wasn&#8217;t aware that the bbc did cool stuff like this but they were exhibiting a number of &#8216;inventions&#8217; from thier labs. Including a camera system which takes high resolution images with a very deep depth of field and then allows adjustment of the depth of field afterwards. A physical remote control with echoes of retro tv remotes where the controller was wired to the tv and allowed users to more easily take control of the tv (I&#8217;m really not sure of the point&#8230;). More interesting was a system designed to allow families to choose what to watch democratically, based on the game Guess Who, however here players would flip down all the tv shows they didn&#8217;t wish to watch and the system would generate a playlist of shows which were liked by all:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2807.jpg"><img class="size-medium wp-image-442 aligncenter" title="Guess Who BBC version at Maker Faire UK 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2807-300x199.jpg" alt="Guess Who BBC version at Maker Faire UK 2010" width="300" height="199" /></a></p>
<h4>Bubblino</h4>
<p>Yet another twitter and arduino powered device which simply blows bubbles when tweeted to/about:</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2747.jpg"><img class="size-medium wp-image-443 aligncenter" title="Bubblino at Maker Faire UK 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2747-300x199.jpg" alt="Bubblino at Maker Faire UK 2010" width="300" height="199" /></a></p>
<p>Also on the same stall a system for monitoring the running of the Mersey Ferries using AIS positioning (which seems to take inspiration from Andy Stamford Clark&#8217;s <a href="http://stanford-clark.com/ferries.html">twittering ferries</a>):</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2745.jpg"><img class="size-medium wp-image-444 aligncenter" title="Mersey Ferries Clock at Maker Faire UK 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2745-300x199.jpg" alt="" width="300" height="199" /></a></p>
<h4>Musical Tesla Coils</h4>
<p>A common feature of maker and science faires across the world are singing tesla coils in this case designed by Karim Ladha. They were quite impressive, allowing music to be played from a keyboard or guitar which modulates the output of the coils and makes a very loud (and rapidly annoying noise):</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2781.jpg"><img class="size-medium wp-image-445 aligncenter" title="Singing Tesla Coils Maker Faire UK 2010" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2781-300x199.jpg" alt="Singing Tesla Coils Maker Faire UK 2010" width="300" height="199" /></a></p>
<h4>Curiosity Collective</h4>
<p>A <a href="http://curiositycollective.org/">group of guys</a> from Ipswich, probably best known for walking to the Faire via Amsterdam (athough those who were doing that currently hadn&#8217;t arrived when I spoke to them!). They had some cool map visualisations and also an experiment into how accurately people can draw a map of the UK from memory.</p>
<h4>mbed</h4>
<p>The <a href="http://mbed.org/">mbed</a> microcontroller board with an ARM chip looks very attractive to me. I had a nice explanation of it&#8217;s finer points from one of the guys there but I&#8217;m still slightly unhappy about relying on an online compiler for some hardware to function, in a similar way to me not having bought a PS3 due to its need to be online. We&#8217;ll wait and see, if I have some spare cash to splash I might get one soon.</p>
<h4>Other People</h4>
<p>I also met people from <a href="http://openenergymonitor.org/emon/">openenergymeter</a>, <a href="http://www.sonodrome.co.uk/">sonodrome</a> and<a href="http://hackable-devices.com/"> hackable devices</a>, all of which had some cool things on display. Hackable devices had some cool open source devices on show like the Neo Freerunner, makerbot and other bits and pieces sadly we couldn&#8217;t play with them. They also suffered after their stall collapsed half way through the morning.</p>
<p>All in all a very enjoyable day talking to some very nice people and learning lots. I also had chance to revisit some favourite Newcastle haunts including the <a href="http://www.balticmill.com/">Baltic</a> and the <a href="http://www.amber-online.com/sections/side-gallery">Side gallery</a> both of which had good exhibitions. I got an amazing bargain from the Oxfam bookshop: A new hardback copy of &#8220;The C++ Programming Language&#8221; for £3.99 rather than the usual £40-50. My legs now ache terribly from carrying it around all day in addition to my camera, lenses and laptop!</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/arduino/maker-faire-uk-2010-newcastle/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MQTT, Arduino, Old Ammeters and Bandwidth Monitoring</title>
		<link>http://chemicaloliver.net/arduino/mqtt-and-ammeters/</link>
		<comments>http://chemicaloliver.net/arduino/mqtt-and-ammeters/#comments</comments>
		<pubDate>Thu, 11 Mar 2010 22:52:22 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[arduino]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=421</guid>
		<description><![CDATA[Thanks to some help from @knolleary the arduino pubsub library now works with mosquitto. I have now completed my bandwidth monitor project which I want to document in this post. I have mentioned in previous posts that I use various scripts and sensors to feed data into the open source MQTT broker mosquitto. Currently all [...]]]></description>
			<content:encoded><![CDATA[<p>Thanks to some help from <a href="http://twitter.com/knolleary">@knolleary</a> the <a href="http://knolleary.net/arduino-client-for-mqtt/">arduino pubsub library</a> now works with <a href="http://mosquitto.atchoo.org/">mosquitto</a>. I have now completed my bandwidth monitor project which I want to document in this post.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2702.png"><img class="size-medium wp-image-422 aligncenter" title="Arduino/MQTT powered bandwidth meter" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/03/IMG_2702-300x200.png" alt="" width="300" height="200" /></a></p>
<p>I have mentioned in previous posts that I use various scripts and sensors to feed data into the open source MQTT broker <a href="http://mosquitto.atchoo.org/">mosquitto</a>. Currently all data is posted to <a href="http://www.pachube.com/users/chemicaloliver/feeds">pachube</a>, rather than everything being online I decided I wanted some physical feedback. Having made an impulse buy of two vintage Ferranti ammeters using these to display some of my data seemed like obvious answer! The code on the arduino basically just displays a number passed by MQTT on the meter and therefore could be applied to any measurement one cared to choose.</p>
<p>The basic idea of this system is to monitor the current internet speed usage and display it on the ammeter. The system is based around an <a href="http://arduino.cc">arduino</a> with ethernet shield which acts as an MQTT client, this subscribes to the downstream bandwidth topic on my MQTT broker, receives the messages and changes the level of a PWM output pin on the arduino which causes the meter to show the appropriate level. The meter displays the current through a resistor which is varied by the PWM signal from the arduino. The reading on the meter corresponds to the current internet speed usage as a percentage of the overall theoretical available bandwidth.</p>
<p><span id="more-421"></span></p>
<h4>The Arduino Code</h4>
<p>As this is quite well commented I won&#8217;t go through it, but it serves as a good example of how to receive MQTT messages using an arduino:</p>
<pre class="brush: cpp; title: ; notranslate">
#include &lt;Ethernet.h&gt;
#include &lt;PubSubClient.h&gt;

//Setup network connection
byte mac[] = {  0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { &lt;arduino ip&gt; };
byte subnet[] = {&lt;subnet&gt;};
byte gateway[] = {&lt;router ip&gt;};

//MQTT Broker
byte server[] = {&lt;mqtt broker (mosquitto/RSMB)&gt;};
int port = 1883;
//Meter output spin
int meterPin = 9;

//Set initial bandwidth
float out = 0;

//MQTT client setup
PubSubClient client(server, port, callback);

//Add callback for when a message is recieved
//
// Takes bandwidth as 4 digit number e.g 44 = 0044
void callback(char* topic, byte* payload,int length) {
  //reset value
  out=0;

  //convert receieved byte array into number
  for(int i=0;i&lt;4;i++)
  {
    //get the byte
    byte ardValue = payload[i];
    //multiply it by 1/10/100 or 1000
    double tens = pow(10,(3-i));
    //convert the byte to either 1/10/100/1000
    float ardOut = tens * (ardValue-48);
    //add to total output
    out +=ardOut;
  }

  //scale number between 0-4000 to 0-255 for output
  out = map(out, 0, 4000, 0, 255);

  //print result to serial port for debugging
  Serial.println(out);

  //write output to meter
  analogWrite(meterPin, out);
}

//setup method
void setup()
{
  //start ethernet connection
  Ethernet.begin(mac, ip, gateway, subnet);

  //start serial connection for debugging
  Serial.begin(9600);

  //connect to MQTT Broker
  client.connect(&quot;arduino&quot;);

  //Subscribe to topic bandDown
  client.subscribe(&quot;bandDown&quot;);
}

//main loop
void loop()
{
  //Tell the MQTT broker we're still here
  client.loop();
}
</pre>
<p>The PHP script that provides the bandwidth data resides on my sheevaplug and queries my router for an XML file with the appropriate details, <a href="http://chemicaloliver.net/programming/internet-speed-monitoring-with-bt-2wire-homehub-1800hg/">I talked about this in a previous post.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/arduino/mqtt-and-ammeters/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Where to buy electronic components, arduinos and sheevaplugs in the UK?</title>
		<link>http://chemicaloliver.net/arduino/where-to-buy-electronic-components-in-the-uk/</link>
		<comments>http://chemicaloliver.net/arduino/where-to-buy-electronic-components-in-the-uk/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 23:17:26 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[arduino]]></category>
		<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[build]]></category>
		<category><![CDATA[components]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[retailers]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=403</guid>
		<description><![CDATA[Often when I buy an electronics book, or more recently a physical computing book, there is a section detailing where to purchase components, however they&#8217;re almost exclusively in the US and details of UK electronics retailers are difficult to come by for beginners and even more experienced people. In this post I intend to detail some of the electronics component retails who I like [...]]]></description>
			<content:encoded><![CDATA[<p>Often when I buy an electronics book, or more recently a physical computing book, there is a section detailing where to purchase components, however they&#8217;re almost exclusively in the US and details of UK electronics retailers are difficult to come by for beginners and even more experienced people. In this post I intend to detail some of the electronics component retails who I like which sell a range of components from basic resistors and wire to expensive test equipment and embedded computers.</p>
<h2>General Component Retailers</h2>
<p>These are the retailers I most commonly order parts from and like, there are many others who may also be good but these are my favourites, as they stock the basics they&#8217;re used more than any other category here.</p>
<h3><a href="http://www.bitsbox.co.uk">Bitsbox</a></h3>
<p>Bitsbox is a small retailer with a large following, it sells mainly simple components: capacitors, resistors, basic connectors, basic tools all for very reasonable prices when ordering in small quantities, something which is not common among many bigger suppliers. Also standard postage is only 1.50 on any order. I&#8217;ve bought here many times and always had a great experience, quick dispatch and good communication.</p>
<h3><a href="http://uk.farnell.com/">Farnell</a></h3>
<p>Farnell is about the most furthest away from Bitsbox it&#8217;s possible to get in size and product selection,  it stocks hundreds of thousands, maybe millions of products from the mundane basics to the high end exotica and offers free next day delivery on any order. If you need something, almost anything in electronics quickly this is where to go. They are also the only retailer I&#8217;ve found in the UK which stock Texas Instruments components. Service is another area in which farnell is great. Prices can be high on some items but not unreasonable, my recent Agilent multimeter was 20% cheaper than any other UK retailer. Beware of items marked in stock in US which attract a 15 pound postage fee.</p>
<p>A point worthy of note is that if you want you can pick up orders from the trade counter at their international distribution centre in Leeds, West Yorkshire, something I&#8217;ve done a few times. You have to phone to order this way but the order can be collected after 2hrs and is within walking distance of Leeds Station and also is easy to drive to/park at. This makes them my 2nd favourite retailer on this list after NewIT (below).</p>
<p><span id="more-403"></span></p>
<h3><a href="http://www.rapidonline.com/">Rapid Electronics</a></h3>
<p>Rapid are a retailer smaller than Farnell but still quite large, they stock some products which Farnell do not but the catch is that orders under 35 pounds are changed 5 pounds postage. Redeeming factors are the postage is quick and service is generally good.</p>
<h3><a href="http://ebay.co.uk">eBay</a></h3>
<p>If you wish to buy low quality components in bulk then eBay is the place, often from China but usually reliable but usually cheap enough to risk it, especially with the protection provided by Paypal.</p>
<h3><a href="http://www.maplin.co.uk/">Maplin</a></h3>
<p>Maplin only deserve a mention as they are the last high street retailer which sells any kind of electronic components, otherwise they provide inconsistent service, have sometimes stupid staff and charge lots for bad quality products. But if you need some wire quick then it&#8217;s the only option really! A sad summary to give considering it was maplin and tandy (radioshack) which have been with me since my childhood electronics fad which never quite went away.</p>
<h3><a href="http://gb.mouser.com/Home.aspx"><em>Mouser</em></a></h3>
<p><em>Mouser not based in the UK but from my experience have proved the best retailer in the IS to order from if you have to, I ordered 2 panavice bits which are hard to find in the UK and they arrived within 2 days. Amazing, and delivery on orders over 50 pounds and they sort out the VAT in advance so you don&#8217;t get caught out later. These guys are amazing. They also stock some cool bits like beagle boards.</em></p>
<h2>Arduino Etc&#8230;</h2>
<p>A big factor in reigniting my interest in electronics, which had faded since I discovered computers, was micro controllers such as the arduino, these are quite easy to come by in the UK but I have two preferred retailers:</p>
<h3><a href="http://www.oomlout.co.uk/">.:oomlout:.</a></h3>
<p>Oomlout are another small company based in Leeds, they stock the Arduino and associated accessories at reasonable prices, including quite a few nice bits of their own making: the <a href="http://www.oomlout.co.uk/arduino-prototyping-bundle-br-ardp-wo-arduino-p-202.html">arduino prototyping board</a> is a simple piece of laser cut acrylic with holes to bolt the arduino and a small breadboard to fix next to it. They also stock a small range of products designed by <a href="http://www.adafruit.com/">Adafruit</a> (which would be on this list if I was in the US!) which is nice as it saves shipping from the US. Service is, as with most small specialist retailers, exemplary. I&#8217;ve made a few queries both for information and to resolve a problem and both were dealt with quickly. My definite first choice for Arduino related stuff. Oh and shipping is cheap and quick too.</p>
<h3><a href="http://www.coolcomponents.co.uk/catalog/">Cool Components</a></h3>
<p>I have mixed feelings about Cool Components, they sell a much larger range of products than oomlout, offering more advanced microcontrollers and accessories, they&#8217;re almost the Sparkfun of the UK (and they do stock some Sparkfun products). However I feel they seem expensive and VAT is not included in the displayed prices which I feel can be slightly misleading (even though it is stated). I have however bought from them when they had what I wanted and the service they provided was good.</p>
<h3><a href="http://www.seeedstudio.com/depot/"><em>Seeed Studio</em></a></h3>
<p><em>Seeed Studio are not based in the UK but in Hong Kong, however they ship to the UK for cheap prices and offer a lot of components at very cheap prices, like sparkfun style RF transceiver for $4 and the arduino clone Seeeduino. More recently they have started to retail open source test equipment which is attracting quite a lot of interest.</em></p>
<h2>Sheevaplugs</h2>
<p>If you&#8217;ve read my blog before you may know I&#8217;m a fan of the <a href="http://en.wikipedia.org/wiki/SheevaPlug">sheevaplug</a>. I&#8217;ve had mine several months now but when I first found the product I knew of no retailer in the UK, at around the same time New IT was started acting as a European distributor, saving me the hassle of high prices and long waits of ordering from GlobalScale in the US.</p>
<h3><a href="http://www.newit.co.uk/">NewIT</a></h3>
<p>New IT only currently sell Sheevaplugs, Guruplugs and the OpenRD and associated accessories and offer free shipping on all items. Despite the small product range shopping at New IT was possibly the best online shopping experience I&#8217;ve ever had, the online shop is just a typical shop but after ordering I received personal emails on order status and a check to see if it had arrived and if I needed any further help. In this day and age, nothing short of amazing.</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/arduino/where-to-buy-electronic-components-in-the-uk/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Sheevaplug &#8211; An ideal home server</title>
		<link>http://chemicaloliver.net/hardware/sheevaplug-an-ideal-home-server/</link>
		<comments>http://chemicaloliver.net/hardware/sheevaplug-an-ideal-home-server/#comments</comments>
		<pubDate>Mon, 15 Feb 2010 22:39:30 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[arduino]]></category>
		<category><![CDATA[ARM]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[mqtt]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[sheevaplug]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=379</guid>
		<description><![CDATA[The sheevaplug, a marvel development platform based on a 1.2GHz has risen out of obscurity in recent times as a silent, very low power computer. It&#8217;s uses have been stretched way beyond the intended use into cars and even as a full on desktop computer, despite it&#8217;s lack of connectivity. The basic hardware consists of: [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">The sheevaplug, a marvel development platform based on a 1.2GHz has risen out of obscurity in recent times as a silent, very low power computer. It&#8217;s uses have been stretched way beyond the intended use into cars and even as a full on desktop computer, despite it&#8217;s lack of connectivity.</p>
<p style="text-align: center;">
<a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/02/sheeva.jpg"><img class="size-medium wp-image-380 aligncenter" title="sheeva" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/02/sheeva-300x199.jpg" alt="" width="300" height="199" /></a></p>
<p>The basic hardware consists of:</p>
<ul>
<li>Marvell Kirkwood 6281 CPU at 1.2 GHz with 256 KB L2 cache</li>
<li>512 MB RAM</li>
<li>512 MB flash</li>
<li>Gigabit Ethernet</li>
<li>1x USB and 1x SD</li>
<li>mini-USB with serial console and JTAG</li>
</ul>
<p>The system is fanless and there are no moving parts, so it is silent apart from a strange extremely high pitched ringing sound which is on the edge of being audible.</p>
<p>In this post I&#8217;m going to describe what made me choose the sheevaplug, what I have added to default system and why I love the sheevaplug.</p>
<p><span id="more-379"></span></p>
<h4>Requirements</h4>
<p>For a while I&#8217;ve been looking around for a home server which I could leave running 24/7 acting as a general server. As it was to be placed in my bedroom it had to be silent as I have tried sleeping though many different computer noises from systems which claim to be silent without success. The system had to use as little electricity as possible if I&#8217;m going to leave it running constantly.</p>
<p>After a few months of um-ing and ah-ing I found the sheevaplug which completely filled all of these requirements &#8211; having no moving parts and using 2.8- 7W depending on load, significantly better than any x86 based system of comparable speed.</p>
<h4>Default Setup</h4>
<p>When the plug arrives it contains an installation of ubuntu 9.04, a strange choice as ubuntu have now discontinued support for the ARMv5 line of processors used by the sheevaplug so to be more up to date I felt a new distribution was required. The basic install of ubuntu almost fills the included 512MB SSD and therefore is a little impractical.</p>
<h4>Current Setup</h4>
<p>To get a more up to date system I decided to remove the provided ubuntu installation and installed Debian, following great instructions <a href="http://www.cyrius.com/debian/kirkwood/sheevaplug/install.html">here</a>. Debian testing supports the sheevaplug in its installer (but does not support the internal ssd) and is quite simple to get up and running, as long as a usb stick or sd card is used. My troubles started when I tried to use a 1.8 inch asus usb hard disk, to allow me to install a different operating system and store more data without having to worry about sd card wear. The bootloader used by the plug, uboot, does not correctly power up usb powered hard disks to allow them to be used for booting from, this meant I had to use an sd card for the /boot partition so that the boot loader could load the kernel then Debian would correctly load the rest of the system from the usb hard disk. This arrangement also removes any complications with usb hubs and booting which can occur. Not as simple as I&#8217;d hoped but easy enough none the less.</p>
<h4>Current Uses</h4>
<p>Having now achieved a fully working system Debian on the sheevaplug behaves much as any headless server does, except with a surprising turn of speed in comparison to similar machines such as the <a href="http://www.viglen.co.uk/viglen/Products_Services/Product_Range/Product_file.aspx?eCode=XUBUMPCL&amp;Type_Info=Description&amp;Type=Desktops">Viglen MPC-L</a>.</p>
<p>I use the system fulfils a number of functions in my ecosystem:</p>
<ul>
<li>A staging server for my web development work &#8211; running Apache/MySQL/PHP/Python is quite a demanding task for a low power system like this, however the sheevaplug copes fine with low traffic with just PHP hogging slightly more RAM than I would like. Some users prefer lighttpd but I require a mirror of the system I run on my real web server.</li>
<li>A <a href="http://www.mqtt.org">MQTT</a> server &#8211; running mosquitto, an open source MQTT broker. RSMB (Really Small Message Broker) provided by IBM is all well and good but it is not available for this architecture so my only choice was the open source broker <a href="http://mosquitto.atchoo.org/">mosquitto</a> I&#8217;m currently using this system for monitoring with arduinos and reporting to <a href="http://www.pachube.com/users/chemicaloliver/feeds">pachube</a> and intend to develop it further when I get time. This will no doubt feature in a subsequent blog post soon.</li>
<li>An IRC client &#8211; I am somewhat obsessive about the IRC channels I frequent (#mqtt, #linuxoutlaws, #ubuntu-uk-podcast, #openplug, #shotofjaq, #ratholeradio) and like to be able to scroll back to see if I&#8217;ve missed anything so I run irssi and then can login via ssh from anywhere in the world to see!</li>
<li>An ssh gateway to my network, this is the only computer which is directly facing the internet on my network and using dyndns I&#8217;m always able to keep in touch with my home network, this can be useful if I wish to use an ssh tunnel for web browsing on an unsecured wifi hotspot.</li>
</ul>
<p><h4>Summary</h4>
<p>All in all the sheevaplug has been a great success for me and sits silently churning away day after day without event and costing me only a minimal amount to run. I can defiantly see it (and its derivatives) becoming widespread for uses from making a simple NAS or torrent machine to home automation systems and probably a huge number of exciting uses I&#8217;ve never even dreamt of!</p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/hardware/sheevaplug-an-ideal-home-server/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How the TI ez430 Chronos watch could be better (Updated)</title>
		<link>http://chemicaloliver.net/electronics/how-the-ti-ez430-chronos-watch-could-be-better/</link>
		<comments>http://chemicaloliver.net/electronics/how-the-ti-ez430-chronos-watch-could-be-better/#comments</comments>
		<pubDate>Mon, 08 Feb 2010 20:16:12 +0000</pubDate>
		<dc:creator>chemicaloliver</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[ez430]]></category>
		<category><![CDATA[TI cronos]]></category>

		<guid isPermaLink="false">http://chemicaloliver.net/?p=367</guid>
		<description><![CDATA[Without a doubt TI have produced a cult product in the chronos watch and it seems to be marketed to both get people using their msp430 chips and on a smaller scale produce cool projects with the watch. They have done well in providing the code for the watch and the the included hardware works well [...]]]></description>
			<content:encoded><![CDATA[<p>Without a doubt TI have produced a cult product in the chronos watch and it seems to be marketed to both get people using their msp430 chips and on a smaller scale produce cool projects with the watch. They have done well in providing the code for the watch and the the included hardware works well (albeit lacking much Linux compatibility). However I feel they&#8217;ve been slightly too clever in the hardware design and thus prevented some cool uses of the product. This post comes in response to some <a href="http://hackaday.com/2010/02/08/ez430-home-automation/">views recently posted on hackaday</a>.</p>
<p style="text-align: center;"><a href="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/02/chronoswt.jpg"><img class="size-full wp-image-368 aligncenter" title="chronoswt" src="http://chemicaloliver.net/wordpress/wp-content/uploads/2010/02/chronoswt.jpg" alt="" width="380" height="312" /></a></p>
<p>A recent <a href="http://hackaday.com/2010/02/08/ez430-home-automation/">hackaday post</a> suggested using the supplied receiver could be modified to be used with an MCU, however this is unlikely unless the MCU acts as a USB host for a CDC device. Also the currently available watches use 868MHz which is a band in which cheap transceivers are not available (or at least that I can find), when the 433Mhz version is released in march interfacing the watch with an MCU may become a trivial task with cheap hardware.<br />
<span id="more-367"></span><br />
The supplied RF transceiver is based on a TI C1111F32RSP chip which sadly goes directly from RF &gt; USB which makes it difficult to repurpose, if they had used an RF &gt; serial things would have been a lot nicer for hardware hackers. This problem will of course not apply with the 433MHz version.</p>
<p>So that&#8217;s it, for me I see no further path with directly hacking communication with the watch from an MCU for the 868MHz version&#8230;I&#8217;ll await the much more hackable 433MHz version in march and in the meantime work on other things&#8230;.</p>
<p><em>Update: </em><em>After some research on the comms used by the watch and receiver it looks like it might be very non trivial to get working with a generic RF transceiver as the data seems to be modulated in a nasty way which I&#8217;m not fully clear about, it seems that it might only work with TI devices, which if true is sad but only time will tell. My overly complicated system has the advantage that it can be integrated into my existing automation systems more simply than a dedicated MCU solution. Details of the encoding can be found <a href="http://focus.ti.com/general/docs/litabsmultiplefilelist.tsp?literatureNumber=swra313">here</a>.</em></p>
]]></content:encoded>
			<wfw:commentRss>http://chemicaloliver.net/electronics/how-the-ti-ez430-chronos-watch-could-be-better/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
	</channel>
</rss>

