Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungLetzte ÜberarbeitungBeide Seiten der Revision | ||
firmware [2013/05/16 16:47] – mwarning | firmware [2015/02/05 08:36] – + python3 webserver georg | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | ies ist die Beschreibung wie man selber die Firmware baut und ist eher etwas für geübte Leute. | + | Dies ist die Beschreibung wie man selber die Firmware baut und ist eher etwas für geübte Leute. |
+ | ===== Voraussetzungen ===== | ||
Die Bielefelder Freifunk-Software besteht aus einer OpenWRT Installation mit Zusatzmodulen.\\ | Die Bielefelder Freifunk-Software besteht aus einer OpenWRT Installation mit Zusatzmodulen.\\ | ||
- | Unsere Konfiguration | + | Unsere Konfiguration |
+ | Um selber die Firmware zu bauen, wird ein GNU/ | ||
+ | Unter Debian oder Ubuntu müssen noch folgende Programme installiert werden (hier mittels apt-get über die Kommandozeile): | ||
+ | sudo apt-get install git subversion g++ libncurses5-dev gawk zlib1g-dev build-essential | ||
+ | |||
+ | Falls noch Pakete fehlen sollten, kann [[http:// | ||
- | Das bauen der Firmware | + | ===== Erster Bauprozess ===== |
+ | Für das Bauen der Firmware | ||
git clone git:// | git clone git:// | ||
Zeile 12: | Zeile 18: | ||
| | ||
git clone https:// | git clone https:// | ||
- | cp -rf firmware/* . | + | cp -rf firmware/ |
+ | git am --whitespace=nowarn firmware/ | ||
rm -rf firmware | rm -rf firmware | ||
| | ||
Zeile 21: | Zeile 28: | ||
make menuconfig | make menuconfig | ||
- | In dem folgenden Menu muss folgende Auswahl gemacht | + | In dem folgenden Menu muss nun das " |
- | Für den [[http:// | + | Z.B. für den [[http:// |
# Target System => <*> Atheros AR7xxx/ | # Target System => <*> Atheros AR7xxx/ | ||
# Target Profile => <*> TP-LINK TL-WR841ND | # Target Profile => <*> TP-LINK TL-WR841ND | ||
- | Für den [[http:// | + | Z.B. für |
# Target System => <*> AR231x/ | # Target System => <*> AR231x/ | ||
# Target Profile => <*> Default | # Target Profile => <*> Default | ||
- | Für alle Router (sollte schon vorausgewählt sein): | + | Für andere |
- | #Config => freifunk-bielefeld-basic | + | |
Zu guter Letzt wird die Firmware erzeugt: | Zu guter Letzt wird die Firmware erzeugt: | ||
Zeile 44: | Zeile 50: | ||
oder mit uns Kontakt aufnehmen (siehe unten auf der Hauptseite). | oder mit uns Kontakt aufnehmen (siehe unten auf der Hauptseite). | ||
- | ---- | + | ===== Update & erneutes Bauen ===== |
- | + | Um erneute Kompiliervorgänge zu beschleunigen reicht es oft aus nur die Dateien zu aktualisieren. Dafür müssen folgende Befehle ausgeführt werden: | |
- | **Hinweise: | + | |
- | + | ||
- | * Um erneute Kompiliervorgänge zu beschleunigen reicht es oft aus nur die Dateien zu aktualisieren. Dafür müssen folgende Befehle ausgeführt werden: | + | |
cd openwrt | cd openwrt | ||
- | | + | |
./ | ./ | ||
./ | ./ | ||
- | ./ | ||
| | ||
rm -rf files | rm -rf files | ||
- | rm -rf package/batman-ad | + | rm -rf package/{freifunk-bielefeld, |
- | rm -rf package/freifunk-bielefeld | + | |
- | rm -rf package/fastd | + | |
| | ||
git clone git:// | git clone git:// | ||
- | cp -rf firmware/package/* package/ | + | cp -rf firmware/* . |
- | cp -rf firmware/ | + | |
- | rm -rf firmware | + | |
| | ||
make defconfig | make defconfig | ||
make | make | ||
+ | |||
+ | ===== Bei Fehlern ===== | ||
+ | ==== Fehlerhaftes Image ==== | ||
+ | Sollte das neue System nicht mehr über das Web-Frontend aktualisierbar sein, so kann der [[http:// | ||
+ | |||
+ | Mit einem TL-WR841N funktioniert das wie folgt:\\ | ||
+ | 1. Gerät neustarten und dabei den reset-Knopf im Sekundentakt drücken bis eine Status-LED schnell blinkt. Der Router ist nun im Failsafe-Modus.\\ | ||
+ | 2. Da kein DHCP aktiv ist, muss dem Computer von dem aus der Flash-Vorgang vorgenommen werden soll selbst eine IP-Adresse gegeben werden z.B. mit: | ||
+ | | ||
+ | sudo ifconfig | ||
+ | |||
+ | 3. Um das funktionstüchtige Image auf den Router zu übertragen, | ||
+ | | ||
+ | cd / | ||
+ | python2 -m SimpleHTTPServer | ||
+ | |||
+ | 4. Der Router hat im Failsafe-Modus die IP 192.168.1.1 und kann per Telnet angesprochen werden. | ||
+ | |||
+ | telnet 192.168.1.1 | ||
+ | |||
+ | 5. Nun sind folgende Befehle notwendig um das Root-Dateisystem zu mounten und wegen mangelndem Flash-Speicher nach /tmp (liegt im RAM) zu wechseln: | ||
+ | |||
+ | mount_root | ||
+ | cd /tmp | ||
+ | |||
+ | Dann kann das Image auf den Router geladen und geflasht werden. | ||
+ | |||
+ | wget 192.168.1.2: | ||
+ | sysupgrade -n name.der.firmware.bin | ||
+ |