<?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>Village Telco &#187; Phone</title>
	<atom:link href="http://villagetelco.org/tag/phone/feed/" rel="self" type="application/rss+xml" />
	<link>http://villagetelco.org</link>
	<description>an easy-to-use, scalable, standards-based, wireless, local, do-it-yourself, telephone company toolkit</description>
	<lastBuildDate>Wed, 18 Jan 2012 14:08:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
		<item>
		<title>Breathing Life into the Mesh Potato &#8211; Day 1</title>
		<link>http://villagetelco.org/2009/06/breathing-life-into-the-mesh-potato-day-1/</link>
		<comments>http://villagetelco.org/2009/06/breathing-life-into-the-mesh-potato-day-1/#comments</comments>
		<pubDate>Tue, 02 Jun 2009 07:53:55 +0000</pubDate>
		<dc:creator>drowe</dc:creator>
				<category><![CDATA[Mesh Potato]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[AR2317]]></category>
		<category><![CDATA[Atheros]]></category>
		<category><![CDATA[Phone]]></category>
		<category><![CDATA[WiFi]]></category>

		<guid isPermaLink="false">http://villagetelco.org/?p=171</guid>
		<description><![CDATA[Yesterday (Monday June 1) the courier arrived with the very first Mesh Potato (MP) prototype, which had been hand assembled by the good people at Atcom. This is always an&#8230;]]></description>
			<content:encoded><![CDATA[<div id="attachment_177" class="wp-caption alignright" style="width: 235px"><a href="http://villagetelco.org/wp-content/uploads/2009/06/image022.jpg"><img class="size-medium wp-image-177" title="The first Mesh Potato" src="http://villagetelco.org/wp-content/uploads/2009/06/image022-225x300.jpg" alt="The first Mesh Potato" width="225" height="300" /></a><p class="wp-caption-text">The first Mesh Potato</p></div><p>Yesterday (Monday June 1) the courier arrived with the very first Mesh Potato (MP) prototype, which had been hand assembled by the good people at <a title="Atcom home page" href="http://www.atcom.cn" target="_blank" onclick="urchinTracker('/outgoing/www.atcom.cn?referer=');">Atcom</a>.  This is always an exciting and risky time in the life of any hardware project, as you don&#8217;t <strong>really</strong> know if it&#8217;s going to work.  In fact, there is a hell of a lot that could go wrong.  Like one solder ball under the Atheros BGA chip not soldered, or a nasty PCB or schematic design error that means another re-spin of the PCB and 1 month delay.  Or smoke might come out of the Atheros chip when you first apply power.  I have seen all of these on past projects&#8230;..</p><p>Fortunately Alen at Atcom had done some initial tests, like checking for the 3V3 and 1V8 power rails, and making sure the 40 MHz clock was present.  So we had some encouraging early signs of life.</p><p>My initial goal was to get the boot loader to run &#8211; this would prove that most of the AR2317 circuit is OK (CPU, RAM, flash etc).  I chose the boot loader image (ap61.rom) that we have been using on the DIR-300 router as this router uses the same Atheros AR2317 chip.  So I connected the <a id="aptureLink_Azyq77ITV3" href="http://en.wikipedia.org/wiki/JTAG" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/JTAG?referer=');">JTAG</a> cable.  The CPU was detected (excellent!) and the jtagspi software started flashing the boot loader.  This is a slow process (2.5 hours) using my home-brew JTAG cable, so I headed out for a nice Chinese lunch and a walk with my wife!  Alright, so we also went to the bakery and bought a custard filled cake.  You need energy to hack.</p><p>Two hours later I returned and tentatively connected the RS232 cable and power up the MP.  This is what I saw:</p><pre>No board config data found!+flash_hwr_init: Unsupported flash device - id=22FLASH: driver init failed: Driver does not support deviceSorry, FLASH config exceeds available space in FIS directoryCouldn't find valid MAC address for enet0. Using default!Invalid PHY ID1 for enet0 port0.  Expected 0x0243, read 0xffff/ar2317-prj/LSDK5.0.2.46/src/redboot_cobra/ecos/packages/devs/eth/mips/ar531x/ccEthernet eth0: MAC address 00:03:7f:e0:02:bfIP: 0.0.0.0/255.255.255.0, Gateway: 0.0.0.0Default server: 0.0.0.0RedBoot(tm) bootstrap and debug environment [ROMRAM]Non-certified release, version UNKNOWN - built 00:32:22, Aug  7 2007Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.Board: ap61RAM: 0x80000000-0x80800000, [0x80040760-0x807f1000] availableFLASH: 0x00000000 - 0x00000001, 0 blocks of 0x00000000 bytes each.RedBoot&gt;</pre><p>This is actually pretty good &#8211; the boot loader is running &#8211; with a few complaints about the 8M flash and Ethernet <a id="aptureLink_scoIonxiXN" href="http://en.wikipedia.org/wiki/PHY" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/PHY?referer=');">PHY</a>.  However a running boot loader means much of the hardware must be OK. Nice.</p><p>I have some <a id="aptureLink_eIAFcbCFo7" href="http://en.wikipedia.org/wiki/RedBoot" onclick="urchinTracker('/outgoing/en.wikipedia.org/wiki/RedBoot?referer=');">RedBoot</a> hacking to do (to accommodate the 8M flash and Ethernet PHY) so the next step was to get the Ethernet up.  That way I can tftp new boot loader images rather than put up with 2 hour JTAG flash sessions.  Actually in hind sight I should have bought a commercial JTAG cable that can flash in 5 seconds.  However the Ethernet was dead (no link lights, ping didn&#8217;t work), and I didn&#8217;t like the look of those complaints about the PHY chip.</p><p>So I perused the DP83848I PHY chip data sheet.  I decided to probe a few pins on the PHY chip with my oscilloscope to see if it looked alive.  One pin I tested was the CLK_OUT pin 25, which should have a 25 MHz signal on it.  However it was silent.  Hmmmm, not good.</p><p>So I contacted Alen via IM and he confirmed that on other designs using that chip p25 definetely had a 25 MHz signal on it.  So I checked the second MP01 I had been sent.  No CLK_OUT signal either.</p><p>When both my MP01&#8242;s didn&#8217;t have the CLK_OUT signal I suspected it was a wiring/design error.  Well, it was just a guess really.  Telling these bug hunt stories in review it looks like the outcome was pre-ordained.  However at the time you are never really sure.  You usually go down many blind alleys, which results in frustration and lack of sleep shutting brain cells down!</p><p>Anyway clocks should usually come straight up without any software initialization.  So I just checked the reset/interrupt lines (in case the chip was being held in the reset state), then I checked the various power supply lines to the chip.   A-HA! One power supply line (pin 22 AVDD33) was not connected!  Via IM Alen then double checked his other designs and confirmed that yes, it was a bug.</p><p>When I added a wire to supply 3V3 to pin 22 CLK_OUT came up and the network link light started working.  Yayyyyyyy!</p><p>There is also a golden rule in hardware (and indeed software) development.  Anything you change will have bugs.  That PHY was changed from the reference design so it&#8217;s a natural source of bugs.  A bug &#8220;emitter&#8221; if you like.</p><p>Then it was time for some network tests.  Ping, and even tftp worked.  Very cool.  The default state of the PHY chip seems to be just enough to get basic network connectivity.  This means I can download new RedBoot images quickly as I modify for thew new flash and PHY.</p><p>It was getting late by this stage so I decided to call it a night.  So I emailed Elektra about where we were at and went to watch Top Gear which my three year old.  However our story does not end there.  Elektra was working hard while I was resting and sleeping.  When I woke up this morning she sent me several emails detailing how to set up the RedBoot development environment.  This is great &#8211; saves me a mornings work.  Amazing how working 12 hours apart (Berlin and Adelaide, Australia) can be helpful!</p><p>Right.  Time for some a fresh cup of coffee and some RedBoot hacking.</p>]]></content:encoded>
			<wfw:commentRss>http://villagetelco.org/2009/06/breathing-life-into-the-mesh-potato-day-1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>A Phone Mesh</title>
		<link>http://villagetelco.org/2009/05/a-phone-mesh/</link>
		<comments>http://villagetelco.org/2009/05/a-phone-mesh/#comments</comments>
		<pubDate>Wed, 06 May 2009 20:47:46 +0000</pubDate>
		<dc:creator>steve</dc:creator>
				<category><![CDATA[Mesh Potato]]></category>
		<category><![CDATA[Village Telco]]></category>
		<category><![CDATA[afrimesh]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[Meraki]]></category>
		<category><![CDATA[Open-Mesh]]></category>
		<category><![CDATA[Phone]]></category>
		<category><![CDATA[Prototype]]></category>

		<guid isPermaLink="false">http://villagetelco.org/?p=142</guid>
		<description><![CDATA[A couple of months ago, Antoine Van Gelder (pictured below), announced a new project called Afrimesh.  Afrimesh is a web-based, mesh network management interface.  Having a simple GUI for network&#8230;]]></description>
			<content:encoded><![CDATA[<p>A couple of months ago, Antoine Van Gelder (pictured below), announced a new project called <a title="Afrimesh Home Page" href="http://code.google.com/p/afrimesh/" target="_blank" onclick="urchinTracker('/outgoing/code.google.com/p/afrimesh/?referer=');">Afrimesh</a>.  Afrimesh is a web-based, mesh network management interface.  Having a simple GUI for network management and monitoring is critical for the Village Telco, thus I was overjoyed to find out about Antoine&#8217;s work, which is being supported by the <a title="Meraka Institute Home Page" href="http://www.meraka.org.za/" target="_blank" onclick="urchinTracker('/outgoing/www.meraka.org.za/?referer=');">Meraka Institute</a> at the <a title="Council for Scientific and Industrial Research (South Africa)" href="http://csir.co.za/" target="_blank" onclick="urchinTracker('/outgoing/csir.co.za/?referer=');">CSIR</a>.<a href="http://villagetelco.org/wp-content/uploads/2009/05/antoine_at_cafe_neo.jpg"><img class="alignright size-medium wp-image-144" style="margin-left: 4px; margin-right: 4px;" title="antoine_at_cafe_neo" src="http://villagetelco.org/wp-content/uploads/2009/05/antoine_at_cafe_neo-300x150.jpg" alt="antoine_at_cafe_neo" width="300" height="150" /></a></p><p>Originally, we had imagined having a management interface for the Village Telco very similar to the <a title="Meraki Services Page" href="http://meraki.com/products_services/" target="_self" onclick="urchinTracker('/outgoing/meraki.com/products_services/?referer=');">Meraki</a> and/or <a title="Open Mesh Dashboard" href="https://www.open-mesh.com/dashboard.php" target="_blank" onclick="urchinTracker('/outgoing/www.open-mesh.com/dashboard.php?referer=');">Open-Mesh</a> network management &#8220;dashboards&#8221; which are  graphically-intuitive and easy for anyone to understand at a glance what is going on in the network.  However, Antoine introduced a new twist which opens up interesting possibilities.  He has designed the Afrimesh software so that it can run on any <a title="OpenWRT Home Page" href="http://www.openwrt.org" target="_blank" onclick="urchinTracker('/outgoing/www.openwrt.org?referer=');">OpenWRT</a>-based device.  It is written entirely in JavaScript. Actually Afrimesh will run on just about anything but, for me, the interesting new possibility is have a dashboard interface that runs on the mesh devices themselves.  I didn&#8217;t initially appreciate initially the potential that this opens up.</p><p><a href="http://villagetelco.org/wp-content/uploads/2009/05/afrimesh.jpg"><img class="alignleft size-medium wp-image-146" style="margin-right: 16px;" title="afrimesh" src="http://villagetelco.org/wp-content/uploads/2009/05/afrimesh-300x206.jpg" alt="afrimesh" width="300" height="206" /></a>You can see at the left here what the management interface currently looks like.  As things currently stand, Afrimesh is designed to:</p><ul><li>monitor the health of the network and display connectivity information for each mesh node and connections between the nodes in a visually intuitive manner;</li><li>provide an interface for the configuration of a <a title="Home page for B.A.T.M.A.N. mesh software" href="https://www.open-mesh.org/" target="_blank" onclick="urchinTracker('/outgoing/www.open-mesh.org/?referer=');">B.A.T.M.A.N.</a>-based mesh network; and,</li><li>be an extensible GUI framework for interfacing with a mesh network.</li></ul><h4>From self organising data networks to self-organising phone networks</h4><p>So here is where my minor epiphany came.  What is great about mesh networks is that you just plug them in and they work.  They self-organise in terms of upstream connectivitity, redundant routing, etc.  They are a very, very clever way of quickly establishing a pervasive, reliable IP-based network.</p><p>With the Mesh Potato, we are trying to leverage the power of mesh networks to set up a phone network.  Each Mesh Potato access point will have an RJ11 port, into which an everyday phone can be plugged.  However, to use the Mesh Potato, some configuration of the phone network detail is still required.  People need to have phone numbers to dial and a phone number themselves that people can call.  More than that, people have to have a way of finding out other people&#8217;s phone numbers.</p><p>I began to think of the Mesh Potato in different environments to that which we originally conceived.  For instance, would Mesh Potatoes work in an crisis environment where there was a need to set up a instant phone network?  Could they be designed to self-configure out of the box as a phone mesh?  Conversations with David Rowe and Antoine have encouraged me to think so.</p><p>Imagine you power up your Mesh Potato and an interactive voice response system says:</p><table border="0"><tbody><tr><td align="right"><em>Mesh Potato</em></td><td>&#8220;Welcome to the Mesh Potato network.  Please speak your name after the tone.&#8221;</td></tr><tr><td align="right"><em>User</em></td><td>&#8220;Steve Song&#8221;</td></tr><tr><td align="right"><em>Mesh Potato</em></td><td>&#8220;Thank you.  Please key in the letters of your last and first name so that other users can find you in the directory&#8221;</td></tr><tr><td align="right"><em>User</em></td><td>&#8220;S-7777, T-8, E-33, etc, etc&#8221;</td></tr><tr><td align="right"><em>Mesh Potato</em></td><td>&#8220;Thank you.  You are now registered on the Mesh Potato network.  Your extension is 2005.  Please select from the following menu:</p><ul><li>To look up a Mesh Potato Network user, Press 1</li><li>To dial a national or international number, Press 2</li><li>To obtain assistance, Press 3</li><li>You may dial an extension at any time by dialing 9 plus the extension of the user you wish to reach&#8221;</li></ul></td></tr></tbody></table><p>This is quite a reasonable scenario.  We could set up the Mesh Potatoes to do something like the above and the impact would be that you could unpack a box of 24 Mesh Potatoes, power them up (battery or solar), and within minutes have a working phone network.  This would work with or without upstream connectivity.  It would mean you could immediately start delivering value with a Village Telco even before you have a server, billing, and upstream connectivity set up.</p><h4>The Afrimesh Potato</h4><p><a href="http://villagetelco.org/wp-content/uploads/2009/05/afrimesh_a_phone_mesh2.jpg"><img class="alignright size-medium wp-image-150" title="afrimesh_a_phone_mesh2" src="http://villagetelco.org/wp-content/uploads/2009/05/afrimesh_a_phone_mesh2-300x197.jpg" alt="afrimesh_a_phone_mesh2" width="300" height="197" /></a>But it gets better.  With the Afrimesh software, you could conceivably combine data network information with phone network information.  Consider an enhanced version of the Afrimesh interface which not only provided network information but also voice call information.  The image at the right is my mock-up but it conveys the sense of how Afrimesh could show you who was on the phone network, what their extension is, whether they&#8217;re &#8220;available&#8221;, etc.</p><p>I think that having a plug-and-play Mesh Potato that will allow people to start talking with no initial technical configuration would substantially increase the take-up rate of the Mesh Potato.  I also think the Afrimesh interface offers opportunities for interesting voice/data/presence/twitter/jabber cross-over innovation on the MPs.  Love to hear thoughts from others on this.</p><p>P.S. For those waiting patiently to hold a Mesh Potato in your hand, David and Elektra are in the final stage of PCB design with Atcom.  I don&#8217;t have a date but we should have prototypes very shortly.</p>]]></content:encoded>
			<wfw:commentRss>http://villagetelco.org/2009/05/a-phone-mesh/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic
Object Caching 470/483 objects using disk: basic

Served from: villagetelco.org @ 2012-02-04 09:39:26 -->
