Freifunk Global Newswire Relaunched with Map and Embed Features

After several years of maintaining the Global Newswire, we have just launched a new site of with updated feeds and cool map features. The new site uses the Managing News profile which is based on Drupal and developed by the folks from Development Seed. A big thanks goes to Thanh Nguyen from Vietnam, who set up the system together with me. As the other sites, the site is hosted at
Mario Behling and Thanh Nguyen working on in Vietnam 
Mario Behling and Thanh Nguyen working on in Vietnam 
It took us a few days to figure out how to make it work for us. Some errors like an issue with sharing just came up, because we had not activated clean URLs, other errors, because the different servers we use run slightly different MySQL versions with the one the site is hosted on. Initially we wanted to update the previous site with the new profile. This worked generally, but some features just did not want to get working. The Managing News installation profile has a number of preconfigured modules. After taking a week trying to figure it out, we went back to the start and took another way. We chose to use a fresh install and moved the content of the previous site with the node exporter module. While the old content does not show up in the history anymore now, it can still be found through the search.
Global Freifunk Newswire - Map View 
To geolocate places in articles we use Yahoo Placemaker, which seems to give a good outcome when tagging places in articles. As we have a rather large number of feeds that need to be checked and updated, we need to run cron every few minutes in order to avoid time outs.
Previously, we also had a special German news site focusing on the German speaking freifunk community. As hits on this website have been rather low over the last two years, we have closed that site and redirected it to the international news site saving us time to focus on one system.
So, here it is, the new Freifunk News Site. One thing I personally like is the embed feature that lets you embed any feed into your site. Please check it out and tell us which cool new features you like. 
If you would like us to include your feed, please add it to the wiki page on the freifunk wiki. We will check here from time to time and add feeds to the newswire.

GSoC 2011: L-VN Lite Virtual Network

L-VN is a tool for overlay network creation based on IP in UDP encapsulation performed in Kernel space without encryption/authentication of the tunneled packets. The idea of L-VN is to exploit the IP/UDP encapsulation kernel module proposed for GSoC 2010  to develop a VPN/Overlay tool based on IP/UDP encapsulation performed in kernel space with no “security services” for the encapsulated packets (i.e. no confidentiality, no authentication). The goal is to provide a lightweight overlay network tool that might be preferable to other VPN/Overlay solutions for devices with limited computational resources. The project is a proposal, and is sponsored by the Google Summer of Code 2011 program.

L-VN consists of 3 main elements:

  1. IPUDP encapsulation module: is a kernel module that exports a virtual network devices that perform ip-udp encapsulation. Packets routed through this network interfaces will be encapsulated in IP/UDP headers and sent to the proper tunnel endpoint.  As to the current status, ipudp module provides 2 virtual devices modes:  A) FIXED mode: a single ipudp tunnel is bound to a virtual ipudp device. This type of virtual interface is double-stack, in the sense that we can assign both IPv4 and IPv6 address to the device and use it for both IPv4 and IPv6 applications. B) MULTI_V4 mode: multiple ipudp tunnels can be bound to this type of virtual interface. For each encapsulated packet, the proper tunnel is chosen by a set of rules that bind the destination IP address of the inner packet, with a given tunnel. For GSoC2011 the module has been updated to be compatible with kernel 2.6.38 and modified in different points to implement the keepalive mechanism.
  2. IPUDP configuration tool: this tool can be compiled as both program or library and provides a set of primitives based on NETLINK sockets to configure the IPUDP encapsulation module. IPUDP_CONF provides the necessary primitives for addition/removal of virtual network devices, ipudp tunnels and forwarding rules.
  3. IPUDP signaling agents: a client and a server program written in C for automatic tunnel establishment and management. In details, these components provides the following services: a) mutual authentication based on X509 certificates and TLS (openssl); b) NAT reflexed address discovery and automatic tunnel establishment; c) NAT binding keep alive; d) automatic inactive tunnel de-allocation. This component has been completely implemented for GSoC2011 but it still needs some work.

The code is available through the ninux SVN repository, at the path: Comments, remarks or any kind of support will be truly appreciated.


This article appeared first on

GSoC 2011: Nodeshot

Do wireless communities around the world really need another map server? Here in Ninux we believe that the answer is yes!

Enter Nodeshot an open source wireless community map server written in python and based on django, focused on ease of useand performance.

Why a new map server? Mainly because we had some precise needs that the current open source map servers can’t satisfy easily:

  • we needed an application which is easy to use and understand for everyone
  • we wanted to preserve a similar look to the old map server we used before (wnmap).
  • we wanted it to be simple and performant
Instead of modifying and hacking the existing alternatives we decided to make a new one, trying to keep the code clean and well commented (which was one of the hardest tasks).

The frontend is built in HTML5 and it does an intensive use of jQuery and the Google Map API.

The backend is based on the django admin and it permits to easily administer the app.

These are the main features of the nodeshot:

  • Map based on Google Map API v3
  • New node with confirmation via email
  • Possibility to insert devices, interfaces and hna4 for a better troubleshooting
  • Edit node, devices, interfaces, hna4
  • Contact node owners
  • Address lookup
  • Hide sidebar
  • Search nodes and IP addresses
  • Distance calculation between nodes
  • Save distance calculations for future reference
  • Public information about devices, interfaces and performance of links
  • Statistics  (number of nodes, links, links in km)
  • IPv6 support

During the development we used github to commit changes and several merges have occurred in some cases when different developers were working to fix some issues.

The project has revealed to be more complex than what was expected but at the same time has been really engaging and fun.

There is still work to do though, actually we are translating and optimizing the app. We’ll keep working on nodeshot so that we can arrive quickly to a stable and performant release, we hope we’ll attract new developers from all around the world that will help us to push forward this new open source project!

Meanwhile, you can check the demo and you can download the source code on github.

This article appeared first on the website of

GSoC 2011: Videochat for Diaspora with Vittorio

I’m writing about the results achieved with my Google Summer of Code project, for the Ninux community, under the umbrella of Freifunk (I thank them both for the opportunity they gave me).

Briefly it consisted in developing a video chat feature for Diaspora*, a distributed social network.

This project has received a very big feedback and appreciations from the entire Diaspora community, including the core team, who helped and supported me during the development.

Basically, it provides two new functionalities to the Diaspora engine:

  • Textual chat, based on XMPP signaling protocol
  • Video chat, using Jingle XEP
Both have been developed in Javascript, with some Rails code. It usesStrophe.js library for the textual chat, based on XMPP Over BOSH standard, and a self-made extension of it to realize Jingleprotocol.
The project includes a custom ejabberd module in Erlang for the integration of ejabberd/diaspora databases, an Actionscript part for the video chat stuff and an external authentication script written in Ruby used by ejabberd to authenticate users from Diaspora.
The project has been split in two pull requests, and we’re currently fixing them before merge with master repository: [1],  [2].

Source code can be found at, under “jabber” and “video_chat” branches.

Setup instructions here. Some screen-shots: [1], [2], [3].

I hope it will be soon merged and improved by me and the community, to make it available on every Diaspora* pod!


**This article appeared first on the website of Ninux, our friends from Italy:

GSOC 2011: RadioMate

The Ninux community, under the umbrella of Freifunk, developed four awesome open-source projects for the Google Summer of Code program 2011: a front-end for RadioMate, a new mapserver (called nodeshot), a video and chat extension to the social networking engine Diaspora* and a new tunneling tool.

In this post I will write about RadioMate, the project I was involved in. Then posts on the other projects will follow!

There are many web-radio projects that are closely involved in the world of Community Networks: in Rome Fusoradio and Radio Sonarare an active part of the community and relay on the ninux network for their streaming, in Leipzig Radio Blau (which transmits also in FM) gives big spaces to the Freifunk project, or RadioCona in Ljubljana, where the Wlan Slovenija project is based.

Often these web radios have to relay on closed-source software platforms as the available open-source solutions don’t fit their needs.

RadioMate is a free (as in freedom) community-wise Web-radio management system. Some of its features are:

  • support of multiple users with different privileges (roles)
  • easy radio schedule management
  • handling of audio files and playlists
  • extendable with new types of transmissions
  • interface with the icecast server
  • takeover of the radio streaming in case of “special editions”

While last year the RadioMate engine was developed, this year our efforts focused on a Web frontend. You can find a demo The username is “foobar” while the password is “secret”. Point also your player (e.g. VLC)

For the techies, the engine is based on liquidsoap, written in Python, and easily extendable through liquidsoap scripts. It exports a JSON API which is exploited by the Javascript (jQuery) based Web frontend. Source code and documentation can be found at

Of course there is still work to do, but I hope that this software will be soon used by our friends running webradios!

As we say in Rome:Daje!

This article appeared first on the website of

Freifunk Wireless Community Weekend 2011 in Berlin

Starting Friday June 3 till Sunday June 5, 2011, c-base and the German community invite you to the “Freifunk Wireless Community Weekend” at the c-base space station in Berlin. 


inside locations

  • e.t.i is near cbase – in alley towards the street
  • main hall
  • seminar room

ad hoc workshops

all the ad-hoc workshops will take place in the seminar room


mainhall hackcenter (Irgendwo an einem Tisch)


  • Evening Get together, BBQ and creative commons music

Hardware Basar

Many wifi activists has lockers and shelfs full of wifi equipment, boards, enclosures, wifi cards, antennas, cables and pigtails. A lot of wifi stuff just sits there and wait to be used or just gets dusty. If this equipment still works and can be used better, lets re-use it and share it to the wifi community.

So bring it with you to the wireless community weekend and gift it to a big live moderation stage auction. All parts starts at one euro, the collected money goes back to the community as a donation to give a financial support the wireless community weekend event.

Freifunk Google Summer of Code 2011

Freifunk has been is again a mentoring organization for Google Summer of Code.
We are looking forward to more people joining
development. Please propose ideas for the program on our idea page.
Students wishing to apply, please check out the Student Check List
in the wiki and join us on irc:// and #freifunk.

Our mailing list is here:

You can also use the OpenWrt mailing list for discussing Freifunk specific plugins and tools with OpenWrt devevlopers:

The application period starts on March 28, 2011. Please use the time to discuss your ideas beforehand already.


  • March 28:19:00 UTC, Student application period opens.
  • April 8: 19:00 UTC, Student application deadline.
  • April 25: 19:00 UTC, Accepted student proposals announced on the Google Summer of Code 2011 site.
  • May 23: 1. Students begin coding for their GSoC projects; 2. Google begins issuing initial student payments provided tax forms are on file and students are in good standing with their communities.
  • July 11: 19:00 UTC, Mentors and students can begin submitting mid-term evaluations.
  • July 15: 19:00 UTC, 1. Mid-term evaluations deadline; 2. Google begins issuing mid-term student payments provided passing student survey is on file.
  • August 15: Suggested ‘pencils down’ date. Take a week to scrub code, write tests, improve documentation, etc.
  • August 22: 19:00 UTC, Firm ‘pencils down’ date. Mentors, students and organization administrators can begin submitting final evaluations to Google.
  • August 26: 19:00 UTC, 1. Final evaluation deadline, 2. Google begins issuing student and mentoring organization payments provided forms and evaluations are on file.
  • August 29: Final results of GSoC 2011 announced


* Idea Page:

* Student Check List:

* Mailing List

* Freifunk GSoC Page

* Google Open Source Programs: