Usb gluon package bei Routern mit 8MB einbauen

Welches gluon package muss man in der site.mk mit einbinden um USB in den Routern zu unterstützen?

Und kann man das so kompilieren, dass nur Router mit USB und mind. 8MB dieses Paket mit eingebunden bekommen?

Ich hab schon im Gluon packages Wiki gesucht, aber keins gefunden, was USB aktiviert:

Im WIki steht auch was von USB: USB Support · freifunk-gluon/gluon Wiki · GitHub
Aber wie installiert man diese pakete und braucht man die wirklich alle?

1 Like

Info direkt vom Gluon entwickler:

Es gibt wohl zur Zeit nichts fertiges, das muss man für jedes einzelne Modell zur GLUON_$(PROFILE)_SITE_PACKAGES hinzufügen, wobei $(PROFILE) die Profilbezeichnungen aus der profiles.mk sind wie TLWR1043

Grundsätzlich sind das auf USB Support · freifunk-gluon/gluon Wiki · GitHub alles Pakete, die man zusätzlich braucht, wenn man USB-Sticks mit FAT-Dateisystem mounten will. Für den eigentlichen USB-Support reichen kmod-usb-core und kmod-usb2
Also z.B. für den tl-wr1043 dies ergänzen:

GLUON_TLWR1043_SITE_PACKAGES := mod-usb-core kmod-usb2

… Ich hab das so mal da im Wiki angepasst.

Ich denke mal hier hab ich alle Modellbezeichnungen von Routern, die mind. 8MB Flash ROM haben, dann kann man wohl einfach diese Zeilen einbauen:

#ar71xx-generic
GLUON_TLWR1043_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_TLWR842_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_TLWDR4300_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_TLWR2543_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_WRT160NL_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_DIR825B1_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_TLWR710_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_GLINET_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_WNDR3700_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_WZRHPG450H_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_WZRHPAG300H_SITE_PACKAGES := mod-usb-core kmod-usb2
GLUON_ARCHERC7_SITE_PACKAGES := mod-usb-core kmod-usb2

#mpc85xx-generic
GLUON_TLWDR4900_SITE_PACKAGES := mod-usb-core kmod-usb2

# not found: Netgear WNDR 4300

kann man in der site.mk eigentlich variaben anlegen und benutzen, etc?

2 Likes

Neuerdings wird auch der d-link-dir-505 von gluon unterstützt, gerade für 15€ zu haben, Zwar nur interne Antennen, aber das ist damit der günstigste Router mit USB und 8MB Flash Siehe OpenWRT Wiki

Hab gleich 10 Bestellt :wink:

Muss man also in seiner site.conf noch dies ergänzen:

GLUON_DIR505A1_SITE_PACKAGES := kmod-usb-core kmod-usb2

Sind da jetzt eigentlich noch mehr USB Router mit 8MB dabei in der neuen v2016.1 profiles.mk?

Habs hier schon ergänzt: gluon Wiki - USB Support

4 Likes

Schön zum nachzeichnen :smiley:
Das Teil

Besten dank für den wiki link da kann ich die spec’s übernehmen :thumbsup:

Ev konnte man dies noch einbauen, damit eingesteckte USB Plätzen sofort automatisch mounten:

Auto mount USB storage device by uuid on OpenWrt · GitHub

glaube ich bau ein eigenes script, das nicht so viele abhängigkeiten hat.

Hab schon zusammengetragen:

dmesg|grep revovable

zeigt die datei an (meist sda) dann kann man die ins web verzeichnis mounten mit

mkdir -p /lib/gluon/status-page/www/media
mount /dev/sda1 /lib/gluon/status-page/www/media

schon ist der USB stick erreichbar unter `http://[ip:6;de:s::ro:ut:e:rs]/media/´

villeicht so:

DEV=$(dmesg|grep removable|tail -n 1|sed -e 's/^.*\(sd.\).*$/\1/g')
mkdir -p /lib/gluon/status-page/www/media
mount /dev/${DEV}1 /lib/gluon/status-page/www/media

jetzt muss man nur noch einen daemon schreiben, der horcht ob dmesg|grep removable was neues ausgibt.

Hat da jemand eine idee?

vielliecht gibts da ein paket, das man mit in die site.mk schreiben kann?

(hatte mal das getestet: block-hotplug, das klang so, als wenn das dafür sorgt, dass die auto gemountet werden, aber das war nur für die alten AA und ist jetzt in das block-mount gemerged.)

Müsste man dann noch irgendwie dafür sorgen, dass da immer ein link besteht nach /lib/gluon/status-page/www/media. Wie bekommt man das hin?

Sollte es nicht heißen:

8MB ROM oder 8MB Flash-ROM?

RAM ist ja bei allen 32MB oder mehr.

1 Like

done …

Mit diesem script erzeugt in /etc/hotplug.d//block/20-usb-mount-media

case "$ACTION" in
    add)
      # TODO: instead of setup_mode you need a new config key for usb_mountto be configurable in Config Mode 
        if [ "0" == $(uci get 'gluon-setup-mode.@setup_mode[0].enabled') ]; then
         if [ "0" == $(grep sda1 /proc/mounts|echo $?) ]; then
           [ -d /var/gluon/setup-mode/www/media ] || mkdir -p /var/gluon/setup-mode/www/media
           logger /var/gluon/setup-mode/www/media was created
           mount -o ro /dev/$DEVICENAME /var/gluon/setup-mode/www/media
           logger the media was mounted
         fi
        fi
        ;;
    remove)
        if [ "a" == $(grep sda1 /proc/mounts|echo a$?) ]; then
          umount /www/media/
        fi
        ;;
esac

wird ein eingesteckter USB-Stick immer automatisch gemountet nach /media. In diesem Beispiel horcht der auf setup_mode[0].enabled == 0 was ja immer zutrifft, ausser im Config mode. Dies ist nur übernommen aus dem anderen script und könnte man noch anpassen so dass es auf einen config Wert horcht, den man im Config Mode einstellen kann: "USB-Geräte automatisch freigeben"

Mir ging es eigentlich um den Fehler im Wiki. Da steht es immer noch falsch. :slight_smile:

Ich habe versucht eine Firmware mit dem automount-Modul zu bauen, aber scheitere hieran: Usb- modul in ffki einbauen · Issue #1 · fsteinel/gluon-packages · GitHub

Vielleicht kann da jemand helfen?

@rubo77 siehe vorschlag in github: basicly proposal: schreibe ein kleines skript das ggf. opkg update und opkg install usb_foo macht, basierend auf 8mb und usb availability. (based on list of model)

Das Problem ist ja nicht der USB Support. Das geht schon alles.

Nur wenn ich unser eigenes Modul ergänze, dan baut die Firmware nicht mehr

i see … bisserl falsch verstanden …
nun, mein Vorschlag ging ja auch dahin nicht an der buildchain so rumzudrehen , sondern ein skript in der Art zu schreiben das bei entsprechenden Routern die Pakete nachgeladen werden.
die 2 kleinen Nachteile sind dann nur noch : 1. nicht sofort verfügbar und 2. je nach script muss das z.b. zum sysupgrade die pakete ziehen können. (oder irgendwann später)

Aber grundsätzlich wäre es schon schön - mittelfristig Möglichkeiten zu haben einzelnen Routern einzelne site.mk zuweisen zu können. (was wohl besser wäre als einzelne packages … )

Ein Beitrag wurde in ein neues Thema verschoben: „postinstall“ failed beim make: Wie debuggen?