Mesh Networking Just Doesn't Work on XO-1.5 Laptop

Built-in Wi-Fi antennas that automatically create a "mesh network" with any other XO computer within about one-third of a mile. A screen displays icons showing the other XO computers within range at any given time. The mesh also means that if any one of the linked computers has access to the Internet, all of them will.

That's when we hoped that OLPC mesh networking will "just work". For a while, it did, mostly. On the XO-1 laptop, you could share the Write and Record activities with anyone running a Jabber server. But now it seems the very aspect of mesh networking is gone.

FlatLandFarm is hacking on an XO-1 and XO-1.5 and had this experience with the mesh networking functionality:

I have two XOs standing side by side. Will they start a mesh without me doing anything? No they don't. Froggy displays some obscure Mesh networks it has discovered but does not offer to connect with them.

Neither Froggy finds Hulk nor Hulk finds Froggy. I then connected both Machines to my WLAN. Suddenly they see each other. Not exactly what I had expected from a Mesh that "just works".

After doing a bit of research on why the XO-1.5 couldn't connect to an XO-1 over WiFi, he found this startling fact: "The mesh feature indeed is not supported anymore by the xo-1.5. No wonder that it does not work."

Well actually the good news is that in the time since there have been protocols developed (OLSR www.olsr.org and Batman www.open-mesh.org notably) that work on any wireless chipset. So it's a matter of software integration - and if that's done / installed you could then daisy chain to your net connection again.

They are also quite a lot more scalable and rather than holding routing information on the chip actually run a program in the background to hold and analyze info on other nodes.

This would also allow any non-XO laptop to be part of the mesh and means that OLPC is not tied to a certain chip. We have used OLSR on Freifunk OpenWRT routers to mesh routers in the schools so that we have a purely wireless system in school.

2 XOs sitting next to one another will create a network between them, without an access point. 2 XO-1.5s will do this just as reliably as 2 XO-1s. A room of 50 XO-1.5s should do this much MORE reliably than a room of 50 XO-1s.

This is ad-hoc networking, and does not require an external access point. It is limited to the radio range of a single XO (say, 100 meters).

"mesh networking" is a phrase that is often misused (people usually mean ad-hoc networking by it.) It is a type of ad-hoc network in which each laptop node receives packets addressed to it, and it also rebroadcasts packets it sees that are addressed to others. This allows a laptop to connect to machines outside of its radio range. (So for instance, 20 machines spread out over a kilometer could all connect to one another, although those farther apart would communicate much more slowly.)

The XO-1 had mesh [rebroadcasting] turned on in the firmware. This means that a room full of XO-1s are always rebroadcasting one another's packets, even when they can all see one another directly. This leads to an O(N^2) growth in noise on the channel, where N is the number of XOs on it; and can saturate a channel with just a few dozen machines.

The XO-1.5 does not have this feature in its firmware. A class that wants to try a mesh project can always turn on a mesh emulator with software; but this means that the 99.9% of classes that don't want or need this feature will now have a much less noisy and more efficient network.

(and as Mike points out, there are some great software options out there - and lots of technical reasons other than network-efficiency to handle this in software rather than firmware, even if you are working with a group of only 10-20 network nodes)

The mesh was one of the things that got me into the XO in the first place. I think it is a stupid mistake to just throw it out. Aren't there totally software based 802.11s implementations out there? I know FreeBSD has something like that built in.

It should at least be am option to be turned back on. I'm sure most people haven't found a use for it yet but I'm working on an application that would be really useful with a mesh. It works over ad-hoc too but a mesh network would be even better.

XO-1.5 is using a different wireless chip that does not have meshing abilities, so you can not "turn it on".
Software implementation is the only option but I do not know of any setup that works on the XO-1.5 yet.
The reason for the change as I understand from scatter references on the mailing lists, relates to the problematic implementation of mesh on the XO-1. SJ's reference above about the network havoc in a room with meshed XO-1's is an example (I think 40 is the max before the network collapses - a number that is exceeded quite often in the XO target classrooms). This is due to Marvell's (the chip-maker) denial to provide crucial data for the chip that would allow the development of proper drivers/software.
Marvell is not an "evil" company is just that when it comes to wireless communications the FCC security regulation are very strict and of course no company want to reveal potential holes for its products. Also the intellectual property issues should not be underestimated either...