Wednesday, August 31, 2011

Day 1 of Shuttleworth Foundation Fellowship

So today I have commenced a telecommunications fellowship with the Shuttleworth Foundation, which will be undertaken here at Flinders University where with the University's generous support we have based the Serval Project.

This is an amazing support for our work on the Serval Project, 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.  Check out their list of past and current fellows to get a feel for what they are supporting.

This support builds on that already provided by The Awesome Foundation, Flinders University and NLnet, as well as that of many students, volunteers and my family, which has enabled us to reach this point.

The particular mandate of my work under the fellowship is to:


- Build on existing trials, which include remote, in-motion, underground and
indoor tests by linking with partner organisations to deploy the
technology in an escalating series of situations;Increasing the breadth of applications for the technology, and the usability
of the technology in disaster, by governments, and in remote locations;
andImproving the maximum range between handsets beyond what is
possible using WiFi, but without altering the hardware in existing mobile telephones (the “Focus Area Objectives”). 


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.


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. 


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.


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.

Sunday, August 28, 2011

Making Mesh Networks Scale

Mesh networks have great potential to create sustainable, resilient and low-cost communications capabilities.  This is why we are passionate about mesh networking at Serval Project.

However, the mesh routing protocols that I have seen to date almost all have a scalability ceiling.  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.  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.

Eventually, not matter how fast the links on the mesh, the capacity gets used up.

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.

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.

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.

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.

So this is something that Serval is planning to do over the next few months.

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 ;).

Monday, August 22, 2011

Opening Mobile Hardware

Over the last few years we have seen the impact and innovation that opening the software on smart phones has enabled.

The key is that the barrier to entry is now so low, that innovation can prosper without significant drag or hindrance.

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?

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).

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.

Creating such a simple interface would allow the creation of cheap dumb devices that can plug into the port.

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 servalproject.org, to a local care provider.  Or maybe it might be a cheap ultrasound transponder to allow mid-wives and maternal health workers to acquire cheap ultrasound imagery.

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.

And that is just in one application domain.  Who knows what else people might come up with.

After all, no one anticipated the myriad applications that have been enabled by making smart phones programmable.


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.  Anyone want to make a significant impact on the world?

Wednesday, August 10, 2011

On the ground at Chaos Communication Camp 2011

As in 2007, CCC is being held at Luftfarht Museum Finowfurt, Germany. So, 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.

The talks are being held in several of the earth-clad bunker/hangers, like this one:

CCC has an incredible 3,500 attendees from 45 countries this year, setting up a temporary tent city with more than 170 themed villages.  I am camped in the lee of a large tent in the Blackout Resilient Technologies Village.

This village targets those working on technology that keeps power and communications up when faced with disaster.  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.

For me, I am planning to work on a few things.

First, I will work with people from the Radio Village to further integrate OpenBTS and Serval, 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.

Serval DNA is a very simple protocol that I sometimes describe as "ARP for telephone numbers".  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.  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.

I also hope to work with some of the people from the OTI/Commotion project to demonstrate a "mobile phone network in a backpack" by doing the final integration of a Village Telco Mesh Potato, a wideye BGAN satellite modem and some android phones with the Serval mesh software installed.

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.

Finally, in any spare time I get I will work on what we are calling the "non-privileged mesh" for Serval.  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.  So this is pretty important.  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.

Saturday, August 6, 2011

Solar Flare Triggers Geomagnetic Storm

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.

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.  In fact, it was big enough that spaceweather.com reported that it triggered auroras so extensive they were visible from mid-latitude locations such as England and Germany.

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.  In short words, this means that some satellites risk getting fried due to this storm.  We'll find out in a few days.

Geomagnetic storms of this magnitude happen from time to time, and usually don't cause big problems.  However, larger events can occur that can cause considerable problems for our big-infrastructure oriented civilisation.

Another big geomagnetic storm hit in March 1989 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.

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.  However, damage to satellites is difficult to prevent.

However, the 1989 storm was small in comparison to what the sun can throw at us.

In 1859 the most intense geomagnetic storm ever recorded occurred and has become known as the Carrington Event.

That solar storm was so intense that aurorae were observed in such low latitudes as the Caribbean, and were so bright in the Rocky Mountains in America that gold miners got up and began to prepare breakfast.

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.

We have since discovered that events the size of the Carrington Event occur about every 500 years.

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 if they occurred today.

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. There are also more sinister problems for low-earth-orbit satellites.  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.  Second, the Van Allen radiation belts become more active, which can cause problems for satellites.

A repeat of the Carrington Event today would likely damage or destroy a significant number of satellite, as well as causing wide-spread blackouts.

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.

My point in all this is that infrastructure is fragile in various ways, and forms a single point of failure.

This is why the Serval Project 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.

Friday, August 5, 2011

Australian Humanitarian Engineering Summit

Last week I attended the Humanitarian Engineering Summit in Brisbane, Australia.

You can read about it and watch a TV news report here at the Engineers Australia web site.

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.  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.

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 ultimately defining by example what it means to be an engineer.

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.  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.  I think that they are spot on.

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.  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.

Thursday, August 4, 2011

Another semester begins ...

It is the beginning of the second semester here in Australia, and we have five new students starting with the project.  We had seven last semester, and two have finished.  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.

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.

These students will build on the great work which students, staff and volunteers have put in over the last six months.

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.

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.