<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-9068638994894102968</id><updated>2012-02-24T04:51:21.255-08:00</updated><category term='Ballarat'/><category term='Chaos Communications Camp'/><category term='IEEE 802.11'/><category term='linker'/><category term='cryptography'/><category term='open hardware'/><category term='S1G'/><category term='ad-hoc'/><category term='mesh networking'/><category term='carrington event'/><category term='funding'/><category term='smart phone'/><category term='fellowship'/><category term='protocols'/><category term='Serval Project'/><category term='alternative energy'/><category term='complexity'/><category term='mesh routing'/><category term='overlay network'/><category term='thermo-couple'/><category term='geek port'/><category term='BATMAN'/><category term='nlnet.nl'/><category term='NaCl'/><category term='engineers australia'/><category term='infrastructure addiction'/><category term='packet radio'/><category term='rhizome'/><category term='long range mesh'/><category term='humanitarian engineering'/><category term='scalability'/><category term='wifi'/><category term='Serval'/><category term='students'/><category term='cell phone'/><category term='thermo-electric'/><category term='Nigeria'/><category term='TES NewEnergy'/><category term='USB'/><category term='Serval DNA'/><category term='TEDx Adelaide'/><category term='802.11ah'/><category term='android'/><category term='carriers'/><category term='brisbane'/><category term='citizen journalism'/><category term='CCC2011'/><category term='power'/><category term='standards'/><category term='LCA2012'/><category term='shuttleworth foundation'/><category term='solar flare'/><category term='compiler'/><category term='ISM915'/><category term='geomagnetic storm'/><title type='text'>Enabling Communications, Anywhere, Anytime</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>34</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-279300423633465110</id><published>2012-02-15T14:24:00.000-08:00</published><updated>2012-02-15T14:24:27.238-08:00</updated><title type='text'>Software Developer Contracts Available!</title><content type='html'>&lt;br /&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Do you thrive on contributing to something that has the potential to positively impact millions, if not billions of people the world over?&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Do you slay pointers in your sleep, dream about data-flow diagrams, or cross-compile kernel drivers for fun?&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Can you think in&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;&amp;nbsp;(or&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;)? &amp;nbsp;Do you know how to use mmap() instead of malloc()?&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;Have you ever written your own compiler, interpretor or network stack for the fun of it (or all three)?&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;If you can answer yes to at least some of the above, the Serval Project Inc. has the following contract opportunities that it is seeking to engage, so that we are able to accelerate our software development programme:&lt;/span&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="background-color: rgba(255, 255, 255, 0.917969); color: #222222; font-family: arial, sans-serif; font-size: 13px;"&gt;&lt;div&gt;1.&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;/&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Android&lt;/span&gt;/&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;&amp;nbsp;Software Developer (full-time NOW through to 31 August)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2.&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;/&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Android&lt;/span&gt;/&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;&amp;nbsp;Software Developer (two days per week NOW through to 31 August)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;(or possibly some mix-and-match for the total 1.4 full-time-equivalent.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The purpose of these roles is to get us to our 1.0 public release in August 2012. &amp;nbsp;Future opportunities may develop over time, dependent on successful software outputs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For both of these roles we are looking for people who can quickly pick up&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;&amp;nbsp;and/or&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;&amp;nbsp;code, and make rapid and sustained contributions to the Serval Project's software base in preparation for major software releases during 2012. &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Being a&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;/&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;&amp;nbsp;polymath will definitely work in your favour, as will having some experience with&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Android&amp;nbsp;&lt;/span&gt;software development. &amp;nbsp;General Linux/UNIX admin and scripting awareness and skills are also a plus, as is demonstrated experience contributing to FLOSS software projects.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But most of all, we need people who are passionate about what the Serval Project is doing, and who want to change the world for the better. &amp;nbsp;Prior engagement with the Serval Project is a great way to prove this to us, both for these and any future openings.&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;These openings are available immediately, are based in Adelaide, Australia (sorry, not negotiable for these openings due to the intensity of software development we have scheduled), and interested parties are strongly encouraged to put together:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. A CV listing (providing links is great) any FLOSS,&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;C&lt;/span&gt;,&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Java&lt;/span&gt;,&amp;nbsp;&lt;span class="il" style="background-attachment: initial; background-clip: initial; background-color: #ffffcc; background-image: initial; background-origin: initial;"&gt;Android&lt;/span&gt;&amp;nbsp;and humanitarian experience;&lt;/div&gt;&lt;div&gt;2. A covering letter; and&lt;/div&gt;&lt;div&gt;3. About 250 words explaining why you think it is vital that the Serval Project succeed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then send it all to&amp;nbsp;&lt;a href="mailto:jobs@servalproject.org" style="color: #1155cc;" target="_blank"&gt;jobs@servalproject.org&lt;/a&gt;. &amp;nbsp;ODT and PDF are our preferred formats.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If we like what we read we will get in touch, and get into more of the nitty-gritty.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If we find more great people that we can offer work to, we will keep you on file for when we next have openings.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-279300423633465110?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/279300423633465110/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2012/02/software-developer-contracts-available.html#comment-form' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/279300423633465110'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/279300423633465110'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2012/02/software-developer-contracts-available.html' title='Software Developer Contracts Available!'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-1405286719976333171</id><published>2012-02-08T02:22:00.000-08:00</published><updated>2012-02-08T02:22:52.952-08:00</updated><title type='text'>Serval has made the Netexplo 2012 Top-100 Most Promising Projects</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div style="text-align: -webkit-auto;"&gt;We seemed to have reached the point with the Serval Project were we no longer have to enter competitions to start getting short-listed for things. &amp;nbsp;This is almost as amusing as it is humbling.&lt;/div&gt;&lt;div style="text-align: -webkit-auto;"&gt;So it is that today I discovered that we made the Nexexplo top-100 list of the latest and most proming projects.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://en.www.netexplo.org/laureat/serval"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-rfZgu179xRs/TzJLqS-4ygI/AAAAAAAAAJ4/QQx66aonPnM/s320/100+innovator.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;From their website, this is how they describe Netexplo:&lt;br /&gt;&lt;em style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;strong style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/em&gt;&lt;br /&gt;&lt;em style="background-attachment: initial; background-clip: initial; background-color: white; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;&lt;strong style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-image: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-weight: bold; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;The most promising uses of digital technology&lt;/strong&gt;&lt;/em&gt;&lt;br style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;br style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;"&gt;Every year the Netexplo global observatory of digital innovations identifies the latest and most promising projects and experiments on every continent through its international network of more than 200 spotters. This initial material, comprised of several hundred projects, companies and technologies, is then analyzed in greater depth. A college of international experts next selects the 100 most interesting cases, forming the annual Netexplo 100.&amp;nbsp;&lt;/span&gt;&lt;br style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;"&gt;Finally, a jury comprised of independent personalities from the academic world, research and international organisations elect the Grand Prix from those 10 award winners. The Grand Prix trophy is announced and given out at the Netexplo Forum.&lt;/span&gt;&lt;br style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;" /&gt;&lt;span style="background-color: white; color: #666666; font-family: proxima-nova-1, proxima-nova-2, sans-serif; font-size: 13px; line-height: 18px;"&gt;From new uses of the Web to groundbreaking technologies from research labs, as well as associations, NGOs or businesses that are transforming markets, every aspect of the ongoing digital revolution is covered. That’s why research that is still at the lab stage but has positive potential impact on lifestyles or an application that is already available can generate the same interest. Similarly, the Netexplo 100 lists futuristic applications on the verge of science-fiction alongside original, low-tech innovations using widely available technologies that deliver a socially useful function to a given audience.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So thank you to the Netexplo college for thinking that we are one of the most promising projects and experiments underway in 2012. &amp;nbsp;Now all we have to do is to live up to their expectations!&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-1405286719976333171?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/1405286719976333171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2012/02/serval-has-made-netexplo-2012-top-100.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1405286719976333171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1405286719976333171'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2012/02/serval-has-made-netexplo-2012-top-100.html' title='Serval has made the Netexplo 2012 Top-100 Most Promising Projects'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-rfZgu179xRs/TzJLqS-4ygI/AAAAAAAAAJ4/QQx66aonPnM/s72-c/100+innovator.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-6886221887208707380</id><published>2012-02-06T02:48:00.000-08:00</published><updated>2012-02-06T02:48:23.783-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval DNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='USB'/><category scheme='http://www.blogger.com/atom/ns#' term='compiler'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval Project'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>Developing Challenges of Multi-Hop Mesh Telephony on Android</title><content type='html'>If you are reading this blog, you probably know that the &lt;a href="http://servalproject.org/"&gt;Serval Project&lt;/a&gt; is all about making mesh telephony practical, so that people can communicate anywhere, any time.&lt;br /&gt;&lt;br /&gt;For regular Android software development, it is often practical to use the Android emulator to reduce the time between updating source code and seeing the effect of the change.&lt;br /&gt;&lt;br /&gt;For Serval, this isn't really an option, because we work below the Android API layer, and much of the software development challenge is related to making the WiFi chipsets do what we want. &amp;nbsp;We also have a fair amount of native code to do the mesh routing and telephony functions. &amp;nbsp;In fact, we currently have an entire distribution of Asterisk in the Serval Mesh software, which must be decompressed and installed when the Serval Mesh APK is installed or updated. &lt;br /&gt;&lt;br /&gt;Together, these contribute to an update process that can take several minutes to between modifying a line of code and seeing it on an Android device, especially on the low-cost devices that are our primary targets, and when using the debug option in eclipse.&lt;br /&gt;&lt;br /&gt;Those minutes add up over time, and so I decided to minimise the install time as much as possible, and also address another problem with developing our software, that is detecting when you have an actual multi-hop network.&lt;br /&gt;&lt;br /&gt;To reduce the install time, I started looking at the Asterisk installation to see what we could safely throw out. &amp;nbsp;I managed to get rid of about half of the loadable modules, several utilities and all of the speech files that Asterisk comes bundled with. &amp;nbsp;This reduced the size of the APK by a little over 1MB, down to just under 5MB, and cut down the install time by about 15%. &amp;nbsp;Further savings came from removing unused audio codecs in our SIPDroid-derived SIP client, saving another 0.4MB, and getting the whole thing down to less than 4.5MB and installing about 25% faster than previously.&lt;br /&gt;&lt;br /&gt;The bulk of the remaining time is about evenly split between installing Asterisk and testing that the WiFi control works properly. &amp;nbsp;For development, it probably makes sense to separate out the Asterisk installation from the other files we need to deploy on installation, as we really don't modify the Asterisk files between builds. &amp;nbsp;This shouldn't be too hard to do, but I have run out of time tonight.&lt;br /&gt;&lt;br /&gt;Also, for our target handsets, we really don't need to test the WiFi control every time we update, so we should be able to set a flag to tell the software that we are in development mode, and just assume that the WiFi control works. &amp;nbsp;This now works by checking if a file called &lt;span style="font-family: 'Courier New', Courier, monospace;"&gt;/sdcard/serval/developer-mode/fast-wifi&lt;/span&gt; exists, and if so, bypassing those tests, and thus saving about 15 seconds.&lt;br /&gt;&lt;br /&gt;So over all the minimum time from hitting "run" in Eclipse to getting the software ready has been reduced from 85 seconds down to 48 seconds (without debugging).&lt;br /&gt;&lt;br /&gt;The over significant development convenience task I have worked on in the last few days is one that is probably of more general interest. &amp;nbsp;The peer list now shows the number of hops to each of the nodes that your phone knows about, as shown in the image below. &amp;nbsp;This was produced by having two phones at opposite ends of my house, and having the phone shown here with me out on the street.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-fjjD53rd-b4/Ty-t5cAVRaI/AAAAAAAAAJw/daWBb3wYnFo/s1600/2-hop-peerlist" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-fjjD53rd-b4/Ty-t5cAVRaI/AAAAAAAAAJw/daWBb3wYnFo/s1600/2-hop-peerlist" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Each row of the peer list now shows the telephone number, e.g., 5550344, the batman link score, e.g., 243, the ping time to the peer, e.g., 19 milli-seconds, and either "direct" for nodes we can reach directly, or the number of hops to reach the node, e.g., 2 hop. &lt;br /&gt;&lt;br /&gt;Importantly for debugging, this displays doesn't ask BATMAN how far to the node in question, but actually enquires of the time-to-live (TTL) field in the IP header, and thus returns the true distance from your phone to the phone in question (the return path might be a different length, though). &lt;br /&gt;&lt;br /&gt;Actually, because of limitations with the Java UDP programming interface, the TTL field is read by the Serval DNA daemon (which is written in C), and included in the returned UDP packet to the requesting client.&lt;br /&gt;&lt;br /&gt;This means that we can just look at the interface on the screen (and so can all of you who have been asking us for this feature) and see what is happening to routes, instead of having to connect to the phone with a USB cable and enter all sorts of commands to ask BATMAN and the operating system what &lt;i&gt;might&lt;/i&gt;&amp;nbsp;be happening.&lt;br /&gt;&lt;br /&gt;So all in all we now have a slightly faster and easier development process, that I am sure will more than save the couple of person days of effort that they took to develop, and thus enable us to work faster instead of harder.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-6886221887208707380?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/6886221887208707380/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2012/02/developing-challenges-of-multi-hop-mesh.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6886221887208707380'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6886221887208707380'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2012/02/developing-challenges-of-multi-hop-mesh.html' title='Developing Challenges of Multi-Hop Mesh Telephony on Android'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-fjjD53rd-b4/Ty-t5cAVRaI/AAAAAAAAAJw/daWBb3wYnFo/s72-c/2-hop-peerlist' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2932773905002375758</id><published>2012-01-19T17:46:00.000-08:00</published><updated>2012-01-23T21:03:33.018-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISM915'/><category scheme='http://www.blogger.com/atom/ns#' term='packet radio'/><category scheme='http://www.blogger.com/atom/ns#' term='Ballarat'/><category scheme='http://www.blogger.com/atom/ns#' term='LCA2012'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='open hardware'/><title type='text'>At LCA 2012 (Linux Conf AU)</title><content type='html'>&lt;br /&gt;&lt;div style="margin-bottom: 0cm;"&gt;This year I was not expecting to beheading to Linux Conference Australia (LCA), as two of the ServalProject team were expecting to be there, and I am already looking atthe likelihood of somewhere north of six bouts of internationaltravel this year, on top of a very full itinerary for myself in oursoftware development program, especially in the first half of theyear.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;However, circumstances changed justbefore &lt;a href="http://linux.conf.au/"&gt;LCA2012&lt;/a&gt; with one of our team unable to travel due to health, andanother being overseas at an IEEE 802.11 meeting as part of oureffort to get the ad-hoc WiFi standard improved.  So I found myselfflying in for just over 24 hours to present one of the talks.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;The two Serval Project talks this yearwere covering Serval Rhizome, our store-and-forward message and filedistribution system, and the Serval Mapping Service, aninfrastructure-free map and crowd-sourced information gathering andvisualisation platform that is something like a cross between &lt;a href="http://google.com.au/maps"&gt;GoogleMaps&lt;/a&gt;, &lt;a href="http://ushahidi.org/"&gt;Ushahidi&lt;/a&gt; and &lt;a href="http://twitter.com/"&gt;Twitter&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Update: Here are the videos of the talks. &amp;nbsp;The authorships are wrong way around, however:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/u-v4yhTyP_c/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/u-v4yhTyP_c&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/u-v4yhTyP_c&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/bIVtXkDAIQ8/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/bIVtXkDAIQ8&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/bIVtXkDAIQ8&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;The talks were well attended and manypeople asked a wide variety of questions.  Several themes thatemerged in the question time were that we should think about how wemight interface our work with that of the ham radio community, and ageneral discussion of the &lt;a href="http://openstreetmaps.org/"&gt;Open Street Maps&lt;/a&gt; project that we use tosupply the cacheable maps for the Serval Mapping Service. Questionswere also asked about whether we were looking to branch out fromAndroid to other platforms, including low-cost “feature phones”,which are common in the developing world.  We have been targeting theSymbian/Belle S60 platform for a long time now.  We also explainedhow we intend to seek the manufacture of custom feature and smartphones that contain a pluggable extra radio for mesh communications. &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;This goal received a substantial boostwhen we discovered that Andrew Tridgell (of SAMBA fame) has alreadywritten &lt;a href="https://github.com/tridge/SiK"&gt;frequency-hopping firmware&lt;/a&gt; for HopeRF radio modules similar to the ones we are intending to use.  This will likely save us months of effort,and also enabled us to learn from Andrew's experience about what therealistic capabilities of the modules are.  The firmware and adapterboards that Andrew has created will also make it much easier for usto quantify the transmission range that we can achieve with thesedevices in practise, rather than relying on fairly simplisticlink-budget calculations.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Also from talking with Andrew we havebegun to look more seriously about using small model drone aircraftto loft mesh repeaters (possibly just mesh-enabled Android phones)and have them loiter over an area to provide significant coveragewhere it would otherwise be possible.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;The combination of the longer-rangeradios and an established ability to loft mesh devices each have thepotential to greatly increase the utility of our technology in avariety of settings, including disaster response and in both built-upareas and open country where either obstacles or low populationdensity make WiFi meshing difficult.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;It was also great to hear about DavidRowe's continuing progress on his open-source codec, called &lt;a href="http://www.rowetel.com/blog/?p=2255"&gt;Codec2&lt;/a&gt;,which while still alpha, already is able to demonstrate &lt;a href="http://www.rowetel.com/blog/?p=2255"&gt;veryacceptable performance at 2500bps and 1400bps&lt;/a&gt;, i.e., as low as 175bytes per second for speech of a quality that is more than acceptablefor a phone call, and is substantially better than the now ratheraged GSM codec that requires almost 10x the bandwidth.  The challengeis how to make effective use of such a low bit-rate coded, since asDavid pointed out during his talk, the IP, UDP and RTP headers in atypical VoIP application would consume probably 5x more bandwidththan the voice stream itself.  &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;This is a welcome problem we have beenanticipating for some time now, and have some thoughts on how wemight address it.  First, once we get our new overlay mesh operating,we will use packet aggregation to defray some of the headers. Second, we will setup pseudo virtual circuits between nodes that willallow the voice to be directed using one-byte channel identifiersthat are local to each node-pair.  Third, we can build more efficienttransport structures once we branch out to custom radio interfaces,such as in the ISM915 band building on the work that Andrew Tridgelldescribed earlier in this post.  &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;For example, we could use a one-bytepacket type identifier plus the one-byte channel identifier describedto provide an overall header size of just two bytes.  Add to this perhaps 2 more bytes of synchronisation data for the cryptographylayer, and the total overhead is 4 bytes per 40ms, for a total of 100bytes of overhead, and a total data requirement in each direction of275 bytes per second, or just under 2400bps.  Allowing for guardbands and the like on the radio interface, we should be able toeasily accommodate a full duplex voice call over a 5kbs – 10kbsradio channel, and multi-hop voice calls over perhaps 20kbs –30kbs*.  Such a low bit rate, as I have explained previously, offersthe potential of very long range compared with WiFi, probablyhundreds of metres per hop in built-up urban areas, and perhaps a fewkilo-metres in open country, and even better with an elevatedtransmitter.  We do hope to quantify these range figures in somerealistic situations over coming months.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;(* Each channel into and out of eachnode requires about 2400bps.  In a multi-hop network, we do not wantany two adjacent, two-hop or three-hop neighbours transmitting at thesame, as they will cause interference to each others (theinterference range is typically about double the effectivetransmission range, so one node talking can be heard by its immediateneighbours, and cause interference to it's two-hop neighbours). Also, we have two voice streams, one each way, so we need to schedulethis in an appropriate manner.  Let us explore how this might work ifwe have four nodes, A, B, C and D, involved as successive hops in amulti-hop call.  &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;At time 0 transmits to B (A → B), soB must be listening, and C cannot talk, else it would interfere withB's reception of A's transmission.  In fact, even D cannot talk, forfear of interfering with B's reception of A's transmission, as B maybe in the interference range of D. Thus in this entire system of fournodes to maximise range we need to have only one of the four nodestalking at any time.  As it takes three hops to carry the audio ineach direction, we need six time slices.  Some savings can, however,be gained by having B talk to A and C at the same time with adouble-length frame, and similarly C talk to B and D with a doublelength frame, thus saving two guard bands.  Thus we need two 2400bpschannels and two 4800bps channels (a total of 14400bps), plus fourguard bands.  At 20kps this would leave approximately 25% of air timeavailable, including for use guard bands, or to allow for theoccasional carriage of additional data. &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;At 30kps fully half of air time wouldbe available, which would also allow for some forward errorcorrection, and a more realistic allowance for additional data,especially if some creative time slicing and signalling is employed.For calls with more than four hops, additional bandwidth is notrequired, as nodes more than three hops from one another havereasonable prognosis (though no guarantee) of not interfering withone another.)&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Meanwhile, also at LCA, we have beendemonstrating the ability of the Serval software to share itself viabluetooth and WiFi to other phones, thus simulating deployment in adisaster zone or rural/remote context where internet access is notavailable.  While there have been some issues, it has been tremendousto see many people install and try our software.  It seems thatpractically everyone at LCA this year is aware of Serval and what weare trying to do.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;As part of my talking about the ServalMapping Service, Jeremy and I setup a “scavenger hunt” using theServal Mapping Service to place geotagged pins on the map and ServalRhizome to distribute photographs of the location of each small 2.5cmsquare cardboard token that we hid around the sprawling BallaratUniversity Campus.  Similar to geocaching, the tokens were placed soas to be near impossible to find without knowing their location.  LCAattendees can use the Mapping and Rhizome software to locate thetokens and return them to Jeremy. Each token is redeemable for twofree coffee vouchers to help encourage participation.  Apart from abit of fun, we hope that this will provide us with some real-lifeexperience and feedback on the use of these technologies.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Jeremy also succeeded in setting up anconfiguration-free gateway between Serval Mesh phones and a free SIPto PSTN service that is running at the conference, and left somevoice mail on my cell phone to prove it.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;We also had some interesting contactwith several businesses that may be able to make use of ourtechnology.  &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Much credit must go to Jeremy forgetting the software together, and engaging in many of theconversations that have enabled us to have such a successful time atLCA so far.  Also Rob Thomas has been a tireless advocate of Servalat LCA and elsewhere, and together with Jeremy have helped manypeople to install our software on their phones at the conference thisyear.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Thus, while I was not expecting toattend LCA this year, I am very glad that I managed to get there.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2932773905002375758?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2932773905002375758/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2012/01/at-lca-2012-linux-conf-au.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2932773905002375758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2932773905002375758'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2012/01/at-lca-2012-linux-conf-au.html' title='At LCA 2012 (Linux Conf AU)'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2400214795810601719</id><published>2012-01-02T10:09:00.000-08:00</published><updated>2012-01-02T10:09:48.783-08:00</updated><title type='text'>Nokia Symbian/Belle Here To Stay</title><content type='html'>This is a post I should have made months ago when it would have been a prediction, rather than a commentary. &amp;nbsp;Oh well.&lt;br /&gt;&lt;br /&gt;Nokia is in a most fascinating position. &amp;nbsp;Much has been said about the shift to Windows Phone 7 from Symbian, and thus how Symbian is dead.&lt;br /&gt;&lt;br /&gt;This was never going to be the case, and the reasons are simple:&lt;br /&gt;&lt;br /&gt;1. Most of Nokia's sales are of low-cost phones.&lt;br /&gt;2. Windows Phone 7 can't run on low-cost phones.&lt;br /&gt;&lt;br /&gt;And the supplementary reason:&lt;br /&gt;&lt;br /&gt;3. Windows Phone 7 relies on a lot of mobile data for a satisfactory experience, which the people who buy low-cost phones in developing countries cannot afford.&lt;br /&gt;&lt;br /&gt;It is also worth noting that Symbian phones typically have longer battery life than other smart-phone platforms, which gives them a strong advantage in developing markets where reliable power supply may not be available. &amp;nbsp;This is especially true for the S40 phones, which can browse the web and last a week or more between recharging, whereas I think I am doing well if I can get 2-3 days out of the Android phones I have here, and daily charging is a reality for many.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Symbian is still the most used phone OS for web browsing. &amp;nbsp;In fact,&amp;nbsp;&lt;a href="http://gs.statcounter.com/#mobile_os-ww-monthly-201101-201112"&gt;Symbian might even have gained a little bit of (mobile web browsing) market share recently&lt;/a&gt;&amp;nbsp;(those stats lump the S40, S60 and S80 platforms together, which is a little confounding, but it still shows a clear overall picture for the overall Symbian family).&lt;br /&gt;&lt;br /&gt;All of these reasons (and more) are why, from the outset, it Symbian has been high on the list of mobile operating systems to port Serval's mesh telephony platform to.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It seems that Stephen Elop has now realised the reality of Nokia's continuing need for Symbian: Symbian which was previously being thrown out, has &lt;a href="http://www.techspot.com/news/46756-nokia-renames-symbian-belle-to-nokia-belle-available-in-february.html"&gt;suddenly got a new name&lt;/a&gt;, Nokia Belle. &lt;br /&gt;&lt;br /&gt;The renaming should be interpreted as a spin-doctored retreat from the abandonment of Symbian: you don't rename a platform you have already killed, you rename a platform you want to do better in future.&lt;br /&gt;&lt;br /&gt;Nokia will continue to support Symbian/Belle for some time yet, because it has to. &lt;br /&gt;&lt;br /&gt;What is interesting as well, is that getting Serval onto Symbian/Belle and also onto the Nokia S40 platform could make a significant difference for Nokia in protecting the low-cost phone market by providing a compelling market differentiator (everyone loves a free call) for Nokia in that space, where they are under heavy competition from a plethora of cheap Indian and Chinese handsets. &amp;nbsp;Remember, this is the main revenue source for Nokia.&lt;br /&gt;&lt;br /&gt;Of course, it has taken Nokia a year to realise that they need to keep Symbian/Belle, so I am not holding my breath for sudden engagement from Nokia --- although we would gladly work with them to get our software onto Symbian, where it can help hundreds of millions of people communicate, and help Nokia's future prospects along the way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2400214795810601719?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2400214795810601719/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2012/01/nokia-symbianbelle-here-to-stay.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2400214795810601719'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2400214795810601719'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2012/01/nokia-symbianbelle-here-to-stay.html' title='Nokia Symbian/Belle Here To Stay'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-4890757535798254655</id><published>2011-12-19T17:57:00.000-08:00</published><updated>2011-12-19T17:57:12.892-08:00</updated><title type='text'>Misleading "Out of Memory" Error in SQLite3</title><content type='html'>The following is recorded in the hope that it may save someone else the hassle of tracking down this kind of error.&lt;br /&gt;&lt;br /&gt;While working on Serval 0.08 I have been working with SQLite3 for the first time.&lt;br /&gt;&lt;br /&gt;I had the following fairly innocent query causing SQLite to report an "out of memory" error:&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;int count=sqlite_exec_int64("SELECT COUNT(*) FROM FILES WHERE id='%s' AND datavalid&amp;lt;&amp;gt;0;",hash);&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After spending a bit of time hunting everywhere to find where I could possibly have leaked enough RAM for SQLite3 to get upset, I finally realised that the column &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;datavalid&lt;/span&gt; did not exist in the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;FILES&lt;/span&gt; table. &amp;nbsp;I had &lt;i&gt;meant&lt;/i&gt; to update the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;CREATE TABLE&lt;/span&gt; statement, but obviously hadn't gotten around to it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I updated the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;CREATE TABLE&lt;/span&gt; statement to include a definition for the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;datavalid&lt;/span&gt; column, and the "out of memory" errors are now a thing of the past.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I can only guess that somewhere in SQLite3 when it tries to find the column, it gets a NULL pointer returned, which some other part of itself then interprets as a failure to allocate memory to retrieve the column, rather than the failure of the column itself to exist.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-4890757535798254655?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/4890757535798254655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/12/misleading-out-of-memory-error-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4890757535798254655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4890757535798254655'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/12/misleading-out-of-memory-error-in.html' title='Misleading &quot;Out of Memory&quot; Error in SQLite3'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2730130348211082889</id><published>2011-12-19T13:07:00.000-08:00</published><updated>2011-12-19T13:07:44.732-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='alternative energy'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><title type='text'>Shopping Serval Style</title><content type='html'>We are currently preparing to provide the latest Serval mesh telephony technology for use in a disaster response training exercise with a major relief agency in late February 2012 -- about two months from now. &amp;nbsp;In that time we need to not only get our prototype Field Communications Unit (FCU) kit together, but also finish some software development that is key for making the technology useful for the relief agency. &amp;nbsp;You can watch a demo of one of the features we are working on in the video below, where I send a photo from one phone to another, without infrastructure. &amp;nbsp;This is the same technology we have used to &lt;a href="http://servalpaul.blogspot.com/2011/11/demonstrating-serval-rhizome-store-and.html"&gt;send an SMS more than 10,000km without infrastructure&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/r_LdiGE4uME/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/r_LdiGE4uME?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/r_LdiGE4uME?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;On the hardware side, we have ordered 50 Huawei IDEOS X1 phones for AUD$71.10 each -- pretty cheap for a fully featured Android smart phone, complete with digital compass, GPS, accelerometers, a capacitive screen and enough CPU and RAM to meet our needs. These phones are network locked, but that doesn't worry us as we won't ever be putting a SIM card in them, because they will be used solely as mesh communications devices. &lt;br /&gt;&lt;br /&gt;It turns out that buying 50 phones at a time is an interesting exercise. &amp;nbsp;People want to know that you are not planning to resell them or export them. &amp;nbsp;Some shops will even try to limit you to buying five or less at a time. &amp;nbsp;Those tactics are legal in some places, but not here in sunny South Australia, where we have an excellent &lt;a href="http://www.legislation.sa.gov.au/LZ/C/A/FAIR%20TRADING%20ACT%201987.aspx"&gt;Fair Trading Act&lt;/a&gt; that correctly classifies such terms of trade as discriminatory, or in some cases as tantamount to &lt;a href="http://en.wikipedia.org/wiki/Bait-and-switch"&gt;bait-and-switch&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In fact, until quite recently the South Australian consumer protection and gambling laws were so strong that cereal-packet competitions could not require a South Australian resident to purchase a product to participate in a trade promotion lottery, because it would be considered gambling, i.e., pay for chance to win. &amp;nbsp;So when I was growing up it was quite common to see terms and conditions looking quite normal, and then have sections specially for South Australians, that would often say something along the lines of:&lt;br /&gt;&lt;blockquote class="tr_bq"&gt;"10. To enter, cut the bar code from a packet of XYZ and include it in your entry as proof-of-purchase. &amp;nbsp;Residents of South Australia are permitted to submit a hand drawn facsimile of the proof-of-purchase.&lt;/blockquote&gt;&lt;blockquote class="tr_bq"&gt;...&lt;/blockquote&gt;&lt;blockquote class="tr_bq"&gt;17. Only one entry per household per day. &amp;nbsp;Residents of South Australia may enter more than once per day."&lt;/blockquote&gt;&lt;br /&gt;There were certainly occasions in my childhood when we would go to the effort of getting the coloured pencils out to draw a barcode by hand to get the chance to win a prize. &amp;nbsp;I think we sometimes did it just because we could. &amp;nbsp;Sadly, with the introduction of poker machines (Australia has fully 21% of the worlds poker or slot machines --- a statistic that is disturbing given that Australia has only about 1% of the developed-world population) and the general liberalisation of gambling in South Australia the situation has changed, and I believe we have lost our little parochialism.&lt;br /&gt;&lt;br /&gt;Anyway, I digress.&lt;br /&gt;&lt;br /&gt;After the difficulties I encountered initially in sourcing 50 mobile phones, I eventually went to our local post office to see if they would order me 50, since they had the model I wanted in their catalog. &amp;nbsp;Not only were they willing to order them (I promised to pay up-front, since it was a large purchase), they also kindly sliced 10% off the price. &amp;nbsp;So I now have a box of 44 phones in my lounge room, with the remaining 6 on back order:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Wi_N1ODorKc/Tu-lea4NzVI/AAAAAAAAAJI/Xy2J68pH8xA/s1600/19122011341.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-Wi_N1ODorKc/Tu-lea4NzVI/AAAAAAAAAJI/Xy2J68pH8xA/s400/19122011341.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;At this price, the phones don't come with SD cards, which we do need for the Serval Rhizome software to do anything useful, as store-and-forward requires somewhere to store! &amp;nbsp;So I hunted around, and after some luke-warm experiences with suppliers either being unwilling to give me a decent price for what is clearly a wholesale quantity, or failing to stock enough, I tried OfficeWorks. &amp;nbsp;They had enough in stock, but were charging $16 for 4GB cards, which I had quotes from other local stores for $7. &amp;nbsp;So I loaded my basket with 50 memory cards, and proceeded to try their price-matching policy:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-DE9caYqgZvs/Tu-lb__AjOI/AAAAAAAAAJA/wuYrbz5YbMI/s1600/18122011340.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-DE9caYqgZvs/Tu-lb__AjOI/AAAAAAAAAJA/wuYrbz5YbMI/s400/18122011340.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;However, the large price difference and quantity did trigger concern from their store manager. &amp;nbsp;He was very friendly and amiable, but did point out that to get the price matched, I had to find a local supplier with the quantity I wanted actually in stock. &amp;nbsp;But that wasn't easy to arrange, as most of the cheaper suppliers only had a few on hand. &amp;nbsp;There is of course a silliness in their rule, as I could have bought them in small batches such that each batch was small enough that the cheaper shop held sufficient stock. &amp;nbsp;But in the end I did manage to find a cheap supplier on eBay who had plenty in stock at $5.80 a piece for SANDisk 4GB class 4 microSD memory cards. &amp;nbsp;Now we just have to see if they will arrive.&lt;br /&gt;&lt;br /&gt;So that covered the phones and memory cards. &amp;nbsp;The next challenge was to come up with a way to easily charge 50 phones. &amp;nbsp;Not only did it need to work in my home, but it also had to have the potential to work in a real disaster zone, and one which might not be in Australia. &amp;nbsp;Having enough power boards to plug 50 little USB charger bricks was not an attractive option, especially since I need to fit all of this into my 23kg luggage limit when I fly, and 50 phones alone are not that light.&lt;br /&gt;&lt;br /&gt;What I have decided to do is to chop up a pile of USB leads and wire them up to some automotive 5v accessory power supplies that are commonly used to power portable DVD players and the like. &amp;nbsp;Apart from being the cheapest 5v high-current power supplies I could find (AUD$40 for 5A), they have the benefit of running on 12v, or in the case of some models, on 12v-24v, so that they can even work in a truck. &amp;nbsp;This means that in-vehicle mass-charging is possible when the power grid is off. &amp;nbsp;It also means that they can all be charged using a single cheap 13.8v power supply, which are also quite cheap; you could even use an old computer power-supply. &amp;nbsp;You can see my prototype here:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-t3SoThn4ODk/Tu-linc429I/AAAAAAAAAJQ/puHdKvbDyJ8/s1600/19122011342.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://2.bp.blogspot.com/-t3SoThn4ODk/Tu-linc429I/AAAAAAAAAJQ/puHdKvbDyJ8/s400/19122011342.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;So now I just need to get back to writing the software that needs to go on these phones ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2730130348211082889?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2730130348211082889/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/12/shopping-serval-style.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2730130348211082889'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2730130348211082889'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/12/shopping-serval-style.html' title='Shopping Serval Style'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Wi_N1ODorKc/Tu-lea4NzVI/AAAAAAAAAJI/Xy2J68pH8xA/s72-c/19122011341.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-6454049626356827979</id><published>2011-12-15T13:07:00.001-08:00</published><updated>2011-12-15T14:08:34.684-08:00</updated><title type='text'>Serval Developer Release 0.07, and our Roadmap for 2012</title><content type='html'>&lt;div class="" style="clear: both; text-align: left;"&gt;It has been some time since our last developer release, and so it is with great pleasure that I am able to announce that Serval BatPhone Developer Release 0.07 is now available for download from the Android Market.&lt;/div&gt;&lt;div class="" style="clear: both; text-align: left;"&gt;&lt;a href="http://www.blogger.com/goog_670695830"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;a href="https://market.android.com/details?id=org.servalproject"&gt;&lt;img border="0" height="230" src="http://2.bp.blogspot.com/-XdJUoepdwsE/TupmXLm21CI/AAAAAAAAAIs/owNuqFz-njc/s320/Google+ChromeScreenSnapz004.png" width="320" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This version offers compatibility with many more models of Android handsets, fixes to a large number of bugs, and some general usability improvements. &amp;nbsp;Full functionality still requires root permissions on your phone, but it does its' best to work on phones without root access.&lt;br /&gt;&lt;br /&gt;Personally, what I am most happy about is that we have substantially improved our software development and release process, which has already resulted in a much better quality in the current release, and I am confident will result in increasing quality in future releases.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/goog_670695817"&gt;&lt;img border="0" height="94" src="http://4.bp.blogspot.com/-4UrfnNRR_Ak/TupmXynLeXI/AAAAAAAAAIw/VcwEGj5z5gA/s640/Google+ChromeScreenSnapz005.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="https://market.android.com/details?id=org.servalproject"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span id="goog_670695808"&gt;&lt;/span&gt;&lt;span id="goog_670695809"&gt;&lt;/span&gt;&lt;a href="http://www.blogger.com/"&gt;&lt;/a&gt;In the longer-term this is the first of several planned releases that will hopefully bring us to a 1.00 public release around September 2012. &amp;nbsp;The planned intervening releases and their headline improvements, subject to resourcing, slippages and all the other usual hazards of software development are:&lt;br /&gt;&lt;br /&gt;0.08 - Serval Rhizome/MeshMS store-and-forward file distribution core technology. &amp;nbsp;Automatic update of Serval software over the mesh.&lt;br /&gt;&lt;br /&gt;0.09 -&amp;nbsp;&amp;nbsp;Revamped and consolidated MeshMS API and functionality. &amp;nbsp;Integrated UI for sending and receiving MeshMS messages, including using the Rhizome store-and-forward facility.The underlying technology has already been&amp;nbsp;&lt;a href="http://servalpaul.blogspot.com/2011/11/demonstrating-serval-rhizome-store-and.html"&gt;demonstrated by sending an SMS between Africa and Australia without reliance on infrastructure&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;0.10 - Revamped UI for entire Serval Mesh application. &amp;nbsp;Voicemail and Push-to-talk group communications.&lt;br /&gt;&lt;br /&gt;0.11 - Serval Mapping Integrated (using Rhizome to get map tiles without internet access). &amp;nbsp;Voice calls moving from SIP+RTP via SipDroid and Asterisk to Serval MSIP and MDP, which will improve performance on lossy wireless networks, allowing clear calls over multi-hop links each with 50% packet loss, and greatly reducing the APK size by removing the full Asterisk deployment it currently contains.&lt;br /&gt;&lt;br /&gt;0.12 - Consolidate existing work, and address outstanding issues for first public release. &amp;nbsp;0.12 will become 1.00RC1 when accepted.&lt;br /&gt;&lt;br /&gt;Together, these releases will culminate in a software package that will let you do most mobile-phone type things (voice calls, SMS/MMS, voice mail, push-to-talk) when there is no infrastructure, or for free when infrastructure is available, such as transferring and sharing data among friends and community without having to pay up to $2/MB for SMS traffic or $2/MB for cellular data services. &lt;br /&gt;&lt;br /&gt;This is good news for people with very low purchasing power, such as large portions of the population in developing countries as well as for those living in more developed countries such as Australia, where infrastructure is not universally present, especially for those living in rural and remote areas.&lt;br /&gt;&lt;br /&gt;But for now, it is back to working on Serval Mesh release 0.08 ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-6454049626356827979?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/6454049626356827979/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/12/serval-developer-release-007-and-our.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6454049626356827979'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6454049626356827979'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/12/serval-developer-release-007-and-our.html' title='Serval Developer Release 0.07, and our Roadmap for 2012'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-XdJUoepdwsE/TupmXLm21CI/AAAAAAAAAIs/owNuqFz-njc/s72-c/Google+ChromeScreenSnapz004.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-5038713306814024799</id><published>2011-12-01T09:56:00.001-08:00</published><updated>2011-12-01T10:01:27.279-08:00</updated><title type='text'>Shuttleworth Foundation Intro Video</title><content type='html'>As many readers will know, my work on the Serval Project is substantially funded by the&amp;nbsp;&lt;a href="http://shuttleworthfoundation.org/"&gt;Shuttleworth Foundation&lt;/a&gt;. &amp;nbsp;They provide my income, thus freeing my time, co-investment in the project, and loads of support in a variety of ways, including a great team of other fellows and support staff. &amp;nbsp;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Without their support the Serval Project wouldn't be what it is.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The foundation are always on the look out for other people with world changing ideas, and have released a &lt;a href="http://vimeo.com/32908507"&gt;new explanatory video&lt;/a&gt; that describes how their fellowship model works.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So if you have an idea that might change the world given half a chance, then I would recommend &lt;a href="http://www.shuttleworthfoundation.org/contact-us/"&gt;getting in touch with them&lt;/a&gt;, and possibly &lt;a href="http://www.shuttleworthfoundation.org/funding/fellowship-programme/"&gt;applying for a fellowship&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-5038713306814024799?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/5038713306814024799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/12/shuttleworth-foundation-intro-video.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5038713306814024799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5038713306814024799'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/12/shuttleworth-foundation-intro-video.html' title='Shuttleworth Foundation Intro Video'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-308901236951726827</id><published>2011-11-23T22:52:00.000-08:00</published><updated>2011-11-23T22:52:04.413-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='TEDx Adelaide'/><category scheme='http://www.blogger.com/atom/ns#' term='carriers'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval Project'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>TEDx Adelaide Talk Is Now On Youtube</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;As I mentioned in a previous post, I recently presented at TEDx Adelaide, which had the theme "On The Edge".&amp;nbsp; They have now put the videos up on YouTube, so here it is:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://0.gvt0.com/vi/UnQUQZGRjjw/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/UnQUQZGRjjw&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/UnQUQZGRjjw&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;The bottom line?&amp;nbsp;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Just as MP3 files and digital music distribution has changed the market place for the recording industry, so to decentralised digital mobile communications is on the verge of similarly disrupting the mobile telecommunications industry, by similarly adding value to the everyday experience of many people.&amp;nbsp; &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;The question is, will the mobile carriers see the opportunities that change brings, or will they work against their own interests by failing to embrace the change?&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Only time will tell.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-308901236951726827?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/308901236951726827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/tedx-adelaide-talk-is-now-on-youtube.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/308901236951726827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/308901236951726827'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/tedx-adelaide-talk-is-now-on-youtube.html' title='TEDx Adelaide Talk Is Now On Youtube'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-7836560133251563692</id><published>2011-11-22T04:53:00.000-08:00</published><updated>2011-11-22T04:59:38.539-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='smart phone'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><category scheme='http://www.blogger.com/atom/ns#' term='long range mesh'/><category scheme='http://www.blogger.com/atom/ns#' term='protocols'/><title type='text'>Demonstrating the Serval Rhizome Store-and-Forward MeshMS SMS Service</title><content type='html'>SMS messages on a cellular network get delivered via the cell towers and message centre infrastructure.&lt;br /&gt;&lt;br /&gt;On a mesh, it is possible for us to deliver messages to other phones that are reachable on the mesh at the same time. &amp;nbsp;This works great, and we have had this capability in the Serval BatPhone software for a while now. &lt;br /&gt;&lt;br /&gt;However, it does have some limitations, in particular, if there is no link all the way from the sender to the receiver on the mesh at the instant the message is sent. &amp;nbsp;This is rather unfortunate, as we usually think of SMS as being the most reliable fall-back on a mobile communications network. &lt;br /&gt;&lt;br /&gt;So we set about replicating this resilience by creating a store-and-forward SMS-like service on top of the Serval Rhizome mesh file distribution framework. &amp;nbsp;We call this MeshMS, for Mesh Message Service.&lt;br /&gt;&lt;br /&gt;This service uses direct mesh links if they are available by making use of the existing SMS capability in the Serval BatPhone software. &amp;nbsp;However, if there is no direct link, then it uses a store-and-forward scheme, that asks any passing phones to copy the message and distribute it to other phones on the mesh, until it (hopefully) eventually reaches its intended destination. &amp;nbsp;The cartoon below shows how this works. &lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-F2IB6rfYS20/TsuZlnZAHMI/AAAAAAAAAIY/IvSqEpH2ADg/s1600/store-and-forward-cartoon.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://3.bp.blogspot.com/-F2IB6rfYS20/TsuZlnZAHMI/AAAAAAAAAIY/IvSqEpH2ADg/s640/store-and-forward-cartoon.png" width="452" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The man wishes to send the message "Prepare the Zeppelin" to his hench-person, but there is no direct mesh link at that time due to the challenging topology. &amp;nbsp;The message gets picked up (stored) by the compatible phone in the pram, without any action on the part of the woman. &amp;nbsp;The woman then keeps walking along, and eventually the phone in the pram is able to automatically deliver (forward) the message to the ultimate destination, whereupon the minion knows to ready his master's zeppelin, to do the weekly grocery shopping, one trusts. Of course, there could be many intermediate steps, instead of just the one shown here.&lt;br /&gt;&lt;br /&gt;The great thing about this approach is that it doesn't require a complete path to the destination at the time of sending, but can propagate progressively across the mesh as it is able, and can make use of nodes that move between otherwise isolated mesh networks, creating an asynchronous link between them where it would not otherwise be possible.&lt;br /&gt;&lt;br /&gt;While the delay in such a service is huge, the bandwidth is also great, as potentially gigabytes of data can be transferred between nodes. &amp;nbsp;One side use of this protocol that we intend to exploit is to provide an efficient means of distributing updates to the Serval software suite, so that field updates can occur without dependence on infrastructure, and with much greater aggregate bandwidth than any single-cast cellular or wireless approach. &amp;nbsp;In fact, this will even allow the update of software, maps and other resources during a disaster.&lt;br /&gt;&lt;br /&gt;We have even demonstrated it to deliver an SMS message between South Africa and Australia, using nothing but compatible phones to carry the message more than 10,000km:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/KDhJcwsnxf0/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/KDhJcwsnxf0?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/KDhJcwsnxf0?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;This feature has profound utility in allowing the exchange of messages, files, and all manner of data in what are otherwise very difficult settings. &lt;br /&gt;&lt;br /&gt;It also provides the capabilities required to enable disadvantaged communities, perhaps in remote locations, war zones or informal settlements, to create their own infrastructure, carrier and cost-free SMS networks using compatible handsets, so that they can enjoy the benefits of digital communications that many of us take for granted.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-7836560133251563692?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/7836560133251563692/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/demonstrating-serval-rhizome-store-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7836560133251563692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7836560133251563692'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/demonstrating-serval-rhizome-store-and.html' title='Demonstrating the Serval Rhizome Store-and-Forward MeshMS SMS Service'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-F2IB6rfYS20/TsuZlnZAHMI/AAAAAAAAAIY/IvSqEpH2ADg/s72-c/store-and-forward-cartoon.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-8674018287085734752</id><published>2011-11-21T17:04:00.000-08:00</published><updated>2011-11-21T17:04:52.610-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><title type='text'>Building The Serval BatPhone Software</title><content type='html'>We have been putting some significant effort into making the Serval BatPhone software easier to build from scratch, especially first time around.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-JXog0HFRX-o/TsrrbJo7wJI/AAAAAAAAAIQ/ERD-UzjtYEo/s1600/TerminalScreenSnapz003.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="272" src="http://3.bp.blogspot.com/-JXog0HFRX-o/TsrrbJo7wJI/AAAAAAAAAIQ/ERD-UzjtYEo/s640/TerminalScreenSnapz003.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The procedure for Mac/Linux has now been reduced to (assuming you want the wifi-autodetect branch, which for now you probably do):&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;git clone git://github.com/servalproject/batphone.git -b wifi-autodetect&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;2. &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;cd batphone&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;3. &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;b&gt;./BUILD.txt&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;After that, you should be able to compile the software from in Eclipse without difficulty, as all the messy stuff has been taken care of (git sub-modules, JNI/NDK compilation, NaCl preparation, among others).&lt;br /&gt;&lt;br /&gt;This easy build process will be pushed up to the master branch fairly soon, but for now, it is only available with the wifi-autodetect branch.&lt;br /&gt;&lt;br /&gt;Note that building on Windows remains unsupported, as end of line markers in files get messed up if great care is not taken. &amp;nbsp;If you want to build on Windows, we recommend you install a Linux virtual machine, e.g., using the free VirtualBox software, and run the build process from in there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-8674018287085734752?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/8674018287085734752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/building-serval-batphone-software.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8674018287085734752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8674018287085734752'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/building-serval-batphone-software.html' title='Building The Serval BatPhone Software'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-JXog0HFRX-o/TsrrbJo7wJI/AAAAAAAAAIQ/ERD-UzjtYEo/s72-c/TerminalScreenSnapz003.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-6934788986709986014</id><published>2011-11-20T22:57:00.000-08:00</published><updated>2011-11-22T04:55:28.405-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smart phone'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><category scheme='http://www.blogger.com/atom/ns#' term='long range mesh'/><category scheme='http://www.blogger.com/atom/ns#' term='shuttleworth foundation'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>A Serval Project Progress Report</title><content type='html'>It is time to reflect on the past six months of Serval, and where we intend to head in the next six months.&lt;br /&gt;&lt;br /&gt;Six months ago we did not have a developer software offering, or even a single Android application that contained all the components for Serval. Today we do.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-9Ckic1engX4/Tsn05drlygI/AAAAAAAAAH4/fjwo20U56GE/s1600/16112011303.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="356" src="http://3.bp.blogspot.com/-9Ckic1engX4/Tsn05drlygI/AAAAAAAAAH4/fjwo20U56GE/s640/16112011303.jpg" width="640" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;On-site in South Africa after testing the Serval MeshMS store-and-forward SMS Service, delivering files and SMS messages up to 11,000km without infrastructure, or a continuously connected mesh.&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;Six months ago we did not have MeshMS (Mesh SMS service), interactive mapping, &amp;nbsp;Rhizome file distribution or store-and-forward SMS working. &amp;nbsp;Today, we do, and have even sent photos and SMS messages more then 10,000km between Australia and South Africa using mobile phones as the only infrastructure (more on this in a blog post and video in the next few days). &amp;nbsp;See&amp;nbsp;&lt;a href="http://servalpaul.blogspot.com/2011/11/demonstrating-serval-rhizome-store-and.html"&gt;this blog entry&lt;/a&gt;&amp;nbsp;for an infographic and &lt;a href="http://www.youtube.com/watch?v=KDhJcwsnxf0"&gt;video&lt;/a&gt; showing the sending and receiving of this first inter-continental mesh SMS message.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://2.gvt0.com/vi/FIk4g6ALu5I/0.jpg" height="266" width="320"&gt;&lt;param name="movie" value="http://www.youtube.com/v/FIk4g6ALu5I&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/FIk4g6ALu5I&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span class="Apple-style-span" style="font-size: x-small;"&gt;Demonstration of the Serval Rhizome Mesh-Based Infrastructure-Free File Distribution System, which is also the basis of the store-and-forward MeshMS/SMS service.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Six months ago we had a number of legal issues to work through with regard to giving Flinders University an appropriate holding in the Serval Project's commercial arm, and the Shuttleworth Foundation had not yet come on board. &amp;nbsp;Today, we have just about finalised the details for these arrangements, with the final execution to occur in the coming weeks. &amp;nbsp;It will be fantastic to get this settled.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/-YvBfKFwxeBc/TspEk40w9OI/AAAAAAAAAIA/wWYO1OIgG7U/s200/tedxpgs.jpg" style="margin-left: auto; margin-right: auto;" width="198" /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;&lt;a href="http://tedxadelaide.com/blog/2011/10/21/speaking-dr-paul-gardner-stephen/"&gt;TEDxAdelaide Presentation November 2011.&lt;/a&gt;&amp;nbsp;(Video coming soon)&amp;nbsp;&lt;em style="background-attachment: initial; background-clip: initial; background-color: transparent; background-image: initial; background-origin: initial; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #555555; font-family: Helvetica, Arial, Tahoma, sans-serif; line-height: 24px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; outline-color: initial; outline-style: initial; outline-width: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: -webkit-auto; vertical-align: baseline;"&gt;“The democratisation of online music is one example where the internet has eroded the monopoly power of music labels returning some portion of that power to the general public, without bankrupting those enterprises.”&amp;nbsp;&lt;/em&gt;&lt;span class="Apple-style-span" style="background-color: white; color: #555555; font-family: Helvetica, Arial, Tahoma, sans-serif; line-height: 24px;"&gt;Paul will explore what is essentially a Napster equivalent that will compete with the mobile telecommunication giants. He believes that the advent of powerful, programmable, portable digital devices (e.g. smartphones) are a key factor in this eventual democratisation of mobile telecommunications.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;Six months ago we were not greatly recognised internationally for our work on mesh communications. &amp;nbsp;Today, we are increasingly recognised as the leaders internationally in this space, which is a tremendous honour and also acts to spur us along to deliver on all the potential that mesh networking offers. &amp;nbsp;Recognition has included support by the Shuttleworth Foundation (South Africa), reaching the finals of the World Embedded Software Competition for University students (South Korea), strong engagement by and with the IEEE 802.11 standards process (USA and international), presenting at the Adelaide Festival of Ideas and TEDx Adelaide (Australia), and also reaching the finals of the Ashoka Foundation World Changer's Citizen Media competition (international) from a field of more than 400 entrants. &amp;nbsp;We are also seeing university and other partnership opportunities in Australia, Europe, the Middle East, Africa, the Americas, and Asia begin to take shape. &amp;nbsp;Now all we need is to be able to clone ourselves a few times over so that we can engage fully with the various opportunities!&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://embed.changemakers.com/citizenmedia?feature=112014" style="margin-left: 1em; margin-right: 1em; text-align: center;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-TDHWQ3KUxQI/TrsCULSnsOI/AAAAAAAAAHg/JHqN6xpoqZI/s1600/GOOGLE_badge_finalist.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Our plans for the next six months are to fill out the feature set that we have generated (voice, SMS, MMS, interactive mapping, file and software distribution), and add in the missing pieces, primarily the security and authenticity components that we have planned from the outset. &amp;nbsp;This will take us to mid-2012 when we hope to focus on maturing all of this into a general public release, as compared to the early-access developer software we have released to date.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="margin-left: auto; margin-right: auto;"&gt;&lt;a href="http://www.blogger.com/goog_371134265"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-FL3bAtYNy8c/TspFwGp3HXI/AAAAAAAAAII/cEmqYnhQXFs/s1600/afoipgs.jpg" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;&lt;h1 style="background-color: #fefef8; border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; color: #2e2319; font-family: 'Trebuchet MS'; font: inherit; margin-bottom: 10px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: -webkit-auto; vertical-align: baseline;"&gt;&lt;span class="Apple-style-span" style="font-size: xx-small;"&gt;Adelaide Festival of Ideas, 2011,&amp;nbsp;&lt;a href="http://adelaidefestivalofideas.com.au/jim-bettison-oration-inaction-will-cost-us-our-future/"&gt;JIM BETTISON ORATION: KICKING THE INFRASTRUCTURE HABIT&lt;/a&gt;: &lt;a href="http://radio.adelaide.edu.au/adelaidefestivalofideas2011/audio/16_habit.mp3"&gt;[listen to MP3]&lt;/a&gt;&amp;nbsp;&lt;span class="Apple-style-span" style="line-height: 16px;"&gt;&amp;nbsp;"Modern communications systems use extensive and expensive infrastructure to deliver services we could only dream of a few decades ago. This works for those who enjoy peace and sufficient wealth, but fails to reach the last billion people in poorer countries, as well as those in remote, emergency or disaster situations. Now modern mobile phones have the potential to communicate directly, to form networks without reliance on any infrastructure. The Serval Project based at Flinders University is turning this dream into a reality. It is working to make communications available to everyone, anywhere, any time especially to those who need it most."&lt;/span&gt;&lt;/span&gt;&lt;/h1&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;We are also looking seriously about getting advanced mesh support built into one or more models of mobile phone to offer energy efficiency and/or range improvements over the basic service.&lt;br /&gt;&lt;br /&gt;Simultaneously, we are beginning to explore appropriate trials of the technology that if they go ahead will gain us valuable feedback, and refine the software to maximise it's utility for the general community, including in South Africa (assisting in the distribution of educational material without cost or dependence on cellular or school IT infrastructure), North America and Australia.&lt;br /&gt;&lt;br /&gt;So all in all, the next six months should keep us fairly busy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-6934788986709986014?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/6934788986709986014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/serval-project-progress-report.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6934788986709986014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6934788986709986014'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/serval-project-progress-report.html' title='A Serval Project Progress Report'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-9Ckic1engX4/Tsn05drlygI/AAAAAAAAAH4/fjwo20U56GE/s72-c/16112011303.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-1842628713022433077</id><published>2011-11-09T14:41:00.000-08:00</published><updated>2011-11-09T14:51:03.490-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='students'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='standards'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='citizen journalism'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>Serval is in finals for the Ashoka Foundation Change Makers Citizen Media Competition!</title><content type='html'>It seems that this last month has been one of the Serval Project gaining international recognition as leading the mesh communications space. &amp;nbsp;First some thoughts on that, and then some of the exciting things that have been happening.&lt;br /&gt;&lt;br /&gt;This is incredibly gratifying and humbling, and I think also says something about the value of the open development and free software model, and also about the value of pragmatism and choosing the right applications and approach. &amp;nbsp;Ultimately it must spur us onto continuing to advance not only the technology, but also its use.&lt;br /&gt;&lt;br /&gt;We are quite aware that there are other more experienced players in this space, who have in some cases invested many millions of dollars into mesh networking. &amp;nbsp;However, the closed-handed commercial approach that many such group have taken means that many innovations in the mesh networking space do not get well known, and that people feel isolated from what is happening in this space -- which is quite counterproductive, since mesh is by it's nature a word-of-mouth and peer-to-peer technology, and that character bleeds over into how it is best used, valued, evangelised and adopted.&lt;br /&gt;&lt;br /&gt;We are also quite aware that there have been significant efforts put into making robust mesh routing protocols and standards, for example 802.11s, and yet in a short space of time we seem to be accelerating our traction at a much faster rate. &amp;nbsp;I think that there are a few interrelated causes for this. &amp;nbsp;First, we are extremely pragmatic in our approach, and this is partly enabled by us driving a vision forward, rather than seeking consensus to generate a moderated output. &lt;br /&gt;&lt;br /&gt;The unfortunate reality for mesh networking is that it is still in such infancy that the various components have to be well matched to perform well, and thus the traditional compromise approach to standards generation, without an working example to inform the standard, is prone to produce a sub-optimal result, and take a very long time to produce. &lt;br /&gt;&lt;br /&gt;This is also related to the lack of clear commercial application (or more specifically, of commercial return) of mesh networking in the eyes of many companies. &amp;nbsp;This is because when viewed as a traditional network, mesh networks are very poor cousins; they have poor reliability, poor bandwidth, poor quality of service, limited range and so on. All these make it very difficult to layer existing commercial models over a mesh network. &amp;nbsp;For example, adapting Google's advertising model onto a mesh network has trouble getting the advertisements over the mesh to each device, let alone the search data. &lt;br /&gt;&lt;br /&gt;It takes a fresh approach to mesh networking to understand where the substantial commercial opportunities are hiding. &amp;nbsp;This requires gaining an understanding of the strengths of mesh networks, rather than their weaknesses. &amp;nbsp;The natural broadcast nature of wireless networks actually works well for broad dissemination of data. &amp;nbsp;The ability of these networks to operate without supporting infrastructure allows the provision of services when not ordinarily possible.&lt;br /&gt;&lt;br /&gt;These services do not need to be data-poor services, either. &amp;nbsp;Serval has already created a prototype mapping application that could easily support navigation, geotagged advertising by businesses, crowd sourcing of points of interest and a variety of other features -- and would continue to be available when infrastructure is not available. &lt;br /&gt;&lt;br /&gt;In this kind of setting, the limitations of mesh networking become strengths. The limited range of mesh networks means that locally relevant data is available where it is relevant, and doesn't flood the rest of the world or distant parts of the mesh. &amp;nbsp;The broadcast nature of wireless communications allows multiple receivers to receive these locally relevant data, whether it be advertisements, maps, communications between nearby friends or otherwise. &amp;nbsp;Also, by focussing on hop-by-hop dissemination of data, the traditional bandwidth degradation of mesh networks can be significantly avoided -- at the extreme it is single-hop communications which can be performed at the order of 100mbit between nearby WiFi enabled devices, which is way faster than my home ADSL internet connection.&lt;br /&gt;&lt;br /&gt;But back to some of the recent successes we have had in our work and leadership being recognised, including the headline of this post:&lt;br /&gt;&lt;br /&gt;The Serval Project is one of 11 finalists from a field of around 500 entries in the &lt;a href="http://www.changemakers.com/citizenmedia/finalists#tab-section"&gt;Ashoka Foundation's Change Maker Citizen Media competition&lt;/a&gt;. &amp;nbsp;This is tremendous recognition of the value of our work in the citizen empowerment space, and we are delighted to engage with this community, and with the other amazing finalists. &amp;nbsp;We'd also love you to vote for us if you think we should be one of the winners. &amp;nbsp;You can see the other finalists and vote using the links below:&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://embed.changemakers.com/citizenmedia?feature=112014"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-TDHWQ3KUxQI/TrsCULSnsOI/AAAAAAAAAHg/JHqN6xpoqZI/s1600/GOOGLE_badge_finalist.png" /&gt;&lt;span class="Apple-style-span" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-qPTZk4G-OJY/TrsCUy0-BaI/AAAAAAAAAHk/0PU0CJORCdE/s1600/GOOGLE_badge_vote.png" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;We have also made it to the finals of the &lt;a href="http://eswcontest.com/bbs/board.php?tbl=eng_notice&amp;amp;mode=VIEW&amp;amp;num=17&amp;amp;chr=%2Fglobal_eng&amp;amp;category&amp;amp;findType&amp;amp;findWord&amp;amp;sort1&amp;amp;sort2&amp;amp;page=1"&gt;World Embedded Software Competition&lt;/a&gt; in Korea, for the second year running.&lt;/div&gt;&lt;br /&gt;Meanwhile, we have begun to engage with the IEEE 802.11 standards process, with Romana in Atlanta at their meeting as I type. &amp;nbsp;It continues to amaze me the generally positive reception and voice that we are granted at events such as this, and we are hopeful that we can effect positive change in the standards to better support mesh networking.&lt;br /&gt;&lt;br /&gt;We are also beginning to form partnerships with Universities, companies, not-for-profit and other entities, not just in Australia, but around the world. &amp;nbsp;More on some of those as they mature, but it is exciting for me to see our efforts multiplied as we gain partners. &amp;nbsp;As I have previously mentioned, we are keen to not only create resilient software, but produce it in a resilient manner, and that means with multiple teams in multiple countries around the world. &amp;nbsp;While this process has begun, we would love to expand this even further, so if you are interested, drop me a line.&lt;br /&gt;&lt;br /&gt;Closer to home, but from my perspective very satisfying is that two of our students won their sections of the departmental end of term student expo. &amp;nbsp;Congratulations to both Swapna Palaniswamy and Corey Wallis for your great work. Swapna's work has also resulted in an upcoming publication at the &lt;a href="http://www.amrita.edu/acwr2011/index.html"&gt;International Conference on Wireless Technology for Humanitarian Relief&lt;/a&gt; later this year, which is an unusual achievement for a student in her course. &amp;nbsp;Corey has similarly had a presentation based on his work accepted &amp;nbsp;at &lt;a href="http://linux.conf.au/schedule/126/view_talk?day=wednesday"&gt;Linux Conference Australia&lt;/a&gt; in January (we also have &lt;a href="http://linux.conf.au/schedule/123/view_talk?day=wednesday"&gt;another talk at LCA&lt;/a&gt; on our Rhizome mesh file distribution protocol).&lt;br /&gt;&lt;br /&gt;So it is a tremendously exciting time, and we are incredibly grateful to the &lt;a href="http://shuttleworthfoundation.org/"&gt;Shuttleworth Foundation&lt;/a&gt;, &lt;a href="http://flinders.edu.au/"&gt;Flinders University&lt;/a&gt;, &lt;a href="http://nlnet.nl/foundation/"&gt;NLnet&lt;/a&gt; and the &lt;a href="http://awesomefoundation.org/"&gt;Awesome Foundation&lt;/a&gt; for their enabling support of our activities.&lt;br /&gt;&lt;br /&gt;So now it is back to driving the technology side of our activities so that we can deliver on the promise.&lt;br /&gt;&lt;br /&gt;We have two primary areas of activity on this front at present. &amp;nbsp;First, we are working to consolidate the existing software to make it generally more usable and stable. &amp;nbsp;Second, we are working on incorporating the Rhizome file and messaging system so that we can provide what we think will be a very powerful mesh messaging service, that will even make possible the delivery of messages when there is no path immediately available through the mesh, and for the sender to receive confirmation when the message has been received. &amp;nbsp;But more on that when we have something concrete to show.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-1842628713022433077?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/1842628713022433077/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/serval-is-in-finals-for-ashoka.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1842628713022433077'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1842628713022433077'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/serval-is-in-finals-for-ashoka.html' title='Serval is in finals for the Ashoka Foundation Change Makers Citizen Media Competition!'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-TDHWQ3KUxQI/TrsCULSnsOI/AAAAAAAAAHg/JHqN6xpoqZI/s72-c/GOOGLE_badge_finalist.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-8406792891034987588</id><published>2011-11-08T19:01:00.000-08:00</published><updated>2011-11-08T20:04:00.342-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISM915'/><category scheme='http://www.blogger.com/atom/ns#' term='smart phone'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>A Simple Illustration of A Multi-Hop Telephone Call</title><content type='html'>&lt;div&gt;From time to time I get asked to provide a simple explanation of what the Serval Project actually does.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;It allows you to make multi-hop phone calls using only phones, with the signal bouncing from phone to phone&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What does a multi-hop mobile mesh telephone call look like? &amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;Well, it can look a bit like this:&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-hSTxNi9S1-w/Trno-rswPiI/AAAAAAAAAHY/m5ISoOQPWO8/s1600/09112011270.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="480" src="http://4.bp.blogspot.com/-hSTxNi9S1-w/Trno-rswPiI/AAAAAAAAAHY/m5ISoOQPWO8/s640/09112011270.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Of course this photo is a bit staged, and in reality the people in the middle of the call don't have to have their phones out, or do anything -- the mesh routing software automatically works out how to get the call between the parties. &amp;nbsp;&lt;br /&gt;&lt;br /&gt;The only limitation is that their be a path between the calling parties.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Also, the phones can be quite a bit further apart than shown here, around 100 - 200m with line of sight at present, and potentially kilometres apart once we get the ISM915 band meshing happening in the future.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;In a future post I will explain how we can enable SMS type services, even when there isn't a reliable path.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-8406792891034987588?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/8406792891034987588/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/11/simple-illustration-of-multi-hop.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8406792891034987588'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8406792891034987588'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/11/simple-illustration-of-multi-hop.html' title='A Simple Illustration of A Multi-Hop Telephone Call'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-hSTxNi9S1-w/Trno-rswPiI/AAAAAAAAAHY/m5ISoOQPWO8/s72-c/09112011270.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2140083684802289320</id><published>2011-10-25T07:05:00.000-07:00</published><updated>2011-10-25T07:06:28.792-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='Nigeria'/><category scheme='http://www.blogger.com/atom/ns#' term='citizen journalism'/><category scheme='http://www.blogger.com/atom/ns#' term='scalability'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>Early Prototype of the Serval Mesh File Distribution System, the Rhizome Retriever</title><content type='html'>Romain one of our team has been working hard to get the Rhizome Retriever together as part of our work in supporting citizen journalism in a&amp;nbsp;&lt;a href="http://servalpaul.blogspot.com/2011/10/photos-and-update-from-nigeria.html"&gt;community in Nigeria, that I have blogged about previously&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;They are already using our software in that community to make free mesh telephone calls, but from the outset the plan has been to enable them to be citizen journalists, and to share news and information in their community.&lt;br /&gt;&lt;br /&gt;To enable this, we are making our Rhizome Retriever (Serval RR), which basically lets you pick files on your phone, and put them up on the mesh, from where they will be automatically distributed to other phones on the mesh.&lt;br /&gt;&lt;br /&gt;Mass file distribution on a mesh is usually fraught with difficulties, not the least of which is that the available bandwidth on a mesh halves (or worse) for each extra hop that you try to traverse.&lt;br /&gt;&lt;br /&gt;So you can often get decent bandwidth to nearby nodes, but poor or intermittent connection to more distant nodes.&lt;br /&gt;&lt;br /&gt;Also, the more people trying to transfer things many hops across the network reduces the available bandwidth for everyone.&lt;br /&gt;&lt;br /&gt;So we decided to make the Serval RR only ever send data one hop to the nearest neighbours. &amp;nbsp;They can then in turn send data to their neighbours later on at their convenience.&lt;br /&gt;&lt;br /&gt;As a result, Serval RR can already distribute even relatively large files, certainly into the several mega-byte range, without great difficulty, and without making the network unusable for everyone else.&lt;br /&gt;&lt;br /&gt;Here is a quick demo of the initial prototype of the Serval RR software in action:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://i.ytimg.com/vi/FIk4g6ALu5I/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/FIk4g6ALu5I?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/FIk4g6ALu5I?version=3&amp;f=user_uploads&amp;c=google-webdrive-0&amp;app=youtube_gdata" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2140083684802289320?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2140083684802289320/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/early-prototype-of-serval-mesh-file.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2140083684802289320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2140083684802289320'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/early-prototype-of-serval-mesh-file.html' title='Early Prototype of the Serval Mesh File Distribution System, the Rhizome Retriever'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-4618518647268473908</id><published>2011-10-23T20:52:00.000-07:00</published><updated>2011-10-23T20:52:00.482-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='citizen journalism'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>The importance of communications during emergencies</title><content type='html'>Early 2011 saw the worst floods in Queensland, Australia in 40 years. &lt;br /&gt;&lt;br /&gt;Not surprisingly, this placed significant stresses on response efforts, and for a variety of reasons, the Queensland Government has issued an interim report on the event and what responses should be made.&lt;br /&gt;&lt;br /&gt;You can read the interim report &lt;a href="http://www.floodcommission.qld.gov.au/__data/assets/pdf_file/0006/8781/QFCI-Interim-Report-August-2011.pdf"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I have been reading through this from a telecommunications perspective, and found the following items:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;2.24 &amp;nbsp;Seqwater should give consideration to posting information about current and future releases on its website&amp;nbsp;during flood events as one method of ensuring accurate and timely information is available to the public.&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;This may seem like a small matter, but by making the information available somewhere where someone in the community could access it, and possibly disseminate it further, perhaps by word of mouth, or perhaps by feeding it into a crowd-source incident reporting system such as Ushahidi or the Serval Rhizome/Mapping combination, where it could be made available to others who need it. &amp;nbsp;Indeed, this process could be automated, providing a very valuable community service. &amp;nbsp;However, if the information is not shared in the first instance, then such broad and means of distribution will be troublesome to implement, and potentially disadvantage many. &lt;br /&gt;&lt;br /&gt;In short, putting information out where the public can get to it, and make further use of it supports resilience.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;5.21 The Queensland Fire and Rescue Service should ensure that rescue technicians on deployment are provided with individual radios, rather than sharing a communications pack&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;Presumably the sharing of communications packs is related to their cost and bulk.&lt;br /&gt;Using off-the-shelf meshing mobile phones would allow all rescue technicians to have a personal means of communications that makes use of the shared communications pack, relaying traffic back through that resource.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;5.29 The Queensland Fire and Rescue Service should consider isolating repeaters during a large scale emergency&amp;nbsp;response. If this solution is found to be feasible, it should be implemented as protocol as soon as possible.&amp;nbsp;If it is not, the Queensland Fire and Rescue Service should explore other solutions to the issue of the fire&amp;nbsp;communications network being overloaded and firefighters resorting to localised networks during large scale&amp;nbsp;emergency response situation.&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;This seems to be responding to the issue of excessive traffic being relayed across the region, congesting the system and preventing it being of effective use. &amp;nbsp;The Serval Mesh system has the potential to localise message delivery to the local teams that need it (whether or not they are locally based), and still retaining the ability to broadcast messages over the whole region when suitably addressed. &lt;br /&gt;&lt;br /&gt;This is not a particular mode we had considered greatly in the past, so this is a helpful thing for us to discover.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;7.2 Lockyer Valley Regional Council should investigate the feasibility of installing alarm-activating gauges in the&amp;nbsp;creeks at Spring Bluff, Murphys Creek and other communities where communication systems are poor and there is a risk of rapid and unexpected water rise.&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;This is interesting for us to read, as we are already contemplating creating a very similar system for use in the Mekong River Basin on conjunction with a Lao doctoral student here in the department. &amp;nbsp;The characteristics of the system are having a local mesh broadcast an alarm to all mesh nodes when one or more mesh-equipped sensors indicates a high water level. &lt;br /&gt;&lt;br /&gt;It is possible that those sensors could be low-cost mobile telephones connected to a device such as the &lt;a href="http://www.sparkfun.com/news/643"&gt;IOIO&lt;/a&gt;, creating a very simple and low-cost solution, provided the device can be powered, perhaps using a solar panel and modest storage battery, such as an old car battery no longer able to supply the peak load required to start a car, but more than sufficient for the couple of watts required to run a phone and sensor.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;"SMS alerts are also not a reliable method of providing flood warnings in parts of Queensland which experience&amp;nbsp;problems with telephone coverage. That difficulty is compounded during a flood, when telephone reception can be&amp;nbsp;affected by flood related power outages and congested telecommunications networks."&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;This is precisely the kind of short coming with cellular networks that Serval has sought to find and create solutions for, that complement the existing infrastructure. &amp;nbsp;In particular, the ability of the Serval Rhizome mesh file/message distribution system to work asynchronously, and automatically share information carried in phones as they more from region to region has particular value in these sorts of situations. &lt;br /&gt;&lt;br /&gt;Also, the ability place local calls on the mesh, and where possible, setup connections from the mesh to the outside world offers a significant capability that is otherwise a considerable liability in these situations.&lt;br /&gt;&lt;br /&gt;The ability for Serval technology to allow the rapid setup of a local mobile telephone network, and then connect it to the global telecommunications network using the nearest functional mobile phone tower was demonstrated in Brisbane in late January 2011, just a couple of weeks after the flooding had subsided.&lt;br /&gt;&lt;br /&gt;We did this by placing a phone running the Serval software at a high vantage point where it could communicate with the nearest functional mobile phone tower (we used a helium balloon, but a roof top, or even a long fishing pole gaffer taped to a car would suffice). &amp;nbsp;This then allowed the phones on the ground that were also running our software to relay calls out to the world. &amp;nbsp;Here is the video we took of us doing exactly this, and watching people use it:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;object width="320" height="266" class="BLOGGER-youtube-video" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" data-thumbnail-src="http://3.gvt0.com/vi/Wwsy9MThwns/0.jpg"&gt;&lt;param name="movie" value="http://www.youtube.com/v/Wwsy9MThwns&amp;fs=1&amp;source=uds" /&gt;&lt;param name="bgcolor" value="#FFFFFF" /&gt;&lt;embed width="320" height="266"  src="http://www.youtube.com/v/Wwsy9MThwns&amp;fs=1&amp;source=uds" type="application/x-shockwave-flash"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-4618518647268473908?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/4618518647268473908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/importance-of-communications-during.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4618518647268473908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4618518647268473908'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/importance-of-communications-during.html' title='The importance of communications during emergencies'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-4300651457282812252</id><published>2011-10-22T19:29:00.000-07:00</published><updated>2011-10-22T19:29:38.196-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISM915'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='802.11ah'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><category scheme='http://www.blogger.com/atom/ns#' term='long range mesh'/><category scheme='http://www.blogger.com/atom/ns#' term='shuttleworth foundation'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>Serval is going to Atlanta</title><content type='html'>Well, Romana (co-founder of Serval Project) is. &amp;nbsp;And that is because she will be representing the Serval Project's interests at the IEEE 802 plenary meeting there in just a couple of weeks (November 2011).&lt;br /&gt;&lt;br /&gt;Romana will be putting forward use cases that reveal deficiencies in the current 802.11 family of WiFi standards for mesh and ad-hoc communications. &lt;br /&gt;&lt;br /&gt;If all goes well, we may have the opportunity to input into a process of looking to address these issues, which is tremendously exciting for us. &lt;br /&gt;&lt;br /&gt;It could mean much longer range mesh hops using ordinary mobile phones, by using the cellular radio to implement some kind of WiFi in the ISM 915MHz band.&lt;br /&gt;&lt;br /&gt;It could also spell the end of frustrating incompatibilities in the 802.11 ad-hoc WiFi standard, including the bizarre lack of specification of ad-hoc in 802.11n, preventing standards conforming devices from using the higher speeds and other benefits that 802.11n brings.&lt;br /&gt;&lt;br /&gt;Either or both of these have the potential to make citizen generated infrastructure-free communications systems mainstream, thus our excitement.&lt;br /&gt;&lt;br /&gt;So Atlanta will be the official first turning of clod in a process that could extend up to four years, and represents a huge personal investment on the part of Romana, as well as a substantial financial investment on the part of the Serval Project, and thus the Shuttleworth Foundation whose support makes this possible.&lt;br /&gt;&lt;br /&gt;We would invite any other open efforts that have concerns with aspects or omissions of the IEEE 802.11 WiFi standards to get in touch with us, so that we can do our best to represent the needs of more than just ourselves.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-4300651457282812252?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/4300651457282812252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/serval-is-going-to-atlanta.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4300651457282812252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4300651457282812252'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/serval-is-going-to-atlanta.html' title='Serval is going to Atlanta'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-1248808150872414981</id><published>2011-10-18T06:33:00.000-07:00</published><updated>2011-10-18T06:33:00.987-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cryptography'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval DNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='NaCl'/><category scheme='http://www.blogger.com/atom/ns#' term='compiler'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='linker'/><title type='text'>Oh the fun of the Android linker</title><content type='html'>So this week I decided that I would finally do the initial integration of the excellent &lt;a href="http://nacl.cr.yp.to/"&gt;NaCl crypto library&lt;/a&gt;&amp;nbsp;into DNA, but with the view of making it available from Android so that it can be used as part of our forthcoming Rhizome browser (this is for browsing Rhizome offerings, not the web -- more on this thing in a future post).&lt;br /&gt;&lt;br /&gt;My main objective was to have only one copy of the NaCl library in our Android application so that the APK stays as small as possible, and so that we don't waste any more memory than we need to.&lt;br /&gt;&lt;br /&gt;The first challenge is that we want to access NaCl from Java, as well as the command-line dna utility.&lt;br /&gt;&lt;br /&gt;The second challenge is that the crypto code should be inseperable from the dna code, so that it is impossible, for example, to use linker tricks to switch the NaCl library for something insecure. &lt;br /&gt;&lt;br /&gt;We can't do this perfectly because it needs to be accessible from Java, which can only load native shared libraries, but it seems that we should do what we can.&lt;br /&gt;&lt;br /&gt;So I put all of dna and NaCl into a single shared library, libdnalib.so, using the Android NDK to build it, so that we can load it into Java and use the NaCl (and possibly dna) functions directly from in Java. &lt;br /&gt;This even means that dna's main() function is in there, and so we can run dna queries and actions from in Java as though we were using the command line tool.&lt;br /&gt;&lt;br /&gt;Great.&lt;br /&gt;&lt;br /&gt;Then I tried a bit of good old fashion linker skullduggery, by making an empty C file, and compiling it linked against libdnalib.so, so that it gets dna's main() from that library, by doing (in effect):&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;echo &amp;gt;null.c&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;gcc -o dna null.c -ldnalib&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;However, the linker on Android doesn't look in the host applications lib directory when linking an executable. &amp;nbsp;The Android linker also doesn't support the &lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;-Wl,-rpath=&lt;/span&gt; option for specifying where to find a library.&lt;br /&gt;&lt;br /&gt;This is a real pain, and probably qualifies as a bug. &amp;nbsp;I should probably file the bug, but I wanted an immediate solution, since my past attempts at getting the Android folks to fix things have not met with much success. &amp;nbsp;Besides, I needed a solution that works with &lt;i&gt;existing&lt;/i&gt; handsets, not future ones. So in the words of Marvin the Martian, it was back to the old drawing board.&lt;br /&gt;&lt;br /&gt;So my solution was to create a wrapper that just dlopen()'s libdnalib.so, and then finds and runs the main() function from in there:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;#include &amp;lt;dlfcn.h&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;#include &amp;lt;stdio.h&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;int main(int argc,char **argv)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;void *h = dlopen("/data/data/org.servalproject/lib/libdnalib.so",RTLD_LAZY);&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;int (*dnamain)(int,char **) = dlsym(h,"main");&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;if (!dnamain) return fprintf(stderr,"Could not load libdnalib.so\n");&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&amp;nbsp;return (*dnamain)(argc,argv);&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: 'Courier New', Courier, monospace;"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;The downside is that it assumes that /data/data/org.servalproject is where the application will get installed, which the Android people tell us we should not assume. &lt;br /&gt;&lt;br /&gt;Thus I will probably be about as popular with them as I am when I tell people to root their phones to get ad-hoc mode WiFi instead of waiting for an API to turn up in some future release of Android.&lt;br /&gt;&lt;br /&gt;But, when necessity beckons, one must do what one must do.&lt;br /&gt;&lt;br /&gt;And so I now have a solution that works and I can move onto more pressing problems.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-1248808150872414981?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/1248808150872414981/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/oh-fun-of-android-linker.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1248808150872414981'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/1248808150872414981'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/oh-fun-of-android-linker.html' title='Oh the fun of the Android linker'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-7782070070916195407</id><published>2011-10-13T04:44:00.000-07:00</published><updated>2011-10-13T04:44:11.950-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>Deploying a Phone Tower, Serval Style (The Day In Pictures)</title><content type='html'>So yesterday we went to beautiful Normanville with the goal of testing the maximum range between phones running our mesh telephony software. &lt;br /&gt;&lt;br /&gt;We didn't get particularly far on that front, but we did discover some very interesting things about the unique requirements of mesh routing between mobile telephones, which will likely be the subject of a upcoming blog post.&lt;br /&gt;&lt;br /&gt;But what we did do was deploy a mobile phone tower of a different kind. &amp;nbsp;Romana has wanted to make her wheel chair into a mobile phone tower for some time, and yesterday was her chance, as the pictures show.&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-b2Z7byJ1BOg/TpbGTDRyWvI/AAAAAAAAADI/ZIsOZ-4fWMs/s1600/P1040506.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-b2Z7byJ1BOg/TpbGTDRyWvI/AAAAAAAAADI/ZIsOZ-4fWMs/s320/P1040506.JPG" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Romana in her chair with Lyn beginning to attach the 7 metre long squid pole we use as the mast.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-2TU6vyk1gkY/TpbGhmARJkI/AAAAAAAAADQ/uVP9pRukADc/s1600/P1040507.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-2TU6vyk1gkY/TpbGhmARJkI/AAAAAAAAADQ/uVP9pRukADc/s320/P1040507.JPG" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Further attaching of the mast.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-L55jcyuXltw/TpbGtUrt0BI/AAAAAAAAADY/goA5Xf4r6MU/s1600/P1040518.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-L55jcyuXltw/TpbGtUrt0BI/AAAAAAAAADY/goA5Xf4r6MU/s320/P1040518.JPG" width="320" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Beginning to raise the mast. &amp;nbsp;The blob on the top is a Huawei IDEOS U8150 mobile phone running our software and acting as the "repeater".&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&amp;nbsp;The raising of the mast:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-PPhWvsAoVGY/TpbG5cX_6VI/AAAAAAAAADg/QSq5o0Cd_IE/s1600/P1040519.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://1.bp.blogspot.com/-PPhWvsAoVGY/TpbG5cX_6VI/AAAAAAAAADg/QSq5o0Cd_IE/s200/P1040519.JPG" width="150" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/-FQc6TKlTB0k/TpbHD7IWviI/AAAAAAAAADo/94uDGaauNWk/s1600/P1040520.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-FQc6TKlTB0k/TpbHD7IWviI/AAAAAAAAADo/94uDGaauNWk/s200/P1040520.JPG" width="150" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/-vxIZnNYRB68/TpbHPezCePI/AAAAAAAAADw/JO38mTugplE/s1600/P1040521.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/-vxIZnNYRB68/TpbHPezCePI/AAAAAAAAADw/JO38mTugplE/s200/P1040521.JPG" width="150" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/--JNyG-jX7gc/TpbHZS04foI/AAAAAAAAAD4/auBGjjcpQSI/s1600/P1040526.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/--JNyG-jX7gc/TpbHZS04foI/AAAAAAAAAD4/auBGjjcpQSI/s320/P1040526.JPG" width="240" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;Victory! Romana's wheel chair is now a mobile phone tower.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&amp;nbsp;But it wasn't all hard work. &amp;nbsp;The weather was glorious, and the views most excellent, and others were out and about enjoying the day ...&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-VE2fNayZero/TpbHmlZQ8zI/AAAAAAAAAEA/rKQCdmMhg1c/s1600/P1040538.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-VE2fNayZero/TpbHmlZQ8zI/AAAAAAAAAEA/rKQCdmMhg1c/s320/P1040538.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Or hoping for a chip.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-eEVb-1_SYVQ/TpbH1cUdMDI/AAAAAAAAAEI/RvJjL_RF8ko/s1600/P1040539.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-eEVb-1_SYVQ/TpbH1cUdMDI/AAAAAAAAAEI/RvJjL_RF8ko/s320/P1040539.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Meanwhile, we moved to the jetty so that we could place our mobile phone tower (including blanket for the cool sea breeze).&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-Wp2ymhFIl04/TpbIAxOM22I/AAAAAAAAAEQ/kcu2MbUwsk0/s1600/P1040557.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://2.bp.blogspot.com/-Wp2ymhFIl04/TpbIAxOM22I/AAAAAAAAAEQ/kcu2MbUwsk0/s320/P1040557.JPG" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The pole really does stand up quite high. It gets the phone about 6m above the deck of the jetty:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-coc5qCKNTns/TpbIKZLeY1I/AAAAAAAAAEY/_aIND-8bk1Y/s1600/P1040560.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-coc5qCKNTns/TpbIKZLeY1I/AAAAAAAAAEY/_aIND-8bk1Y/s320/P1040560.JPG" width="240" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/--3Bol8VmuaQ/TpbISLDgQYI/AAAAAAAAAEg/6dWtlBqf4vw/s1600/P1040564.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/--3Bol8VmuaQ/TpbISLDgQYI/AAAAAAAAAEg/6dWtlBqf4vw/s320/P1040564.JPG" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;... which is a little higher than even the lamp post&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-3IzkDerd4KQ/TpbIcYXYv6I/AAAAAAAAAEo/JGPCem1oLls/s1600/P1040577.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-3IzkDerd4KQ/TpbIcYXYv6I/AAAAAAAAAEo/JGPCem1oLls/s320/P1040577.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Then we started walking along the beach towards Carrickallinga, slowly deploying a 6-hop mesh, and making multiple simultaneous voice calls amongst the nodes.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-KP-ct8nSNZE/TpbImjksc9I/AAAAAAAAAEw/ExyQtnpnnyk/s1600/P1040578.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-KP-ct8nSNZE/TpbImjksc9I/AAAAAAAAAEw/ExyQtnpnnyk/s320/P1040578.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-hfUPa4EVgpQ/TpbIwAnE07I/AAAAAAAAAE4/--qVLmEclqM/s1600/P1040579.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-hfUPa4EVgpQ/TpbIwAnE07I/AAAAAAAAAE4/--qVLmEclqM/s320/P1040579.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Corey and Romana did a great job standing on the jetty and talking to us via our impromptu phone network, while locals and visitors enjoyed the day:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-F0RSWbCjduE/TpbI7Y29WjI/AAAAAAAAAFA/-8t9ZMVwOnY/s1600/P1040584.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-F0RSWbCjduE/TpbI7Y29WjI/AAAAAAAAAFA/-8t9ZMVwOnY/s320/P1040584.JPG" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;This was also the first time that my son Caleb came along on a Serval expedition. &amp;nbsp;Little did he know that his pram was soon to become a phone tower as well.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-jODeLPBuUbM/TpbJGHGb-_I/AAAAAAAAAFI/GeIRkDg22II/s1600/P1040592.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-jODeLPBuUbM/TpbJGHGb-_I/AAAAAAAAAFI/GeIRkDg22II/s320/P1040592.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Here I am with Lyn deploying a node some distance from the jetty:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Re3zWQvU16A/TpbJQJnK6bI/AAAAAAAAAFQ/QO3XLq8kO8w/s1600/P1040599.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://4.bp.blogspot.com/-Re3zWQvU16A/TpbJQJnK6bI/AAAAAAAAAFQ/QO3XLq8kO8w/s320/P1040599.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Then it was Jeremy's turn:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Yq8wJQcgAJY/TpbJalPSKvI/AAAAAAAAAFY/9ny1NeYons0/s1600/P1040604.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-Yq8wJQcgAJY/TpbJalPSKvI/AAAAAAAAAFY/9ny1NeYons0/s320/P1040604.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Then the pram:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-U_4MxzUBadM/TpbJn4zoVeI/AAAAAAAAAFg/jTmsWfc9nQI/s1600/P1040613.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-U_4MxzUBadM/TpbJn4zoVeI/AAAAAAAAAFg/jTmsWfc9nQI/s320/P1040613.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;And all the while we were able to make calls among the various nodes.&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-8HKig5gEUJ4/TpbJ1yy0TVI/AAAAAAAAAFo/ohM7sR02lG4/s1600/P1040617.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/-8HKig5gEUJ4/TpbJ1yy0TVI/AAAAAAAAAFo/ohM7sR02lG4/s320/P1040617.JPG" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;We did encounter some serious mesh routing issues, which as I mentioned I will talk about soon, but for now I just wanted to let you all enjoy the pictures.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-7782070070916195407?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/7782070070916195407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/deploying-phone-tower-serval-style-day.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7782070070916195407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7782070070916195407'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/deploying-phone-tower-serval-style-day.html' title='Deploying a Phone Tower, Serval Style (The Day In Pictures)'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-b2Z7byJ1BOg/TpbGTDRyWvI/AAAAAAAAADI/ZIsOZ-4fWMs/s72-c/P1040506.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-3129156840210312753</id><published>2011-10-12T14:11:00.000-07:00</published><updated>2011-10-12T14:11:40.846-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='nlnet.nl'/><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='power'/><category scheme='http://www.blogger.com/atom/ns#' term='alternative energy'/><category scheme='http://www.blogger.com/atom/ns#' term='complexity'/><category scheme='http://www.blogger.com/atom/ns#' term='scalability'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='shuttleworth foundation'/><category scheme='http://www.blogger.com/atom/ns#' term='protocols'/><title type='text'>Kicking The Infrastructure Habit</title><content type='html'>&lt;span class="Apple-style-span" style="background-color: #fefef8; color: #2e2319; font-family: 'Trebuchet MS'; font-size: 13px; line-height: 16px;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; font: inherit; margin-bottom: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;Last weekend I delivered the inaugural Jim Bettison Memorial Oration at the biannual &lt;a href="http://adelaidefestivalofideas.com.au/"&gt;Adelaide Festival of Ideas&lt;/a&gt;. This was a great honour, and my presentation was well received by the audience, as was evidenced by the poignancy of their questions.&lt;br /&gt;&lt;br /&gt;Here is the abstract of my oration:&lt;/div&gt;&lt;div style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px; font-size: 13px; font: inherit; margin-bottom: 10px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; vertical-align: baseline;"&gt;Modern communications systems use extensive and expensive infrastructure to deliver services we could only dream of a few decades ago. This works for those who enjoy peace and sufficient wealth, but fails to reach the last billion people in poorer countries, as well as those in remote, emergency or disaster situations. Now modern mobile phones have the potential to communicate directly, to form networks without reliance on any infrastructure. The Serval Project based at Flinders University is turning this dream into a reality. It is working to make communications available to everyone, anywhere, any time especially to those who need it most.&lt;/div&gt;&lt;br /&gt;You can listen to the oration by &lt;a href="http://radio.adelaide.edu.au/adelaidefestivalofideas2011/audio/16_habit.mp3"&gt;downloading the MP3&lt;/a&gt;&amp;nbsp;from the &lt;a href="http://radio.adelaide.edu.au/"&gt;Radio Adelaide&lt;/a&gt; website.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;You can also listen to an&amp;nbsp;&lt;a href="http://mpegmedia.abc.net.au/rn/podcast/2011/10/bth_20111012_1144.mp3"&gt;ABC Bush Telegraph interview about the oration&lt;/a&gt;&amp;nbsp;that I recorded a few days prior to the oration.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-3129156840210312753?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/3129156840210312753/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/kicking-infrastructure-habit.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3129156840210312753'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3129156840210312753'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/kicking-infrastructure-habit.html' title='Kicking The Infrastructure Habit'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-3107391259810830422</id><published>2011-10-05T16:32:00.000-07:00</published><updated>2011-10-05T16:33:08.697-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='Nigeria'/><category scheme='http://www.blogger.com/atom/ns#' term='citizen journalism'/><category scheme='http://www.blogger.com/atom/ns#' term='rhizome'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><category scheme='http://www.blogger.com/atom/ns#' term='protocols'/><title type='text'>Photos and Update from Nigeria - and introduction to Rhizome</title><content type='html'>We have a partner organisation working in Nigeria looking at citizen-sourced journalism and using our mesh network as the connectivity among a number of camera-equipped cell phones, so that citizen journalists there can make a short video or news piece and then have it distribute automatically over the mesh using our Rhizome protocol.&lt;br /&gt;&lt;br /&gt;Rhizome is our mesh file distribution protocol that allows user-created content and software updates to spread hop-by-hop over the mesh. &amp;nbsp;This hop-by-hop approach elegantly solves many of the problems with mesh-wide file transfer, in particular bandwidth starvation and instability of long links.&lt;br /&gt;&lt;br /&gt;We have called it rhizome because it is like the &lt;a href="http://en.wikipedia.org/wiki/Rhizome"&gt;vegetable reproductive process&lt;/a&gt; of the same name, because we think it is a good analogy for the way that Rhizome allows data to spread by small hops, but such that over time it can spread over great distances.&lt;br /&gt;&lt;br /&gt;We are busy working on making Rhizome do all that the team in Nigeria needs, but in the meantime, the team in Nigeria have sent us some photos showing the mesh in action.&lt;br /&gt;&lt;br /&gt;First, they sent photographic evidence of 10 IDEOS U8150 phones forming a mesh with our software:&lt;br /&gt;&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-m1I9RxIslJA/TozkmVFAyYI/AAAAAAAAAC8/TY1hQ8YCoF8/s1600/DSCF0827.JPG" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="300" src="http://3.bp.blogspot.com/-m1I9RxIslJA/TozkmVFAyYI/AAAAAAAAAC8/TY1hQ8YCoF8/s400/DSCF0827.JPG" width="400" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;10 Serval BatPhones on the mesh (and a call in progress!)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;They also sent us this picture which I really love, because it shows a community getting started with out technology thousands of kilometres from where we are writing the software here in Australia. &amp;nbsp;This is what it is all about, people using and benefiting from the software that we are creating and releasing.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-68qzyeZ0S-0/TozlXkzJzMI/AAAAAAAAADE/yuLhP7x9mXs/s1600/DSCF0829.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://4.bp.blogspot.com/-68qzyeZ0S-0/TozlXkzJzMI/AAAAAAAAADE/yuLhP7x9mXs/s400/DSCF0829.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;Finally, just a week after they got 10 phones on the mesh, they sent this shot showing 15 phones on the mesh. &amp;nbsp;This was just a case of them getting 15 phones within range, as the underlying BATMAN mesh protocol should be able to handle a couple of hundred devices without any difficulty:&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-CFJEHgPWBwo/TozlQAScItI/AAAAAAAAADA/UMnBQ9Ohfio/s1600/DSCF0864.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="300" src="http://1.bp.blogspot.com/-CFJEHgPWBwo/TozlQAScItI/AAAAAAAAADA/UMnBQ9Ohfio/s400/DSCF0864.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;One of the challenges we are looking at solving with this group is auto-update of the mesh software, over the mesh. &amp;nbsp;That is, we want to be able to load a signed software update onto any one of the phones on the mesh, and have the phones on the mesh share it automatically with one another.&lt;br /&gt;&lt;br /&gt;This is a great idea, and the Rhizome protocol will allow us to do this, however it introduces some security challenges.&lt;br /&gt;&lt;br /&gt;In particular, we don't want someone or some party seizing or cracking our signing key, and then being able to spread a trojan update that destroys the Serval mesh.&lt;br /&gt;&lt;br /&gt;One approach we are looking at is making the update require that the new version be signed by a majority of keys from a pool, where each key would be held by a different mesh-friendly organisation. &amp;nbsp; The pool of trusted keys could then be similarly updated by a majority vote of existing trusted keys.&lt;br /&gt;&lt;br /&gt;This will allow us to spread the keys among countries and jurisdictions and provide the kind of distributed resilience that the Serval Project is predicated on, and even allows the software to continue to be refined and distributed if the Serval Project as an organisation ceases to exist.&lt;br /&gt;&lt;br /&gt;If you think that your organisation might like to be one of our key custodians, let me know.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-3107391259810830422?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/3107391259810830422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/10/photos-and-update-from-nigeria.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3107391259810830422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3107391259810830422'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/10/photos-and-update-from-nigeria.html' title='Photos and Update from Nigeria - and introduction to Rhizome'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-m1I9RxIslJA/TozkmVFAyYI/AAAAAAAAAC8/TY1hQ8YCoF8/s72-c/DSCF0827.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-5178448799632766742</id><published>2011-09-22T07:39:00.000-07:00</published><updated>2011-09-22T07:39:31.692-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISM915'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='standards'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='802.11ah'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='S1G'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>More than we expected at the IEEE</title><content type='html'>If you have been reading this blog you will know that we sent Romana over to Okinawa to present our desire to see ad-hoc mode wifi improved, and also to consider how to use the baseband radio in mobile phones to support wifi on very low cost phones, and also to provide much longer range meshing using the ISM915/868 bands that offer very useful link budget advantages over the 2.4GHz band used by regular WiFi.&lt;br /&gt;&lt;br /&gt;Well, we have been absolutely gobsmacked by the interest and positive response that Romana experienced at the meeting, and have the opportunity of taking up the baton to champion proposing these enhancements through the formal IEEE 802 standards process. &lt;br /&gt;&lt;br /&gt;This is a great privilege, and also an opportunity that cannot be accepted without serious and solemn consideration, because it will basically require someone's effort, full time, for perhaps three years or more.&lt;br /&gt;&lt;br /&gt;We are convinced that we want to, and that we should engage with this standards process, but just need to work out whether we have the resources to do it, without drawing all of our available resources away from progressing the development of the Serval mesh telephony software.&lt;br /&gt;&lt;br /&gt;More news as we have it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-5178448799632766742?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/5178448799632766742/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/09/more-than-we-expected-at-ieee.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5178448799632766742'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5178448799632766742'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/09/more-than-we-expected-at-ieee.html' title='More than we expected at the IEEE'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-8293766546923628658</id><published>2011-09-13T17:23:00.000-07:00</published><updated>2011-09-13T17:23:49.464-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='packet radio'/><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='standards'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='802.11ah'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='S1G'/><category scheme='http://www.blogger.com/atom/ns#' term='protocols'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>Why Serval is getting involved in the 802.11ah standards process</title><content type='html'>Serval is getting involved in the IEEE 802.11ah (WiFi on ISM bands below 1GHz) to try to make sure that it is well suited to infrastructure-independent ad-hoc and mesh networking at the IEEE meeting in Okinawa next week.&lt;br /&gt;&lt;br /&gt;Here is our submission:&lt;br /&gt;&lt;br /&gt;&lt;a href="https://mentor.ieee.org/802.11/dcn/11/11-11-1138-00-00ah-packet-radio-mode-for-802-11ah-a-b-g-n.ppt"&gt;https://mentor.ieee.org/802.11/dcn/11/11-11-1138-00-00ah-packet-radio-mode-for-802-11ah-a-b-g-n.ppt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Basically we are asking for two things:&lt;br /&gt;&lt;br /&gt;1. Improvements to ad-hoc mode (or provision of a new "packet radio" mode) that remove some of the problems currently faced when creating wifi-based ad-hoc mesh networks.&lt;br /&gt;&lt;br /&gt;and&lt;br /&gt;&lt;br /&gt;2. That the 802.11ah standard consider speeds below 1mbit and using cell phone baseband radios as a supported transport so that even cheap cell phones can form relatively long range mesh networks without any supporting hardware.&lt;br /&gt;&lt;br /&gt;This second point is really important, because compared with 2.4GHz WiFi a mesh running in the ISM 915MHz band gains about +9db just from the change in frequency, which alone improves range by almost 3x. &amp;nbsp;If it supports lower bit rates, then further significant gains are possible, e.g., allowing 100kbit communications gives another +10db, for a total of 8x range versus WiFi. &lt;br /&gt;&lt;br /&gt;There are some significant protocol challenges to be addressed, but if the standard doesn't support the use-case, then there will be no hardware and no chance.&lt;br /&gt;&lt;br /&gt;These measures have the potential to push the indoor range up from WiFi's "about one house wide" to "about a block wide" and clear line-of-sight range up to a few km, which suddenly makes the formation of suburban ad-hoc mesh networks possible, which has profound impact for creating resilient infrastructure-independent communications solutions, for example for sustaining communications during disaster or enabling communications for rural and remote or developing populations. &lt;br /&gt;&lt;br /&gt;We admit that we are very green to this process which we frankly find to be daunting.&lt;br /&gt;&lt;br /&gt;But we feel compelled to try, regardless of what we perceive to be the odds of success.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-8293766546923628658?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/8293766546923628658/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/09/why-serval-is-getting-involved-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8293766546923628658'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8293766546923628658'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/09/why-serval-is-getting-involved-in.html' title='Why Serval is getting involved in the 802.11ah standards process'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2034500735029328850</id><published>2011-09-12T13:53:00.000-07:00</published><updated>2011-09-12T13:53:25.253-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval DNA'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>More progress on the overlay mesh network</title><content type='html'>It is 5:58am and dawn is just beginning.&lt;br /&gt;&lt;br /&gt;I have been up all night making the best of the need of an overnight sleep study for our son, which requires an adult to perform a specific function every 15 minutes throughout the night.&lt;br /&gt;&lt;br /&gt;Programming in these little pieces feels a bit like the software development version of watching commercial television; just as you think you are about to witness something really interesting there is an interruption.&lt;br /&gt;&lt;br /&gt;Nonetheless, I have made significant progress getting the overlay mesh to send and receive advertisements of a different kind; notices by one node that they can reach another node.&lt;br /&gt;&lt;br /&gt;There are plenty of bugs that I know about, without even thinking about the ones that I don't know about, and also some code that is still plain old missing. &amp;nbsp;But even so, I have got the code forming a multi-hop mesh and keeping track of the routes to them.&lt;br /&gt;&lt;br /&gt;I ran two nodes connected to two separate dummy networks, so that they couldn't see each other. &amp;nbsp;Then I connected an extra node in the middle that bridged the two networks, and after a short delay, viola, the nodes could all see each other. &amp;nbsp;The image shows the routing table from one of the nodes with only one network interface.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-oZy5XwwsEg0/Tm5tiYd96DI/AAAAAAAAAC4/23LmE0HO2_A/s1600/TerminalScreenSnapz002.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="260" src="http://3.bp.blogspot.com/-oZy5XwwsEg0/Tm5tiYd96DI/AAAAAAAAAC4/23LmE0HO2_A/s640/TerminalScreenSnapz002.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;The 0000000* addresses in the neighbour table are clear evidence of some of those bugs I mentioned, as is the crazily large age field for one of those. &lt;br /&gt;&lt;br /&gt;The FDB3BA1*, D64CEB4* and B167503* addresses are nodes that I had temporarily added to the mesh, and then removed again fairly recently, so the routes were (correctly) still hanging around with their link scores steadily dropping.&lt;br /&gt;&lt;br /&gt;The important part is the route to D6850E3*, the node on the other network, for which the current route is via 30464E5*, which is the node bridging the two networks. &amp;nbsp;30464E5*&amp;nbsp;was a node that I had previously bridging the networks just a short while earlier, and we can see the lingering route as it decays.&lt;br /&gt;&lt;br /&gt;B167503* is the node currently bridging the link, and it's score is still climbing, and is about to overtake the recently removed node and become the route of choice.&lt;br /&gt;&lt;br /&gt;So while I have a lot more work to do, the basic function of the mesh to discover multi-hop paths and switch routes based on appropriately calculated scores.&lt;br /&gt;&lt;br /&gt;But right now, I am going to bed.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2034500735029328850?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2034500735029328850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/09/more-progress-on-overlay-mesh-network.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2034500735029328850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2034500735029328850'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/09/more-progress-on-overlay-mesh-network.html' title='More progress on the overlay mesh network'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-oZy5XwwsEg0/Tm5tiYd96DI/AAAAAAAAAC4/23LmE0HO2_A/s72-c/TerminalScreenSnapz002.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-5155843293206904401</id><published>2011-09-12T07:01:00.000-07:00</published><updated>2011-09-12T07:01:41.397-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ad-hoc'/><category scheme='http://www.blogger.com/atom/ns#' term='overlay network'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval DNA'/><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh networking'/><title type='text'>Why User-Land Mesh Networks Are Necessary For Heterogeneous WiFi Mesh Networks</title><content type='html'>The normal approach to creating a mesh network is to write a program that does some tricky stuff to work out how to get from node A to node Z via whatever nodes might be in the middle, and then tell this to the operating system so that packets get routed according to these instructions.&lt;br /&gt;&lt;br /&gt;We are doing something different for Serval, in that we are having the program that does all that tricky stuff carry the messages between nodes, instead of asking the operating system to help out.&lt;br /&gt;&lt;br /&gt;This has some disadvantages and some advantages.&lt;br /&gt;&lt;br /&gt;First, the disadvantages, and why we think that they aren't such a problem for our application. &lt;br /&gt;&lt;br /&gt;1. Such "user-land" overlay networks suffer from an inefficiency known as "double-copy", where every packet sent or received ends up getting copied not once by the kernel, but twice, once by the kernel, and once by the overlay program. &amp;nbsp;This is bad if you are processing lots of data. &amp;nbsp;But on a mesh network the actual throughput of data tends to be fairly low (it is one of the well known problems with mesh networks). &amp;nbsp;So this problem is kept under control.&lt;br /&gt;&lt;br /&gt;2. Programs that want to know about the mesh network need to know about the overlay and have to use special calls to talk to the mesh. &amp;nbsp;This is bad if your primary goal is allowing people to run BitTorrent, SSH, for example, because you need to modify each of those programs to support the new network, and without operating system cooperation that can get a little messier than you might like.&lt;br /&gt;&lt;br /&gt;However, for a mesh telephony platform, and where we know that bandwidth starvation is one of the greatest potential problems, there is actually merit in requiring people to go to some effort before they enable their application to consume the limited resources of the mesh. &amp;nbsp;We will be adding the support to the initial core applications we intend to run over the mesh, so this isn't really a big deal.&lt;br /&gt;&lt;br /&gt;Now for some advantages:&lt;br /&gt;&lt;br /&gt;1. We don't need operating system cooperation. &amp;nbsp;This makes it easier to port the mesh to all operating systems, both desktop and mobile. &amp;nbsp;It is especially important because the need to fiddle with routing tables requires root/administrative access on most platforms.&lt;br /&gt;&lt;br /&gt;For mobile platforms, this is certainly true on Android, and I believe iOS, with together constitute the majority of smart phones. &amp;nbsp;This alone means that we have to take this path. &lt;br /&gt;&lt;br /&gt;But it also gives us some additional upside here, in that it means we could make a USB key loaded with Serval mesh software that could be run on any desktop computer, and without administrative access or being "installed" could enable that computer to participate in the mesh. &amp;nbsp;In fact, it could probably even be an HTML5 application running in a web browser.&lt;br /&gt;&lt;br /&gt;2. It separates us from the underlying network addressing. Many devices and networks only support IPv4, but there aren't enough IPv4 addresses to go around. But by pushing our mesh network addressing into a dedicated addressing layer we can solve this problem. &lt;br /&gt;&lt;br /&gt;We use 256bit Elliptic Curve cryptography keys as the basis for our address&lt;br /&gt;&lt;br /&gt;In fact, using this approach it is possible for every single Serval enabled device on a mesh to all have the same IPv4 address, provided we use only broadcast traffic, which we do for a very important reason:&lt;br /&gt;&lt;br /&gt;Broadcast traffic is the only traffic which WiFi ad-hoc can reliably carry between devices with incompatible or buggy ad-hoc implementations. &amp;nbsp;For example, we cannot get unicast traffic to flow reliably between Mesh Potatoes and Huawei IDEOS U8150/U8180 phones. &amp;nbsp;However, we can get unicast traffic to flow between Mesh Potatoes and the original Android G1 developer phones, and between the G1 and the U8150/U8180 phones. &lt;br /&gt;&lt;br /&gt;Unfortunately mesh routing protocols all tend to use broadcast traffic to discover available routes, and thus the routes choose the impossible Mesh Potato-U8150/U8180 links, which is very bad indeed. &amp;nbsp;But by making the mesh traffic itself broadcast we ensure that what the mesh routing protocol and what we are trying to do is the same, instead of merely similar.&lt;br /&gt;&lt;br /&gt;Taking this a little further, by transporting the mesh topology management information in the same packets as the data we can directly measure the performance of the mesh delivering the traffic we really care about, rather than using different packets as an indirect measure -- especially since the distribution of packet sizes can otherwise be very different, and WiFi packet losses are not insensitive to packet length or differentiation between broadcast and unicast traffic.&lt;br /&gt;&lt;br /&gt;Implementing this is of course a significant undertaking, and I have already spent a few weeks programming away. &amp;nbsp;But the effort is beginning to yield results. &amp;nbsp;Today for the first time I have the new overlay mesh detecting nodes and building the in-memory route table. You can see a screen grab here:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-Gxgilgn8CSI/Tm4K9Ji4zvI/AAAAAAAAAC0/EFgHl5Y4axE/s1600/TerminalScreenSnapz001.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="451" src="http://4.bp.blogspot.com/-Gxgilgn8CSI/Tm4K9Ji4zvI/AAAAAAAAAC0/EFgHl5Y4axE/s640/TerminalScreenSnapz001.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;So here you can see some debug output from a Serval DNA node running in overlay mode using a file called dummy0 as a dummy network interface.&lt;br /&gt;&lt;br /&gt;I realised early in the development of the overlay network that I would need some convenient simulation tools to make it easier to debug the behaviour of the mesh. &amp;nbsp;I decided the best way to do this was to make the software itself also a network simulator. &amp;nbsp;So I added support to pretend an ordinary file is a network interface. &amp;nbsp;Any instances of the overlay pointed to the same file would all append their "packets" to the end of the file, and remember where they had got up to reading from the file, and keep an eye out for any packets deposited by other nodes. &lt;br /&gt;&lt;br /&gt;Each packet also has a header that has space for location information, transmission power, time, node velocity and heading and a whole pile of other information that can be used to drop packets that are deemed to have been sent from too far away, or suffering collision during reception and so on.&lt;br /&gt;&lt;br /&gt;The file then also represent a log of all activity on the mesh which has already proven very helpful for debugging. &amp;nbsp;I will also create a tool that allows for the creation of visualisations of the mesh in action to help understand why things go wrong, and to explain the operation of the mesh. &amp;nbsp;I will post such animations here once I get that far.&lt;br /&gt;&lt;br /&gt;Back to the trace, the error messages are mostly information for me for development (although there is on link-list bug that I can see I will need to fix to avoid a memory leak).&lt;br /&gt;&lt;br /&gt;There are a few 256bit addresses that can be seen. &amp;nbsp;The all-f's is the mesh broadcast address, while the one that starts with 9d5f is the address of a node on the mesh. &lt;br /&gt;&lt;br /&gt;These addresses are really big, and so I have already implemented a variety of mechanisms for abbreviating the addresses. &lt;br /&gt;&lt;br /&gt;For example, the broadcast address is used so often, that it has a one-byte abbreviation (0x0f). &amp;nbsp;For other addresses, we only need to transmit as much of the address is required for the receiver to discriminate it from all other nodes. &amp;nbsp;The birthday paradox comes into play here, and means that we typically need about twice the number of bits as the base-2 log of the number of nodes on the network. &amp;nbsp;For a small network of a few hundred nodes 24 bits (3 bytes) of address is a pleasant over-kill. &amp;nbsp;Even at a global scale, we need to accomodate around 10 billion addresses = ~2^34 addresses, and so about 70 bits (7 bytes) should be enough.&lt;br /&gt;&lt;br /&gt;We also have abbreviation strategies where neighbouring nodes that talk with each other a lot can allocate a one-byte short code for each other, however, as you might be able to guess from the trace that abbreviation method is temporarily disabled in the code to keep my life a little simpler at present -- which is a good move because of the density of new features in the code.&lt;br /&gt;&lt;br /&gt;At the end of the trace we see a summary of the overlay routing table which shows 7-digit address prefixes for all know nodes on this network, and the link-scores to each via the various routes known to each.&lt;br /&gt;&lt;br /&gt;The scores have two components. The first being a BATMAN-like score derived from beacon counting, although we take into account that the remote node might have different interfaces running at different beacon rates. &amp;nbsp;The second part is the number of Serval gateways that are on the path. &lt;br /&gt;&lt;br /&gt;This gateway count is there to prevent routing loops and other nasties in meshes where the overlay has managed to infer some hierarchy, or where inter-mesh links have been purposely provisioned.&lt;br /&gt;&lt;br /&gt;I'll talk about inferred hierarchy in another post, but it is one of several measures we are taking to ensure that a Serval mesh can scale beyond the normal bandwidth-starvation limit imposed by all nodes trying to know about all other nodes all of the time.&lt;br /&gt;&lt;br /&gt;Our premise is that you need frequent information for nearby nodes because their "bearing" can change wildly over short time frames, but that for more distant nodes their "bearing" on the mesh should change much more slowly, and so we should be able to cope with less frequent updates about the position of such distant nodes.&lt;br /&gt;&lt;br /&gt;But meanwhile, as you can see we are making good progress, and the Serval DNA overlay mesh is beginning to come together.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-5155843293206904401?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/5155843293206904401/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/09/why-user-land-mesh-networks-are.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5155843293206904401'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5155843293206904401'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/09/why-user-land-mesh-networks-are.html' title='Why User-Land Mesh Networks Are Necessary For Heterogeneous WiFi Mesh Networks'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-Gxgilgn8CSI/Tm4K9Ji4zvI/AAAAAAAAAC0/EFgHl5Y4axE/s72-c/TerminalScreenSnapz001.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-5406528246500601549</id><published>2011-09-08T00:42:00.000-07:00</published><updated>2011-09-08T00:42:25.028-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='power'/><category scheme='http://www.blogger.com/atom/ns#' term='thermo-electric'/><category scheme='http://www.blogger.com/atom/ns#' term='alternative energy'/><category scheme='http://www.blogger.com/atom/ns#' term='Serval'/><category scheme='http://www.blogger.com/atom/ns#' term='TES NewEnergy'/><category scheme='http://www.blogger.com/atom/ns#' term='thermo-couple'/><category scheme='http://www.blogger.com/atom/ns#' term='USB'/><title type='text'>A Thermo-Electric Saucepan?</title><content type='html'>Today we received our &lt;a href="http://tes-ne.com/English/03_product_e.html"&gt;thermo-electric saucepan&lt;/a&gt; from &lt;a href="http://tes-ne.com/"&gt;TES New Energy&lt;/a&gt;. You can see some pictures of it below.&lt;br /&gt;&lt;br /&gt;This amazing device provides a full-powered USB port when placed on a fire by using thermo-electric generation. &lt;br /&gt;&lt;br /&gt;The interesting innovation is that by incorporating the thermo-couples into a saucepan the water in the pot keeps one side of the junction cool to maximise the power output, while ensuring that the about 98% of heat that the thermo-couple cannot turn into electricity heats your water. &lt;br /&gt;&lt;br /&gt;This also means that they can use different types of thermo-couples that work better at different temperatures. &amp;nbsp;The hot-side of the pan uses lower-efficiency thermo-couples that can tolerate the higher temperatures, and the "cold" side of that is joined to the hot side of the lower-temperature thermo-couple which is also a little more efficient, and the water in the pan helps to make sure that this lower-temperature thermo-couple does not over heat. &amp;nbsp;Together, they &amp;nbsp;avoid the complications that would normally be present if using only one of the thermo-couples, either lower yield, or the potential to be damaged by higher-temperature fires.&lt;br /&gt;&lt;br /&gt;The saucepan approach is also an elegant way to circumvent the atrocious inefficiency that typically plagues thermo-electric generators, since in a diaster or remote location you probably need hot water, anyway, a realisation that TES NewEnergy had following the mega earthquake that struck Japan recently.&lt;br /&gt;&lt;br /&gt;So this saucepan is about enough to charge a phone if you are in the middle of nowhere, and solar isn't an option for whatever reason -- perhaps because the power is out due to storm, volcano, or just during bad weather.&lt;br /&gt;&lt;br /&gt;Anyway, we are looking forward to some fun testing Serval mesh phones powered by a high-tech saucepan on a campfire.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-uE8-2-Z_Onc/TmhvVS8fdQI/AAAAAAAAACk/kTTOUH-m5jc/s1600/IMG_20110908_165904.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://1.bp.blogspot.com/-uE8-2-Z_Onc/TmhvVS8fdQI/AAAAAAAAACk/kTTOUH-m5jc/s320/IMG_20110908_165904.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-AP9bIXESCl8/TmhvYR5kg8I/AAAAAAAAACo/7XilHyxx1iA/s1600/IMG_20110908_165852.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://4.bp.blogspot.com/-AP9bIXESCl8/TmhvYR5kg8I/AAAAAAAAACo/7XilHyxx1iA/s320/IMG_20110908_165852.jpg" width="240" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-EME7lp0LBOQ/TmhvZbfZiCI/AAAAAAAAACs/RODv8q1QnwE/s1600/IMG_20110908_165829.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://3.bp.blogspot.com/-EME7lp0LBOQ/TmhvZbfZiCI/AAAAAAAAACs/RODv8q1QnwE/s320/IMG_20110908_165829.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-eui6d068N6I/TmhvagalDQI/AAAAAAAAACw/vVBpzANQnY8/s1600/IMG_20110908_165813.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="240" src="http://2.bp.blogspot.com/-eui6d068N6I/TmhvagalDQI/AAAAAAAAACw/vVBpzANQnY8/s320/IMG_20110908_165813.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-5406528246500601549?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/5406528246500601549/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/09/thermo-electric-saucepan.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5406528246500601549'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/5406528246500601549'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/09/thermo-electric-saucepan.html' title='A Thermo-Electric Saucepan?'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-uE8-2-Z_Onc/TmhvVS8fdQI/AAAAAAAAACk/kTTOUH-m5jc/s72-c/IMG_20110908_165904.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-7685578516938723514</id><published>2011-08-31T22:39:00.000-07:00</published><updated>2011-08-31T22:39:20.506-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ISM915'/><category scheme='http://www.blogger.com/atom/ns#' term='fellowship'/><category scheme='http://www.blogger.com/atom/ns#' term='standards'/><category scheme='http://www.blogger.com/atom/ns#' term='funding'/><category scheme='http://www.blogger.com/atom/ns#' term='wifi'/><category scheme='http://www.blogger.com/atom/ns#' term='long range mesh'/><category scheme='http://www.blogger.com/atom/ns#' term='shuttleworth foundation'/><category scheme='http://www.blogger.com/atom/ns#' term='IEEE 802.11'/><title type='text'>Day 1 of Shuttleworth Foundation Fellowship</title><content type='html'>So today I have commenced a telecommunications fellowship with the &lt;a href="http://shuttleworthfoundation.org/"&gt;Shuttleworth Foundation&lt;/a&gt;, which will be undertaken here at &lt;a href="http://flinders.edu.au/"&gt;Flinders University&lt;/a&gt; where with the University's generous support we have based the Serval Project. &lt;br /&gt;&lt;br /&gt;This is an amazing support for our work on the &lt;a href="http://servalproject.org/"&gt;Serval Project&lt;/a&gt;, as not only does it free up my salary so that we can employ a project manager, but it also provides access to a very helpful operational budget, and a great team of dedicated open-technologists working on a variety of projects. &amp;nbsp;Check out their &lt;a href="http://shuttleworthfoundation.org/funding/current-fellows/"&gt;list of past and current fellows&lt;/a&gt; to get a feel for what they are supporting.&lt;br /&gt;&lt;br /&gt;This support builds on that already provided by &lt;a href="http://awesomefoundation.org/blog/2010/07/14/droid-does-aka-the-disaster-communications-app/"&gt;The Awesome Foundation&lt;/a&gt;, &lt;a href="http://indaily.wordpress.com/2010/11/04/no-longer-a-remote-connection/"&gt;Flinders University&lt;/a&gt; and &lt;a href="http://nlnet.nl/press/20110414-serval.html"&gt;NLnet&lt;/a&gt;, as well as that of many students, volunteers and my family, which has enabled us to reach this point.&lt;br /&gt;&lt;br /&gt;The particular mandate of my work under the fellowship is to:&lt;br /&gt;&lt;br /&gt;&lt;div class="column"&gt; 			&lt;ol start="0" style="list-style-type: none;"&gt;&lt;li&gt; 					&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;- Build on existing trials, which include remote, in-motion, underground and &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;indoor tests by linking with partner organisations to deploy the &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;technology in an escalating series of situations;&lt;/span&gt;&lt;span style="font-family: 'DejaVuSans'; font-size: 9.000000pt;"&gt;– &lt;/span&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;Increasing the breadth of applications for the technology, and the usability &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;of the technology in disaster, by governments, and in remote locations; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;and&lt;/span&gt;&lt;span style="font-family: 'DejaVuSans'; font-size: 9.000000pt;"&gt;– &lt;/span&gt;&lt;span style="font-family: 'FreeSans'; font-size: 11.000000pt;"&gt;Improving the maximum range between handsets beyond what is &lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;possible using WiFi, but without altering the hardware in existing mobile telephones (the “Focus Area Objectives”).&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;What this means is that we will be pursuing a simultaneous software improvement and testing program that will, hopefully, get us to the point of a quality public release within a year.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;The greatest challenge comes from the range extension, which we know is possible using the baseband radio in mobile phones. However, it is extremely difficult to get the programming information to enable modification of the firmware loaded into the radio's baseband processor.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans; font-size: 15px;"&gt;We will be exploring multiple angles to achieve this, ranging from engaging with the IEEE 802.11 standardisation process, to seeking to open channels with cell phone chipset manufacturers, through to, building custom cell phones that contain friendlier baseband or other radio chipsets that we can more easily reprogram, and where legal and appropriate, reverse-engineering the information we require.&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-family: FreeSans;"&gt;&lt;span class="Apple-style-span" style="font-size: 15px;"&gt;The potential gains over using WiFi to build the mesh (perhaps 300m between phones indoors and 10km or more between phones outdoors in open country) are so great that we must engage with this process, regardless of the difficulty.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;ol start="0" style="list-style-type: none;"&gt;			&lt;/ol&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-7685578516938723514?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/7685578516938723514/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/day-1-of-shuttleworth-foundation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7685578516938723514'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/7685578516938723514'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/day-1-of-shuttleworth-foundation.html' title='Day 1 of Shuttleworth Foundation Fellowship'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-6688718813183338319</id><published>2011-08-28T03:25:00.000-07:00</published><updated>2011-08-28T03:25:45.332-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BATMAN'/><category scheme='http://www.blogger.com/atom/ns#' term='complexity'/><category scheme='http://www.blogger.com/atom/ns#' term='scalability'/><category scheme='http://www.blogger.com/atom/ns#' term='mesh routing'/><title type='text'>Making Mesh Networks Scale</title><content type='html'>Mesh networks have great potential to create sustainable, resilient and low-cost communications capabilities. &amp;nbsp;This is why we are passionate about mesh networking at &lt;a href="http://servalproject.org/"&gt;Serval Project&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;However, the mesh routing protocols that I have seen to date almost all have a scalability ceiling. &amp;nbsp;This is because if you have 10 devices all talking to each other you get 100 messages, but if you have 1,000 devices all talking to each other you get 1,000,000 messages in the same time. &amp;nbsp;In computer science we would say that a mesh network has a complexity of O(N^2), because the mesh traffic scales with the square of the number of devices.&lt;br /&gt;&lt;br /&gt;Eventually, not matter how fast the links on the mesh, the capacity gets used up. &lt;br /&gt;&lt;br /&gt;Even on a "quiet" mesh where most of the devices aren't saying much, they still have to share O(N^2) information, and so the mesh just existing eventually causes it to collapse under its own weight.&lt;br /&gt;&lt;br /&gt;What would be nice is a more graceful degradation, so that even in a mesh of say, 7 billion devices, that each local pool of devices could talk to one another, even though it would be impossible to allow all 7 billion to talk to each other.&lt;br /&gt;&lt;br /&gt;It might seem pointless to allow a device to see only a few thousand nearby devices, as that represents only about 0.00001% of the devices on such a global mesh.&lt;br /&gt;&lt;br /&gt;However, for telephony at least, it turns out that most phone calls are at most a few kilo-metres away, and thus would be possible over such a "local patch" on the global mesh.&lt;br /&gt;&lt;br /&gt;So this is something that Serval is planning to do over the next few months. &lt;br /&gt;&lt;br /&gt;We are going to take the BATMAN mesh routing protocol and modify it so that it can keep track of "near by" devices on the mesh without being swamped by location information from devices on the other side of the world (which from my perspective is probably you, because I live in Australia, which is on the other side of the world from most other places ;).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-6688718813183338319?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/6688718813183338319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/making-mesh-networks-scale.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6688718813183338319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6688718813183338319'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/making-mesh-networks-scale.html' title='Making Mesh Networks Scale'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-3718104302747640572</id><published>2011-08-22T07:34:00.000-07:00</published><updated>2011-08-22T07:34:40.920-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='smart phone'/><category scheme='http://www.blogger.com/atom/ns#' term='geek port'/><category scheme='http://www.blogger.com/atom/ns#' term='cell phone'/><category scheme='http://www.blogger.com/atom/ns#' term='open hardware'/><title type='text'>Opening Mobile Hardware</title><content type='html'>Over the last few years we have seen the impact and innovation that opening the software on smart phones has enabled. &lt;br /&gt;&lt;br /&gt;The key is that the barrier to entry is now so low, that innovation can prosper without significant drag or hindrance.&lt;br /&gt;&lt;br /&gt;So why don't we open the hardware on smart phones, by offering a "geek port" that some nice simple interfaces and a really cheap common connector, like a female .156" DIP header? &lt;br /&gt;&lt;br /&gt;The port could have some analog and digital input and output lines, and maybe a serial interface or two, perhaps the common SPI interface, and a 3.3v power rail (that the phone can turn on and off to control power consumption).&lt;br /&gt;&lt;br /&gt;Such a simple port would be trivial in cost to add to smart phone, probably costing less than $1 in marginal hardware cost, plus a once-of cost developing some nice APIs to access the port.&lt;br /&gt;&lt;br /&gt;Creating such a simple interface would allow the creation of cheap dumb devices that can plug into the port. &lt;br /&gt;&lt;br /&gt;Really boring stuff, like, say, a digital thermometer, an LED and sensor that can be used to collect pulse oximetry data, and relay it on an infrastructure-independent mesh network like&amp;nbsp;&lt;a href="http://servalproject.org/"&gt;servalproject.org&lt;/a&gt;, to a local care provider. &amp;nbsp;Or maybe it might be a cheap ultrasound transponder to allow mid-wives and maternal health workers to acquire cheap ultrasound imagery. &lt;br /&gt;&lt;br /&gt;Each of these plug-ons could probably be made for $5 or less, and yet each has the potential to save many lives in the developing world, and save many billions of dollars in the developed world.&lt;br /&gt;&lt;br /&gt;And that is just in one application domain. &amp;nbsp;Who knows what else people might come up with. &lt;br /&gt;&lt;br /&gt;After all, no one anticipated the myriad applications that have been enabled by making smart phones programmable.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;I reckon that for perhaps $100,000 it would be possible to get a phone designed and a small manufacture run of such phones to demonstrate the idea. &amp;nbsp;Anyone want to make a significant impact on the world?&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-3718104302747640572?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/3718104302747640572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/opening-mobile-hardware.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3718104302747640572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/3718104302747640572'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/opening-mobile-hardware.html' title='Opening Mobile Hardware'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-8525983526187189953</id><published>2011-08-10T04:42:00.000-07:00</published><updated>2011-08-10T04:42:14.119-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Chaos Communications Camp'/><category scheme='http://www.blogger.com/atom/ns#' term='CCC2011'/><title type='text'>On the ground at Chaos Communication Camp 2011</title><content type='html'>As in 2007, &lt;a href="http://events.ccc.de/camp/2011/wiki/Location"&gt;CCC is being held at Luftfarht Museum Finowfurt, Germany&lt;/a&gt;. So,&amp;nbsp;I am writing this from in my tent next to a soviet-era air field in former East Germany, surrounded by old MiG fighter jets and other remnants of the era. &lt;br /&gt;&lt;br /&gt;The talks are being held in several of the earth-clad bunker/hangers, like this one:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-8WlrKPplkAo/TkJtwICjwxI/AAAAAAAAACY/wC5al4hGwZE/s1600/09082011207.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="223" src="http://3.bp.blogspot.com/-8WlrKPplkAo/TkJtwICjwxI/AAAAAAAAACY/wC5al4hGwZE/s400/09082011207.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;CCC has an incredible 3,500 attendees from 45 countries this year, setting up a temporary tent city with &lt;a href="http://events.ccc.de/camp/2011/wiki/Villages"&gt;more than 170 themed villages&lt;/a&gt;. &amp;nbsp;I am camped in the lee of a large tent in the &lt;a href="http://events.ccc.de/camp/2011/wiki/Villages"&gt;Blackout Resilient Technologies Village&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This village targets those working on technology that keeps power and communications up when faced with disaster. &amp;nbsp;The charter of the village recognises that natural disasters and government "kill switches" are both forms of infrastructure deprivation, and that similar technologies are required to enable communications and social function whatever the cause of infrastructure deprivation may be.&lt;br /&gt;&lt;br /&gt;For me, I am planning to work on a few things.&lt;br /&gt;&lt;br /&gt;First, I will work with people from the &lt;a href="http://events.ccc.de/camp/2011/wiki/RadioVillage"&gt;Radio Village&lt;/a&gt; to further integrate &lt;a href="http://openbts.org/"&gt;OpenBTS&lt;/a&gt; and &lt;a href="http://servalproject.org/"&gt;Serval&lt;/a&gt;, and hopefully expose OpenBTS users to the Serval Distributed Numbering Architecture (DNA), which will allow Serval mesh phones to call ordinary GSM handsets that are connected to an OpenBTS open-source mobile phone base station. &lt;br /&gt;&lt;br /&gt;Serval DNA is a very simple protocol that I sometimes describe as "ARP for telephone numbers". &amp;nbsp;It allows a phone on a mesh to ask "who has this phone number?" and get back a network address that can be used to connect to that telephone. &amp;nbsp;This protocol is what allows the Serval mesh to seem just like an ordinary telephone network to end users, by completely distributing and hiding the complexity of call resolution.&lt;br /&gt;&lt;br /&gt;I also hope to work with some of the people from the &lt;a href="http://tech.chambana.net/projects/commotion"&gt;OTI/Commotion&lt;/a&gt; project to demonstrate a "mobile phone network in a backpack" by doing the final integration of a &lt;a href="http://villagetelco.org/"&gt;Village Telco&lt;/a&gt; Mesh Potato, a wideye BGAN satellite modem and some android phones with the Serval mesh software installed.&lt;br /&gt;&lt;br /&gt;This will be an important step as it will demonstrate a low-cost and highly portable communications solution that can be used, for example, in disaster relief, for remote work forces and humanitarian organisations.&lt;br /&gt;&lt;br /&gt;Finally, in any spare time I get I will work on what we are calling the "non-privileged mesh" for Serval. &amp;nbsp;This will remove the main reason for needing "root" or "jailbreaking" your phone to get the full benefit of the Serval mesh software, and will also allow us to port to more types of mobile phone easier. &amp;nbsp;So this is pretty important. &amp;nbsp;It also sets the stage for us to do some preliminary work on setting up mesh networking using the ISM915 band, but more on that in a future post.&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-8525983526187189953?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/8525983526187189953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/on-ground-at-chaos-communication-camp.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8525983526187189953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/8525983526187189953'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/on-ground-at-chaos-communication-camp.html' title='On the ground at Chaos Communication Camp 2011'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-8WlrKPplkAo/TkJtwICjwxI/AAAAAAAAACY/wC5al4hGwZE/s72-c/09082011207.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-2688009450489648112</id><published>2011-08-06T04:24:00.000-07:00</published><updated>2011-08-06T04:24:22.606-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='geomagnetic storm'/><category scheme='http://www.blogger.com/atom/ns#' term='carrington event'/><category scheme='http://www.blogger.com/atom/ns#' term='infrastructure addiction'/><category scheme='http://www.blogger.com/atom/ns#' term='solar flare'/><title type='text'>Solar Flare Triggers Geomagnetic Storm</title><content type='html'>Earlier today (Australian time) two coronal mass ejections from the sun travelling at different speeds towards hit our planet at around the same time, triggering a very strong geomagnetic storm. &lt;br /&gt;&lt;br /&gt;For reference, this was measured to trigger a Kp=8 storm, where the Kp values are on a scale from 0 to 9, so it was pretty big. &amp;nbsp;In fact, it was big enough that&amp;nbsp;&lt;a href="http://spaceweather.com/"&gt;spaceweather.com&lt;/a&gt;&amp;nbsp;reported that it triggered auroras so extensive they were visible from mid-latitude locations such as England and Germany.&lt;br /&gt;&lt;br /&gt;Spaceweather.com also mention that it was big enough that it might have squashed the Earth's protective magnetic field enough to expose geostationary satellites to the solar wind and interplanetary medium. &amp;nbsp;In short words, this means that some satellites risk getting fried due to this storm. &amp;nbsp;We'll find out in a few days.&lt;br /&gt;&lt;br /&gt;Geomagnetic storms of this magnitude happen from time to time, and usually don't cause big problems. &amp;nbsp;However, larger events can occur that can cause considerable problems for our big-infrastructure oriented civilisation.&lt;br /&gt;&lt;br /&gt;Another&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/March_1989_geomagnetic_storm"&gt;big geomagnetic storm hit in March 1989&lt;/a&gt;&amp;nbsp;and caused considerable damage to electricity distribution in Canada as the changing magnetic field induced current flows in the long-distance electricity distribution cables, causing some really big transformers to melt, and causing havoc with satellites.&lt;br /&gt;&lt;br /&gt;This event showed how our modern infrastructure is prone to damage by solar events. Indeed, there are now measures taken to reduce this kind of damage by shutting power distribution down during intense geomagnetic storms so that no transformers melt. &amp;nbsp;However, damage to satellites is difficult to prevent.&lt;br /&gt;&lt;br /&gt;However, the 1989 storm was small in comparison to what the sun can throw at us.&lt;br /&gt;&lt;br /&gt;In 1859 the most intense geomagnetic storm ever recorded occurred and has become known as the&amp;nbsp;&lt;a href="http://en.wikipedia.org/wiki/Carrington_event"&gt;Carrington Event&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;That solar storm was so intense that aurorae were observed in such low latitudes as the&amp;nbsp;Caribbean, and were so bright in the Rocky Mountains in America that gold miners got up and began to prepare breakfast. &lt;br /&gt;&lt;br /&gt;The electric currents induced by the magnetic flux were so intense that they enabled inter-continental telegraph lines (the Internet of the 19th century) to keep working with out their power source, while others gave operators shocks.&lt;br /&gt;&lt;br /&gt;We have since discovered that events the size of the Carrington Event occur about every 500 years.&lt;br /&gt;&lt;br /&gt;Both the 1989 and Carrington events would create havoc with our vast number of communications and location satellites such as GPS and geostationary satellite telephone systems&amp;nbsp;if they occurred today. &lt;br /&gt;&lt;br /&gt;Even low-earth-orbit systems like Iridium and Globalstar would not be immune as the radio interference would potentially prevent their operation by interfering with satellite-ground and satellite-satellite communications.&amp;nbsp;There are also more sinister problems for low-earth-orbit satellites. &amp;nbsp;First, the outer parts of the atmosphere heat up and increase the pressure, and thus drag, which can cause the satellites to lose altitude, which is bad for all sorts of reasons. &amp;nbsp;Second, the Van Allen radiation belts become more active, which can cause problems for satellites. &lt;br /&gt;&lt;br /&gt;A repeat of the Carrington Event today would likely damage or destroy a significant number of satellite, as well as causing wide-spread blackouts.&lt;br /&gt;&lt;br /&gt;In short, that part of our infrastructure which we like to consider to be immune to disaster, i.e., satellite communications and location services, are in fact prone, and science informs us that it is only a matter of time before such an event occurs.&lt;br /&gt;&lt;br /&gt;My point in all this is that infrastructure is fragile in various ways, and forms a single point of failure.&lt;br /&gt;&lt;br /&gt;This is why the &lt;a href="http://servalproject.org/"&gt;Serval Project&lt;/a&gt;&amp;nbsp;is working to enable existing cell phones to keep communicating when deprived of their supporting infrastructure, so that at least local communications will remain possible in the face of almost any situation, without the capability placing a cost-burden on society.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-2688009450489648112?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/2688009450489648112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/solar-flare-triggers-geomagnetic-storm.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2688009450489648112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/2688009450489648112'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/solar-flare-triggers-geomagnetic-storm.html' title='Solar Flare Triggers Geomagnetic Storm'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-4912003822201575994</id><published>2011-08-05T14:41:00.000-07:00</published><updated>2011-08-05T14:41:30.861-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='humanitarian engineering'/><category scheme='http://www.blogger.com/atom/ns#' term='engineers australia'/><category scheme='http://www.blogger.com/atom/ns#' term='brisbane'/><title type='text'>Australian Humanitarian Engineering Summit</title><content type='html'>Last week I attended the Humanitarian Engineering Summit in Brisbane, Australia.&lt;br /&gt;&lt;br /&gt;You can read about it and watch a TV news report&amp;nbsp;&lt;a href="http://makeitso.org.au/blog/2011/08/australian-humanitarian-engineering-summit-gets-people-talking?utm_source=ABC_news_coverage&amp;amp;utm_medium=email&amp;amp;utm_campaign=watch_ABC"&gt;here&lt;/a&gt;&amp;nbsp;at the Engineers Australia web site.&lt;br /&gt;&lt;br /&gt;This was an interesting event. First, the attendees were an almost even spread across all age ranges, perhaps with a bias to the younger end. &amp;nbsp;All of these people were exploring what it means to be a humanitarian engineer, and what they and the engineering profession as a whole can do to address many of the challenges in the world.&lt;br /&gt;&lt;br /&gt;It was extremely encouraging to see the passion and dedication of many of the younger delegates -- including many current Engineering students -- because one day soon they will be the generation of engineers&amp;nbsp;ultimately&amp;nbsp;defining by example what it means to be an engineer.&lt;br /&gt;&lt;br /&gt;Perhaps one of the greatest themes of the day was that in trying to help communities in need, it is not sufficient or indeed appropriate to simply turn up with a "first world solution" set it going, and then leave. &amp;nbsp;The almost inevitable result is that the intervention fails, essentially because of lack of ownership and appropriateness -- both of which stem from the fundamental need for better consultation and inclusion of the community the intervention is serving. &amp;nbsp;I think that they are spot on.&lt;br /&gt;&lt;br /&gt;For Serval, this means that we need to continue to engage with the potential target audiences of our technology, which we are already committed to doing. &amp;nbsp;Otherwise, we stand the risk of becoming irrelevant and useless for the very people we want to help, in which case we may as well pack up and go back to our old jobs.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-4912003822201575994?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/4912003822201575994/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/australian-humanitarian-engineering.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4912003822201575994'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/4912003822201575994'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/australian-humanitarian-engineering.html' title='Australian Humanitarian Engineering Summit'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-9068638994894102968.post-6293091759153014906</id><published>2011-08-04T00:54:00.000-07:00</published><updated>2011-08-04T00:54:46.946-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='students'/><title type='text'>Another semester begins ...</title><content type='html'>It is the beginning of the second semester here in Australia, and we have five new students starting with the project. &amp;nbsp;We had seven last semester, and two have finished. &amp;nbsp;That means that we now have ten students -- with is both daunting and exciting. Daunting, because it means that I will have ten more projects to guide and manage, and exciting because I will have ten more excellent people working on aspects of the Serval Project.&lt;br /&gt;&lt;br /&gt;The new students will be looking into cryptography, smart ways to use GPS when there is no infrastructure, and the first steps towards long-range ISM915 mesh communications as well as initial explorations towards porting from Android to iOS and Symbian.&lt;br /&gt;&lt;br /&gt;These students will build on the great work which students, staff and volunteers have put in over the last six months. &lt;br /&gt;&lt;br /&gt;We now have substantial progress towards infrastructure-free SMS and mapping services, as well as a really simple installation procedure, and some great ground work to make it easier to port to new Android phones as they come out.&lt;br /&gt;&lt;br /&gt;So, I find my self rather much in a tremendously exciting and amazing place as we make the Serval Project's vision of universal communications, anywhere, any time, a reality.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9068638994894102968-6293091759153014906?l=servalpaul.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://servalpaul.blogspot.com/feeds/6293091759153014906/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://servalpaul.blogspot.com/2011/08/another-semester-begins.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6293091759153014906'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/9068638994894102968/posts/default/6293091759153014906'/><link rel='alternate' type='text/html' href='http://servalpaul.blogspot.com/2011/08/another-semester-begins.html' title='Another semester begins ...'/><author><name>Dr. Paul Gardner-Stephen</name><uri>http://www.blogger.com/profile/10150903760695355706</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/-jMs39fN8qyg/TjpLrPejCbI/AAAAAAAAABw/KgLvyafHrJg/s220/00042.jpg'/></author><thr:total>0</thr:total></entry></feed>
