Benutzer-Werkzeuge


    Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/main.php on line 62
  • Admin

  • Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/tpl_functions.php on line 50

    Warning: Undefined array key "REMOTE_USER" in /usr/local/www/wiki.freifunk-bielefeld.de/lib/tpl/starter/tpl_functions.php on line 77
  • Registrieren

Webseiten-Werkzeuge


Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
firmware [2013/05/16 16:50] mwarningfirmware [2023/06/04 11:32] (aktuell) – Externe Bearbeitung 127.0.0.1
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 befindt sich [[https://github.com/freifunk-bielefeld/firmware|hier]].+Unsere Konfiguration befindet sich [[https://github.com/freifunk-bielefeld/firmware|hier]]
 +Um selber die Firmware zu bauen, wird ein GNU/Linux-System wie z.B. Debian/Ubuntu/Arch/Gentoo benötigt.
  
 +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://wiki.openwrt.org/doc/howto/buildroot.exigence|hier]] nachgeschaut werden, welche das sind.
  
-Das bauen der Firmware erfolgt im Folgenden auf einer GNU/Linux Konsole:+===== Erster Bauprozess ===== 
 +Für das Bauen der Firmware muss nun folgendes auf der Kommandozeile eingegeben werden:
  
   git clone git://git.openwrt.org/12.09/openwrt.git   git clone git://git.openwrt.org/12.09/openwrt.git
Zeile 12: Zeile 18:
      
   git clone https://github.com/freifunk-bielefeld/firmware.git   git clone https://github.com/freifunk-bielefeld/firmware.git
-  cp -rf firmware/* .+  cp -rf firmware/{files,package,feeds.conf.default,.config} . 
 +  git am --whitespace=nowarn firmware/patches/*.patch
   rm -rf firmware   rm -rf firmware
      
Zeile 21: Zeile 28:
   make menuconfig   make menuconfig
  
-In dem folgenden Menu muss folgende Auswahl gemacht werden:+In dem folgenden Menu muss nun das "Target System" und "Target Profile" ausgewählt werden:
  
  
-Für den [[http://wiki.openwrt.org/toh/tp-link/tl-wr841nd|TL-WR841ND]]:+Z.B. für den [[http://wiki.openwrt.org/toh/tp-link/tl-wr841nd|TL-WR841ND]]:
   # Target System => <*> Atheros AR7xxx/AR9xxx   # Target System => <*> Atheros AR7xxx/AR9xxx
   # Target Profile => <*> TP-LINK TL-WR841ND   # Target Profile => <*> TP-LINK TL-WR841ND
  
-Für den [[http://wiki.openwrt.org/toh/d-link/dir-300|DIR-300]]:+Z.B. für  den [[http://wiki.openwrt.org/toh/d-link/dir-300|DIR-300]]:
   # Target System => <*> AR231x/AR5312   # Target System => <*> AR231x/AR5312
   # Target Profile => <*> Default   # Target Profile => <*> Default
  
-Für alle Router (sollte schon vorausgewählt sein): +Für andere Router kann der Chipsatz ("Target System"im [[http://wiki.openwrt.org/toh/start|OpenWrt Wiki]] nachgeschaut werden.
-  #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
Zeile 56: Zeile 59:
      
   rm -rf files   rm -rf files
-  rm -rf package/freifunk-bielefeld +  rm -rf package/{freifunk-bielefeld,autoupdater,next-node,simple-tc,fastd,libuecc}
-  rm -rf package/fastd +
-  rm -rf package/libuecc+
      
   git clone git://github.com/freifunk-bielefeld/firmware.git   git clone git://github.com/freifunk-bielefeld/firmware.git
Zeile 65: Zeile 66:
   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://wiki.openwrt.orgde/doc/howto/generic.failsafe/|OpenWrt Failsafe-Modus]] verwendet werden um den Router wiederzubeleben. 
 +
 +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  192.168.1.2 eth0 up
 +
 +3. Um das funktionstüchtige Image auf den Router zu übertragen, wird auf dem Computer ein Webserver geöffnet:
 +  
 +  cd /home/path/to/firmware-dir
 +  python2 -m SimpleHTTPServer   # oder mit Version 3 von Python: python -m http.server 8000
 + 
 +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:8000/name.der.firmware.bin
 +  sysupgrade -n name.der.firmware.bin
 +