]> pere.pagekite.me Git - homepage.git/commitdiff
Improve language.
authorPetter Reinholdtsen <pere@hungry.com>
Mon, 21 Oct 2013 09:43:05 +0000 (09:43 +0000)
committerPetter Reinholdtsen <pere@hungry.com>
Mon, 21 Oct 2013 09:43:05 +0000 (09:43 +0000)
blog/data/2013-10-21-mesh-network-rpi.txt

index 7abba847f86a6ab3afe9e6c03ac363e36669978e..2eab75c746ab6fbd15c22b73899fb11fe5002287 100644 (file)
@@ -2,34 +2,45 @@ Title: A Raspberry Pi based batman-adv Mesh network node
 Tags: english, nuug, freedombox, mesh network
 Date: 2013-10-21 11:40
 
-<p>The last few days I have been experimenting with the batman-adv
-mech technology.  I want to gain some experience to see if it will fit
-the Freedombox project, and try to build a mesh network around the
-park where I live together with my neighbors.  Batman-adv is a layer 2
+<p>The last few days I have been experimenting with
+<a href="http://www.open-mesh.org/projects/batman-adv/wiki">the
+batman-adv mech technology</a>.  I want to gain some experience to see
+if it will fit <a href="https://wiki.debian.org/FreedomBox">the
+Freedombox project</a>, and together with my neighbors try to build a
+mesh network around the park where I live.  Batman-adv is a layer 2
 mesh system ("ethernet" in other words), where the mesh network appear
 as if all the mesh clients are connected to the same switch.</p>
 
-<p>My hardware of choice were the Linksys WRT54GL routers I had lying
+<p>My hardware of choice was the Linksys WRT54GL routers I had lying
 around, but I've been unable to get them working with batman-adv.  So
-instead, I started playing with a Raspberry Pi, and tried to get it
-working as a mesh node.  My idea is to use it to create a mesh node
-which function as a switch port, where everything connected to the
-Raspberry Pi ethernet plug is connected to the mesh network.  This
-allow me to hook a wifi base station like the Linksys WRT54GL to the
-mesh by plugging it into a Raspberry Pi, and thus allow non-mesh
-clients to hook up to the mesh.  This in turn is useful for Android
-phones using <ahref="http://servalproject.org/">the Serval Project</a>
-voip client, allowing every one around the playground to phone and
-message each other for free.</p>
+instead, I started playing with a
+<a href="http://www.raspberrypi.org/">Raspberry Pi</a>, and tried to
+get it working as a mesh node.  My idea is to use it to create a mesh
+node which function as a switch port, where everything connected to
+the Raspberry Pi ethernet plug is connected (bridged) to the mesh
+network.  This allow me to hook a wifi base station like the Linksys
+WRT54GL to the mesh by plugging it into a Raspberry Pi, and allow
+non-mesh clients to hook up to the mesh.  This in turn is useful for
+Android phones using <a href="http://servalproject.org/">the Serval
+Project</a> voip client, allowing every one around the playground to
+phone and message each other for free.  The reason is that Android
+phones do not see ad-hoc wifi networks (they are filtered away from
+the GUI view), and can not join the mesh without being rooted.  But if
+they are connected using a normal wifi base station, they can talk to
+every client on the local network.</p>
 
 <p>To get this working, I've created a debian package
-<ahref="https://github.com/petterreinholdtsen/meshfx-node">meshfx-node</a>
+<a href="https://github.com/petterreinholdtsen/meshfx-node">meshfx-node</a>
 and a script
-<ahref="https://github.com/petterreinholdtsen/meshfx-node/blob/master/build-rpi-mesh-node">build-rpi-mesh-node</a>
+<a href="https://github.com/petterreinholdtsen/meshfx-node/blob/master/build-rpi-mesh-node">build-rpi-mesh-node</a>
 to create the Raspberry Pi boot image.  I'm using Debian Jessie (and
 not Raspbian), to get more control over the packages available.
 Unfortunately a huge binary blob need to be inserted into the boot
-image to get it booting, but I'll ignore that for now.</p>
+image to get it booting, but I'll ignore that for now.  Also, as
+Debian lack support for the CPU features available in the Raspberry
+Pi, the system do not use the hardware floating point unit.  I hope
+the routing performance isn't affected by the lack of hardware FPU
+support.</p>
 
 <p>To create an image, run the following with a sudo enabled user
 after inserting the target SD card into the build machine:</p>
@@ -43,10 +54,10 @@ after inserting the target SD card into the build machine:</p>
 </pre></p>
 
 <p>Booting with the resulting SD card on a Raspberry PI with a USB
-wifi card inserted should give you a mesh node.  The default mesh
-settings are the ones used by the Oslo mesh project at Hackeriet, as I
-mentioned in
-<ahref="http://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html">an
+wifi card inserted should give you a mesh node.  At least it does for
+me with a the wifi card I am using. The default mesh settings are the
+ones used by the Oslo mesh project at Hackeriet, as I mentioned in
+<a href="http://people.skolelinux.org/pere/blog/Oslo_community_mesh_network___with_NUUG_and_Hackeriet_at_Hausmania.html">an
 earlier blog post about this mesh testing</a>.</p>
 
 <p>The mesh node was not horribly expensive either.  I bought
@@ -70,4 +81,3 @@ floor that can be seen by my neighbor across the park, and one
 play-node I use to develop the image building script.  I look forward
 to figuring out what kind of latency the batman-adv setup will give,
 and how much packet loss we will experience around the park. :)</p>
-