Nicco Kunzmann

Essays

Weitere Images für die Berliner Freifunk-Firmware

Weitere Images für die Berliner Freifunk-Firmware

Ich habe die Firmware der Berliner auf meinem Debian für diese Router gebaut:

Wie in der README beschrieben, muss man dazu Pakete installieren.

DIR-615 D

Branch

Hier musste ich nur die Konfigurationsdateien erstellen. Bauen kann man das dann mit

make TARGET=ramips-rt305x PACKAGES_LIST_DEFAULT=default_4MB

Zum flashen von OpenWRT auf den Router muss man die RESET-Taste beim Starten lange drücken, damit man in den Failsafe-Modus kommt. Dieser öffnet eine Webseite zum Hochladen unter 192.168.0.1.

Images:

DIR-600 B

Branch

Verwendet die selbe Datei configs/ramips-rt305x.config wie der DIR-615 D. Kompiliert mit folgendem Befehl. -j7 steht für die Nutzung von 7 CPU-Kernen.

make PACKAGES_LIST_DEFAULT=default_4MB PROFILES=dir-600-b1 \
     -j7 TARGET=ramips-rt305x

WNR2000v5

Es stellt sich heraus, dass dieser nicht in OpenWRT eingeflossen ist. Allerdings gibt es Pull Request 1256, die die Änderungen beinhaltet.

Die config.mk-Datei beinhaltet den Commit von OpenWRT, auf dem der Hedy-1.0.1-Release aufbaut. Die Änderungen aus der Pull-Request 1256 habe ich auf diesen draufgesetzt, sodass die Firmware für diesen Router gebaut wird, siehe Branch.

Bauen geht mit

make PACKAGES_LIST_DEFAULT=default_4MB

Images:

Mir fällt auf, dass der Name in der Datei firmware/openwrt/build_dir/target-mips_24kc_musl-1.1.16/freifunk-berlin-imagebuilder-1.0.1-ar71xx-generic.Linux-x86_64/Makefile anders aussieht:

REALWNR1000V2:
    NETGEAR WNR1000V2
    Packages: 
WNR1000V2_VC:
    NETGEAR WNR1000V2-VC
    Packages: 
WNR2000:
    NETGEAR WNR2000V1
    Packages: 
WNR2000V3:
    NETGEAR WNR2000V3
    Packages: 
WNR2000V4:
    NETGEAR WNR2000V4
    Packages: 
wnr2000v5:
    NETGEAR WNR2000V5
    Packages: kmod-block2mtd kmod-gpio-nxp-74hc164
WNR2200:
    NETGEAR WNR2200
    Packages: kmod-usb-core kmod-usb2 kmod-usb-ledtrig-usbport

Was ich lernte: Kernel Packages muss man, wenn sie fehlen, in der config-Datei als Modul (=m) oder als eingebunden (=y) markieren, damit diese auch gefunden werden, wenn die packages in das Image installiert werden. Also: Wenn opkg die Packages nicht installieren kann, kann man sie in der Config-Datei aktivieren.

Netgear N600

Der N600 hat folgenden Image-Namen: brcm47xx/mips74k/openwrt-18.06.1-brcm47xx-mips74k-netgear-wndr3400-v3-squashfs.chk

Deswegen muss ich diese Dateien erstellen:

configs/brcm47xx-mips74k.config
profiles/brcm47xx-mips74k.profiles

Die Änderungen zum Bau sind im Branch wndr3400v3.

~/firmware/openwrt/build_dir/target-mipsel_74kc_musl-1.1.16/freifunk-berlin-imagebuilder-1.0.1-brcm47xx-mips74k.Linux-x86_64$
grep -ri 3400

hat mir das gezeigt:

target/linux/brcm47xx/image/Makefile:define Device/netgear-wndr3400-v3

Deswegen ist das Target netgear-wndr3400-v3.

opkg_install_cmd: Cannot install package kmod-usb2.

Bedeutet, dass ich

CONFIG_DEFAULT_kmod-usb2=y
CONFIG_PACKAGE_kmod-usb2=y

in der Konfiguration hinzugebe. Weil das dann nicht klappt, habe ich mich entschlossen, in die Pakete -kmod-usb2 geschrieben, weshalb kein USB2-Support da ist.

Es stellt sich heraus, dass keine WLAN-Unterstützung für den 3400v3 da ist. Hier also die Firmware-Images:

Dieser Router wird nicht so empfohlen, weil er nur 4mb Flash hat.

Kompiliert mit

git checkout Hedy-1.0.2-rc1
make PACKAGES_LIST_DEFAULT=default_4MB PROFILES=tl-wa901nd-v2

Dieser Router wird nicht so empfohlen, weil er nur 4mb Flash hat.

Kompiliert mit

git checkout Hedy-1.0.2-rc1
make PACKAGES_LIST_DEFAULT=default_4MB PROFILES=tl-wr941nd-v6 TARGET=ar71xx-generic

Kompiliert mit

make PACKAGES_LIST_DEFAULT=default PROFILES='ArcherC50' TARGET=ramips-mt7620

Für diesen Router gibt es seit April 2019 eine Firmware. Stand Juni 2019 gibt es noch kein Factory-Image. Der Router kann also nicht über die Weboberfläche geflasht werden.

git checkout daily/upstream-master
echo "tplink_archer-d50-v1" > "profiles/ath79-generic.profiles"
make PACKAGES_LIST_DEFAULT=notunnel TARGET=ath79-generic

Weitere Firmwares