OpenWISP Firmware is a set of scripts (shell and web cgi) that sits on top of OpenWrt. It provides a daemon for the retrieving the configuration of the following components from a OpenWISP Manager :
wifi (currently only for madwifi-ng and ath9k) networking layer 2 traffic shaping openvpn (layer 2, tap) cronjobs
Open WISP Firmware also provides a web GUI for: configuring basic network parameters configuring basic Open WISP server settings performing a set of test to spot and resolve most common problems that may prevent Open WISP firmware to work correctly See the OpenWISP Manager wiki for more details.
Open WISP Firmware currently works on: OpenWRT Backfire 10.03
In order to have a fully working OpenWisp Firmware you have to compile OpenWRT by yourself, so we have provided a deploy script that can help you to compile a custom backfire release. Our deploy scripts are developed under GNU/Linux so, in order to compile our firmware iWe higly recomend to build OpenWRT on a GNU/Linux environment with gcc > 4 you can find other pre-requisites here wiki.openwrt.org/doc/howto/build.
If you have a properly configured machine follow this steps:
You can wget OpenWRT checking out the lastest backfire release through Subversion
~# svn co svn://svn.openwrt.org/openwrt/branches/backfire backfire
So now you can run our deploy script against backfire
In our release we also provides some kernel configuration files for the access points we have tested:
-
D-Link DIR 825 [Internal use with ethernet and USB]
-
Abocom WAP 2102 [Internal use flyweight and cheap]
-
UBNT Nanostation/Nanostation loco and Nanostation M2 and M5/Nanostation loco M2 and M5 [External use bullet proof enclosure]
-
UBNT Picostation/Picostation M [External use with a replaceable antenna]
-
UBNT Airwire [Internal use with tricky setup]
-
UBNT UniFi [Internal use, tricky setup]
-
UBNT PowerAPN [internal use with a fancy look]
-
UBNT Routerstation [No enclosure stuff]
-
ALL Alix PC-engines and WRAP devices [multi-enclosure iper-versatile stuff]
Our kernel configuration files contains some packages due to simplify your work.
-
GNU tar (or you may also enable old gnu compatibility on busybox)
-
wget (the busybox one!)
-
htpdate and/or ntpdate
-
wireless-tools and kmod-madwifi or ath9k
-
uhttpd (a tiny single-threaded http daemon)
-
openvpn (and kmod-tun)
-
tc (and kmod-sched)
-
ebtables (and kmod-ebtables)
-
GNU netcat (not the Busybox one!)
-
hostapd
The full version of OWF will require UMTS and OLSRD support, but will require better hardware and much more space on disk, we recommends an Alix or a RouterBoard or something similar. Our firmware should run on every OpenWRT-complatible devices, but we have tested atheros, x86, ar71xx, rb532 and D-Link DIR-825 platforms
*We higly recomend to compile to use our script to configure your AP you can compile openwrt by yourself but at your risk *
Stable version features:
-
MESH Support
-
3G support
-
ATH9k and/or madwifi support (Both drivers works alone or togheter)
-
Simplified and almost fully automatic deploy script with a lot of features
-
interface failover script
Installing:
In order to deploy our OpenWispFirmware you need to use the deployment script shipped with our release. You only need deploy-firmware.sh to fully customize your OWF installation, with this simple script you can set a couple of things:
-
A root password ( instead the default one “ciaociao” ) (-P)
-
The IP address and port of the internal http server from which ap’s can downloads their configurations (-i -p)
-
The Address of the OWM server (-v)
-
The OpenVPN port of the OWM server (-V)
-
The WPA-PSK key (instead of the default one “owm-Ohz6ohngei” ) it must be 14 character long (-w)
-
The configuration ESSID (instead of “owispmager-setup”) (-e)
-
The Architecture (-a)
-
Activate Mesh Networking capabilities with -m option
-
Activate UMTS Netwokring capabilities with -u option
-
Autogenerate password and wpa key with -G
For instance:
All you need to know is the OpenWRT source directory and the default architecture, the most tested architecture is atheros our favourite platform are Ubiquity Networks
For instance the same command with more options
~$ ./deploy-firmware.sh -a atheros -s ~/sources/backfire -v my.vpn.server -w 14-char-wpakey -P root-password
Now you can use our images to flash your devices.
UMTS and MESH Support
Our MESH-3G firmware support, as the name suggests, also support UMTS connection provided by USB modems, all you need to know to get this feature working is your APN and your SIM pincode. We can support all USB modems that usb-modeswitch can support but we have made tests with Huawei K4505 and Huawei E1692. You’re encouraged to send us your feedback about different model.
Another new feature is MESH support and we use OLSRD.
UMTS MESH and ETHERNET connectivity are in failover, This means a better network reliability can be provided.
Known Issues In order to get OLSRD working with WPA NONE protocol we have to patch wpa_supplicant OLSRD secure plugin have a lot of endianess problems so it must be used with homogeneus Access Points
Copyright © 2012 OpenWISP.org
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see <www.gnu.org/licenses/>.